@memberjunction/ng-conversations 5.34.1 → 5.35.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.
@@ -53,18 +53,63 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Con
53
53
  i0.ɵɵadvance(2);
54
54
  i0.ɵɵtextInterpolate1("No collections match \u201C", ctx_r1.searchQuery, "\u201D");
55
55
  } }
56
+ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Conditional_5_Template(rf, ctx) { if (rf & 1) {
57
+ i0.ɵɵelement(0, "i", 44);
58
+ } }
59
+ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Conditional_6_Template(rf, ctx) { if (rf & 1) {
60
+ i0.ɵɵtext(0, " Create ");
61
+ } }
62
+ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
63
+ const _r5 = i0.ɵɵgetCurrentView();
64
+ i0.ɵɵelementStart(0, "div", 40)(1, "input", 41, 1);
65
+ i0.ɵɵtwoWayListener("ngModelChange", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template_input_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r1.newCollectionName, $event) || (ctx_r1.newCollectionName = $event); return i0.ɵɵresetView($event); });
66
+ i0.ɵɵlistener("keydown.enter", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template_input_keydown_enter_1_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.createCollection()); })("keydown.escape", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template_input_keydown_escape_1_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
67
+ i0.ɵɵelementEnd();
68
+ i0.ɵɵelementStart(3, "div", 42)(4, "button", 43);
69
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.createCollection()); });
70
+ i0.ɵɵconditionalCreate(5, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Conditional_5_Template, 1, 0, "i", 44)(6, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Conditional_6_Template, 1, 0);
71
+ i0.ɵɵelementEnd();
72
+ i0.ɵɵelementStart(7, "button", 45);
73
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
74
+ i0.ɵɵtext(8, " Cancel ");
75
+ i0.ɵɵelementEnd()()();
76
+ } if (rf & 2) {
77
+ const ctx_r1 = i0.ɵɵnextContext(4);
78
+ i0.ɵɵadvance();
79
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r1.newCollectionName);
80
+ i0.ɵɵproperty("disabled", ctx_r1.isCreatingCollection);
81
+ i0.ɵɵadvance(3);
82
+ i0.ɵɵproperty("disabled", ctx_r1.isCreatingCollection || !ctx_r1.newCollectionName.trim());
83
+ i0.ɵɵadvance();
84
+ i0.ɵɵconditional(ctx_r1.isCreatingCollection ? 5 : 6);
85
+ i0.ɵɵadvance(2);
86
+ i0.ɵɵproperty("disabled", ctx_r1.isCreatingCollection);
87
+ } }
88
+ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
89
+ const _r6 = i0.ɵɵgetCurrentView();
90
+ i0.ɵɵelementStart(0, "p", 46);
91
+ i0.ɵɵtext(1, "Create one to get started");
92
+ i0.ɵɵelementEnd();
93
+ i0.ɵɵelementStart(2, "button", 47);
94
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_4_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.openCreateForm()); });
95
+ i0.ɵɵelement(3, "i", 48);
96
+ i0.ɵɵtext(4, " New collection ");
97
+ i0.ɵɵelementEnd();
98
+ } }
56
99
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Template(rf, ctx) { if (rf & 1) {
57
100
  i0.ɵɵelement(0, "i", 39);
58
101
  i0.ɵɵelementStart(1, "p");
59
102
  i0.ɵɵtext(2, "No editable collections yet");
60
103
  i0.ɵɵelementEnd();
61
- i0.ɵɵelementStart(3, "p", 40);
62
- i0.ɵɵtext(4, "Create one to get started");
63
- i0.ɵɵelementEnd();
104
+ i0.ɵɵconditionalCreate(3, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_3_Template, 9, 5, "div", 40)(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Conditional_4_Template, 5, 0);
105
+ } if (rf & 2) {
106
+ const ctx_r1 = i0.ɵɵnextContext(3);
107
+ i0.ɵɵadvance(3);
108
+ i0.ɵɵconditional(ctx_r1.showCreateForm ? 3 : 4);
64
109
  } }
65
110
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Template(rf, ctx) { if (rf & 1) {
66
111
  i0.ɵɵelementStart(0, "div", 17);
67
- i0.ɵɵconditionalCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_1_Template, 5, 1)(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Template, 5, 0);
112
+ i0.ɵɵconditionalCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_1_Template, 5, 1)(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Conditional_2_Template, 5, 1);
68
113
  i0.ɵɵelementEnd();
69
114
  } if (rf & 2) {
70
115
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -72,102 +117,102 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_18_Tem
72
117
  i0.ɵɵconditional(ctx_r1.searchQuery ? 1 : 2);
73
118
  } }
74
119
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
75
- i0.ɵɵelement(0, "i", 53);
120
+ i0.ɵɵelement(0, "i", 61);
76
121
  } if (rf & 2) {
77
- const node_r6 = i0.ɵɵnextContext().$implicit;
78
- i0.ɵɵclassProp("fa-chevron-down", node_r6.expanded)("fa-chevron-right", !node_r6.expanded);
122
+ const node_r8 = i0.ɵɵnextContext().$implicit;
123
+ i0.ɵɵclassProp("fa-chevron-down", node_r8.expanded)("fa-chevron-right", !node_r8.expanded);
79
124
  } }
80
125
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
81
- i0.ɵɵelement(0, "i", 48);
126
+ i0.ɵɵelement(0, "i", 56);
82
127
  } }
83
128
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
84
- i0.ɵɵelementStart(0, "span", 51);
129
+ i0.ɵɵelementStart(0, "span", 59);
85
130
  i0.ɵɵtext(1);
86
131
  i0.ɵɵelementEnd();
87
132
  } if (rf & 2) {
88
- const node_r6 = i0.ɵɵnextContext().$implicit;
133
+ const node_r8 = i0.ɵɵnextContext().$implicit;
89
134
  i0.ɵɵadvance();
90
- i0.ɵɵtextInterpolate1("\u00B7 ", node_r6.ancestry);
135
+ i0.ɵɵtextInterpolate1("\u00B7 ", node_r8.ancestry);
91
136
  } }
92
137
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_9_Template(rf, ctx) { if (rf & 1) {
93
- i0.ɵɵelementStart(0, "span", 52);
138
+ i0.ɵɵelementStart(0, "span", 60);
94
139
  i0.ɵɵtext(1, "Already saved");
95
140
  i0.ɵɵelementEnd();
96
141
  } }
97
142
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template(rf, ctx) { if (rf & 1) {
98
- const _r5 = i0.ɵɵgetCurrentView();
99
- i0.ɵɵelementStart(0, "div", 44);
100
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template_div_click_0_listener() { const node_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onRowClick(node_r6)); });
101
- i0.ɵɵelementStart(1, "span", 45);
102
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template_span_click_1_listener($event) { const node_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); $event.stopPropagation(); return i0.ɵɵresetView(ctx_r1.toggleExpand(node_r6)); });
103
- i0.ɵɵconditionalCreate(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_2_Template, 1, 4, "i", 46);
143
+ const _r7 = i0.ɵɵgetCurrentView();
144
+ i0.ɵɵelementStart(0, "div", 52);
145
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template_div_click_0_listener() { const node_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onRowClick(node_r8)); });
146
+ i0.ɵɵelementStart(1, "span", 53);
147
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template_span_click_1_listener($event) { const node_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); $event.stopPropagation(); return i0.ɵɵresetView(ctx_r1.toggleExpand(node_r8)); });
148
+ i0.ɵɵconditionalCreate(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_2_Template, 1, 4, "i", 54);
104
149
  i0.ɵɵelementEnd();
105
- i0.ɵɵelementStart(3, "span", 47);
106
- i0.ɵɵconditionalCreate(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_4_Template, 1, 0, "i", 48);
150
+ i0.ɵɵelementStart(3, "span", 55);
151
+ i0.ɵɵconditionalCreate(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_4_Template, 1, 0, "i", 56);
107
152
  i0.ɵɵelementEnd();
108
- i0.ɵɵelement(5, "i", 49);
109
- i0.ɵɵelementStart(6, "span", 50);
153
+ i0.ɵɵelement(5, "i", 57);
154
+ i0.ɵɵelementStart(6, "span", 58);
110
155
  i0.ɵɵtext(7);
111
- i0.ɵɵconditionalCreate(8, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_8_Template, 2, 1, "span", 51);
156
+ i0.ɵɵconditionalCreate(8, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_8_Template, 2, 1, "span", 59);
112
157
  i0.ɵɵelementEnd();
113
- i0.ɵɵconditionalCreate(9, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_9_Template, 2, 0, "span", 52);
158
+ i0.ɵɵconditionalCreate(9, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Conditional_9_Template, 2, 0, "span", 60);
114
159
  i0.ɵɵelementEnd();
115
160
  } if (rf & 2) {
116
- const node_r6 = ctx.$implicit;
161
+ const node_r8 = ctx.$implicit;
117
162
  const ctx_r1 = i0.ɵɵnextContext(3);
118
- i0.ɵɵstyleProp("padding-left", ctx_r1.searchQuery ? 12 : 12 + node_r6.depth * 18, "px");
119
- i0.ɵɵclassProp("selected", ctx_r1.isSelected(node_r6.collection.ID))("already", node_r6.alreadyContainsArtifact);
163
+ i0.ɵɵstyleProp("padding-left", ctx_r1.searchQuery ? 12 : 12 + node_r8.depth * 18, "px");
164
+ i0.ɵɵclassProp("selected", ctx_r1.isSelected(node_r8.collection.ID))("already", node_r8.alreadyContainsArtifact);
120
165
  i0.ɵɵadvance(2);
121
- i0.ɵɵconditional(node_r6.hasChildren && !ctx_r1.searchQuery ? 2 : -1);
166
+ i0.ɵɵconditional(node_r8.hasChildren && !ctx_r1.searchQuery ? 2 : -1);
122
167
  i0.ɵɵadvance();
123
- i0.ɵɵclassProp("checked", ctx_r1.isSelected(node_r6.collection.ID))("locked", node_r6.alreadyContainsArtifact);
124
- i0.ɵɵattribute("aria-label", node_r6.alreadyContainsArtifact ? "Already saved" : "Toggle selection");
168
+ i0.ɵɵclassProp("checked", ctx_r1.isSelected(node_r8.collection.ID))("locked", node_r8.alreadyContainsArtifact);
169
+ i0.ɵɵattribute("aria-label", node_r8.alreadyContainsArtifact ? "Already saved" : "Toggle selection");
125
170
  i0.ɵɵadvance();
126
- i0.ɵɵconditional(ctx_r1.isSelected(node_r6.collection.ID) || node_r6.alreadyContainsArtifact ? 4 : -1);
171
+ i0.ɵɵconditional(ctx_r1.isSelected(node_r8.collection.ID) || node_r8.alreadyContainsArtifact ? 4 : -1);
127
172
  i0.ɵɵadvance();
128
- i0.ɵɵstyleProp("color", node_r6.collection.Color || "var(--mj-brand-primary)");
173
+ i0.ɵɵstyleProp("color", node_r8.collection.Color || "var(--mj-brand-primary)");
129
174
  i0.ɵɵadvance(2);
130
- i0.ɵɵtextInterpolate1(" ", node_r6.collection.Name, " ");
175
+ i0.ɵɵtextInterpolate1(" ", node_r8.collection.Name, " ");
131
176
  i0.ɵɵadvance();
132
- i0.ɵɵconditional(ctx_r1.searchQuery && node_r6.ancestry ? 8 : -1);
177
+ i0.ɵɵconditional(ctx_r1.searchQuery && node_r8.ancestry ? 8 : -1);
133
178
  i0.ɵɵadvance();
134
- i0.ɵɵconditional(node_r6.alreadyContainsArtifact ? 9 : -1);
179
+ i0.ɵɵconditional(node_r8.alreadyContainsArtifact ? 9 : -1);
135
180
  } }
136
181
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_3_Template(rf, ctx) { if (rf & 1) {
137
- const _r7 = i0.ɵɵgetCurrentView();
138
- i0.ɵɵelementStart(0, "button", 54);
139
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.openCreateForm()); });
140
- i0.ɵɵelement(1, "span", 55);
141
- i0.ɵɵelementStart(2, "span", 56);
142
- i0.ɵɵelement(3, "i", 57);
182
+ const _r9 = i0.ɵɵgetCurrentView();
183
+ i0.ɵɵelementStart(0, "button", 62);
184
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.openCreateForm()); });
185
+ i0.ɵɵelement(1, "span", 63);
186
+ i0.ɵɵelementStart(2, "span", 64);
187
+ i0.ɵɵelement(3, "i", 48);
143
188
  i0.ɵɵelementEnd();
144
- i0.ɵɵelementStart(4, "span", 50);
189
+ i0.ɵɵelementStart(4, "span", 58);
145
190
  i0.ɵɵtext(5, "Create new collection\u2026");
146
191
  i0.ɵɵelementEnd()();
147
192
  } }
148
193
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_7_Template(rf, ctx) { if (rf & 1) {
149
- i0.ɵɵelement(0, "i", 60);
194
+ i0.ɵɵelement(0, "i", 44);
150
195
  } }
151
196
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_8_Template(rf, ctx) { if (rf & 1) {
152
197
  i0.ɵɵtext(0, " Create ");
153
198
  } }
154
199
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template(rf, ctx) { if (rf & 1) {
155
- const _r8 = i0.ɵɵgetCurrentView();
156
- i0.ɵɵelementStart(0, "div", 43);
157
- i0.ɵɵelement(1, "span", 55);
158
- i0.ɵɵelementStart(2, "span", 56);
159
- i0.ɵɵelement(3, "i", 57);
200
+ const _r10 = i0.ɵɵgetCurrentView();
201
+ i0.ɵɵelementStart(0, "div", 51);
202
+ i0.ɵɵelement(1, "span", 63);
203
+ i0.ɵɵelementStart(2, "span", 64);
204
+ i0.ɵɵelement(3, "i", 48);
160
205
  i0.ɵɵelementEnd();
161
- i0.ɵɵelementStart(4, "input", 58, 1);
162
- i0.ɵɵtwoWayListener("ngModelChange", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.newCollectionName, $event) || (ctx_r1.newCollectionName = $event); return i0.ɵɵresetView($event); });
163
- i0.ɵɵlistener("keydown.enter", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_keydown_enter_4_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createCollection()); })("keydown.escape", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_keydown_escape_4_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
206
+ i0.ɵɵelementStart(4, "input", 41, 1);
207
+ i0.ɵɵtwoWayListener("ngModelChange", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.newCollectionName, $event) || (ctx_r1.newCollectionName = $event); return i0.ɵɵresetView($event); });
208
+ i0.ɵɵlistener("keydown.enter", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_keydown_enter_4_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createCollection()); })("keydown.escape", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_input_keydown_escape_4_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
164
209
  i0.ɵɵelementEnd();
165
- i0.ɵɵelementStart(6, "button", 59);
166
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createCollection()); });
167
- i0.ɵɵconditionalCreate(7, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_7_Template, 1, 0, "i", 60)(8, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_8_Template, 1, 0);
210
+ i0.ɵɵelementStart(6, "button", 43);
211
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createCollection()); });
212
+ i0.ɵɵconditionalCreate(7, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_7_Template, 1, 0, "i", 44)(8, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Conditional_8_Template, 1, 0);
168
213
  i0.ɵɵelementEnd();
169
- i0.ɵɵelementStart(9, "button", 61);
170
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
214
+ i0.ɵɵelementStart(9, "button", 45);
215
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.cancelCreate()); });
171
216
  i0.ɵɵtext(10, " Cancel ");
172
217
  i0.ɵɵelementEnd()();
173
218
  } if (rf & 2) {
@@ -184,8 +229,8 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Con
184
229
  } }
185
230
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
186
231
  i0.ɵɵelementStart(0, "div", 18);
187
- i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template, 10, 18, "div", 41, _forTrack0);
188
- i0.ɵɵconditionalCreate(3, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_3_Template, 6, 0, "button", 42)(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template, 11, 5, "div", 43);
232
+ i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_For_2_Template, 10, 18, "div", 49, _forTrack0);
233
+ i0.ɵɵconditionalCreate(3, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_3_Template, 6, 0, "button", 50)(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_19_Conditional_4_Template, 11, 5, "div", 51);
189
234
  i0.ɵɵelementEnd();
190
235
  } if (rf & 2) {
191
236
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -207,7 +252,7 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_33_Tem
207
252
  i0.ɵɵelementStart(0, "span");
208
253
  i0.ɵɵtext(1, "Results");
209
254
  i0.ɵɵelementEnd();
210
- i0.ɵɵelementStart(2, "span", 62);
255
+ i0.ɵɵelementStart(2, "span", 65);
211
256
  i0.ɵɵtext(3);
212
257
  i0.ɵɵelementEnd();
213
258
  } if (rf & 2) {
@@ -219,7 +264,7 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_34_Tem
219
264
  i0.ɵɵelementStart(0, "span");
220
265
  i0.ɵɵtext(1, "Selected");
221
266
  i0.ɵɵelementEnd();
222
- i0.ɵɵelementStart(2, "span", 62);
267
+ i0.ɵɵelementStart(2, "span", 65);
223
268
  i0.ɵɵtext(3);
224
269
  i0.ɵɵelementEnd();
225
270
  } if (rf & 2) {
@@ -228,60 +273,60 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_34_Tem
228
273
  i0.ɵɵtextInterpolate(ctx_r1.selectedIds.size);
229
274
  } }
230
275
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_2_Template(rf, ctx) { if (rf & 1) {
231
- i0.ɵɵelement(0, "i", 60);
276
+ i0.ɵɵelement(0, "i", 44);
232
277
  } }
233
278
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_3_Template(rf, ctx) { if (rf & 1) {
234
- i0.ɵɵelement(0, "i", 48);
279
+ i0.ɵɵelement(0, "i", 56);
235
280
  } }
236
281
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_4_Template(rf, ctx) { if (rf & 1) {
237
282
  i0.ɵɵelement(0, "i", 37);
238
283
  } }
239
284
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_5_Template(rf, ctx) { if (rf & 1) {
240
- i0.ɵɵelement(0, "i", 66);
285
+ i0.ɵɵelement(0, "i", 69);
241
286
  } }
242
287
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_9_Template(rf, ctx) { if (rf & 1) {
243
- i0.ɵɵelementStart(0, "div", 69);
288
+ i0.ɵɵelementStart(0, "div", 72);
244
289
  i0.ɵɵtext(1);
245
290
  i0.ɵɵelementEnd();
246
291
  } if (rf & 2) {
247
- const r_r9 = i0.ɵɵnextContext().$implicit;
292
+ const r_r11 = i0.ɵɵnextContext().$implicit;
248
293
  i0.ɵɵadvance();
249
- i0.ɵɵtextInterpolate(r_r9.errorMessage);
294
+ i0.ɵɵtextInterpolate(r_r11.errorMessage);
250
295
  } }
251
296
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
252
- const _r10 = i0.ɵɵgetCurrentView();
253
- i0.ɵɵelementStart(0, "button", 71);
254
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const r_r9 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.retryOne(r_r9.collectionId)); });
255
- i0.ɵɵelement(1, "i", 72);
297
+ const _r12 = i0.ɵɵgetCurrentView();
298
+ i0.ɵɵelementStart(0, "button", 74);
299
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r12); const r_r11 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.retryOne(r_r11.collectionId)); });
300
+ i0.ɵɵelement(1, "i", 75);
256
301
  i0.ɵɵelementEnd();
257
302
  } }
258
303
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Template(rf, ctx) { if (rf & 1) {
259
- i0.ɵɵelementStart(0, "div", 64)(1, "span", 65);
260
- i0.ɵɵconditionalCreate(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_2_Template, 1, 0, "i", 60)(3, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_3_Template, 1, 0, "i", 48)(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_4_Template, 1, 0, "i", 37)(5, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_5_Template, 1, 0, "i", 66);
304
+ i0.ɵɵelementStart(0, "div", 67)(1, "span", 68);
305
+ i0.ɵɵconditionalCreate(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_2_Template, 1, 0, "i", 44)(3, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_3_Template, 1, 0, "i", 56)(4, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_4_Template, 1, 0, "i", 37)(5, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Case_5_Template, 1, 0, "i", 69);
261
306
  i0.ɵɵelementEnd();
262
- i0.ɵɵelementStart(6, "div", 67)(7, "div", 68);
307
+ i0.ɵɵelementStart(6, "div", 70)(7, "div", 71);
263
308
  i0.ɵɵtext(8);
264
309
  i0.ɵɵelementEnd();
265
- i0.ɵɵconditionalCreate(9, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_9_Template, 2, 1, "div", 69);
310
+ i0.ɵɵconditionalCreate(9, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_9_Template, 2, 1, "div", 72);
266
311
  i0.ɵɵelementEnd();
267
- i0.ɵɵconditionalCreate(10, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_10_Template, 2, 0, "button", 70);
312
+ i0.ɵɵconditionalCreate(10, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Conditional_10_Template, 2, 0, "button", 73);
268
313
  i0.ɵɵelementEnd();
269
314
  } if (rf & 2) {
270
315
  let tmp_16_0;
271
- const r_r9 = ctx.$implicit;
272
- i0.ɵɵclassProp("success", r_r9.status === "success")("error", r_r9.status === "error")("saving", r_r9.status === "saving");
316
+ const r_r11 = ctx.$implicit;
317
+ i0.ɵɵclassProp("success", r_r11.status === "success")("error", r_r11.status === "error")("saving", r_r11.status === "saving");
273
318
  i0.ɵɵadvance(2);
274
- i0.ɵɵconditional((tmp_16_0 = r_r9.status) === "saving" ? 2 : tmp_16_0 === "success" ? 3 : tmp_16_0 === "error" ? 4 : 5);
319
+ i0.ɵɵconditional((tmp_16_0 = r_r11.status) === "saving" ? 2 : tmp_16_0 === "success" ? 3 : tmp_16_0 === "error" ? 4 : 5);
275
320
  i0.ɵɵadvance(6);
276
- i0.ɵɵtextInterpolate(r_r9.collectionName);
321
+ i0.ɵɵtextInterpolate(r_r11.collectionName);
277
322
  i0.ɵɵadvance();
278
- i0.ɵɵconditional(r_r9.status === "error" && r_r9.errorMessage ? 9 : -1);
323
+ i0.ɵɵconditional(r_r11.status === "error" && r_r11.errorMessage ? 9 : -1);
279
324
  i0.ɵɵadvance();
280
- i0.ɵɵconditional(r_r9.status === "error" ? 10 : -1);
325
+ i0.ɵɵconditional(r_r11.status === "error" ? 10 : -1);
281
326
  } }
282
327
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_Template(rf, ctx) { if (rf & 1) {
283
328
  i0.ɵɵelementStart(0, "div", 29);
284
- i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Template, 11, 10, "div", 63, _forTrack1);
329
+ i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_For_2_Template, 11, 10, "div", 66, _forTrack1);
285
330
  i0.ɵɵelementEnd();
286
331
  } if (rf & 2) {
287
332
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -289,29 +334,29 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_35_Tem
289
334
  i0.ɵɵrepeater(ctx_r1.resultsList);
290
335
  } }
291
336
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_For_2_Template(rf, ctx) { if (rf & 1) {
292
- const _r11 = i0.ɵɵgetCurrentView();
293
- i0.ɵɵelementStart(0, "div", 73);
294
- i0.ɵɵelement(1, "i", 49);
295
- i0.ɵɵelementStart(2, "div", 67)(3, "div", 68);
337
+ const _r13 = i0.ɵɵgetCurrentView();
338
+ i0.ɵɵelementStart(0, "div", 76);
339
+ i0.ɵɵelement(1, "i", 57);
340
+ i0.ɵɵelementStart(2, "div", 70)(3, "div", 71);
296
341
  i0.ɵɵtext(4);
297
342
  i0.ɵɵelementEnd()();
298
- i0.ɵɵelementStart(5, "button", 74);
299
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_For_2_Template_button_click_5_listener() { const c_r12 = i0.ɵɵrestoreView(_r11).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.deselect(c_r12.ID)); });
343
+ i0.ɵɵelementStart(5, "button", 77);
344
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_For_2_Template_button_click_5_listener() { const c_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.deselect(c_r14.ID)); });
300
345
  i0.ɵɵelement(6, "i", 35);
301
346
  i0.ɵɵelementEnd()();
302
347
  } if (rf & 2) {
303
- const c_r12 = ctx.$implicit;
348
+ const c_r14 = ctx.$implicit;
304
349
  const ctx_r1 = i0.ɵɵnextContext(3);
305
350
  i0.ɵɵadvance();
306
- i0.ɵɵstyleProp("color", c_r12.Color || "var(--mj-brand-primary)");
351
+ i0.ɵɵstyleProp("color", c_r14.Color || "var(--mj-brand-primary)");
307
352
  i0.ɵɵadvance(3);
308
- i0.ɵɵtextInterpolate(c_r12.Name);
353
+ i0.ɵɵtextInterpolate(c_r14.Name);
309
354
  i0.ɵɵadvance();
310
355
  i0.ɵɵproperty("disabled", ctx_r1.isSaving);
311
356
  } }
312
357
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_Template(rf, ctx) { if (rf & 1) {
313
358
  i0.ɵɵelementStart(0, "div", 29);
314
- i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_For_2_Template, 7, 4, "div", 73, _forTrack2);
359
+ i0.ɵɵrepeaterCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_For_2_Template, 7, 4, "div", 76, _forTrack2);
315
360
  i0.ɵɵelementEnd();
316
361
  } if (rf & 2) {
317
362
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -320,20 +365,20 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_36_Tem
320
365
  } }
321
366
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_37_Template(rf, ctx) { if (rf & 1) {
322
367
  i0.ɵɵelementStart(0, "div", 30);
323
- i0.ɵɵelement(1, "i", 75);
368
+ i0.ɵɵelement(1, "i", 78);
324
369
  i0.ɵɵelementStart(2, "p");
325
370
  i0.ɵɵtext(3, "Pick a collection on the left");
326
371
  i0.ɵɵelementEnd()();
327
372
  } }
328
373
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Template(rf, ctx) { if (rf & 1) {
329
- const _r13 = i0.ɵɵgetCurrentView();
330
- i0.ɵɵelementStart(0, "button", 76);
331
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.retryFailed()); });
332
- i0.ɵɵelement(1, "i", 72);
374
+ const _r15 = i0.ɵɵgetCurrentView();
375
+ i0.ɵɵelementStart(0, "button", 79);
376
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.retryFailed()); });
377
+ i0.ɵɵelement(1, "i", 75);
333
378
  i0.ɵɵtext(2);
334
379
  i0.ɵɵelementEnd();
335
- i0.ɵɵelementStart(3, "button", 77);
336
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onAcknowledgeAndClose()); });
380
+ i0.ɵɵelementStart(3, "button", 80);
381
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onAcknowledgeAndClose()); });
337
382
  i0.ɵɵtext(4, "Done");
338
383
  i0.ɵɵelementEnd();
339
384
  } if (rf & 2) {
@@ -342,15 +387,15 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_42_Tem
342
387
  i0.ɵɵtextInterpolate1(" Retry ", ctx_r1.failedCount, " failed ");
343
388
  } }
344
389
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_43_Template(rf, ctx) { if (rf & 1) {
345
- const _r14 = i0.ɵɵgetCurrentView();
346
- i0.ɵɵelementStart(0, "button", 76);
347
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_43_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onAcknowledgeAndClose()); });
348
- i0.ɵɵelement(1, "i", 48);
390
+ const _r16 = i0.ɵɵgetCurrentView();
391
+ i0.ɵɵelementStart(0, "button", 79);
392
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_43_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r16); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onAcknowledgeAndClose()); });
393
+ i0.ɵɵelement(1, "i", 56);
349
394
  i0.ɵɵtext(2, " Done ");
350
395
  i0.ɵɵelementEnd();
351
396
  } }
352
397
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Conditional_1_Template(rf, ctx) { if (rf & 1) {
353
- i0.ɵɵelement(0, "i", 60);
398
+ i0.ɵɵelement(0, "i", 44);
354
399
  i0.ɵɵtext(1);
355
400
  } if (rf & 2) {
356
401
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -358,7 +403,7 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Con
358
403
  i0.ɵɵtextInterpolate1(" Saving to ", ctx_r1.selectedIds.size, "\u2026 ");
359
404
  } }
360
405
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Conditional_2_Template(rf, ctx) { if (rf & 1) {
361
- i0.ɵɵelement(0, "i", 80);
406
+ i0.ɵɵelement(0, "i", 83);
362
407
  i0.ɵɵtext(1);
363
408
  } if (rf & 2) {
364
409
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -366,13 +411,13 @@ function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Con
366
411
  i0.ɵɵtextInterpolate2(" Save to ", ctx_r1.selectedIds.size, " ", ctx_r1.selectedIds.size === 1 ? "collection" : "collections", " ");
367
412
  } }
368
413
  function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Template(rf, ctx) { if (rf & 1) {
369
- const _r15 = i0.ɵɵgetCurrentView();
370
- i0.ɵɵelementStart(0, "button", 78);
371
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSave()); });
414
+ const _r17 = i0.ɵɵgetCurrentView();
415
+ i0.ɵɵelementStart(0, "button", 81);
416
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onSave()); });
372
417
  i0.ɵɵconditionalCreate(1, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Conditional_1_Template, 2, 1)(2, ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Conditional_2_Template, 2, 2);
373
418
  i0.ɵɵelementEnd();
374
- i0.ɵɵelementStart(3, "button", 79);
375
- i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onCancel()); });
419
+ i0.ɵɵelementStart(3, "button", 82);
420
+ i0.ɵɵlistener("click", function ArtifactCollectionPickerModalComponent_Conditional_0_Conditional_44_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r17); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onCancel()); });
376
421
  i0.ɵɵtext(4, "Cancel");
377
422
  i0.ɵɵelementEnd();
378
423
  } if (rf & 2) {
@@ -982,14 +1027,14 @@ export class ArtifactCollectionPickerModalComponent extends BaseAngularComponent
982
1027
  let _t;
983
1028
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.searchInputRef = _t.first);
984
1029
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.newNameInputRef = _t.first);
985
- } }, inputs: { isOpen: "isOpen", environmentId: "environmentId", currentUser: "currentUser", excludeCollectionIds: "excludeCollectionIds", artifactVersionId: "artifactVersionId", artifactName: "artifactName", artifactVersionNumber: "artifactVersionNumber" }, outputs: { completed: "completed", cancelled: "cancelled" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["searchInput", ""], ["newNameInput", ""], ["Title", "Save to Collection", 3, "Visible", "Width", "MinWidth"], ["Title", "Save to Collection", 3, "Close", "Visible", "Width", "MinWidth"], [1, "picker-shell"], [1, "pane", "pane-left"], [1, "toolbar"], [1, "search"], [1, "fa-solid", "fa-magnifying-glass"], ["type", "text", "placeholder", "Search collections\u2026", 3, "ngModelChange", "ngModel", "disabled"], ["title", "Clear", 1, "search-clear"], [1, "chip-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-user-pen"], [1, "fa-solid", "fa-clock"], [1, "tree-wrap"], [1, "state-block"], [1, "state-block", "error"], [1, "state-block", "muted"], ["role", "tree", 1, "tree"], [1, "pane", "pane-right"], [1, "preview-block"], [1, "block-label"], [1, "preview-card"], [1, "preview-thumb"], [1, "fa-solid", "fa-file-lines"], [1, "preview-meta"], [1, "preview-name", 3, "title"], [1, "badge", "neutral"], [1, "chips-block"], [1, "chips"], [1, "chips-empty"], [1, "footnote"], [1, "fa-solid", "fa-shield-halved"], ["mjButton", "", "variant", "primary"], ["title", "Clear", 1, "search-clear", 3, "click"], [1, "fa-solid", "fa-xmark"], ["text", "Loading collections\u2026", "size", "medium"], [1, "fa-solid", "fa-triangle-exclamation"], [1, "link-btn", 3, "click"], [1, "fa-solid", "fa-folder-open"], [1, "hint"], ["role", "treeitem", 1, "row", 3, "selected", "already", "padding-left"], [1, "row", "create-row"], [1, "row", "create-form-row"], ["role", "treeitem", 1, "row", 3, "click"], [1, "caret", 3, "click"], [1, "fa-solid", 3, "fa-chevron-down", "fa-chevron-right"], [1, "check"], [1, "fa-solid", "fa-check"], [1, "fa-solid", "fa-folder", "folder-icon"], [1, "row-title"], [1, "row-ancestry"], [1, "row-tag", "success"], [1, "fa-solid"], [1, "row", "create-row", 3, "click"], [1, "caret"], [1, "check", "dashed"], [1, "fa-solid", "fa-plus"], ["type", "text", "placeholder", "Collection name", 1, "create-input", 3, "ngModelChange", "keydown.enter", "keydown.escape", "ngModel", "disabled"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], ["mjButton", "", "size", "sm", 3, "click", "disabled"], [1, "block-count"], [1, "chip", "result", 3, "success", "error", "saving"], [1, "chip", "result"], [1, "chip-status"], [1, "fa-solid", "fa-circle"], [1, "chip-body"], [1, "chip-name"], [1, "chip-error"], ["title", "Retry", 1, "chip-action"], ["title", "Retry", 1, "chip-action", 3, "click"], [1, "fa-solid", "fa-rotate-right"], [1, "chip"], ["title", "Remove", 1, "chip-action", 3, "click", "disabled"], [1, "fa-solid", "fa-hand-pointer"], ["mjButton", "", "variant", "primary", 3, "click"], ["mjButton", "", 3, "click"], ["mjButton", "", "variant", "primary", 3, "click", "disabled"], ["mjButton", "", 3, "click", "disabled"], [1, "fa-solid", "fa-bookmark"]], template: function ArtifactCollectionPickerModalComponent_Template(rf, ctx) { if (rf & 1) {
1030
+ } }, inputs: { isOpen: "isOpen", environmentId: "environmentId", currentUser: "currentUser", excludeCollectionIds: "excludeCollectionIds", artifactVersionId: "artifactVersionId", artifactName: "artifactName", artifactVersionNumber: "artifactVersionNumber" }, outputs: { completed: "completed", cancelled: "cancelled" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["searchInput", ""], ["newNameInput", ""], ["Title", "Save to Collection", 3, "Visible", "Width", "MinWidth"], ["Title", "Save to Collection", 3, "Close", "Visible", "Width", "MinWidth"], [1, "picker-shell"], [1, "pane", "pane-left"], [1, "toolbar"], [1, "search"], [1, "fa-solid", "fa-magnifying-glass"], ["type", "text", "placeholder", "Search collections\u2026", 3, "ngModelChange", "ngModel", "disabled"], ["title", "Clear", 1, "search-clear"], [1, "chip-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-user-pen"], [1, "fa-solid", "fa-clock"], [1, "tree-wrap"], [1, "state-block"], [1, "state-block", "error"], [1, "state-block", "muted"], ["role", "tree", 1, "tree"], [1, "pane", "pane-right"], [1, "preview-block"], [1, "block-label"], [1, "preview-card"], [1, "preview-thumb"], [1, "fa-solid", "fa-file-lines"], [1, "preview-meta"], [1, "preview-name", 3, "title"], [1, "badge", "neutral"], [1, "chips-block"], [1, "chips"], [1, "chips-empty"], [1, "footnote"], [1, "fa-solid", "fa-shield-halved"], ["mjButton", "", "variant", "primary"], ["title", "Clear", 1, "search-clear", 3, "click"], [1, "fa-solid", "fa-xmark"], ["text", "Loading collections\u2026", "size", "medium"], [1, "fa-solid", "fa-triangle-exclamation"], [1, "link-btn", 3, "click"], [1, "fa-solid", "fa-folder-open"], [1, "empty-create-form"], ["type", "text", "placeholder", "Collection name", 1, "create-input", 3, "ngModelChange", "keydown.enter", "keydown.escape", "ngModel", "disabled"], [1, "empty-create-actions"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], ["mjButton", "", "size", "sm", 3, "click", "disabled"], [1, "hint"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click"], [1, "fa-solid", "fa-plus"], ["role", "treeitem", 1, "row", 3, "selected", "already", "padding-left"], [1, "row", "create-row"], [1, "row", "create-form-row"], ["role", "treeitem", 1, "row", 3, "click"], [1, "caret", 3, "click"], [1, "fa-solid", 3, "fa-chevron-down", "fa-chevron-right"], [1, "check"], [1, "fa-solid", "fa-check"], [1, "fa-solid", "fa-folder", "folder-icon"], [1, "row-title"], [1, "row-ancestry"], [1, "row-tag", "success"], [1, "fa-solid"], [1, "row", "create-row", 3, "click"], [1, "caret"], [1, "check", "dashed"], [1, "block-count"], [1, "chip", "result", 3, "success", "error", "saving"], [1, "chip", "result"], [1, "chip-status"], [1, "fa-solid", "fa-circle"], [1, "chip-body"], [1, "chip-name"], [1, "chip-error"], ["title", "Retry", 1, "chip-action"], ["title", "Retry", 1, "chip-action", 3, "click"], [1, "fa-solid", "fa-rotate-right"], [1, "chip"], ["title", "Remove", 1, "chip-action", 3, "click", "disabled"], [1, "fa-solid", "fa-hand-pointer"], ["mjButton", "", "variant", "primary", 3, "click"], ["mjButton", "", 3, "click"], ["mjButton", "", "variant", "primary", 3, "click", "disabled"], ["mjButton", "", 3, "click", "disabled"], [1, "fa-solid", "fa-bookmark"]], template: function ArtifactCollectionPickerModalComponent_Template(rf, ctx) { if (rf & 1) {
986
1031
  i0.ɵɵconditionalCreate(0, ArtifactCollectionPickerModalComponent_Conditional_0_Template, 45, 19, "mj-dialog", 2);
987
1032
  } if (rf & 2) {
988
1033
  i0.ɵɵconditional(ctx.isOpen ? 0 : -1);
989
1034
  } }, dependencies: [FormsModule, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgModel, MJDialogComponent,
990
1035
  MJDialogActionsComponent,
991
1036
  MJButtonDirective,
992
- SharedGenericModule, i4.LoadingComponent], styles: ["\n\n .picker-shell[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 300px;\n min-height: 460px;\n max-height: 70vh;\n gap: 0;\n margin: -8px -4px 0;\n }\n .pane[_ngcontent-%COMP%] { display:flex; flex-direction:column; min-height: 0; }\n .pane-left[_ngcontent-%COMP%] { border-right: 1px solid var(--mj-border-subtle); }\n .pane-right[_ngcontent-%COMP%] { background: var(--mj-bg-surface-card); }\n\n \n\n .toolbar[_ngcontent-%COMP%] {\n display:flex; gap: 8px; padding: 10px 12px;\n border-bottom: 1px solid var(--mj-border-subtle);\n flex-wrap: wrap;\n }\n .search[_ngcontent-%COMP%] {\n flex: 1; min-width: 200px;\n display:flex; align-items:center; gap: 8px;\n padding: 8px 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px solid transparent;\n border-radius: 8px;\n transition: all .15s ease;\n }\n .search[_ngcontent-%COMP%]:focus-within {\n background: var(--mj-bg-surface);\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 18%, transparent);\n }\n .search[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { color: var(--mj-text-muted); font-size: 13px; }\n .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n flex: 1; border: 0; outline: 0; background: transparent;\n font-size: 13.5px; color: var(--mj-text-primary);\n min-width: 0;\n }\n .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%]::placeholder { color: var(--mj-text-disabled); }\n .search-clear[_ngcontent-%COMP%] {\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); padding: 2px 4px; border-radius: 4px;\n }\n .search-clear[_ngcontent-%COMP%]:hover { color: var(--mj-text-primary); background: var(--mj-bg-surface-hover); }\n\n .chip-btn[_ngcontent-%COMP%] {\n display:inline-flex; align-items:center; gap: 6px;\n padding: 7px 11px; border-radius: 8px;\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n font-size: 12.5px; font-weight: 600; cursor: pointer;\n transition: all .15s ease;\n }\n .chip-btn[_ngcontent-%COMP%]:hover:not(:disabled) { background: var(--mj-bg-surface-hover); color: var(--mj-text-primary); }\n .chip-btn.active[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .chip-btn[_ngcontent-%COMP%]:disabled { opacity: .55; cursor: not-allowed; }\n\n \n\n .tree-wrap[_ngcontent-%COMP%] { flex: 1; overflow-y: auto; padding: 8px 8px 16px; }\n .tree[_ngcontent-%COMP%] { display:flex; flex-direction: column; gap: 1px; }\n .row[_ngcontent-%COMP%] {\n display:flex; align-items:center; gap: 10px;\n padding: 7px 12px; border-radius: 8px; cursor: pointer;\n user-select: none;\n border: 1px solid transparent;\n background: transparent;\n text-align: left;\n transition: background .12s ease;\n min-height: 36px;\n }\n .row[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); }\n .row.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 9%, var(--mj-bg-surface));\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .row.already[_ngcontent-%COMP%] { cursor: default; }\n .row.already[_ngcontent-%COMP%]:hover { background: transparent; }\n .row.already[_ngcontent-%COMP%] .row-title[_ngcontent-%COMP%] { color: var(--mj-text-secondary); }\n\n .caret[_ngcontent-%COMP%] {\n width: 16px; flex-shrink: 0; text-align: center;\n color: var(--mj-text-muted); font-size: 10px;\n cursor: pointer;\n }\n .caret[_ngcontent-%COMP%]:hover { color: var(--mj-text-primary); }\n\n .check[_ngcontent-%COMP%] {\n width: 18px; height: 18px; border-radius: 5px;\n border: 1.5px solid var(--mj-border-strong);\n background: var(--mj-bg-surface);\n display:flex; align-items:center; justify-content:center;\n color: transparent; font-size: 10px; flex-shrink: 0;\n transition: all .12s ease;\n }\n .check.checked[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n border-color: var(--mj-brand-primary);\n color: #fff;\n }\n .check.locked[_ngcontent-%COMP%] {\n background: var(--mj-status-success);\n border-color: var(--mj-status-success);\n color: #fff;\n }\n .check.dashed[_ngcontent-%COMP%] {\n border-style: dashed;\n color: var(--mj-text-muted);\n }\n\n .folder-icon[_ngcontent-%COMP%] { font-size: 14px; flex-shrink: 0; }\n\n .row-title[_ngcontent-%COMP%] {\n flex: 1; font-size: 13.5px; font-weight: 600;\n color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .row-ancestry[_ngcontent-%COMP%] {\n font-weight: 500; color: var(--mj-text-muted); font-size: 12px;\n margin-left: 2px;\n }\n .row-tag[_ngcontent-%COMP%] {\n font-size: 11px; font-weight: 600; padding: 2px 8px;\n border-radius: 999px; flex-shrink: 0;\n }\n .row-tag.success[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n border: 1px solid color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n }\n\n .create-row[_ngcontent-%COMP%] {\n width: 100%;\n border: 1.5px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n margin-top: 8px;\n background: transparent;\n }\n .create-row[_ngcontent-%COMP%] .row-title[_ngcontent-%COMP%] { color: var(--mj-text-secondary); font-weight: 600; }\n .create-row[_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) 4%, var(--mj-bg-surface));\n }\n .create-row[_ngcontent-%COMP%]:hover .row-title[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n\n .create-form-row[_ngcontent-%COMP%] {\n margin-top: 8px;\n border: 1.5px solid var(--mj-border-focus);\n background: var(--mj-bg-surface);\n cursor: default;\n gap: 8px;\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n }\n .create-input[_ngcontent-%COMP%] {\n flex: 1; min-width: 0;\n padding: 7px 10px;\n font-size: 13.5px; color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1.5px solid var(--mj-border-strong);\n border-radius: 6px;\n outline: 0;\n transition: all .12s ease;\n }\n .create-input[_ngcontent-%COMP%]::placeholder {\n color: var(--mj-text-muted);\n }\n .create-input[_ngcontent-%COMP%]:focus {\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 20%, transparent);\n }\n\n \n\n .state-block[_ngcontent-%COMP%] {\n display:flex; flex-direction:column; align-items:center; justify-content:center;\n padding: 48px 24px; gap: 8px; color: var(--mj-text-muted);\n text-align: center;\n }\n .state-block[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 28px; opacity: .6; }\n .state-block.error[_ngcontent-%COMP%] { color: var(--mj-status-error-text); }\n .state-block[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%] { font-size: 12.5px; color: var(--mj-text-disabled); margin: 0; }\n .state-block[_ngcontent-%COMP%] .link-btn[_ngcontent-%COMP%] {\n background: transparent; border: 0; color: var(--mj-text-link);\n font-weight: 600; cursor: pointer; font-size: 13px; padding: 6px 12px;\n }\n .state-block[_ngcontent-%COMP%] .link-btn[_ngcontent-%COMP%]:hover { color: var(--mj-text-link-hover); text-decoration: underline; }\n .state-block[_ngcontent-%COMP%] p[_ngcontent-%COMP%] { margin: 0; font-size: 13.5px; }\n\n \n\n .preview-block[_ngcontent-%COMP%] { padding: 16px 18px; border-bottom: 1px solid var(--mj-border-subtle); }\n .block-label[_ngcontent-%COMP%] {\n font-size: 11px; text-transform: uppercase; letter-spacing: .08em;\n font-weight: 700; color: var(--mj-text-muted); margin-bottom: 8px;\n display:flex; justify-content:space-between; align-items:center;\n }\n .block-count[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary); font-size: 12px;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n padding: 2px 8px; border-radius: 999px;\n }\n .preview-card[_ngcontent-%COMP%] {\n display:flex; gap: 12px; align-items:center;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 10px; padding: 12px;\n box-shadow: 0 1px 2px rgba(15,23,42,.04);\n }\n .preview-thumb[_ngcontent-%COMP%] {\n width: 38px; height: 38px; border-radius: 9px; flex-shrink: 0;\n background: linear-gradient(135deg, var(--mj-color-accent-400), var(--mj-brand-primary));\n color: #fff; display:flex; align-items:center; justify-content:center;\n font-size: 14px;\n }\n .preview-meta[_ngcontent-%COMP%] { flex: 1; min-width: 0; display:flex; flex-direction: column; gap: 4px; }\n .preview-name[_ngcontent-%COMP%] {\n font-weight: 700; font-size: 13.5px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .badge[_ngcontent-%COMP%] {\n display:inline-flex; align-items:center; gap: 4px;\n padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 600;\n width: fit-content;\n }\n .badge.neutral[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n }\n\n .chips-block[_ngcontent-%COMP%] { flex: 1; min-height: 0; display:flex; flex-direction: column;\n padding: 16px 18px 8px; overflow-y: auto; }\n .chips[_ngcontent-%COMP%] { display:flex; flex-direction: column; gap: 6px; }\n .chip[_ngcontent-%COMP%] {\n display:flex; align-items:center; gap: 10px; padding: 8px 10px;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n }\n .chip-body[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n .chip-name[_ngcontent-%COMP%] {\n font-weight: 600; font-size: 13px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-error[_ngcontent-%COMP%] {\n font-size: 11.5px; color: var(--mj-status-error-text); margin-top: 2px;\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-action[_ngcontent-%COMP%] {\n width: 24px; height: 24px; border-radius: 6px;\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); font-size: 11px;\n display:flex; align-items:center; justify-content:center;\n }\n .chip-action[_ngcontent-%COMP%]:hover:not(:disabled) {\n background: var(--mj-bg-surface-hover); color: var(--mj-text-primary);\n }\n .chip-action[_ngcontent-%COMP%]:disabled { opacity: .4; cursor: not-allowed; }\n .chip-status[_ngcontent-%COMP%] {\n width: 20px; flex-shrink: 0; text-align: center; font-size: 12px;\n }\n .chip.result.success[_ngcontent-%COMP%] { border-color: color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n background: var(--mj-status-success-bg); }\n .chip.result.success[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-status-success-text); }\n .chip.result.error[_ngcontent-%COMP%] { border-color: color-mix(in srgb, var(--mj-status-error) 35%, transparent);\n background: var(--mj-status-error-bg); }\n .chip.result.error[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-status-error-text); }\n .chip.result.saving[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n\n .chips-empty[_ngcontent-%COMP%] {\n flex: 1; display:flex; flex-direction: column; align-items: center; justify-content: center;\n padding: 32px 16px; text-align: center; color: var(--mj-text-muted);\n border: 1.5px dashed var(--mj-border-default); border-radius: 10px;\n }\n .chips-empty[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 22px; margin-bottom: 8px; opacity: .55; }\n .chips-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%] { margin: 0; font-size: 12.5px; }\n\n .footnote[_ngcontent-%COMP%] {\n padding: 12px 18px;\n font-size: 11.5px; color: var(--mj-text-muted);\n display:flex; align-items:center; gap: 6px;\n border-top: 1px solid var(--mj-border-subtle);\n }\n .footnote[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 11px; }\n\n \n\n [_nghost-%COMP%] mj-dialog .k-window-content, \n [_nghost-%COMP%] mj-dialog .mj-dialog-content {\n padding: 0 !important;\n }"] });
1037
+ SharedGenericModule, i4.LoadingComponent], styles: ["\n\n .picker-shell[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 300px;\n min-height: 460px;\n max-height: 70vh;\n gap: 0;\n margin: -8px -4px 0;\n }\n .pane[_ngcontent-%COMP%] { display:flex; flex-direction:column; min-height: 0; }\n .pane-left[_ngcontent-%COMP%] { border-right: 1px solid var(--mj-border-subtle); }\n .pane-right[_ngcontent-%COMP%] { background: var(--mj-bg-surface-card); }\n\n \n\n .toolbar[_ngcontent-%COMP%] {\n display:flex; gap: 8px; padding: 10px 12px;\n border-bottom: 1px solid var(--mj-border-subtle);\n flex-wrap: wrap;\n }\n .search[_ngcontent-%COMP%] {\n flex: 1; min-width: 200px;\n display:flex; align-items:center; gap: 8px;\n padding: 8px 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px solid transparent;\n border-radius: 8px;\n transition: all .15s ease;\n }\n .search[_ngcontent-%COMP%]:focus-within {\n background: var(--mj-bg-surface);\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 18%, transparent);\n }\n .search[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { color: var(--mj-text-muted); font-size: 13px; }\n .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n flex: 1; border: 0; outline: 0; background: transparent;\n font-size: 13.5px; color: var(--mj-text-primary);\n min-width: 0;\n }\n .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%]::placeholder { color: var(--mj-text-disabled); }\n .search-clear[_ngcontent-%COMP%] {\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); padding: 2px 4px; border-radius: 4px;\n }\n .search-clear[_ngcontent-%COMP%]:hover { color: var(--mj-text-primary); background: var(--mj-bg-surface-hover); }\n\n .chip-btn[_ngcontent-%COMP%] {\n display:inline-flex; align-items:center; gap: 6px;\n padding: 7px 11px; border-radius: 8px;\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n font-size: 12.5px; font-weight: 600; cursor: pointer;\n transition: all .15s ease;\n }\n .chip-btn[_ngcontent-%COMP%]:hover:not(:disabled) { background: var(--mj-bg-surface-hover); color: var(--mj-text-primary); }\n .chip-btn.active[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .chip-btn[_ngcontent-%COMP%]:disabled { opacity: .55; cursor: not-allowed; }\n\n \n\n .tree-wrap[_ngcontent-%COMP%] { flex: 1; overflow-y: auto; padding: 8px 8px 16px; }\n .tree[_ngcontent-%COMP%] { display:flex; flex-direction: column; gap: 1px; }\n .row[_ngcontent-%COMP%] {\n display:flex; align-items:center; gap: 10px;\n padding: 7px 12px; border-radius: 8px; cursor: pointer;\n user-select: none;\n border: 1px solid transparent;\n background: transparent;\n text-align: left;\n transition: background .12s ease;\n min-height: 36px;\n }\n .row[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); }\n .row.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 9%, var(--mj-bg-surface));\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .row.already[_ngcontent-%COMP%] { cursor: default; }\n .row.already[_ngcontent-%COMP%]:hover { background: transparent; }\n .row.already[_ngcontent-%COMP%] .row-title[_ngcontent-%COMP%] { color: var(--mj-text-secondary); }\n\n .caret[_ngcontent-%COMP%] {\n width: 16px; flex-shrink: 0; text-align: center;\n color: var(--mj-text-muted); font-size: 10px;\n cursor: pointer;\n }\n .caret[_ngcontent-%COMP%]:hover { color: var(--mj-text-primary); }\n\n .check[_ngcontent-%COMP%] {\n width: 18px; height: 18px; border-radius: 5px;\n border: 1.5px solid var(--mj-border-strong);\n background: var(--mj-bg-surface);\n display:flex; align-items:center; justify-content:center;\n color: transparent; font-size: 10px; flex-shrink: 0;\n transition: all .12s ease;\n }\n .check.checked[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n border-color: var(--mj-brand-primary);\n color: #fff;\n }\n .check.locked[_ngcontent-%COMP%] {\n background: var(--mj-status-success);\n border-color: var(--mj-status-success);\n color: #fff;\n }\n .check.dashed[_ngcontent-%COMP%] {\n border-style: dashed;\n color: var(--mj-text-muted);\n }\n\n .folder-icon[_ngcontent-%COMP%] { font-size: 14px; flex-shrink: 0; }\n\n .row-title[_ngcontent-%COMP%] {\n flex: 1; font-size: 13.5px; font-weight: 600;\n color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .row-ancestry[_ngcontent-%COMP%] {\n font-weight: 500; color: var(--mj-text-muted); font-size: 12px;\n margin-left: 2px;\n }\n .row-tag[_ngcontent-%COMP%] {\n font-size: 11px; font-weight: 600; padding: 2px 8px;\n border-radius: 999px; flex-shrink: 0;\n }\n .row-tag.success[_ngcontent-%COMP%] {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n border: 1px solid color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n }\n\n .create-row[_ngcontent-%COMP%] {\n width: 100%;\n border: 1.5px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n margin-top: 8px;\n background: transparent;\n }\n .create-row[_ngcontent-%COMP%] .row-title[_ngcontent-%COMP%] { color: var(--mj-text-secondary); font-weight: 600; }\n .create-row[_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) 4%, var(--mj-bg-surface));\n }\n .create-row[_ngcontent-%COMP%]:hover .row-title[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n\n .create-form-row[_ngcontent-%COMP%] {\n margin-top: 8px;\n border: 1.5px solid var(--mj-border-focus);\n background: var(--mj-bg-surface);\n cursor: default;\n gap: 8px;\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n }\n .create-input[_ngcontent-%COMP%] {\n flex: 1; min-width: 0;\n padding: 7px 10px;\n font-size: 13.5px; color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1.5px solid var(--mj-border-strong);\n border-radius: 6px;\n outline: 0;\n transition: all .12s ease;\n }\n .create-input[_ngcontent-%COMP%]::placeholder {\n color: var(--mj-text-muted);\n }\n .create-input[_ngcontent-%COMP%]:focus {\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 20%, transparent);\n }\n\n \n\n .state-block[_ngcontent-%COMP%] {\n display:flex; flex-direction:column; align-items:center; justify-content:center;\n padding: 48px 24px; gap: 8px; color: var(--mj-text-muted);\n text-align: center;\n }\n .state-block[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 28px; opacity: .6; }\n .state-block.error[_ngcontent-%COMP%] { color: var(--mj-status-error-text); }\n .state-block[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%] { font-size: 12.5px; color: var(--mj-text-disabled); margin: 0; }\n .state-block[_ngcontent-%COMP%] .link-btn[_ngcontent-%COMP%] {\n background: transparent; border: 0; color: var(--mj-text-link);\n font-weight: 600; cursor: pointer; font-size: 13px; padding: 6px 12px;\n }\n .state-block[_ngcontent-%COMP%] .link-btn[_ngcontent-%COMP%]:hover { color: var(--mj-text-link-hover); text-decoration: underline; }\n .state-block[_ngcontent-%COMP%] p[_ngcontent-%COMP%] { margin: 0; font-size: 13.5px; }\n \n\n .state-block[_ngcontent-%COMP%] button[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: inherit; opacity: 1; }\n .empty-create-form[_ngcontent-%COMP%] {\n display: flex; flex-direction: column; gap: 8px;\n width: 100%; max-width: 280px; margin-top: 4px;\n }\n .empty-create-actions[_ngcontent-%COMP%] { display: flex; gap: 8px; justify-content: center; }\n\n \n\n .preview-block[_ngcontent-%COMP%] { padding: 16px 18px; border-bottom: 1px solid var(--mj-border-subtle); }\n .block-label[_ngcontent-%COMP%] {\n font-size: 11px; text-transform: uppercase; letter-spacing: .08em;\n font-weight: 700; color: var(--mj-text-muted); margin-bottom: 8px;\n display:flex; justify-content:space-between; align-items:center;\n }\n .block-count[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary); font-size: 12px;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n padding: 2px 8px; border-radius: 999px;\n }\n .preview-card[_ngcontent-%COMP%] {\n display:flex; gap: 12px; align-items:center;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 10px; padding: 12px;\n box-shadow: 0 1px 2px rgba(15,23,42,.04);\n }\n .preview-thumb[_ngcontent-%COMP%] {\n width: 38px; height: 38px; border-radius: 9px; flex-shrink: 0;\n background: linear-gradient(135deg, var(--mj-color-accent-400), var(--mj-brand-primary));\n color: #fff; display:flex; align-items:center; justify-content:center;\n font-size: 14px;\n }\n .preview-meta[_ngcontent-%COMP%] { flex: 1; min-width: 0; display:flex; flex-direction: column; gap: 4px; }\n .preview-name[_ngcontent-%COMP%] {\n font-weight: 700; font-size: 13.5px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .badge[_ngcontent-%COMP%] {\n display:inline-flex; align-items:center; gap: 4px;\n padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 600;\n width: fit-content;\n }\n .badge.neutral[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n }\n\n .chips-block[_ngcontent-%COMP%] { flex: 1; min-height: 0; display:flex; flex-direction: column;\n padding: 16px 18px 8px; overflow-y: auto; }\n .chips[_ngcontent-%COMP%] { display:flex; flex-direction: column; gap: 6px; }\n .chip[_ngcontent-%COMP%] {\n display:flex; align-items:center; gap: 10px; padding: 8px 10px;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n }\n .chip-body[_ngcontent-%COMP%] { flex: 1; min-width: 0; }\n .chip-name[_ngcontent-%COMP%] {\n font-weight: 600; font-size: 13px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-error[_ngcontent-%COMP%] {\n font-size: 11.5px; color: var(--mj-status-error-text); margin-top: 2px;\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-action[_ngcontent-%COMP%] {\n width: 24px; height: 24px; border-radius: 6px;\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); font-size: 11px;\n display:flex; align-items:center; justify-content:center;\n }\n .chip-action[_ngcontent-%COMP%]:hover:not(:disabled) {\n background: var(--mj-bg-surface-hover); color: var(--mj-text-primary);\n }\n .chip-action[_ngcontent-%COMP%]:disabled { opacity: .4; cursor: not-allowed; }\n .chip-status[_ngcontent-%COMP%] {\n width: 20px; flex-shrink: 0; text-align: center; font-size: 12px;\n }\n .chip.result.success[_ngcontent-%COMP%] { border-color: color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n background: var(--mj-status-success-bg); }\n .chip.result.success[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-status-success-text); }\n .chip.result.error[_ngcontent-%COMP%] { border-color: color-mix(in srgb, var(--mj-status-error) 35%, transparent);\n background: var(--mj-status-error-bg); }\n .chip.result.error[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-status-error-text); }\n .chip.result.saving[_ngcontent-%COMP%] .chip-status[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n\n .chips-empty[_ngcontent-%COMP%] {\n flex: 1; display:flex; flex-direction: column; align-items: center; justify-content: center;\n padding: 32px 16px; text-align: center; color: var(--mj-text-muted);\n border: 1.5px dashed var(--mj-border-default); border-radius: 10px;\n }\n .chips-empty[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 22px; margin-bottom: 8px; opacity: .55; }\n .chips-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%] { margin: 0; font-size: 12.5px; }\n\n .footnote[_ngcontent-%COMP%] {\n padding: 12px 18px;\n font-size: 11.5px; color: var(--mj-text-muted);\n display:flex; align-items:center; gap: 6px;\n border-top: 1px solid var(--mj-border-subtle);\n }\n .footnote[_ngcontent-%COMP%] i[_ngcontent-%COMP%] { font-size: 11px; }\n\n \n\n [_nghost-%COMP%] mj-dialog .k-window-content, \n [_nghost-%COMP%] mj-dialog .mj-dialog-content {\n padding: 0 !important;\n }"] });
993
1038
  }
994
1039
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ArtifactCollectionPickerModalComponent, [{
995
1040
  type: Component,
@@ -1061,7 +1106,36 @@ export class ArtifactCollectionPickerModalComponent extends BaseAngularComponent
1061
1106
  } @else {
1062
1107
  <i class="fa-solid fa-folder-open"></i>
1063
1108
  <p>No editable collections yet</p>
1064
- <p class="hint">Create one to get started</p>
1109
+ @if (showCreateForm) {
1110
+ <div class="empty-create-form">
1111
+ <input #newNameInput type="text"
1112
+ class="create-input"
1113
+ [(ngModel)]="newCollectionName"
1114
+ (keydown.enter)="createCollection()"
1115
+ (keydown.escape)="cancelCreate()"
1116
+ placeholder="Collection name"
1117
+ [disabled]="isCreatingCollection" />
1118
+ <div class="empty-create-actions">
1119
+ <button mjButton variant="primary" size="sm"
1120
+ (click)="createCollection()"
1121
+ [disabled]="isCreatingCollection || !newCollectionName.trim()">
1122
+ @if (isCreatingCollection) {
1123
+ <i class="fa-solid fa-spinner fa-spin"></i>
1124
+ } @else {
1125
+ Create
1126
+ }
1127
+ </button>
1128
+ <button mjButton size="sm" (click)="cancelCreate()" [disabled]="isCreatingCollection">
1129
+ Cancel
1130
+ </button>
1131
+ </div>
1132
+ </div>
1133
+ } @else {
1134
+ <p class="hint">Create one to get started</p>
1135
+ <button mjButton variant="primary" size="sm" (click)="openCreateForm()">
1136
+ <i class="fa-solid fa-plus"></i> New collection
1137
+ </button>
1138
+ }
1065
1139
  }
1066
1140
  </div>
1067
1141
  } @else {
@@ -1253,7 +1327,7 @@ export class ArtifactCollectionPickerModalComponent extends BaseAngularComponent
1253
1327
  </mj-dialog-actions>
1254
1328
  </mj-dialog>
1255
1329
  }
1256
- `, styles: ["\n /* ===== Shell ===== */\n .picker-shell {\n display: grid;\n grid-template-columns: 1fr 300px;\n min-height: 460px;\n max-height: 70vh;\n gap: 0;\n margin: -8px -4px 0;\n }\n .pane { display:flex; flex-direction:column; min-height: 0; }\n .pane-left { border-right: 1px solid var(--mj-border-subtle); }\n .pane-right { background: var(--mj-bg-surface-card); }\n\n /* ===== Toolbar / search / chip filters ===== */\n .toolbar {\n display:flex; gap: 8px; padding: 10px 12px;\n border-bottom: 1px solid var(--mj-border-subtle);\n flex-wrap: wrap;\n }\n .search {\n flex: 1; min-width: 200px;\n display:flex; align-items:center; gap: 8px;\n padding: 8px 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px solid transparent;\n border-radius: 8px;\n transition: all .15s ease;\n }\n .search:focus-within {\n background: var(--mj-bg-surface);\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 18%, transparent);\n }\n .search i { color: var(--mj-text-muted); font-size: 13px; }\n .search input {\n flex: 1; border: 0; outline: 0; background: transparent;\n font-size: 13.5px; color: var(--mj-text-primary);\n min-width: 0;\n }\n .search input::placeholder { color: var(--mj-text-disabled); }\n .search-clear {\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); padding: 2px 4px; border-radius: 4px;\n }\n .search-clear:hover { color: var(--mj-text-primary); background: var(--mj-bg-surface-hover); }\n\n .chip-btn {\n display:inline-flex; align-items:center; gap: 6px;\n padding: 7px 11px; border-radius: 8px;\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n font-size: 12.5px; font-weight: 600; cursor: pointer;\n transition: all .15s ease;\n }\n .chip-btn:hover:not(:disabled) { background: var(--mj-bg-surface-hover); color: var(--mj-text-primary); }\n .chip-btn.active {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .chip-btn:disabled { opacity: .55; cursor: not-allowed; }\n\n /* ===== Tree ===== */\n .tree-wrap { flex: 1; overflow-y: auto; padding: 8px 8px 16px; }\n .tree { display:flex; flex-direction: column; gap: 1px; }\n .row {\n display:flex; align-items:center; gap: 10px;\n padding: 7px 12px; border-radius: 8px; cursor: pointer;\n user-select: none;\n border: 1px solid transparent;\n background: transparent;\n text-align: left;\n transition: background .12s ease;\n min-height: 36px;\n }\n .row:hover { background: var(--mj-bg-surface-hover); }\n .row.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 9%, var(--mj-bg-surface));\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .row.already { cursor: default; }\n .row.already:hover { background: transparent; }\n .row.already .row-title { color: var(--mj-text-secondary); }\n\n .caret {\n width: 16px; flex-shrink: 0; text-align: center;\n color: var(--mj-text-muted); font-size: 10px;\n cursor: pointer;\n }\n .caret:hover { color: var(--mj-text-primary); }\n\n .check {\n width: 18px; height: 18px; border-radius: 5px;\n border: 1.5px solid var(--mj-border-strong);\n background: var(--mj-bg-surface);\n display:flex; align-items:center; justify-content:center;\n color: transparent; font-size: 10px; flex-shrink: 0;\n transition: all .12s ease;\n }\n .check.checked {\n background: var(--mj-brand-primary);\n border-color: var(--mj-brand-primary);\n color: #fff;\n }\n .check.locked {\n background: var(--mj-status-success);\n border-color: var(--mj-status-success);\n color: #fff;\n }\n .check.dashed {\n border-style: dashed;\n color: var(--mj-text-muted);\n }\n\n .folder-icon { font-size: 14px; flex-shrink: 0; }\n\n .row-title {\n flex: 1; font-size: 13.5px; font-weight: 600;\n color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .row-ancestry {\n font-weight: 500; color: var(--mj-text-muted); font-size: 12px;\n margin-left: 2px;\n }\n .row-tag {\n font-size: 11px; font-weight: 600; padding: 2px 8px;\n border-radius: 999px; flex-shrink: 0;\n }\n .row-tag.success {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n border: 1px solid color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n }\n\n .create-row {\n width: 100%;\n border: 1.5px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n margin-top: 8px;\n background: transparent;\n }\n .create-row .row-title { color: var(--mj-text-secondary); font-weight: 600; }\n .create-row:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 4%, var(--mj-bg-surface));\n }\n .create-row:hover .row-title { color: var(--mj-brand-primary); }\n\n .create-form-row {\n margin-top: 8px;\n border: 1.5px solid var(--mj-border-focus);\n background: var(--mj-bg-surface);\n cursor: default;\n gap: 8px;\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n }\n .create-input {\n flex: 1; min-width: 0;\n padding: 7px 10px;\n font-size: 13.5px; color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1.5px solid var(--mj-border-strong);\n border-radius: 6px;\n outline: 0;\n transition: all .12s ease;\n }\n .create-input::placeholder {\n color: var(--mj-text-muted);\n }\n .create-input:focus {\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 20%, transparent);\n }\n\n /* ===== State blocks ===== */\n .state-block {\n display:flex; flex-direction:column; align-items:center; justify-content:center;\n padding: 48px 24px; gap: 8px; color: var(--mj-text-muted);\n text-align: center;\n }\n .state-block i { font-size: 28px; opacity: .6; }\n .state-block.error { color: var(--mj-status-error-text); }\n .state-block .hint { font-size: 12.5px; color: var(--mj-text-disabled); margin: 0; }\n .state-block .link-btn {\n background: transparent; border: 0; color: var(--mj-text-link);\n font-weight: 600; cursor: pointer; font-size: 13px; padding: 6px 12px;\n }\n .state-block .link-btn:hover { color: var(--mj-text-link-hover); text-decoration: underline; }\n .state-block p { margin: 0; font-size: 13.5px; }\n\n /* ===== Right pane ===== */\n .preview-block { padding: 16px 18px; border-bottom: 1px solid var(--mj-border-subtle); }\n .block-label {\n font-size: 11px; text-transform: uppercase; letter-spacing: .08em;\n font-weight: 700; color: var(--mj-text-muted); margin-bottom: 8px;\n display:flex; justify-content:space-between; align-items:center;\n }\n .block-count {\n color: var(--mj-brand-primary); font-size: 12px;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n padding: 2px 8px; border-radius: 999px;\n }\n .preview-card {\n display:flex; gap: 12px; align-items:center;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 10px; padding: 12px;\n box-shadow: 0 1px 2px rgba(15,23,42,.04);\n }\n .preview-thumb {\n width: 38px; height: 38px; border-radius: 9px; flex-shrink: 0;\n background: linear-gradient(135deg, var(--mj-color-accent-400), var(--mj-brand-primary));\n color: #fff; display:flex; align-items:center; justify-content:center;\n font-size: 14px;\n }\n .preview-meta { flex: 1; min-width: 0; display:flex; flex-direction: column; gap: 4px; }\n .preview-name {\n font-weight: 700; font-size: 13.5px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .badge {\n display:inline-flex; align-items:center; gap: 4px;\n padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 600;\n width: fit-content;\n }\n .badge.neutral {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n }\n\n .chips-block { flex: 1; min-height: 0; display:flex; flex-direction: column;\n padding: 16px 18px 8px; overflow-y: auto; }\n .chips { display:flex; flex-direction: column; gap: 6px; }\n .chip {\n display:flex; align-items:center; gap: 10px; padding: 8px 10px;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n }\n .chip-body { flex: 1; min-width: 0; }\n .chip-name {\n font-weight: 600; font-size: 13px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-error {\n font-size: 11.5px; color: var(--mj-status-error-text); margin-top: 2px;\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-action {\n width: 24px; height: 24px; border-radius: 6px;\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); font-size: 11px;\n display:flex; align-items:center; justify-content:center;\n }\n .chip-action:hover:not(:disabled) {\n background: var(--mj-bg-surface-hover); color: var(--mj-text-primary);\n }\n .chip-action:disabled { opacity: .4; cursor: not-allowed; }\n .chip-status {\n width: 20px; flex-shrink: 0; text-align: center; font-size: 12px;\n }\n .chip.result.success { border-color: color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n background: var(--mj-status-success-bg); }\n .chip.result.success .chip-status { color: var(--mj-status-success-text); }\n .chip.result.error { border-color: color-mix(in srgb, var(--mj-status-error) 35%, transparent);\n background: var(--mj-status-error-bg); }\n .chip.result.error .chip-status { color: var(--mj-status-error-text); }\n .chip.result.saving .chip-status { color: var(--mj-brand-primary); }\n\n .chips-empty {\n flex: 1; display:flex; flex-direction: column; align-items: center; justify-content: center;\n padding: 32px 16px; text-align: center; color: var(--mj-text-muted);\n border: 1.5px dashed var(--mj-border-default); border-radius: 10px;\n }\n .chips-empty i { font-size: 22px; margin-bottom: 8px; opacity: .55; }\n .chips-empty p { margin: 0; font-size: 12.5px; }\n\n .footnote {\n padding: 12px 18px;\n font-size: 11.5px; color: var(--mj-text-muted);\n display:flex; align-items:center; gap: 6px;\n border-top: 1px solid var(--mj-border-subtle);\n }\n .footnote i { font-size: 11px; }\n\n /* Tighten dialog content padding so panes meet edges cleanly */\n :host ::ng-deep mj-dialog .k-window-content,\n :host ::ng-deep mj-dialog .mj-dialog-content {\n padding: 0 !important;\n }\n "] }]
1330
+ `, styles: ["\n /* ===== Shell ===== */\n .picker-shell {\n display: grid;\n grid-template-columns: 1fr 300px;\n min-height: 460px;\n max-height: 70vh;\n gap: 0;\n margin: -8px -4px 0;\n }\n .pane { display:flex; flex-direction:column; min-height: 0; }\n .pane-left { border-right: 1px solid var(--mj-border-subtle); }\n .pane-right { background: var(--mj-bg-surface-card); }\n\n /* ===== Toolbar / search / chip filters ===== */\n .toolbar {\n display:flex; gap: 8px; padding: 10px 12px;\n border-bottom: 1px solid var(--mj-border-subtle);\n flex-wrap: wrap;\n }\n .search {\n flex: 1; min-width: 200px;\n display:flex; align-items:center; gap: 8px;\n padding: 8px 12px;\n background: var(--mj-bg-surface-sunken);\n border: 1px solid transparent;\n border-radius: 8px;\n transition: all .15s ease;\n }\n .search:focus-within {\n background: var(--mj-bg-surface);\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 18%, transparent);\n }\n .search i { color: var(--mj-text-muted); font-size: 13px; }\n .search input {\n flex: 1; border: 0; outline: 0; background: transparent;\n font-size: 13.5px; color: var(--mj-text-primary);\n min-width: 0;\n }\n .search input::placeholder { color: var(--mj-text-disabled); }\n .search-clear {\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); padding: 2px 4px; border-radius: 4px;\n }\n .search-clear:hover { color: var(--mj-text-primary); background: var(--mj-bg-surface-hover); }\n\n .chip-btn {\n display:inline-flex; align-items:center; gap: 6px;\n padding: 7px 11px; border-radius: 8px;\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n color: var(--mj-text-secondary);\n font-size: 12.5px; font-weight: 600; cursor: pointer;\n transition: all .15s ease;\n }\n .chip-btn:hover:not(:disabled) { background: var(--mj-bg-surface-hover); color: var(--mj-text-primary); }\n .chip-btn.active {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .chip-btn:disabled { opacity: .55; cursor: not-allowed; }\n\n /* ===== Tree ===== */\n .tree-wrap { flex: 1; overflow-y: auto; padding: 8px 8px 16px; }\n .tree { display:flex; flex-direction: column; gap: 1px; }\n .row {\n display:flex; align-items:center; gap: 10px;\n padding: 7px 12px; border-radius: 8px; cursor: pointer;\n user-select: none;\n border: 1px solid transparent;\n background: transparent;\n text-align: left;\n transition: background .12s ease;\n min-height: 36px;\n }\n .row:hover { background: var(--mj-bg-surface-hover); }\n .row.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 9%, var(--mj-bg-surface));\n border-color: color-mix(in srgb, var(--mj-brand-primary) 30%, transparent);\n }\n .row.already { cursor: default; }\n .row.already:hover { background: transparent; }\n .row.already .row-title { color: var(--mj-text-secondary); }\n\n .caret {\n width: 16px; flex-shrink: 0; text-align: center;\n color: var(--mj-text-muted); font-size: 10px;\n cursor: pointer;\n }\n .caret:hover { color: var(--mj-text-primary); }\n\n .check {\n width: 18px; height: 18px; border-radius: 5px;\n border: 1.5px solid var(--mj-border-strong);\n background: var(--mj-bg-surface);\n display:flex; align-items:center; justify-content:center;\n color: transparent; font-size: 10px; flex-shrink: 0;\n transition: all .12s ease;\n }\n .check.checked {\n background: var(--mj-brand-primary);\n border-color: var(--mj-brand-primary);\n color: #fff;\n }\n .check.locked {\n background: var(--mj-status-success);\n border-color: var(--mj-status-success);\n color: #fff;\n }\n .check.dashed {\n border-style: dashed;\n color: var(--mj-text-muted);\n }\n\n .folder-icon { font-size: 14px; flex-shrink: 0; }\n\n .row-title {\n flex: 1; font-size: 13.5px; font-weight: 600;\n color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .row-ancestry {\n font-weight: 500; color: var(--mj-text-muted); font-size: 12px;\n margin-left: 2px;\n }\n .row-tag {\n font-size: 11px; font-weight: 600; padding: 2px 8px;\n border-radius: 999px; flex-shrink: 0;\n }\n .row-tag.success {\n background: var(--mj-status-success-bg);\n color: var(--mj-status-success-text);\n border: 1px solid color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n }\n\n .create-row {\n width: 100%;\n border: 1.5px dashed var(--mj-border-strong);\n color: var(--mj-text-secondary);\n margin-top: 8px;\n background: transparent;\n }\n .create-row .row-title { color: var(--mj-text-secondary); font-weight: 600; }\n .create-row:hover {\n border-color: var(--mj-brand-primary);\n color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 4%, var(--mj-bg-surface));\n }\n .create-row:hover .row-title { color: var(--mj-brand-primary); }\n\n .create-form-row {\n margin-top: 8px;\n border: 1.5px solid var(--mj-border-focus);\n background: var(--mj-bg-surface);\n cursor: default;\n gap: 8px;\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n }\n .create-input {\n flex: 1; min-width: 0;\n padding: 7px 10px;\n font-size: 13.5px; color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1.5px solid var(--mj-border-strong);\n border-radius: 6px;\n outline: 0;\n transition: all .12s ease;\n }\n .create-input::placeholder {\n color: var(--mj-text-muted);\n }\n .create-input:focus {\n border-color: var(--mj-border-focus);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--mj-brand-primary) 20%, transparent);\n }\n\n /* ===== State blocks ===== */\n .state-block {\n display:flex; flex-direction:column; align-items:center; justify-content:center;\n padding: 48px 24px; gap: 8px; color: var(--mj-text-muted);\n text-align: center;\n }\n .state-block i { font-size: 28px; opacity: .6; }\n .state-block.error { color: var(--mj-status-error-text); }\n .state-block .hint { font-size: 12.5px; color: var(--mj-text-disabled); margin: 0; }\n .state-block .link-btn {\n background: transparent; border: 0; color: var(--mj-text-link);\n font-weight: 600; cursor: pointer; font-size: 13px; padding: 6px 12px;\n }\n .state-block .link-btn:hover { color: var(--mj-text-link-hover); text-decoration: underline; }\n .state-block p { margin: 0; font-size: 13.5px; }\n /* Buttons inside state blocks: keep their icons at button scale, not the 28px empty-state glyph size */\n .state-block button i { font-size: inherit; opacity: 1; }\n .empty-create-form {\n display: flex; flex-direction: column; gap: 8px;\n width: 100%; max-width: 280px; margin-top: 4px;\n }\n .empty-create-actions { display: flex; gap: 8px; justify-content: center; }\n\n /* ===== Right pane ===== */\n .preview-block { padding: 16px 18px; border-bottom: 1px solid var(--mj-border-subtle); }\n .block-label {\n font-size: 11px; text-transform: uppercase; letter-spacing: .08em;\n font-weight: 700; color: var(--mj-text-muted); margin-bottom: 8px;\n display:flex; justify-content:space-between; align-items:center;\n }\n .block-count {\n color: var(--mj-brand-primary); font-size: 12px;\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n padding: 2px 8px; border-radius: 999px;\n }\n .preview-card {\n display:flex; gap: 12px; align-items:center;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 10px; padding: 12px;\n box-shadow: 0 1px 2px rgba(15,23,42,.04);\n }\n .preview-thumb {\n width: 38px; height: 38px; border-radius: 9px; flex-shrink: 0;\n background: linear-gradient(135deg, var(--mj-color-accent-400), var(--mj-brand-primary));\n color: #fff; display:flex; align-items:center; justify-content:center;\n font-size: 14px;\n }\n .preview-meta { flex: 1; min-width: 0; display:flex; flex-direction: column; gap: 4px; }\n .preview-name {\n font-weight: 700; font-size: 13.5px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .badge {\n display:inline-flex; align-items:center; gap: 4px;\n padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 600;\n width: fit-content;\n }\n .badge.neutral {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-secondary);\n border: 1px solid var(--mj-border-default);\n }\n\n .chips-block { flex: 1; min-height: 0; display:flex; flex-direction: column;\n padding: 16px 18px 8px; overflow-y: auto; }\n .chips { display:flex; flex-direction: column; gap: 6px; }\n .chip {\n display:flex; align-items:center; gap: 10px; padding: 8px 10px;\n background: var(--mj-bg-surface); border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n }\n .chip-body { flex: 1; min-width: 0; }\n .chip-name {\n font-weight: 600; font-size: 13px; color: var(--mj-text-primary);\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-error {\n font-size: 11.5px; color: var(--mj-status-error-text); margin-top: 2px;\n white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\n }\n .chip-action {\n width: 24px; height: 24px; border-radius: 6px;\n background: transparent; border: 0; cursor: pointer;\n color: var(--mj-text-muted); font-size: 11px;\n display:flex; align-items:center; justify-content:center;\n }\n .chip-action:hover:not(:disabled) {\n background: var(--mj-bg-surface-hover); color: var(--mj-text-primary);\n }\n .chip-action:disabled { opacity: .4; cursor: not-allowed; }\n .chip-status {\n width: 20px; flex-shrink: 0; text-align: center; font-size: 12px;\n }\n .chip.result.success { border-color: color-mix(in srgb, var(--mj-status-success) 35%, transparent);\n background: var(--mj-status-success-bg); }\n .chip.result.success .chip-status { color: var(--mj-status-success-text); }\n .chip.result.error { border-color: color-mix(in srgb, var(--mj-status-error) 35%, transparent);\n background: var(--mj-status-error-bg); }\n .chip.result.error .chip-status { color: var(--mj-status-error-text); }\n .chip.result.saving .chip-status { color: var(--mj-brand-primary); }\n\n .chips-empty {\n flex: 1; display:flex; flex-direction: column; align-items: center; justify-content: center;\n padding: 32px 16px; text-align: center; color: var(--mj-text-muted);\n border: 1.5px dashed var(--mj-border-default); border-radius: 10px;\n }\n .chips-empty i { font-size: 22px; margin-bottom: 8px; opacity: .55; }\n .chips-empty p { margin: 0; font-size: 12.5px; }\n\n .footnote {\n padding: 12px 18px;\n font-size: 11.5px; color: var(--mj-text-muted);\n display:flex; align-items:center; gap: 6px;\n border-top: 1px solid var(--mj-border-subtle);\n }\n .footnote i { font-size: 11px; }\n\n /* Tighten dialog content padding so panes meet edges cleanly */\n :host ::ng-deep mj-dialog .k-window-content,\n :host ::ng-deep mj-dialog .mj-dialog-content {\n padding: 0 !important;\n }\n "] }]
1257
1331
  }], () => [{ type: i1.ToastService }, { type: i2.CollectionPermissionService }, { type: i0.ChangeDetectorRef }], { isOpen: [{
1258
1332
  type: Input
1259
1333
  }], environmentId: [{
@@ -1279,5 +1353,5 @@ export class ArtifactCollectionPickerModalComponent extends BaseAngularComponent
1279
1353
  type: ViewChild,
1280
1354
  args: ['newNameInput']
1281
1355
  }] }); })();
1282
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ArtifactCollectionPickerModalComponent, { className: "ArtifactCollectionPickerModalComponent", filePath: "src/lib/components/collection/artifact-collection-picker-modal.component.ts", lineNumber: 604 }); })();
1356
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ArtifactCollectionPickerModalComponent, { className: "ArtifactCollectionPickerModalComponent", filePath: "src/lib/components/collection/artifact-collection-picker-modal.component.ts", lineNumber: 640 }); })();
1283
1357
  //# sourceMappingURL=artifact-collection-picker-modal.component.js.map