@mj-biz-apps/common-ng 5.46.2 → 5.47.0

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=address-references.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-references.test.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/address-editor/__tests__/address-references.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { CompositeKey } from '@memberjunction/core';
3
+ import { otherAddressReferences } from '../address-references';
4
+ const LINK_ID = '7F3A2C1E-0000-4000-8000-000000000001';
5
+ const OTHER_LINK_ID = '7F3A2C1E-0000-4000-8000-000000000002';
6
+ /** Server-provider shape: the dependent record's key is a CompositeKey in `PrimaryKey`. */
7
+ const serverRef = (entity, field, id) => ({
8
+ RelatedEntityName: entity,
9
+ FieldName: field,
10
+ PrimaryKey: new CompositeKey([{ FieldName: 'ID', Value: id }]),
11
+ });
12
+ /** GraphQL-client shape: the same key arrives as a plain object under `CompositeKey`. */
13
+ const clientRef = (entity, field, id) => ({
14
+ RelatedEntityName: entity,
15
+ FieldName: field,
16
+ CompositeKey: { KeyValuePairs: [{ FieldName: 'ID', Value: id }] },
17
+ });
18
+ describe('otherAddressReferences', () => {
19
+ it('is empty when the only reference is the link being removed', () => {
20
+ expect(otherAddressReferences([serverRef('MJ_BizApps_Common: Address Links', 'AddressID', LINK_ID)], LINK_ID)).toEqual([]);
21
+ });
22
+ it('recognises the removed link in the GraphQL client shape', () => {
23
+ expect(otherAddressReferences([clientRef('MJ_BizApps_Common: Address Links', 'AddressID', LINK_ID)], LINK_ID)).toEqual([]);
24
+ });
25
+ it('matches the link ID regardless of GUID casing', () => {
26
+ expect(otherAddressReferences([clientRef('MJ_BizApps_Common: Address Links', 'AddressID', LINK_ID.toLowerCase())], LINK_ID)).toEqual([]);
27
+ });
28
+ it('keeps another party\'s link to the same address', () => {
29
+ const other = clientRef('MJ_BizApps_Common: Address Links', 'AddressID', OTHER_LINK_ID);
30
+ const refs = [clientRef('MJ_BizApps_Common: Address Links', 'AddressID', LINK_ID), other];
31
+ expect(otherAddressReferences(refs, LINK_ID)).toEqual([other]);
32
+ });
33
+ it('keeps a direct reference from another entity, even when its ID equals the link ID', () => {
34
+ const order = clientRef('MJ_BizApps_Orders: Order Headers', 'ShipToAddressID', LINK_ID);
35
+ expect(otherAddressReferences([order], LINK_ID)).toEqual([order]);
36
+ });
37
+ it('is empty when there are no references', () => {
38
+ expect(otherAddressReferences([], LINK_ID)).toEqual([]);
39
+ });
40
+ });
41
+ //# sourceMappingURL=address-references.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-references.test.js","sourceRoot":"","sources":["../../../../../src/lib/components/address-editor/__tests__/address-references.test.ts"],"names":[],"mappings":"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"}
@@ -142,6 +142,11 @@ export declare class AddressEditorComponent {
142
142
  * so a misconfiguration surfaces as a visible message instead of a failed INSERT.
143
143
  */
144
144
  LoadError: string | null;
145
+ /**
146
+ * Set when a delete is refused or fails. Rendered above the list, which stays visible,
147
+ * and cleared by the next delete attempt.
148
+ */
149
+ ActionError: string | null;
145
150
  /** Cached action ID for the Postal Code Lookup action. */
146
151
  private postalCodeLookupActionID;
147
152
  /** Whether a postal code lookup is currently in progress. */
@@ -258,14 +263,33 @@ export declare class AddressEditorComponent {
258
263
  */
259
264
  onSetPrimary(index: number): Promise<void>;
260
265
  /**
261
- * Deletes the address at the given index, removing both the AddressLink
262
- * and the orphaned Address record.
266
+ * Removes the address at the given index from this record.
263
267
  *
264
- * After deletion, the address list is reloaded.
268
+ * The AddressLink is always deleted. The Address row is deleted with it only when
269
+ * nothing else references it — another party's link, or a direct reference from
270
+ * another entity — and then both deletes run in one transaction so neither is left
271
+ * behind alone. If the references cannot be checked, only the link is deleted.
272
+ * A refused or failed delete is shown in {@link ActionError}.
265
273
  *
266
274
  * @param index - The zero-based index of the address item in {@link AddressItems}
267
275
  */
268
276
  onDelete(index: number): Promise<void>;
277
+ /**
278
+ * Deletes the link, and the Address too when nothing else references it.
279
+ * @returns `null` on success, otherwise the reason the delete was refused
280
+ */
281
+ private deleteItem;
282
+ /**
283
+ * Whether nothing but this item's link references its Address.
284
+ *
285
+ * Returns `false` when the check itself fails, so the caller keeps the Address row: an
286
+ * unused row left behind is harmless, a deleted row something still points at is not.
287
+ * The check fails on any host without a read-only database connection, because MJ's
288
+ * GetRecordDependencies resolver uses only that connection.
289
+ */
290
+ private isAddressUnreferenced;
291
+ /** Builds the user-facing reason for a refused delete from the entity's latest result. */
292
+ private deleteFailure;
269
293
  static ɵfac: i0.ɵɵFactoryDeclaration<AddressEditorComponent, never>;
270
294
  static ɵcmp: i0.ɵɵComponentDeclaration<AddressEditorComponent, "bizapps-address-editor", never, { "EditMode": { "alias": "EditMode"; "required": false; }; "EntityName": { "alias": "EntityName"; "required": false; }; "RecordID": { "alias": "RecordID"; "required": false; }; }, { "DataChanged": "DataChanged"; }, never, never, true, never>;
271
295
  }
@@ -1 +1 @@
1
- {"version":3,"file":"address-editor.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-editor.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"address-editor.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-editor.component.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { FormsModule } from '@angular/forms';
4
4
  import { Metadata, RunView } from '@memberjunction/core';
5
5
  import { GraphQLActionClient } from '@memberjunction/graphql-dataprovider';
6
6
  import { ActionEngineBase } from '@memberjunction/actions-base';
7
+ import { otherAddressReferences } from './address-references';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "@angular/forms";
9
10
  const _forTrack0 = ($index, $item) => $item.Link.ID;
@@ -26,25 +27,35 @@ function AddressEditorComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
26
27
  } if (rf & 2) {
27
28
  const ctx_r0 = i0.ɵɵnextContext();
28
29
  i0.ɵɵadvance(3);
29
- i0.ɵɵtextInterpolate1(" ", ctx_r0.LoadError, " ");
30
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.ActionError, " ");
30
31
  } }
31
32
  function AddressEditorComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
32
33
  i0.ɵɵelementStart(0, "div", 4)(1, "div", 7);
33
- i0.ɵɵelement(2, "i", 8);
34
+ i0.ɵɵelement(2, "i", 6);
35
+ i0.ɵɵtext(3);
36
+ i0.ɵɵelementEnd()();
37
+ } if (rf & 2) {
38
+ const ctx_r0 = i0.ɵɵnextContext();
39
+ i0.ɵɵadvance(3);
40
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.LoadError, " ");
41
+ } }
42
+ function AddressEditorComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
43
+ i0.ɵɵelementStart(0, "div", 4)(1, "div", 8);
44
+ i0.ɵɵelement(2, "i", 9);
34
45
  i0.ɵɵtext(3, " Loading addresses... ");
35
46
  i0.ɵɵelementEnd()();
36
47
  } }
37
- function AddressEditorComponent_Conditional_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
38
- i0.ɵɵelementStart(0, "div", 9);
48
+ function AddressEditorComponent_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
49
+ i0.ɵɵelementStart(0, "div", 10);
39
50
  i0.ɵɵelement(1, "i", 2);
40
51
  i0.ɵɵtext(2, " No addresses linked yet ");
41
52
  i0.ɵɵelementEnd();
42
53
  } }
43
- function AddressEditorComponent_Conditional_7_For_3_Conditional_4_Template(rf, ctx) { if (rf & 1) {
44
- i0.ɵɵelementStart(0, "div", 15);
54
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_4_Template(rf, ctx) { if (rf & 1) {
55
+ i0.ɵɵelementStart(0, "div", 16);
45
56
  i0.ɵɵtext(1);
46
57
  i0.ɵɵelementEnd();
47
- i0.ɵɵelementStart(2, "div", 20);
58
+ i0.ɵɵelementStart(2, "div", 21);
48
59
  i0.ɵɵtext(3);
49
60
  i0.ɵɵelementEnd();
50
61
  } if (rf & 2) {
@@ -55,8 +66,8 @@ function AddressEditorComponent_Conditional_7_For_3_Conditional_4_Template(rf, c
55
66
  i0.ɵɵadvance(2);
56
67
  i0.ɵɵtextInterpolate(ctx_r0.formatAddressLine2(item_r2.Address));
57
68
  } }
58
- function AddressEditorComponent_Conditional_7_For_3_Conditional_5_Template(rf, ctx) { if (rf & 1) {
59
- i0.ɵɵelementStart(0, "div", 15);
69
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_5_Template(rf, ctx) { if (rf & 1) {
70
+ i0.ɵɵelementStart(0, "div", 16);
60
71
  i0.ɵɵtext(1);
61
72
  i0.ɵɵelementEnd();
62
73
  } if (rf & 2) {
@@ -65,38 +76,38 @@ function AddressEditorComponent_Conditional_7_For_3_Conditional_5_Template(rf, c
65
76
  i0.ɵɵadvance();
66
77
  i0.ɵɵtextInterpolate(ctx_r0.formatAddressLine2(item_r2.Address));
67
78
  } }
68
- function AddressEditorComponent_Conditional_7_For_3_Conditional_9_Template(rf, ctx) { if (rf & 1) {
69
- i0.ɵɵelementStart(0, "span", 18);
70
- i0.ɵɵelement(1, "i", 21);
79
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_9_Template(rf, ctx) { if (rf & 1) {
80
+ i0.ɵɵelementStart(0, "span", 19);
81
+ i0.ɵɵelement(1, "i", 22);
71
82
  i0.ɵɵtext(2, " Primary");
72
83
  i0.ɵɵelementEnd();
73
84
  } }
74
- function AddressEditorComponent_Conditional_7_For_3_Conditional_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
85
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
75
86
  const _r4 = i0.ɵɵgetCurrentView();
76
- i0.ɵɵelementStart(0, "button", 27);
77
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_For_3_Conditional_10_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const ɵ$index_37_r5 = i0.ɵɵnextContext(2).$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSetPrimary(ɵ$index_37_r5)); });
78
- i0.ɵɵelement(1, "i", 28);
87
+ i0.ɵɵelementStart(0, "button", 28);
88
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_For_3_Conditional_10_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const ɵ$index_45_r5 = i0.ɵɵnextContext(2).$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSetPrimary(ɵ$index_45_r5)); });
89
+ i0.ɵɵelement(1, "i", 29);
79
90
  i0.ɵɵelementEnd();
80
91
  } }
81
- function AddressEditorComponent_Conditional_7_For_3_Conditional_10_Template(rf, ctx) { if (rf & 1) {
92
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_10_Template(rf, ctx) { if (rf & 1) {
82
93
  const _r3 = i0.ɵɵgetCurrentView();
83
- i0.ɵɵelementStart(0, "div", 19);
84
- i0.ɵɵconditionalCreate(1, AddressEditorComponent_Conditional_7_For_3_Conditional_10_Conditional_1_Template, 2, 0, "button", 22);
85
- i0.ɵɵelementStart(2, "button", 23);
86
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_For_3_Conditional_10_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r3); const ɵ$index_37_r5 = i0.ɵɵnextContext().$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onEdit(ɵ$index_37_r5)); });
87
- i0.ɵɵelement(3, "i", 24);
94
+ i0.ɵɵelementStart(0, "div", 20);
95
+ i0.ɵɵconditionalCreate(1, AddressEditorComponent_Conditional_8_For_3_Conditional_10_Conditional_1_Template, 2, 0, "button", 23);
96
+ i0.ɵɵelementStart(2, "button", 24);
97
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_For_3_Conditional_10_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r3); const ɵ$index_45_r5 = i0.ɵɵnextContext().$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onEdit(ɵ$index_45_r5)); });
98
+ i0.ɵɵelement(3, "i", 25);
88
99
  i0.ɵɵelementEnd();
89
- i0.ɵɵelementStart(4, "button", 25);
90
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_For_3_Conditional_10_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r3); const ɵ$index_37_r5 = i0.ɵɵnextContext().$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onDelete(ɵ$index_37_r5)); });
91
- i0.ɵɵelement(5, "i", 26);
100
+ i0.ɵɵelementStart(4, "button", 26);
101
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_For_3_Conditional_10_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r3); const ɵ$index_45_r5 = i0.ɵɵnextContext().$index; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onDelete(ɵ$index_45_r5)); });
102
+ i0.ɵɵelement(5, "i", 27);
92
103
  i0.ɵɵelementEnd()();
93
104
  } if (rf & 2) {
94
105
  const item_r2 = i0.ɵɵnextContext().$implicit;
95
106
  i0.ɵɵadvance();
96
107
  i0.ɵɵconditional(!item_r2.Link.IsPrimary ? 1 : -1);
97
108
  } }
98
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_7_Template(rf, ctx) { if (rf & 1) {
99
- i0.ɵɵelementStart(0, "option", 32);
109
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_For_7_Template(rf, ctx) { if (rf & 1) {
110
+ i0.ɵɵelementStart(0, "option", 33);
100
111
  i0.ɵɵtext(1);
101
112
  i0.ɵɵelementEnd();
102
113
  } if (rf & 2) {
@@ -105,16 +116,16 @@ function AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_7_Templat
105
116
  i0.ɵɵadvance();
106
117
  i0.ɵɵtextInterpolate(t_r7.Name);
107
118
  } }
108
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_20_Template(rf, ctx) { if (rf & 1) {
109
- i0.ɵɵelement(0, "i", 37);
119
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_20_Template(rf, ctx) { if (rf & 1) {
120
+ i0.ɵɵelement(0, "i", 38);
110
121
  } }
111
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_21_Template(rf, ctx) { if (rf & 1) {
112
- i0.ɵɵelementStart(0, "span", 38);
122
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_21_Template(rf, ctx) { if (rf & 1) {
123
+ i0.ɵɵelementStart(0, "span", 39);
113
124
  i0.ɵɵtext(1, "not found");
114
125
  i0.ɵɵelementEnd();
115
126
  } }
116
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_36_Template(rf, ctx) { if (rf & 1) {
117
- i0.ɵɵelementStart(0, "option", 32);
127
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_For_36_Template(rf, ctx) { if (rf & 1) {
128
+ i0.ɵɵelementStart(0, "option", 33);
118
129
  i0.ɵɵtext(1);
119
130
  i0.ɵɵelementEnd();
120
131
  } if (rf & 2) {
@@ -123,75 +134,75 @@ function AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_36_Templa
123
134
  i0.ɵɵadvance();
124
135
  i0.ɵɵtextInterpolate2("", c_r8.Code, " - ", c_r8.Name);
125
136
  } }
126
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_43_Template(rf, ctx) { if (rf & 1) {
127
- i0.ɵɵelement(0, "i", 50);
137
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_43_Template(rf, ctx) { if (rf & 1) {
138
+ i0.ɵɵelement(0, "i", 51);
128
139
  } }
129
- function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template(rf, ctx) { if (rf & 1) {
140
+ function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template(rf, ctx) { if (rf & 1) {
130
141
  const _r6 = i0.ɵɵgetCurrentView();
131
- i0.ɵɵelementStart(0, "div", 10)(1, "div", 29)(2, "div", 30)(3, "label");
142
+ i0.ɵɵelementStart(0, "div", 11)(1, "div", 30)(2, "div", 31)(3, "label");
132
143
  i0.ɵɵtext(4, "Type");
133
144
  i0.ɵɵelementEnd();
134
- i0.ɵɵelementStart(5, "select", 31);
135
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_select_ngModelChange_5_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.TypeID, $event) || (ctx_r0.EditForm.TypeID = $event); return i0.ɵɵresetView($event); });
136
- i0.ɵɵrepeaterCreate(6, AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_7_Template, 2, 2, "option", 32, _forTrack1);
145
+ i0.ɵɵelementStart(5, "select", 32);
146
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_select_ngModelChange_5_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.TypeID, $event) || (ctx_r0.EditForm.TypeID = $event); return i0.ɵɵresetView($event); });
147
+ i0.ɵɵrepeaterCreate(6, AddressEditorComponent_Conditional_8_For_3_Conditional_11_For_7_Template, 2, 2, "option", 33, _forTrack1);
137
148
  i0.ɵɵelementEnd()();
138
- i0.ɵɵelementStart(8, "div", 33)(9, "label");
149
+ i0.ɵɵelementStart(8, "div", 34)(9, "label");
139
150
  i0.ɵɵtext(10, "Line 1");
140
151
  i0.ɵɵelementEnd();
141
- i0.ɵɵelementStart(11, "input", 34);
142
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_11_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line1, $event) || (ctx_r0.EditForm.Line1 = $event); return i0.ɵɵresetView($event); });
152
+ i0.ɵɵelementStart(11, "input", 35);
153
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_11_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line1, $event) || (ctx_r0.EditForm.Line1 = $event); return i0.ɵɵresetView($event); });
143
154
  i0.ɵɵelementEnd()();
144
- i0.ɵɵelementStart(12, "div", 35)(13, "label");
155
+ i0.ɵɵelementStart(12, "div", 36)(13, "label");
145
156
  i0.ɵɵtext(14, "Line 2");
146
157
  i0.ɵɵelementEnd();
147
- i0.ɵɵelementStart(15, "input", 36);
148
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line2, $event) || (ctx_r0.EditForm.Line2 = $event); return i0.ɵɵresetView($event); });
158
+ i0.ɵɵelementStart(15, "input", 37);
159
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line2, $event) || (ctx_r0.EditForm.Line2 = $event); return i0.ɵɵresetView($event); });
149
160
  i0.ɵɵelementEnd()()();
150
- i0.ɵɵelementStart(16, "div", 29)(17, "div", 33)(18, "label");
161
+ i0.ɵɵelementStart(16, "div", 30)(17, "div", 34)(18, "label");
151
162
  i0.ɵɵtext(19, " City ");
152
- i0.ɵɵconditionalCreate(20, AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_20_Template, 1, 0, "i", 37);
153
- i0.ɵɵconditionalCreate(21, AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_21_Template, 2, 0, "span", 38);
163
+ i0.ɵɵconditionalCreate(20, AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_20_Template, 1, 0, "i", 38);
164
+ i0.ɵɵconditionalCreate(21, AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_21_Template, 2, 0, "span", 39);
154
165
  i0.ɵɵelementEnd();
155
- i0.ɵɵelementStart(22, "input", 39);
156
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_22_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.City, $event) || (ctx_r0.EditForm.City = $event); return i0.ɵɵresetView($event); });
166
+ i0.ɵɵelementStart(22, "input", 40);
167
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_22_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.City, $event) || (ctx_r0.EditForm.City = $event); return i0.ɵɵresetView($event); });
157
168
  i0.ɵɵelementEnd()();
158
- i0.ɵɵelementStart(23, "div", 40)(24, "label");
169
+ i0.ɵɵelementStart(23, "div", 41)(24, "label");
159
170
  i0.ɵɵtext(25, "State");
160
171
  i0.ɵɵelementEnd();
161
- i0.ɵɵelementStart(26, "input", 41);
162
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_26_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.StateProvince, $event) || (ctx_r0.EditForm.StateProvince = $event); return i0.ɵɵresetView($event); });
172
+ i0.ɵɵelementStart(26, "input", 42);
173
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_26_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.StateProvince, $event) || (ctx_r0.EditForm.StateProvince = $event); return i0.ɵɵresetView($event); });
163
174
  i0.ɵɵelementEnd()();
164
- i0.ɵɵelementStart(27, "div", 42)(28, "label");
175
+ i0.ɵɵelementStart(27, "div", 43)(28, "label");
165
176
  i0.ɵɵtext(29, "Postal");
166
177
  i0.ɵɵelementEnd();
167
- i0.ɵɵelementStart(30, "input", 43);
168
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_30_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.PostalCode, $event) || (ctx_r0.EditForm.PostalCode = $event); return i0.ɵɵresetView($event); });
169
- i0.ɵɵlistener("blur", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_blur_30_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onPostalCodeBlur()); });
178
+ i0.ɵɵelementStart(30, "input", 44);
179
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_30_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.PostalCode, $event) || (ctx_r0.EditForm.PostalCode = $event); return i0.ɵɵresetView($event); });
180
+ i0.ɵɵlistener("blur", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_blur_30_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onPostalCodeBlur()); });
170
181
  i0.ɵɵelementEnd()();
171
- i0.ɵɵelementStart(31, "div", 44)(32, "label");
182
+ i0.ɵɵelementStart(31, "div", 45)(32, "label");
172
183
  i0.ɵɵtext(33, "Country");
173
184
  i0.ɵɵelementEnd();
174
- i0.ɵɵelementStart(34, "select", 31);
175
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_select_ngModelChange_34_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Country, $event) || (ctx_r0.EditForm.Country = $event); return i0.ɵɵresetView($event); });
176
- i0.ɵɵrepeaterCreate(35, AddressEditorComponent_Conditional_7_For_3_Conditional_11_For_36_Template, 2, 3, "option", 32, _forTrack2);
185
+ i0.ɵɵelementStart(34, "select", 32);
186
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_select_ngModelChange_34_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Country, $event) || (ctx_r0.EditForm.Country = $event); return i0.ɵɵresetView($event); });
187
+ i0.ɵɵrepeaterCreate(35, AddressEditorComponent_Conditional_8_For_3_Conditional_11_For_36_Template, 2, 3, "option", 33, _forTrack2);
177
188
  i0.ɵɵelementEnd()();
178
- i0.ɵɵelementStart(37, "div", 45)(38, "input", 46);
179
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_input_ngModelChange_38_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.IsPrimary, $event) || (ctx_r0.EditForm.IsPrimary = $event); return i0.ɵɵresetView($event); });
189
+ i0.ɵɵelementStart(37, "div", 46)(38, "input", 47);
190
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_input_ngModelChange_38_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.IsPrimary, $event) || (ctx_r0.EditForm.IsPrimary = $event); return i0.ɵɵresetView($event); });
180
191
  i0.ɵɵelementEnd();
181
- i0.ɵɵelementStart(39, "label", 47);
192
+ i0.ɵɵelementStart(39, "label", 48);
182
193
  i0.ɵɵtext(40, "Primary");
183
194
  i0.ɵɵelementEnd()()();
184
- i0.ɵɵelementStart(41, "div", 48)(42, "button", 49);
185
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_button_click_42_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onSave()); });
186
- i0.ɵɵconditionalCreate(43, AddressEditorComponent_Conditional_7_For_3_Conditional_11_Conditional_43_Template, 1, 0, "i", 50);
195
+ i0.ɵɵelementStart(41, "div", 49)(42, "button", 50);
196
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_button_click_42_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onSave()); });
197
+ i0.ɵɵconditionalCreate(43, AddressEditorComponent_Conditional_8_For_3_Conditional_11_Conditional_43_Template, 1, 0, "i", 51);
187
198
  i0.ɵɵtext(44, " Save ");
188
199
  i0.ɵɵelementEnd();
189
- i0.ɵɵelementStart(45, "button", 51);
190
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template_button_click_45_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onCancelEdit()); });
200
+ i0.ɵɵelementStart(45, "button", 52);
201
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template_button_click_45_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.onCancelEdit()); });
191
202
  i0.ɵɵtext(46, "Cancel");
192
203
  i0.ɵɵelementEnd()()();
193
204
  } if (rf & 2) {
194
- const ɵ$index_37_r5 = i0.ɵɵnextContext().$index;
205
+ const ɵ$index_45_r5 = i0.ɵɵnextContext().$index;
195
206
  const ctx_r0 = i0.ɵɵnextContext(2);
196
207
  i0.ɵɵadvance(5);
197
208
  i0.ɵɵtwoWayProperty("ngModel", ctx_r0.EditForm.TypeID);
@@ -216,34 +227,34 @@ function AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template(rf,
216
227
  i0.ɵɵadvance();
217
228
  i0.ɵɵrepeater(ctx_r0.Countries);
218
229
  i0.ɵɵadvance(3);
219
- i0.ɵɵproperty("id", "primary-edit-" + ɵ$index_37_r5);
230
+ i0.ɵɵproperty("id", "primary-edit-" + ɵ$index_45_r5);
220
231
  i0.ɵɵtwoWayProperty("ngModel", ctx_r0.EditForm.IsPrimary);
221
232
  i0.ɵɵadvance();
222
- i0.ɵɵproperty("for", "primary-edit-" + ɵ$index_37_r5);
233
+ i0.ɵɵproperty("for", "primary-edit-" + ɵ$index_45_r5);
223
234
  i0.ɵɵadvance(3);
224
235
  i0.ɵɵproperty("disabled", ctx_r0.Saving);
225
236
  i0.ɵɵadvance();
226
237
  i0.ɵɵconditional(ctx_r0.Saving ? 43 : -1);
227
238
  } }
228
- function AddressEditorComponent_Conditional_7_For_3_Template(rf, ctx) { if (rf & 1) {
229
- i0.ɵɵelementStart(0, "div", 12)(1, "div", 13);
239
+ function AddressEditorComponent_Conditional_8_For_3_Template(rf, ctx) { if (rf & 1) {
240
+ i0.ɵɵelementStart(0, "div", 13)(1, "div", 14);
230
241
  i0.ɵɵelement(2, "i");
231
242
  i0.ɵɵelementEnd();
232
- i0.ɵɵelementStart(3, "div", 14);
233
- i0.ɵɵconditionalCreate(4, AddressEditorComponent_Conditional_7_For_3_Conditional_4_Template, 4, 2)(5, AddressEditorComponent_Conditional_7_For_3_Conditional_5_Template, 2, 1, "div", 15);
243
+ i0.ɵɵelementStart(3, "div", 15);
244
+ i0.ɵɵconditionalCreate(4, AddressEditorComponent_Conditional_8_For_3_Conditional_4_Template, 4, 2)(5, AddressEditorComponent_Conditional_8_For_3_Conditional_5_Template, 2, 1, "div", 16);
234
245
  i0.ɵɵelementEnd();
235
- i0.ɵɵelementStart(6, "div", 16)(7, "span", 17);
246
+ i0.ɵɵelementStart(6, "div", 17)(7, "span", 18);
236
247
  i0.ɵɵtext(8);
237
248
  i0.ɵɵelementEnd();
238
- i0.ɵɵconditionalCreate(9, AddressEditorComponent_Conditional_7_For_3_Conditional_9_Template, 3, 0, "span", 18);
249
+ i0.ɵɵconditionalCreate(9, AddressEditorComponent_Conditional_8_For_3_Conditional_9_Template, 3, 0, "span", 19);
239
250
  i0.ɵɵelementEnd();
240
- i0.ɵɵconditionalCreate(10, AddressEditorComponent_Conditional_7_For_3_Conditional_10_Template, 6, 1, "div", 19);
251
+ i0.ɵɵconditionalCreate(10, AddressEditorComponent_Conditional_8_For_3_Conditional_10_Template, 6, 1, "div", 20);
241
252
  i0.ɵɵelementEnd();
242
- i0.ɵɵconditionalCreate(11, AddressEditorComponent_Conditional_7_For_3_Conditional_11_Template, 47, 14, "div", 10);
253
+ i0.ɵɵconditionalCreate(11, AddressEditorComponent_Conditional_8_For_3_Conditional_11_Template, 47, 14, "div", 11);
243
254
  } if (rf & 2) {
244
255
  let tmp_14_0;
245
256
  const item_r2 = ctx.$implicit;
246
- const ɵ$index_37_r5 = ctx.$index;
257
+ const ɵ$index_45_r5 = ctx.$index;
247
258
  const ctx_r0 = i0.ɵɵnextContext(2);
248
259
  i0.ɵɵclassProp("primary", item_r2.Link.IsPrimary);
249
260
  i0.ɵɵadvance(2);
@@ -257,10 +268,10 @@ function AddressEditorComponent_Conditional_7_For_3_Template(rf, ctx) { if (rf &
257
268
  i0.ɵɵadvance();
258
269
  i0.ɵɵconditional(ctx_r0.EditMode ? 10 : -1);
259
270
  i0.ɵɵadvance();
260
- i0.ɵɵconditional(ctx_r0.EditingIndex === ɵ$index_37_r5 ? 11 : -1);
271
+ i0.ɵɵconditional(ctx_r0.EditingIndex === ɵ$index_45_r5 ? 11 : -1);
261
272
  } }
262
- function AddressEditorComponent_Conditional_7_Conditional_4_For_7_Template(rf, ctx) { if (rf & 1) {
263
- i0.ɵɵelementStart(0, "option", 32);
273
+ function AddressEditorComponent_Conditional_8_Conditional_4_For_7_Template(rf, ctx) { if (rf & 1) {
274
+ i0.ɵɵelementStart(0, "option", 33);
264
275
  i0.ɵɵtext(1);
265
276
  i0.ɵɵelementEnd();
266
277
  } if (rf & 2) {
@@ -269,16 +280,16 @@ function AddressEditorComponent_Conditional_7_Conditional_4_For_7_Template(rf, c
269
280
  i0.ɵɵadvance();
270
281
  i0.ɵɵtextInterpolate(t_r10.Name);
271
282
  } }
272
- function AddressEditorComponent_Conditional_7_Conditional_4_Conditional_20_Template(rf, ctx) { if (rf & 1) {
273
- i0.ɵɵelement(0, "i", 37);
283
+ function AddressEditorComponent_Conditional_8_Conditional_4_Conditional_20_Template(rf, ctx) { if (rf & 1) {
284
+ i0.ɵɵelement(0, "i", 38);
274
285
  } }
275
- function AddressEditorComponent_Conditional_7_Conditional_4_Conditional_21_Template(rf, ctx) { if (rf & 1) {
276
- i0.ɵɵelementStart(0, "span", 38);
286
+ function AddressEditorComponent_Conditional_8_Conditional_4_Conditional_21_Template(rf, ctx) { if (rf & 1) {
287
+ i0.ɵɵelementStart(0, "span", 39);
277
288
  i0.ɵɵtext(1, "not found");
278
289
  i0.ɵɵelementEnd();
279
290
  } }
280
- function AddressEditorComponent_Conditional_7_Conditional_4_For_36_Template(rf, ctx) { if (rf & 1) {
281
- i0.ɵɵelementStart(0, "option", 32);
291
+ function AddressEditorComponent_Conditional_8_Conditional_4_For_36_Template(rf, ctx) { if (rf & 1) {
292
+ i0.ɵɵelementStart(0, "option", 33);
282
293
  i0.ɵɵtext(1);
283
294
  i0.ɵɵelementEnd();
284
295
  } if (rf & 2) {
@@ -287,71 +298,71 @@ function AddressEditorComponent_Conditional_7_Conditional_4_For_36_Template(rf,
287
298
  i0.ɵɵadvance();
288
299
  i0.ɵɵtextInterpolate2("", c_r11.Code, " - ", c_r11.Name);
289
300
  } }
290
- function AddressEditorComponent_Conditional_7_Conditional_4_Conditional_43_Template(rf, ctx) { if (rf & 1) {
291
- i0.ɵɵelement(0, "i", 50);
301
+ function AddressEditorComponent_Conditional_8_Conditional_4_Conditional_43_Template(rf, ctx) { if (rf & 1) {
302
+ i0.ɵɵelement(0, "i", 51);
292
303
  } }
293
- function AddressEditorComponent_Conditional_7_Conditional_4_Template(rf, ctx) { if (rf & 1) {
304
+ function AddressEditorComponent_Conditional_8_Conditional_4_Template(rf, ctx) { if (rf & 1) {
294
305
  const _r9 = i0.ɵɵgetCurrentView();
295
- i0.ɵɵelementStart(0, "div", 10)(1, "div", 29)(2, "div", 30)(3, "label");
306
+ i0.ɵɵelementStart(0, "div", 11)(1, "div", 30)(2, "div", 31)(3, "label");
296
307
  i0.ɵɵtext(4, "Type");
297
308
  i0.ɵɵelementEnd();
298
- i0.ɵɵelementStart(5, "select", 31);
299
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_select_ngModelChange_5_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.TypeID, $event) || (ctx_r0.EditForm.TypeID = $event); return i0.ɵɵresetView($event); });
300
- i0.ɵɵrepeaterCreate(6, AddressEditorComponent_Conditional_7_Conditional_4_For_7_Template, 2, 2, "option", 32, _forTrack1);
309
+ i0.ɵɵelementStart(5, "select", 32);
310
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_select_ngModelChange_5_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.TypeID, $event) || (ctx_r0.EditForm.TypeID = $event); return i0.ɵɵresetView($event); });
311
+ i0.ɵɵrepeaterCreate(6, AddressEditorComponent_Conditional_8_Conditional_4_For_7_Template, 2, 2, "option", 33, _forTrack1);
301
312
  i0.ɵɵelementEnd()();
302
- i0.ɵɵelementStart(8, "div", 33)(9, "label");
313
+ i0.ɵɵelementStart(8, "div", 34)(9, "label");
303
314
  i0.ɵɵtext(10, "Line 1");
304
315
  i0.ɵɵelementEnd();
305
- i0.ɵɵelementStart(11, "input", 34);
306
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_11_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line1, $event) || (ctx_r0.EditForm.Line1 = $event); return i0.ɵɵresetView($event); });
316
+ i0.ɵɵelementStart(11, "input", 35);
317
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_11_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line1, $event) || (ctx_r0.EditForm.Line1 = $event); return i0.ɵɵresetView($event); });
307
318
  i0.ɵɵelementEnd()();
308
- i0.ɵɵelementStart(12, "div", 35)(13, "label");
319
+ i0.ɵɵelementStart(12, "div", 36)(13, "label");
309
320
  i0.ɵɵtext(14, "Line 2");
310
321
  i0.ɵɵelementEnd();
311
- i0.ɵɵelementStart(15, "input", 36);
312
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line2, $event) || (ctx_r0.EditForm.Line2 = $event); return i0.ɵɵresetView($event); });
322
+ i0.ɵɵelementStart(15, "input", 37);
323
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_15_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Line2, $event) || (ctx_r0.EditForm.Line2 = $event); return i0.ɵɵresetView($event); });
313
324
  i0.ɵɵelementEnd()()();
314
- i0.ɵɵelementStart(16, "div", 29)(17, "div", 33)(18, "label");
325
+ i0.ɵɵelementStart(16, "div", 30)(17, "div", 34)(18, "label");
315
326
  i0.ɵɵtext(19, " City ");
316
- i0.ɵɵconditionalCreate(20, AddressEditorComponent_Conditional_7_Conditional_4_Conditional_20_Template, 1, 0, "i", 37);
317
- i0.ɵɵconditionalCreate(21, AddressEditorComponent_Conditional_7_Conditional_4_Conditional_21_Template, 2, 0, "span", 38);
327
+ i0.ɵɵconditionalCreate(20, AddressEditorComponent_Conditional_8_Conditional_4_Conditional_20_Template, 1, 0, "i", 38);
328
+ i0.ɵɵconditionalCreate(21, AddressEditorComponent_Conditional_8_Conditional_4_Conditional_21_Template, 2, 0, "span", 39);
318
329
  i0.ɵɵelementEnd();
319
- i0.ɵɵelementStart(22, "input", 39);
320
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_22_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.City, $event) || (ctx_r0.EditForm.City = $event); return i0.ɵɵresetView($event); });
330
+ i0.ɵɵelementStart(22, "input", 40);
331
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_22_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.City, $event) || (ctx_r0.EditForm.City = $event); return i0.ɵɵresetView($event); });
321
332
  i0.ɵɵelementEnd()();
322
- i0.ɵɵelementStart(23, "div", 40)(24, "label");
333
+ i0.ɵɵelementStart(23, "div", 41)(24, "label");
323
334
  i0.ɵɵtext(25, "State");
324
335
  i0.ɵɵelementEnd();
325
- i0.ɵɵelementStart(26, "input", 41);
326
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_26_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.StateProvince, $event) || (ctx_r0.EditForm.StateProvince = $event); return i0.ɵɵresetView($event); });
336
+ i0.ɵɵelementStart(26, "input", 42);
337
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_26_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.StateProvince, $event) || (ctx_r0.EditForm.StateProvince = $event); return i0.ɵɵresetView($event); });
327
338
  i0.ɵɵelementEnd()();
328
- i0.ɵɵelementStart(27, "div", 42)(28, "label");
339
+ i0.ɵɵelementStart(27, "div", 43)(28, "label");
329
340
  i0.ɵɵtext(29, "Postal");
330
341
  i0.ɵɵelementEnd();
331
- i0.ɵɵelementStart(30, "input", 43);
332
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_30_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.PostalCode, $event) || (ctx_r0.EditForm.PostalCode = $event); return i0.ɵɵresetView($event); });
333
- i0.ɵɵlistener("blur", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_blur_30_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onPostalCodeBlur()); });
342
+ i0.ɵɵelementStart(30, "input", 44);
343
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_30_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.PostalCode, $event) || (ctx_r0.EditForm.PostalCode = $event); return i0.ɵɵresetView($event); });
344
+ i0.ɵɵlistener("blur", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_blur_30_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onPostalCodeBlur()); });
334
345
  i0.ɵɵelementEnd()();
335
- i0.ɵɵelementStart(31, "div", 44)(32, "label");
346
+ i0.ɵɵelementStart(31, "div", 45)(32, "label");
336
347
  i0.ɵɵtext(33, "Country");
337
348
  i0.ɵɵelementEnd();
338
- i0.ɵɵelementStart(34, "select", 31);
339
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_select_ngModelChange_34_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Country, $event) || (ctx_r0.EditForm.Country = $event); return i0.ɵɵresetView($event); });
340
- i0.ɵɵrepeaterCreate(35, AddressEditorComponent_Conditional_7_Conditional_4_For_36_Template, 2, 3, "option", 32, _forTrack2);
349
+ i0.ɵɵelementStart(34, "select", 32);
350
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_select_ngModelChange_34_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.Country, $event) || (ctx_r0.EditForm.Country = $event); return i0.ɵɵresetView($event); });
351
+ i0.ɵɵrepeaterCreate(35, AddressEditorComponent_Conditional_8_Conditional_4_For_36_Template, 2, 3, "option", 33, _forTrack2);
341
352
  i0.ɵɵelementEnd()();
342
- i0.ɵɵelementStart(37, "div", 45)(38, "input", 52);
343
- i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_7_Conditional_4_Template_input_ngModelChange_38_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.IsPrimary, $event) || (ctx_r0.EditForm.IsPrimary = $event); return i0.ɵɵresetView($event); });
353
+ i0.ɵɵelementStart(37, "div", 46)(38, "input", 53);
354
+ i0.ɵɵtwoWayListener("ngModelChange", function AddressEditorComponent_Conditional_8_Conditional_4_Template_input_ngModelChange_38_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.EditForm.IsPrimary, $event) || (ctx_r0.EditForm.IsPrimary = $event); return i0.ɵɵresetView($event); });
344
355
  i0.ɵɵelementEnd();
345
- i0.ɵɵelementStart(39, "label", 53);
356
+ i0.ɵɵelementStart(39, "label", 54);
346
357
  i0.ɵɵtext(40, "Primary");
347
358
  i0.ɵɵelementEnd()()();
348
- i0.ɵɵelementStart(41, "div", 48)(42, "button", 49);
349
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_Conditional_4_Template_button_click_42_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSave()); });
350
- i0.ɵɵconditionalCreate(43, AddressEditorComponent_Conditional_7_Conditional_4_Conditional_43_Template, 1, 0, "i", 50);
359
+ i0.ɵɵelementStart(41, "div", 49)(42, "button", 50);
360
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_Conditional_4_Template_button_click_42_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onSave()); });
361
+ i0.ɵɵconditionalCreate(43, AddressEditorComponent_Conditional_8_Conditional_4_Conditional_43_Template, 1, 0, "i", 51);
351
362
  i0.ɵɵtext(44, " Save ");
352
363
  i0.ɵɵelementEnd();
353
- i0.ɵɵelementStart(45, "button", 51);
354
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_Conditional_4_Template_button_click_45_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onCancelEdit()); });
364
+ i0.ɵɵelementStart(45, "button", 52);
365
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_Conditional_4_Template_button_click_45_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onCancelEdit()); });
355
366
  i0.ɵɵtext(46, "Cancel");
356
367
  i0.ɵɵelementEnd()()();
357
368
  } if (rf & 2) {
@@ -385,20 +396,20 @@ function AddressEditorComponent_Conditional_7_Conditional_4_Template(rf, ctx) {
385
396
  i0.ɵɵadvance();
386
397
  i0.ɵɵconditional(ctx_r0.Saving ? 43 : -1);
387
398
  } }
388
- function AddressEditorComponent_Conditional_7_Conditional_5_Template(rf, ctx) { if (rf & 1) {
399
+ function AddressEditorComponent_Conditional_8_Conditional_5_Template(rf, ctx) { if (rf & 1) {
389
400
  const _r12 = i0.ɵɵgetCurrentView();
390
- i0.ɵɵelementStart(0, "div", 11)(1, "button", 54);
391
- i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_7_Conditional_5_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r12); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onAdd()); });
392
- i0.ɵɵelement(2, "i", 55);
401
+ i0.ɵɵelementStart(0, "div", 12)(1, "button", 55);
402
+ i0.ɵɵlistener("click", function AddressEditorComponent_Conditional_8_Conditional_5_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r12); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onAdd()); });
403
+ i0.ɵɵelement(2, "i", 56);
393
404
  i0.ɵɵtext(3, " Add Address ");
394
405
  i0.ɵɵelementEnd()();
395
406
  } }
396
- function AddressEditorComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
407
+ function AddressEditorComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
397
408
  i0.ɵɵelementStart(0, "div", 4);
398
- i0.ɵɵconditionalCreate(1, AddressEditorComponent_Conditional_7_Conditional_1_Template, 3, 0, "div", 9);
399
- i0.ɵɵrepeaterCreate(2, AddressEditorComponent_Conditional_7_For_3_Template, 12, 9, null, null, _forTrack0);
400
- i0.ɵɵconditionalCreate(4, AddressEditorComponent_Conditional_7_Conditional_4_Template, 47, 12, "div", 10);
401
- i0.ɵɵconditionalCreate(5, AddressEditorComponent_Conditional_7_Conditional_5_Template, 4, 0, "div", 11);
409
+ i0.ɵɵconditionalCreate(1, AddressEditorComponent_Conditional_8_Conditional_1_Template, 3, 0, "div", 10);
410
+ i0.ɵɵrepeaterCreate(2, AddressEditorComponent_Conditional_8_For_3_Template, 12, 9, null, null, _forTrack0);
411
+ i0.ɵɵconditionalCreate(4, AddressEditorComponent_Conditional_8_Conditional_4_Template, 47, 12, "div", 11);
412
+ i0.ɵɵconditionalCreate(5, AddressEditorComponent_Conditional_8_Conditional_5_Template, 4, 0, "div", 12);
402
413
  i0.ɵɵelementEnd();
403
414
  } if (rf & 2) {
404
415
  const ctx_r0 = i0.ɵɵnextContext();
@@ -557,6 +568,11 @@ export class AddressEditorComponent {
557
568
  * so a misconfiguration surfaces as a visible message instead of a failed INSERT.
558
569
  */
559
570
  LoadError = null;
571
+ /**
572
+ * Set when a delete is refused or fails. Rendered above the list, which stays visible,
573
+ * and cleared by the next delete attempt.
574
+ */
575
+ ActionError = null;
560
576
  /** Cached action ID for the Postal Code Lookup action. */
561
577
  postalCodeLookupActionID = null;
562
578
  /** Whether a postal code lookup is currently in progress. */
@@ -999,51 +1015,109 @@ export class AddressEditorComponent {
999
1015
  }
1000
1016
  }
1001
1017
  /**
1002
- * Deletes the address at the given index, removing both the AddressLink
1003
- * and the orphaned Address record.
1018
+ * Removes the address at the given index from this record.
1004
1019
  *
1005
- * After deletion, the address list is reloaded.
1020
+ * The AddressLink is always deleted. The Address row is deleted with it only when
1021
+ * nothing else references it — another party's link, or a direct reference from
1022
+ * another entity — and then both deletes run in one transaction so neither is left
1023
+ * behind alone. If the references cannot be checked, only the link is deleted.
1024
+ * A refused or failed delete is shown in {@link ActionError}.
1006
1025
  *
1007
1026
  * @param index - The zero-based index of the address item in {@link AddressItems}
1008
1027
  */
1009
1028
  async onDelete(index) {
1010
1029
  const item = this.AddressItems[index];
1030
+ this.ActionError = null;
1011
1031
  this.Saving = true;
1012
1032
  this.cdr.detectChanges();
1033
+ let error = null;
1013
1034
  try {
1014
- // Delete the link
1015
- await item.Link.Delete();
1016
- // Also delete the address record (it's orphaned now)
1017
- await item.Address.Delete();
1018
- await this.loadData();
1019
- this.DataChanged.emit();
1035
+ error = await this.deleteItem(item);
1020
1036
  }
1021
1037
  catch (err) {
1022
1038
  console.error('AddressEditor: Error deleting address', err);
1039
+ error = `Could not remove the address: ${err instanceof Error ? err.message : String(err)}`;
1040
+ }
1041
+ try {
1042
+ // Reload either way: on failure the entity objects still hold the failed transaction
1043
+ // group, and the list should show what the database actually has.
1044
+ await this.loadData();
1045
+ if (!error)
1046
+ this.DataChanged.emit();
1023
1047
  }
1024
1048
  finally {
1049
+ this.ActionError = error;
1025
1050
  this.Saving = false;
1026
1051
  this.cdr.detectChanges();
1027
1052
  }
1028
1053
  }
1054
+ /**
1055
+ * Deletes the link, and the Address too when nothing else references it.
1056
+ * @returns `null` on success, otherwise the reason the delete was refused
1057
+ */
1058
+ async deleteItem(item) {
1059
+ const md = new Metadata();
1060
+ if (!await this.isAddressUnreferenced(md, item)) {
1061
+ return await item.Link.Delete() ? null : this.deleteFailure(item.Link);
1062
+ }
1063
+ // The link must go first: FK_AddressLink_Address refuses the Address delete while it exists.
1064
+ const tg = await md.CreateTransactionGroup();
1065
+ item.Link.TransactionGroup = tg;
1066
+ item.Address.TransactionGroup = tg;
1067
+ if (!await item.Link.Delete())
1068
+ return this.deleteFailure(item.Link);
1069
+ if (!await item.Address.Delete())
1070
+ return this.deleteFailure(item.Address);
1071
+ if (!await tg.Submit()) {
1072
+ const failed = [item.Link, item.Address].find(e => e.LatestResult && !e.LatestResult.Success);
1073
+ return this.deleteFailure(failed ?? item.Link);
1074
+ }
1075
+ return null;
1076
+ }
1077
+ /**
1078
+ * Whether nothing but this item's link references its Address.
1079
+ *
1080
+ * Returns `false` when the check itself fails, so the caller keeps the Address row: an
1081
+ * unused row left behind is harmless, a deleted row something still points at is not.
1082
+ * The check fails on any host without a read-only database connection, because MJ's
1083
+ * GetRecordDependencies resolver uses only that connection.
1084
+ */
1085
+ async isAddressUnreferenced(md, item) {
1086
+ try {
1087
+ const references = await md.GetRecordDependencies('MJ_BizApps_Common: Addresses', item.Address.PrimaryKey);
1088
+ return otherAddressReferences(references, item.Link.ID).length === 0;
1089
+ }
1090
+ catch (err) {
1091
+ console.warn('AddressEditor: Could not check what references the address; keeping the Address row', err);
1092
+ return false;
1093
+ }
1094
+ }
1095
+ /** Builds the user-facing reason for a refused delete from the entity's latest result. */
1096
+ deleteFailure(entity) {
1097
+ const reason = entity.LatestResult?.CompleteMessage;
1098
+ return `Could not remove the address${reason ? `: ${reason}` : '.'}`;
1099
+ }
1029
1100
  static ɵfac = function AddressEditorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AddressEditorComponent)(); };
1030
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AddressEditorComponent, selectors: [["bizapps-address-editor"]], inputs: { EditMode: "EditMode", EntityName: "EntityName", RecordID: "RecordID" }, outputs: { DataChanged: "DataChanged" }, decls: 8, vars: 2, consts: [[1, "section-header"], [1, "section-label"], [1, "fa-solid", "fa-map-marker-alt"], [1, "count"], [1, "addr-table"], [1, "load-error-row"], [1, "fa-solid", "fa-triangle-exclamation"], [1, "loading-row"], [1, "fa-solid", "fa-spinner"], [1, "empty-state"], [1, "addr-table-edit-panel"], [1, "addr-table-footer"], [1, "addr-table-row"], [1, "addr-table-icon"], [1, "addr-table-content"], [1, "addr-table-main"], [1, "addr-table-badges"], [1, "badge", "badge-type"], [1, "badge", "badge-primary"], [1, "addr-table-actions"], [1, "addr-table-sub"], [1, "fa-solid", "fa-star"], ["title", "Set as Primary", 1, "btn-ghost"], ["title", "Edit", 1, "btn-ghost", 3, "click"], [1, "fa-solid", "fa-pen"], ["title", "Remove", 1, "btn-ghost", "danger", 3, "click"], [1, "fa-solid", "fa-trash"], ["title", "Set as Primary", 1, "btn-ghost", 3, "click"], [1, "fa-regular", "fa-star"], [1, "form-row"], [1, "form-field", "type-field"], [3, "ngModelChange", "ngModel"], [3, "value"], [1, "form-field"], ["type", "text", "placeholder", "Street address", 3, "ngModelChange", "ngModel"], [1, "form-field", "line2-field"], ["type", "text", "placeholder", "Apt, suite", 3, "ngModelChange", "ngModel"], [1, "fa-solid", "fa-spinner", "fa-spin", "lookup-spinner"], [1, "lookup-not-found"], ["type", "text", "placeholder", "City", 3, "ngModelChange", "ngModel"], [1, "form-field", "state-field"], ["type", "text", "placeholder", "ST", 3, "ngModelChange", "ngModel"], [1, "form-field", "postal-field"], ["type", "text", "placeholder", "Zip", 3, "ngModelChange", "blur", "ngModel"], [1, "form-field", "country-field"], [1, "checkbox-field"], ["type", "checkbox", 3, "ngModelChange", "id", "ngModel"], [3, "for"], [1, "form-actions"], [1, "btn", "btn-primary", "btn-sm", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "btn", "btn-cancel", "btn-sm", 3, "click"], ["type", "checkbox", "id", "primary-add", 3, "ngModelChange", "ngModel"], ["for", "primary-add"], [1, "btn", "btn-outline", "full-width", 3, "click"], [1, "fa-solid", "fa-plus"]], template: function AddressEditorComponent_Template(rf, ctx) { if (rf & 1) {
1101
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AddressEditorComponent, selectors: [["bizapps-address-editor"]], inputs: { EditMode: "EditMode", EntityName: "EntityName", RecordID: "RecordID" }, outputs: { DataChanged: "DataChanged" }, decls: 9, vars: 3, consts: [[1, "section-header"], [1, "section-label"], [1, "fa-solid", "fa-map-marker-alt"], [1, "count"], [1, "addr-table"], [1, "load-error-row", "action-error-row"], [1, "fa-solid", "fa-triangle-exclamation"], [1, "load-error-row"], [1, "loading-row"], [1, "fa-solid", "fa-spinner"], [1, "empty-state"], [1, "addr-table-edit-panel"], [1, "addr-table-footer"], [1, "addr-table-row"], [1, "addr-table-icon"], [1, "addr-table-content"], [1, "addr-table-main"], [1, "addr-table-badges"], [1, "badge", "badge-type"], [1, "badge", "badge-primary"], [1, "addr-table-actions"], [1, "addr-table-sub"], [1, "fa-solid", "fa-star"], ["title", "Set as Primary", 1, "btn-ghost"], ["title", "Edit", 1, "btn-ghost", 3, "click"], [1, "fa-solid", "fa-pen"], ["title", "Remove", 1, "btn-ghost", "danger", 3, "click"], [1, "fa-solid", "fa-trash"], ["title", "Set as Primary", 1, "btn-ghost", 3, "click"], [1, "fa-regular", "fa-star"], [1, "form-row"], [1, "form-field", "type-field"], [3, "ngModelChange", "ngModel"], [3, "value"], [1, "form-field"], ["type", "text", "placeholder", "Street address", 3, "ngModelChange", "ngModel"], [1, "form-field", "line2-field"], ["type", "text", "placeholder", "Apt, suite", 3, "ngModelChange", "ngModel"], [1, "fa-solid", "fa-spinner", "fa-spin", "lookup-spinner"], [1, "lookup-not-found"], ["type", "text", "placeholder", "City", 3, "ngModelChange", "ngModel"], [1, "form-field", "state-field"], ["type", "text", "placeholder", "ST", 3, "ngModelChange", "ngModel"], [1, "form-field", "postal-field"], ["type", "text", "placeholder", "Zip", 3, "ngModelChange", "blur", "ngModel"], [1, "form-field", "country-field"], [1, "checkbox-field"], ["type", "checkbox", 3, "ngModelChange", "id", "ngModel"], [3, "for"], [1, "form-actions"], [1, "btn", "btn-primary", "btn-sm", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "btn", "btn-cancel", "btn-sm", 3, "click"], ["type", "checkbox", "id", "primary-add", 3, "ngModelChange", "ngModel"], ["for", "primary-add"], [1, "btn", "btn-outline", "full-width", 3, "click"], [1, "fa-solid", "fa-plus"]], template: function AddressEditorComponent_Template(rf, ctx) { if (rf & 1) {
1031
1102
  i0.ɵɵelementStart(0, "div", 0)(1, "span", 1);
1032
1103
  i0.ɵɵelement(2, "i", 2);
1033
1104
  i0.ɵɵtext(3, " Addresses ");
1034
1105
  i0.ɵɵconditionalCreate(4, AddressEditorComponent_Conditional_4_Template, 2, 1, "span", 3);
1035
1106
  i0.ɵɵelementEnd()();
1036
- i0.ɵɵconditionalCreate(5, AddressEditorComponent_Conditional_5_Template, 4, 1, "div", 4)(6, AddressEditorComponent_Conditional_6_Template, 4, 0, "div", 4)(7, AddressEditorComponent_Conditional_7_Template, 6, 3, "div", 4);
1107
+ i0.ɵɵconditionalCreate(5, AddressEditorComponent_Conditional_5_Template, 4, 1, "div", 4);
1108
+ i0.ɵɵconditionalCreate(6, AddressEditorComponent_Conditional_6_Template, 4, 1, "div", 4)(7, AddressEditorComponent_Conditional_7_Template, 4, 0, "div", 4)(8, AddressEditorComponent_Conditional_8_Template, 6, 3, "div", 4);
1037
1109
  } if (rf & 2) {
1038
1110
  i0.ɵɵadvance(4);
1039
1111
  i0.ɵɵconditional(!ctx.Loading && ctx.AddressItems.length > 0 ? 4 : -1);
1040
1112
  i0.ɵɵadvance();
1041
- i0.ɵɵconditional(ctx.LoadError ? 5 : ctx.Loading ? 6 : 7);
1042
- } }, dependencies: [CommonModule, FormsModule, i1.NgSelectOption, i1.ɵNgSelectMultipleOption, i1.DefaultValueAccessor, i1.CheckboxControlValueAccessor, i1.SelectControlValueAccessor, i1.NgControlStatus, i1.NgModel], styles: ["\n\n\n\n\n\n[_nghost-%COMP%] {\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n color: var(--mj-text-primary);\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n}\n\n.section-label[_ngcontent-%COMP%] {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.section-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n}\n\n.count[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-text-muted);\n font-weight: 400;\n}\n\n\n\n.addr-table[_ngcontent-%COMP%] {\n width: 100%;\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n overflow: hidden;\n}\n\n\n\n.addr-table-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-bg-surface-sunken);\n gap: 12px;\n transition: background 0.1s ease;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:last-child {\n border-bottom: none;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-card);\n}\n\n.addr-table-row.primary[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n}\n\n\n\n.addr-table-icon[_ngcontent-%COMP%] {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n\n\n.addr-table-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.addr-table-main[_ngcontent-%COMP%] {\n font-size: 14px;\n color: var(--mj-text-primary);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.addr-table-sub[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n\n\n\n.addr-table-badges[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-shrink: 0;\n}\n\n.badge[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.badge-type[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n}\n\n.badge-primary[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n}\n\n\n\n.addr-table-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:hover .addr-table-actions[_ngcontent-%COMP%] {\n opacity: 1;\n}\n\n\n\n.btn-ghost[_ngcontent-%COMP%] {\n background: transparent;\n color: var(--mj-text-disabled);\n padding: 6px 8px;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 13px;\n transition: all 0.15s ease;\n}\n\n.btn-ghost[_ngcontent-%COMP%]:hover {\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n}\n\n.btn-ghost.danger[_ngcontent-%COMP%]:hover {\n color: var(--mj-status-error-text);\n background: var(--mj-status-error-bg);\n}\n\n\n\n.addr-table-edit-panel[_ngcontent-%COMP%] {\n padding: 16px;\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface));\n border-bottom: 2px solid var(--mj-brand-primary);\n}\n\n\n\n.addr-table-footer[_ngcontent-%COMP%] {\n padding: 10px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n}\n\n\n\n.btn[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.btn-primary[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-brand-on-primary);\n}\n\n.btn-primary[_ngcontent-%COMP%]:hover {\n background: var(--mj-brand-primary-hover);\n}\n\n.btn-outline[_ngcontent-%COMP%] {\n background: transparent;\n border: 1px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n}\n\n.btn-outline[_ngcontent-%COMP%]:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 6%, var(--mj-bg-surface));\n}\n\n.btn-outline.full-width[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: center;\n}\n\n.btn-cancel[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n}\n\n.btn-cancel[_ngcontent-%COMP%]:hover {\n background: var(--mj-border-subtle);\n}\n\n.btn-sm[_ngcontent-%COMP%] {\n padding: 6px 14px;\n font-size: 12px;\n}\n\n\n\n.form-row[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.form-field[_ngcontent-%COMP%] {\n flex: 1;\n}\n\n.form-field[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n display: block;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n margin-bottom: 4px;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%], \n.form-field[_ngcontent-%COMP%] select[_ngcontent-%COMP%] {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n font-family: inherit;\n background: var(--mj-bg-surface);\n}\n\n.form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus, \n.form-field[_ngcontent-%COMP%] select[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n}\n\n.form-field.type-field[_ngcontent-%COMP%] {\n max-width: 150px;\n}\n\n.form-field.line2-field[_ngcontent-%COMP%] {\n max-width: 150px;\n}\n\n.form-field.state-field[_ngcontent-%COMP%] {\n max-width: 80px;\n}\n\n.form-field.postal-field[_ngcontent-%COMP%] {\n max-width: 130px;\n}\n\n.form-field.country-field[_ngcontent-%COMP%] {\n max-width: 180px;\n}\n\n.checkbox-field[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding-top: 22px;\n}\n\n.checkbox-field[_ngcontent-%COMP%] input[type=\"checkbox\"][_ngcontent-%COMP%] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.checkbox-field[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n}\n\n.form-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n margin-top: 8px;\n}\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n text-align: center;\n padding: 32px 16px;\n color: var(--mj-text-muted);\n font-size: 14px;\n}\n\n.empty-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 24px;\n color: var(--mj-border-strong);\n margin-bottom: 8px;\n display: block;\n}\n\n\n\n.loading-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: var(--mj-text-muted);\n font-size: 13px;\n gap: 8px;\n}\n\n.loading-row[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n\n\n\n.load-error-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 24px;\n color: var(--mj-status-error-text);\n font-size: 13px;\n gap: 8px;\n}\n\n@keyframes _ngcontent-%COMP%_spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n.lookup-spinner[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--mj-brand-primary);\n margin-left: 4px;\n}\n\n.lookup-not-found[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--mj-status-warning-text);\n margin-left: 4px;\n font-weight: 600;\n}"] });
1113
+ i0.ɵɵconditional(ctx.ActionError ? 5 : -1);
1114
+ i0.ɵɵadvance();
1115
+ i0.ɵɵconditional(ctx.LoadError ? 6 : ctx.Loading ? 7 : 8);
1116
+ } }, dependencies: [CommonModule, FormsModule, i1.NgSelectOption, i1.ɵNgSelectMultipleOption, i1.DefaultValueAccessor, i1.CheckboxControlValueAccessor, i1.SelectControlValueAccessor, i1.NgControlStatus, i1.NgModel], styles: ["\n\n\n\n\n\n[_nghost-%COMP%] {\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n color: var(--mj-text-primary);\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n}\n\n.section-label[_ngcontent-%COMP%] {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.section-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n}\n\n.count[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-text-muted);\n font-weight: 400;\n}\n\n\n\n.addr-table[_ngcontent-%COMP%] {\n width: 100%;\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n overflow: hidden;\n}\n\n\n\n.addr-table-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-bg-surface-sunken);\n gap: 12px;\n transition: background 0.1s ease;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:last-child {\n border-bottom: none;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-card);\n}\n\n.addr-table-row.primary[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n}\n\n\n\n.addr-table-icon[_ngcontent-%COMP%] {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n\n\n.addr-table-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.addr-table-main[_ngcontent-%COMP%] {\n font-size: 14px;\n color: var(--mj-text-primary);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.addr-table-sub[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n\n\n\n.addr-table-badges[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-shrink: 0;\n}\n\n.badge[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.badge-type[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n}\n\n.badge-primary[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n}\n\n\n\n.addr-table-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n\n.addr-table-row[_ngcontent-%COMP%]:hover .addr-table-actions[_ngcontent-%COMP%] {\n opacity: 1;\n}\n\n\n\n.btn-ghost[_ngcontent-%COMP%] {\n background: transparent;\n color: var(--mj-text-disabled);\n padding: 6px 8px;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 13px;\n transition: all 0.15s ease;\n}\n\n.btn-ghost[_ngcontent-%COMP%]:hover {\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n}\n\n.btn-ghost.danger[_ngcontent-%COMP%]:hover {\n color: var(--mj-status-error-text);\n background: var(--mj-status-error-bg);\n}\n\n\n\n.addr-table-edit-panel[_ngcontent-%COMP%] {\n padding: 16px;\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface));\n border-bottom: 2px solid var(--mj-brand-primary);\n}\n\n\n\n.addr-table-footer[_ngcontent-%COMP%] {\n padding: 10px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n}\n\n\n\n.btn[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.btn-primary[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-brand-on-primary);\n}\n\n.btn-primary[_ngcontent-%COMP%]:hover {\n background: var(--mj-brand-primary-hover);\n}\n\n.btn-outline[_ngcontent-%COMP%] {\n background: transparent;\n border: 1px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n}\n\n.btn-outline[_ngcontent-%COMP%]:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 6%, var(--mj-bg-surface));\n}\n\n.btn-outline.full-width[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: center;\n}\n\n.btn-cancel[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n}\n\n.btn-cancel[_ngcontent-%COMP%]:hover {\n background: var(--mj-border-subtle);\n}\n\n.btn-sm[_ngcontent-%COMP%] {\n padding: 6px 14px;\n font-size: 12px;\n}\n\n\n\n.form-row[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.form-field[_ngcontent-%COMP%] {\n flex: 1;\n}\n\n.form-field[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n display: block;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n margin-bottom: 4px;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%], \n.form-field[_ngcontent-%COMP%] select[_ngcontent-%COMP%] {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n font-family: inherit;\n background: var(--mj-bg-surface);\n}\n\n.form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus, \n.form-field[_ngcontent-%COMP%] select[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n}\n\n.form-field.type-field[_ngcontent-%COMP%] {\n max-width: 150px;\n}\n\n.form-field.line2-field[_ngcontent-%COMP%] {\n max-width: 150px;\n}\n\n.form-field.state-field[_ngcontent-%COMP%] {\n max-width: 80px;\n}\n\n.form-field.postal-field[_ngcontent-%COMP%] {\n max-width: 130px;\n}\n\n.form-field.country-field[_ngcontent-%COMP%] {\n max-width: 180px;\n}\n\n.checkbox-field[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding-top: 22px;\n}\n\n.checkbox-field[_ngcontent-%COMP%] input[type=\"checkbox\"][_ngcontent-%COMP%] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.checkbox-field[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n}\n\n.form-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n margin-top: 8px;\n}\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n text-align: center;\n padding: 32px 16px;\n color: var(--mj-text-muted);\n font-size: 14px;\n}\n\n.empty-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 24px;\n color: var(--mj-border-strong);\n margin-bottom: 8px;\n display: block;\n}\n\n\n\n.loading-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: var(--mj-text-muted);\n font-size: 13px;\n gap: 8px;\n}\n\n.loading-row[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n\n\n\n.load-error-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 24px;\n color: var(--mj-status-error-text);\n font-size: 13px;\n gap: 8px;\n}\n\n\n\n.action-error-row[_ngcontent-%COMP%] {\n padding: 8px 12px;\n}\n\n@keyframes _ngcontent-%COMP%_spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n.lookup-spinner[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--mj-brand-primary);\n margin-left: 4px;\n}\n\n.lookup-not-found[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--mj-status-warning-text);\n margin-left: 4px;\n font-weight: 600;\n}"] });
1043
1117
  }
1044
1118
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AddressEditorComponent, [{
1045
1119
  type: Component,
1046
- args: [{ standalone: true, imports: [CommonModule, FormsModule], selector: 'bizapps-address-editor', template: "<!-- AddressEditor - Compact Table Design (Option B) -->\n\n<div class=\"section-header\">\n <span class=\"section-label\">\n <i class=\"fa-solid fa-map-marker-alt\"></i>\n Addresses\n @if (!Loading && AddressItems.length > 0) {\n <span class=\"count\">({{ AddressItems.length }})</span>\n }\n </span>\n</div>\n\n@if (LoadError) {\n <div class=\"addr-table\">\n <div class=\"load-error-row\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ LoadError }}\n </div>\n </div>\n} @else if (Loading) {\n <div class=\"addr-table\">\n <div class=\"loading-row\">\n <i class=\"fa-solid fa-spinner\"></i> Loading addresses...\n </div>\n </div>\n} @else {\n <div class=\"addr-table\">\n @if (AddressItems.length === 0 && EditingIndex !== -1) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-map-marker-alt\"></i>\n No addresses linked yet\n </div>\n }\n\n @for (item of AddressItems; track item.Link.ID; let i = $index) {\n <!-- Address Row -->\n <div class=\"addr-table-row\" [class.primary]=\"item.Link.IsPrimary\">\n <div class=\"addr-table-icon\">\n <i [class]=\"getAddressTypeIcon(item.Link.AddressTypeID)\"></i>\n </div>\n <div class=\"addr-table-content\">\n @if (formatAddressLine1(item.Address); as street) {\n <div class=\"addr-table-main\">{{ street }}</div>\n <div class=\"addr-table-sub\">{{ formatAddressLine2(item.Address) }}</div>\n } @else {\n <!-- Location-only address: the locality line becomes the headline -->\n <div class=\"addr-table-main\">{{ formatAddressLine2(item.Address) }}</div>\n }\n </div>\n <div class=\"addr-table-badges\">\n <span class=\"badge badge-type\">{{ item.Link.AddressType }}</span>\n @if (item.Link.IsPrimary) {\n <span class=\"badge badge-primary\"><i class=\"fa-solid fa-star\"></i> Primary</span>\n }\n </div>\n @if (EditMode) {\n <div class=\"addr-table-actions\">\n @if (!item.Link.IsPrimary) {\n <button class=\"btn-ghost\" title=\"Set as Primary\" (click)=\"onSetPrimary(i)\">\n <i class=\"fa-regular fa-star\"></i>\n </button>\n }\n <button class=\"btn-ghost\" title=\"Edit\" (click)=\"onEdit(i)\">\n <i class=\"fa-solid fa-pen\"></i>\n </button>\n <button class=\"btn-ghost danger\" title=\"Remove\" (click)=\"onDelete(i)\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n </div>\n }\n </div>\n\n <!-- Inline Edit Panel (shown when editing this row) -->\n @if (EditingIndex === i) {\n <div class=\"addr-table-edit-panel\">\n <div class=\"form-row\">\n <div class=\"form-field type-field\">\n <label>Type</label>\n <select [(ngModel)]=\"EditForm.TypeID\">\n @for (t of AddressTypes; track t.ID) {\n <option [value]=\"t.ID\">{{ t.Name }}</option>\n }\n </select>\n </div>\n <div class=\"form-field\">\n <label>Line 1</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line1\" placeholder=\"Street address\">\n </div>\n <div class=\"form-field line2-field\">\n <label>Line 2</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line2\" placeholder=\"Apt, suite\">\n </div>\n </div>\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label>\n City\n @if (LookingUpPostalCode) { <i class=\"fa-solid fa-spinner fa-spin lookup-spinner\"></i> }\n @if (PostalCodeNotFound) { <span class=\"lookup-not-found\">not found</span> }\n </label>\n <input type=\"text\" [(ngModel)]=\"EditForm.City\" placeholder=\"City\">\n </div>\n <div class=\"form-field state-field\">\n <label>State</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.StateProvince\" placeholder=\"ST\">\n </div>\n <div class=\"form-field postal-field\">\n <label>Postal</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.PostalCode\" placeholder=\"Zip\" (blur)=\"onPostalCodeBlur()\">\n </div>\n <div class=\"form-field country-field\">\n <label>Country</label>\n <select [(ngModel)]=\"EditForm.Country\">\n @for (c of Countries; track c.Code) {\n <option [value]=\"c.Code\">{{ c.Code }} - {{ c.Name }}</option>\n }\n </select>\n </div>\n <div class=\"checkbox-field\">\n <input type=\"checkbox\" [id]=\"'primary-edit-' + i\" [(ngModel)]=\"EditForm.IsPrimary\">\n <label [for]=\"'primary-edit-' + i\">Primary</label>\n </div>\n </div>\n <div class=\"form-actions\">\n <button class=\"btn btn-primary btn-sm\" (click)=\"onSave()\" [disabled]=\"Saving\">\n @if (Saving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n }\n Save\n </button>\n <button class=\"btn btn-cancel btn-sm\" (click)=\"onCancelEdit()\">Cancel</button>\n </div>\n </div>\n }\n }\n\n <!-- Add New Panel (shown when EditingIndex === -1) -->\n @if (EditingIndex === -1) {\n <div class=\"addr-table-edit-panel\">\n <div class=\"form-row\">\n <div class=\"form-field type-field\">\n <label>Type</label>\n <select [(ngModel)]=\"EditForm.TypeID\">\n @for (t of AddressTypes; track t.ID) {\n <option [value]=\"t.ID\">{{ t.Name }}</option>\n }\n </select>\n </div>\n <div class=\"form-field\">\n <label>Line 1</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line1\" placeholder=\"Street address\">\n </div>\n <div class=\"form-field line2-field\">\n <label>Line 2</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line2\" placeholder=\"Apt, suite\">\n </div>\n </div>\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label>\n City\n @if (LookingUpPostalCode) { <i class=\"fa-solid fa-spinner fa-spin lookup-spinner\"></i> }\n @if (PostalCodeNotFound) { <span class=\"lookup-not-found\">not found</span> }\n </label>\n <input type=\"text\" [(ngModel)]=\"EditForm.City\" placeholder=\"City\">\n </div>\n <div class=\"form-field state-field\">\n <label>State</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.StateProvince\" placeholder=\"ST\">\n </div>\n <div class=\"form-field postal-field\">\n <label>Postal</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.PostalCode\" placeholder=\"Zip\" (blur)=\"onPostalCodeBlur()\">\n </div>\n <div class=\"form-field country-field\">\n <label>Country</label>\n <select [(ngModel)]=\"EditForm.Country\">\n @for (c of Countries; track c.Code) {\n <option [value]=\"c.Code\">{{ c.Code }} - {{ c.Name }}</option>\n }\n </select>\n </div>\n <div class=\"checkbox-field\">\n <input type=\"checkbox\" id=\"primary-add\" [(ngModel)]=\"EditForm.IsPrimary\">\n <label for=\"primary-add\">Primary</label>\n </div>\n </div>\n <div class=\"form-actions\">\n <button class=\"btn btn-primary btn-sm\" (click)=\"onSave()\" [disabled]=\"Saving\">\n @if (Saving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n }\n Save\n </button>\n <button class=\"btn btn-cancel btn-sm\" (click)=\"onCancelEdit()\">Cancel</button>\n </div>\n </div>\n }\n\n <!-- Add Button Footer -->\n @if (EditingIndex === null && EditMode) {\n <div class=\"addr-table-footer\">\n <button class=\"btn btn-outline full-width\" (click)=\"onAdd()\">\n <i class=\"fa-solid fa-plus\"></i>\n Add Address\n </button>\n </div>\n }\n </div>\n}\n", styles: ["/* ============================================\n AddressEditor - Compact Table Design\n Pixel-perfect match to Option B mockup\n ============================================ */\n\n:host {\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n color: var(--mj-text-primary);\n}\n\n.section-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n}\n\n.section-label {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.section-label i {\n color: var(--mj-brand-primary);\n}\n\n.count {\n font-size: 12px;\n color: var(--mj-text-muted);\n font-weight: 400;\n}\n\n/* Table container */\n.addr-table {\n width: 100%;\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n overflow: hidden;\n}\n\n/* Table rows */\n.addr-table-row {\n display: flex;\n align-items: center;\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-bg-surface-sunken);\n gap: 12px;\n transition: background 0.1s ease;\n}\n\n.addr-table-row:last-child {\n border-bottom: none;\n}\n\n.addr-table-row:hover {\n background: var(--mj-bg-surface-card);\n}\n\n.addr-table-row.primary {\n background: var(--mj-status-success-bg);\n}\n\n/* Icon */\n.addr-table-icon {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n/* Content */\n.addr-table-content {\n flex: 1;\n min-width: 0;\n}\n\n.addr-table-main {\n font-size: 14px;\n color: var(--mj-text-primary);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.addr-table-sub {\n font-size: 12px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n\n/* Badges */\n.addr-table-badges {\n display: flex;\n gap: 6px;\n flex-shrink: 0;\n}\n\n.badge {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.badge-type {\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n}\n\n.badge-primary {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n}\n\n/* Actions */\n.addr-table-actions {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n\n.addr-table-row:hover .addr-table-actions {\n opacity: 1;\n}\n\n/* Ghost buttons */\n.btn-ghost {\n background: transparent;\n color: var(--mj-text-disabled);\n padding: 6px 8px;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 13px;\n transition: all 0.15s ease;\n}\n\n.btn-ghost:hover {\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n}\n\n.btn-ghost.danger:hover {\n color: var(--mj-status-error-text);\n background: var(--mj-status-error-bg);\n}\n\n/* Edit panel */\n.addr-table-edit-panel {\n padding: 16px;\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface));\n border-bottom: 2px solid var(--mj-brand-primary);\n}\n\n/* Footer */\n.addr-table-footer {\n padding: 10px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n}\n\n/* Buttons */\n.btn {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.btn-primary {\n background: var(--mj-brand-primary);\n color: var(--mj-brand-on-primary);\n}\n\n.btn-primary:hover {\n background: var(--mj-brand-primary-hover);\n}\n\n.btn-outline {\n background: transparent;\n border: 1px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n}\n\n.btn-outline:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 6%, var(--mj-bg-surface));\n}\n\n.btn-outline.full-width {\n width: 100%;\n justify-content: center;\n}\n\n.btn-cancel {\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n}\n\n.btn-cancel:hover {\n background: var(--mj-border-subtle);\n}\n\n.btn-sm {\n padding: 6px 14px;\n font-size: 12px;\n}\n\n/* Form */\n.form-row {\n display: flex;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.form-field {\n flex: 1;\n}\n\n.form-field label {\n display: block;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n margin-bottom: 4px;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.form-field input,\n.form-field select {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n font-family: inherit;\n background: var(--mj-bg-surface);\n}\n\n.form-field input:focus,\n.form-field select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n}\n\n.form-field.type-field {\n max-width: 150px;\n}\n\n.form-field.line2-field {\n max-width: 150px;\n}\n\n.form-field.state-field {\n max-width: 80px;\n}\n\n.form-field.postal-field {\n max-width: 130px;\n}\n\n.form-field.country-field {\n max-width: 180px;\n}\n\n.checkbox-field {\n display: flex;\n align-items: center;\n gap: 8px;\n padding-top: 22px;\n}\n\n.checkbox-field input[type=\"checkbox\"] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.checkbox-field label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n}\n\n.form-actions {\n display: flex;\n gap: 8px;\n margin-top: 8px;\n}\n\n/* Empty state */\n.empty-state {\n text-align: center;\n padding: 32px 16px;\n color: var(--mj-text-muted);\n font-size: 14px;\n}\n\n.empty-state i {\n font-size: 24px;\n color: var(--mj-border-strong);\n margin-bottom: 8px;\n display: block;\n}\n\n/* Loading */\n.loading-row {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: var(--mj-text-muted);\n font-size: 13px;\n gap: 8px;\n}\n\n.loading-row i {\n animation: spin 1s linear infinite;\n}\n\n/* Misconfiguration (e.g. an EntityName that is not in metadata). Styled like .loading-row\n so it sits in the same slot, but in the danger colour and left-aligned for readability. */\n.load-error-row {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 24px;\n color: var(--mj-status-error-text);\n font-size: 13px;\n gap: 8px;\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n.lookup-spinner {\n font-size: 10px;\n color: var(--mj-brand-primary);\n margin-left: 4px;\n}\n\n.lookup-not-found {\n font-size: 10px;\n color: var(--mj-status-warning-text);\n margin-left: 4px;\n font-weight: 600;\n}\n"] }]
1120
+ args: [{ standalone: true, imports: [CommonModule, FormsModule], selector: 'bizapps-address-editor', template: "<!-- AddressEditor - Compact Table Design (Option B) -->\n\n<div class=\"section-header\">\n <span class=\"section-label\">\n <i class=\"fa-solid fa-map-marker-alt\"></i>\n Addresses\n @if (!Loading && AddressItems.length > 0) {\n <span class=\"count\">({{ AddressItems.length }})</span>\n }\n </span>\n</div>\n\n@if (ActionError) {\n <div class=\"addr-table\">\n <div class=\"load-error-row action-error-row\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ ActionError }}\n </div>\n </div>\n}\n\n@if (LoadError) {\n <div class=\"addr-table\">\n <div class=\"load-error-row\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i> {{ LoadError }}\n </div>\n </div>\n} @else if (Loading) {\n <div class=\"addr-table\">\n <div class=\"loading-row\">\n <i class=\"fa-solid fa-spinner\"></i> Loading addresses...\n </div>\n </div>\n} @else {\n <div class=\"addr-table\">\n @if (AddressItems.length === 0 && EditingIndex !== -1) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-map-marker-alt\"></i>\n No addresses linked yet\n </div>\n }\n\n @for (item of AddressItems; track item.Link.ID; let i = $index) {\n <!-- Address Row -->\n <div class=\"addr-table-row\" [class.primary]=\"item.Link.IsPrimary\">\n <div class=\"addr-table-icon\">\n <i [class]=\"getAddressTypeIcon(item.Link.AddressTypeID)\"></i>\n </div>\n <div class=\"addr-table-content\">\n @if (formatAddressLine1(item.Address); as street) {\n <div class=\"addr-table-main\">{{ street }}</div>\n <div class=\"addr-table-sub\">{{ formatAddressLine2(item.Address) }}</div>\n } @else {\n <!-- Location-only address: the locality line becomes the headline -->\n <div class=\"addr-table-main\">{{ formatAddressLine2(item.Address) }}</div>\n }\n </div>\n <div class=\"addr-table-badges\">\n <span class=\"badge badge-type\">{{ item.Link.AddressType }}</span>\n @if (item.Link.IsPrimary) {\n <span class=\"badge badge-primary\"><i class=\"fa-solid fa-star\"></i> Primary</span>\n }\n </div>\n @if (EditMode) {\n <div class=\"addr-table-actions\">\n @if (!item.Link.IsPrimary) {\n <button class=\"btn-ghost\" title=\"Set as Primary\" (click)=\"onSetPrimary(i)\">\n <i class=\"fa-regular fa-star\"></i>\n </button>\n }\n <button class=\"btn-ghost\" title=\"Edit\" (click)=\"onEdit(i)\">\n <i class=\"fa-solid fa-pen\"></i>\n </button>\n <button class=\"btn-ghost danger\" title=\"Remove\" (click)=\"onDelete(i)\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n </div>\n }\n </div>\n\n <!-- Inline Edit Panel (shown when editing this row) -->\n @if (EditingIndex === i) {\n <div class=\"addr-table-edit-panel\">\n <div class=\"form-row\">\n <div class=\"form-field type-field\">\n <label>Type</label>\n <select [(ngModel)]=\"EditForm.TypeID\">\n @for (t of AddressTypes; track t.ID) {\n <option [value]=\"t.ID\">{{ t.Name }}</option>\n }\n </select>\n </div>\n <div class=\"form-field\">\n <label>Line 1</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line1\" placeholder=\"Street address\">\n </div>\n <div class=\"form-field line2-field\">\n <label>Line 2</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line2\" placeholder=\"Apt, suite\">\n </div>\n </div>\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label>\n City\n @if (LookingUpPostalCode) { <i class=\"fa-solid fa-spinner fa-spin lookup-spinner\"></i> }\n @if (PostalCodeNotFound) { <span class=\"lookup-not-found\">not found</span> }\n </label>\n <input type=\"text\" [(ngModel)]=\"EditForm.City\" placeholder=\"City\">\n </div>\n <div class=\"form-field state-field\">\n <label>State</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.StateProvince\" placeholder=\"ST\">\n </div>\n <div class=\"form-field postal-field\">\n <label>Postal</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.PostalCode\" placeholder=\"Zip\" (blur)=\"onPostalCodeBlur()\">\n </div>\n <div class=\"form-field country-field\">\n <label>Country</label>\n <select [(ngModel)]=\"EditForm.Country\">\n @for (c of Countries; track c.Code) {\n <option [value]=\"c.Code\">{{ c.Code }} - {{ c.Name }}</option>\n }\n </select>\n </div>\n <div class=\"checkbox-field\">\n <input type=\"checkbox\" [id]=\"'primary-edit-' + i\" [(ngModel)]=\"EditForm.IsPrimary\">\n <label [for]=\"'primary-edit-' + i\">Primary</label>\n </div>\n </div>\n <div class=\"form-actions\">\n <button class=\"btn btn-primary btn-sm\" (click)=\"onSave()\" [disabled]=\"Saving\">\n @if (Saving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n }\n Save\n </button>\n <button class=\"btn btn-cancel btn-sm\" (click)=\"onCancelEdit()\">Cancel</button>\n </div>\n </div>\n }\n }\n\n <!-- Add New Panel (shown when EditingIndex === -1) -->\n @if (EditingIndex === -1) {\n <div class=\"addr-table-edit-panel\">\n <div class=\"form-row\">\n <div class=\"form-field type-field\">\n <label>Type</label>\n <select [(ngModel)]=\"EditForm.TypeID\">\n @for (t of AddressTypes; track t.ID) {\n <option [value]=\"t.ID\">{{ t.Name }}</option>\n }\n </select>\n </div>\n <div class=\"form-field\">\n <label>Line 1</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line1\" placeholder=\"Street address\">\n </div>\n <div class=\"form-field line2-field\">\n <label>Line 2</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.Line2\" placeholder=\"Apt, suite\">\n </div>\n </div>\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label>\n City\n @if (LookingUpPostalCode) { <i class=\"fa-solid fa-spinner fa-spin lookup-spinner\"></i> }\n @if (PostalCodeNotFound) { <span class=\"lookup-not-found\">not found</span> }\n </label>\n <input type=\"text\" [(ngModel)]=\"EditForm.City\" placeholder=\"City\">\n </div>\n <div class=\"form-field state-field\">\n <label>State</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.StateProvince\" placeholder=\"ST\">\n </div>\n <div class=\"form-field postal-field\">\n <label>Postal</label>\n <input type=\"text\" [(ngModel)]=\"EditForm.PostalCode\" placeholder=\"Zip\" (blur)=\"onPostalCodeBlur()\">\n </div>\n <div class=\"form-field country-field\">\n <label>Country</label>\n <select [(ngModel)]=\"EditForm.Country\">\n @for (c of Countries; track c.Code) {\n <option [value]=\"c.Code\">{{ c.Code }} - {{ c.Name }}</option>\n }\n </select>\n </div>\n <div class=\"checkbox-field\">\n <input type=\"checkbox\" id=\"primary-add\" [(ngModel)]=\"EditForm.IsPrimary\">\n <label for=\"primary-add\">Primary</label>\n </div>\n </div>\n <div class=\"form-actions\">\n <button class=\"btn btn-primary btn-sm\" (click)=\"onSave()\" [disabled]=\"Saving\">\n @if (Saving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n }\n Save\n </button>\n <button class=\"btn btn-cancel btn-sm\" (click)=\"onCancelEdit()\">Cancel</button>\n </div>\n </div>\n }\n\n <!-- Add Button Footer -->\n @if (EditingIndex === null && EditMode) {\n <div class=\"addr-table-footer\">\n <button class=\"btn btn-outline full-width\" (click)=\"onAdd()\">\n <i class=\"fa-solid fa-plus\"></i>\n Add Address\n </button>\n </div>\n }\n </div>\n}\n", styles: ["/* ============================================\n AddressEditor - Compact Table Design\n Pixel-perfect match to Option B mockup\n ============================================ */\n\n:host {\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n color: var(--mj-text-primary);\n}\n\n.section-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n}\n\n.section-label {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.section-label i {\n color: var(--mj-brand-primary);\n}\n\n.count {\n font-size: 12px;\n color: var(--mj-text-muted);\n font-weight: 400;\n}\n\n/* Table container */\n.addr-table {\n width: 100%;\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n overflow: hidden;\n}\n\n/* Table rows */\n.addr-table-row {\n display: flex;\n align-items: center;\n padding: 12px 16px;\n border-bottom: 1px solid var(--mj-bg-surface-sunken);\n gap: 12px;\n transition: background 0.1s ease;\n}\n\n.addr-table-row:last-child {\n border-bottom: none;\n}\n\n.addr-table-row:hover {\n background: var(--mj-bg-surface-card);\n}\n\n.addr-table-row.primary {\n background: var(--mj-status-success-bg);\n}\n\n/* Icon */\n.addr-table-icon {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n font-size: 14px;\n flex-shrink: 0;\n}\n\n/* Content */\n.addr-table-content {\n flex: 1;\n min-width: 0;\n}\n\n.addr-table-main {\n font-size: 14px;\n color: var(--mj-text-primary);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.addr-table-sub {\n font-size: 12px;\n color: var(--mj-text-muted);\n margin-top: 2px;\n}\n\n/* Badges */\n.addr-table-badges {\n display: flex;\n gap: 6px;\n flex-shrink: 0;\n}\n\n.badge {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.badge-type {\n background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n color: var(--mj-brand-primary-hover);\n}\n\n.badge-primary {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n}\n\n/* Actions */\n.addr-table-actions {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n\n.addr-table-row:hover .addr-table-actions {\n opacity: 1;\n}\n\n/* Ghost buttons */\n.btn-ghost {\n background: transparent;\n color: var(--mj-text-disabled);\n padding: 6px 8px;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 13px;\n transition: all 0.15s ease;\n}\n\n.btn-ghost:hover {\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n}\n\n.btn-ghost.danger:hover {\n color: var(--mj-status-error-text);\n background: var(--mj-status-error-bg);\n}\n\n/* Edit panel */\n.addr-table-edit-panel {\n padding: 16px;\n background: color-mix(in srgb, var(--mj-brand-primary) 5%, var(--mj-bg-surface));\n border-bottom: 2px solid var(--mj-brand-primary);\n}\n\n/* Footer */\n.addr-table-footer {\n padding: 10px 16px;\n border-top: 1px solid var(--mj-border-default);\n background: var(--mj-bg-surface-card);\n}\n\n/* Buttons */\n.btn {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.btn-primary {\n background: var(--mj-brand-primary);\n color: var(--mj-brand-on-primary);\n}\n\n.btn-primary:hover {\n background: var(--mj-brand-primary-hover);\n}\n\n.btn-outline {\n background: transparent;\n border: 1px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n}\n\n.btn-outline:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 6%, var(--mj-bg-surface));\n}\n\n.btn-outline.full-width {\n width: 100%;\n justify-content: center;\n}\n\n.btn-cancel {\n background: var(--mj-bg-surface-card);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n}\n\n.btn-cancel:hover {\n background: var(--mj-border-subtle);\n}\n\n.btn-sm {\n padding: 6px 14px;\n font-size: 12px;\n}\n\n/* Form */\n.form-row {\n display: flex;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.form-field {\n flex: 1;\n}\n\n.form-field label {\n display: block;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n margin-bottom: 4px;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.form-field input,\n.form-field select {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid var(--mj-border-default);\n border-radius: 6px;\n font-size: 14px;\n font-family: inherit;\n background: var(--mj-bg-surface);\n}\n\n.form-field input:focus,\n.form-field select:focus {\n outline: none;\n border-color: var(--mj-brand-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 10%, transparent);\n}\n\n.form-field.type-field {\n max-width: 150px;\n}\n\n.form-field.line2-field {\n max-width: 150px;\n}\n\n.form-field.state-field {\n max-width: 80px;\n}\n\n.form-field.postal-field {\n max-width: 130px;\n}\n\n.form-field.country-field {\n max-width: 180px;\n}\n\n.checkbox-field {\n display: flex;\n align-items: center;\n gap: 8px;\n padding-top: 22px;\n}\n\n.checkbox-field input[type=\"checkbox\"] {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.checkbox-field label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n cursor: pointer;\n}\n\n.form-actions {\n display: flex;\n gap: 8px;\n margin-top: 8px;\n}\n\n/* Empty state */\n.empty-state {\n text-align: center;\n padding: 32px 16px;\n color: var(--mj-text-muted);\n font-size: 14px;\n}\n\n.empty-state i {\n font-size: 24px;\n color: var(--mj-border-strong);\n margin-bottom: 8px;\n display: block;\n}\n\n/* Loading */\n.loading-row {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: var(--mj-text-muted);\n font-size: 13px;\n gap: 8px;\n}\n\n.loading-row i {\n animation: spin 1s linear infinite;\n}\n\n/* Misconfiguration (e.g. an EntityName that is not in metadata). Styled like .loading-row\n so it sits in the same slot, but in the danger colour and left-aligned for readability. */\n.load-error-row {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 24px;\n color: var(--mj-status-error-text);\n font-size: 13px;\n gap: 8px;\n}\n\n/* A refused delete. Same colours as .load-error-row, but compact because the list stays below it. */\n.action-error-row {\n padding: 8px 12px;\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n.lookup-spinner {\n font-size: 10px;\n color: var(--mj-brand-primary);\n margin-left: 4px;\n}\n\n.lookup-not-found {\n font-size: 10px;\n color: var(--mj-status-warning-text);\n margin-left: 4px;\n font-weight: 600;\n}\n"] }]
1047
1121
  }], () => [], { EditMode: [{
1048
1122
  type: Input
1049
1123
  }], DataChanged: [{
@@ -1053,5 +1127,5 @@ export class AddressEditorComponent {
1053
1127
  }], RecordID: [{
1054
1128
  type: Input
1055
1129
  }] }); })();
1056
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AddressEditorComponent, { className: "AddressEditorComponent", filePath: "lib/components/address-editor/address-editor.component.ts", lineNumber: 89 }); })();
1130
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AddressEditorComponent, { className: "AddressEditorComponent", filePath: "lib/components/address-editor/address-editor.component.ts", lineNumber: 90 }); })();
1057
1131
  //# sourceMappingURL=address-editor.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"address-editor.component.js","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-editor.component.ts","../../../../src/lib/components/address-editor/address-editor.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"address-editor.component.js","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-editor.component.ts","../../../../src/lib/components/address-editor/address-editor.component.html"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { CompositeKey, KeyValuePair, RecordDependency } from '@memberjunction/core';
2
+ /** Entity name of the link table that ties an Address to a party record. */
3
+ export declare const ADDRESS_LINK_ENTITY = "MJ_BizApps_Common: Address Links";
4
+ /**
5
+ * A {@link RecordDependency} as it arrives on either side of the wire. Server-side providers put
6
+ * the dependent record's key in `PrimaryKey`; the GraphQL resolver returns the same key under
7
+ * `CompositeKey`, which the client provider passes through unchanged.
8
+ */
9
+ export type AddressReference = Pick<RecordDependency, 'RelatedEntityName' | 'FieldName'> & {
10
+ PrimaryKey?: CompositeKey;
11
+ CompositeKey?: {
12
+ KeyValuePairs: KeyValuePair[];
13
+ };
14
+ };
15
+ /**
16
+ * Returns the references to an Address other than the AddressLink being removed.
17
+ *
18
+ * An Address row can be linked to several parties and referenced directly by other apps
19
+ * (order bill-to/ship-to, activity locations), so removing one link does not make it an
20
+ * orphan. When this returns an empty list, the Address can be deleted with the link.
21
+ *
22
+ * Only relationships declared in metadata are reported; a column with no foreign key or
23
+ * soft-link declaration is invisible to `GetRecordDependencies`.
24
+ *
25
+ * @param references - Result of `GetRecordDependencies` for the Address
26
+ * @param removedLinkID - ID of the AddressLink being deleted
27
+ */
28
+ export declare function otherAddressReferences(references: AddressReference[], removedLinkID: string): AddressReference[];
29
+ //# sourceMappingURL=address-references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-references.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGpF,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,qCAAqC,CAAC;AAEtE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,GAAG,WAAW,CAAC,GAAG;IACvF,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,YAAY,CAAC,EAAE;QAAE,aAAa,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;CACpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAEhH"}
@@ -0,0 +1,27 @@
1
+ import { UUIDsEqual } from '@memberjunction/global';
2
+ /** Entity name of the link table that ties an Address to a party record. */
3
+ export const ADDRESS_LINK_ENTITY = 'MJ_BizApps_Common: Address Links';
4
+ /**
5
+ * Returns the references to an Address other than the AddressLink being removed.
6
+ *
7
+ * An Address row can be linked to several parties and referenced directly by other apps
8
+ * (order bill-to/ship-to, activity locations), so removing one link does not make it an
9
+ * orphan. When this returns an empty list, the Address can be deleted with the link.
10
+ *
11
+ * Only relationships declared in metadata are reported; a column with no foreign key or
12
+ * soft-link declaration is invisible to `GetRecordDependencies`.
13
+ *
14
+ * @param references - Result of `GetRecordDependencies` for the Address
15
+ * @param removedLinkID - ID of the AddressLink being deleted
16
+ */
17
+ export function otherAddressReferences(references, removedLinkID) {
18
+ return references.filter(ref => !isRemovedLink(ref, removedLinkID));
19
+ }
20
+ function isRemovedLink(ref, removedLinkID) {
21
+ if (ref.RelatedEntityName?.trim().toLowerCase() !== ADDRESS_LINK_ENTITY.toLowerCase())
22
+ return false;
23
+ const pairs = (ref.PrimaryKey ?? ref.CompositeKey)?.KeyValuePairs ?? [];
24
+ const id = pairs.find(p => p.FieldName.toLowerCase() === 'id')?.Value;
25
+ return id != null && UUIDsEqual(String(id), removedLinkID);
26
+ }
27
+ //# sourceMappingURL=address-references.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-references.js","sourceRoot":"","sources":["../../../../src/lib/components/address-editor/address-references.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,kCAAkC,CAAC;AAYtE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,UAA8B,EAAE,aAAqB;IACxF,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,aAAa,CAAC,GAAqB,EAAE,aAAqB;IAC/D,IAAI,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,mBAAmB,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IACpG,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,aAAa,IAAI,EAAE,CAAC;IACxE,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,CAAC;IACtE,OAAO,EAAE,IAAI,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;AAC/D,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mj-biz-apps/common-ng",
3
3
  "type": "module",
4
- "version": "5.46.2",
4
+ "version": "5.47.0",
5
5
  "description": "BizApps Common Angular bootstrap - form components and module for the Common business entities Open App",
6
6
  "main": "dist/public-api.js",
7
7
  "types": "dist/public-api.d.ts",
@@ -14,7 +14,7 @@
14
14
  "author": "MemberJunction.com",
15
15
  "license": "BUSL-1.1",
16
16
  "dependencies": {
17
- "@mj-biz-apps/common-entities": "5.46.2"
17
+ "@mj-biz-apps/common-entities": "5.47.0"
18
18
  },
19
19
  "peerDependencies": {
20
20
  "@angular/animations": "^21.1.3",