@memberjunction/ng-join-grid 3.4.0 → 4.1.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.
package/README.md CHANGED
@@ -1,23 +1,6 @@
1
1
  # @memberjunction/ng-join-grid
2
2
 
3
- The Join Grid component is a powerful Angular grid that allows you to display and edit relationships between two entities, typically in a many-to-many relationship. It provides a checkbox-based interface for mapping relationships between records.
4
-
5
- ## Overview
6
-
7
- This package provides the `JoinGridComponent` - a flexible grid component designed to manage entity relationships within the MemberJunction framework. It supports both many-to-many relationships through junction entities and direct field editing in related records.
8
-
9
- ## Features
10
-
11
- - **Two Operation Modes**:
12
- - **Entity Mode**: Creates/deletes records in a junction entity for many-to-many relationships
13
- - **Fields Mode**: Updates fields directly in related records
14
- - **Flexible Data Sources**: Load data from full entities, views, or arrays
15
- - **Automatic Grid Generation**: Builds grid structure based on provided entity relationships
16
- - **Integrated with MemberJunction**: Works seamlessly with the MJ metadata system and BaseEntity objects
17
- - **Transaction Support**: Manages pending changes with transaction groups
18
- - **Form Integration**: Can be integrated with parent form components and respond to form events
19
- - **Checkbox Value Modes**: Support for both record existence and field value checkboxes
20
- - **Built-in Save/Cancel**: Configurable buttons for managing changes
3
+ A checkbox-based grid component for managing many-to-many entity relationships in MemberJunction applications. Supports both junction entity record creation/deletion and direct field editing modes.
21
4
 
22
5
  ## Installation
23
6
 
@@ -25,52 +8,55 @@ This package provides the `JoinGridComponent` - a flexible grid component design
25
8
  npm install @memberjunction/ng-join-grid
26
9
  ```
27
10
 
28
- ### Prerequisites
29
-
30
- This package requires the following peer dependencies:
31
- - `@angular/common`: ^18.0.2
32
- - `@angular/core`: ^18.0.2
33
- - `@angular/forms`: ^18.0.2
34
- - `@angular/router`: ^18.0.2
35
-
36
- ### Dependencies
37
-
38
- The component integrates with these MemberJunction packages:
39
- - `@memberjunction/core-entities`
40
- - `@memberjunction/global`
41
- - `@memberjunction/core`
42
- - `@memberjunction/ng-base-types`
43
- - `@memberjunction/ng-container-directives`
44
- - `@memberjunction/ng-shared`
11
+ ## Overview
45
12
 
46
- It also uses Kendo UI components:
47
- - `@progress/kendo-angular-buttons`
48
- - `@progress/kendo-angular-dialog`
49
- - `@progress/kendo-angular-layout`
50
- - `@progress/kendo-angular-grid`
51
- - `@progress/kendo-angular-inputs`
52
- - `@progress/kendo-angular-indicators`
13
+ The Join Grid displays rows from one entity against columns from another, with checkboxes at each intersection. Checking a box creates a record in the junction entity; unchecking deletes it. An alternative Fields mode allows editing field values directly in related records. All changes are batched in transaction groups for atomic saves.
14
+
15
+ ```mermaid
16
+ flowchart LR
17
+ subgraph Rows["Row Entity"]
18
+ R1["User A"]
19
+ R2["User B"]
20
+ R3["User C"]
21
+ end
22
+ subgraph Grid["Join Grid"]
23
+ G["Checkbox Matrix"]
24
+ end
25
+ subgraph Cols["Column Entity"]
26
+ C1["Role 1"]
27
+ C2["Role 2"]
28
+ end
29
+ subgraph Junction["Junction Entity"]
30
+ J["UserRoles records"]
31
+ end
32
+
33
+ R1 --> G
34
+ R2 --> G
35
+ R3 --> G
36
+ C1 --> G
37
+ C2 --> G
38
+ G -->|create/delete| J
39
+
40
+ style Rows fill:#2d6a9f,stroke:#1a4971,color:#fff
41
+ style Grid fill:#7c5295,stroke:#563a6b,color:#fff
42
+ style Cols fill:#2d8659,stroke:#1a5c3a,color:#fff
43
+ style Junction fill:#b8762f,stroke:#8a5722,color:#fff
44
+ ```
53
45
 
54
46
  ## Usage
55
47
 
56
- ### Import the Module
48
+ ### Module Import
57
49
 
58
50
  ```typescript
59
51
  import { JoinGridModule } from '@memberjunction/ng-join-grid';
60
52
 
61
53
  @NgModule({
62
- imports: [
63
- JoinGridModule,
64
- // other imports
65
- ],
66
- // ...
54
+ imports: [JoinGridModule]
67
55
  })
68
- export class YourModule { }
56
+ export class YourModule {}
69
57
  ```
70
58
 
71
- ### Basic Component Usage (Entity Mode)
72
-
73
- Use this mode when you want to manage relationships between two entities by creating or deleting records in a junction entity.
59
+ ### Entity Mode (Many-to-Many)
74
60
 
75
61
  ```html
76
62
  <mj-join-grid
@@ -87,9 +73,7 @@ Use this mode when you want to manage relationships between two entities by crea
87
73
  </mj-join-grid>
88
74
  ```
89
75
 
90
- ### Fields Mode
91
-
92
- Used when you want to edit fields in a related entity:
76
+ ### Fields Mode (Direct Editing)
93
77
 
94
78
  ```html
95
79
  <mj-join-grid
@@ -99,403 +83,63 @@ Used when you want to edit fields in a related entity:
99
83
  [JoinEntityName]="'UserPreferences'"
100
84
  [JoinEntityRowForeignKey]="'UserID'"
101
85
  [JoinEntityDisplayColumns]="['PreferenceType', 'PreferenceValue']"
102
- [ShowSaveButton]="true"
103
- [ShowCancelButton]="true">
86
+ [ShowSaveButton]="true">
104
87
  </mj-join-grid>
105
88
  ```
106
89
 
107
- ## API Reference
90
+ ## Operation Modes
108
91
 
109
- ### Component Selector
110
- ```html
111
- <mj-join-grid></mj-join-grid>
112
- ```
92
+ | Mode | `CheckBoxValueMode` | Behavior |
93
+ |------|---------------------|----------|
94
+ | Entity + RecordExists | `'RecordExists'` | Checkbox creates/deletes junction records |
95
+ | Entity + ColumnValue | `'ColumnValue'` | Checkbox toggles a boolean field on existing records |
96
+ | Fields | N/A | Displays and edits field values in the join entity |
113
97
 
114
- ### Inputs
98
+ ## Key Inputs
99
+
100
+ ### Row Configuration
115
101
 
116
- #### General Configuration
117
102
  | Input | Type | Default | Description |
118
103
  |-------|------|---------|-------------|
119
- | `ShowSaveButton` | `boolean` | `true` | Show/hide the save button |
120
- | `ShowCancelButton` | `boolean` | `true` | Show/hide the cancel button |
121
- | `EditMode` | `'None' \| 'Save' \| 'Queue'` | `'None'` | Control editing mode. Use when embedding in parent forms |
122
- | `NewRecordDefaultValues` | `{ [key: string]: any }` | - | Default values for new junction records |
123
-
124
- #### Row Configuration
125
- | Input | Type | Default | Required | Description |
126
- |-------|------|---------|----------|-------------|
127
- | `RowsEntityName` | `string` | - | ✓ | Name of the entity for rows |
128
- | `RowsEntityDisplayName` | `string` | - | - | Display name to show instead of entity name |
129
- | `RowsEntityDisplayField` | `string` | - | ✓ | Field to display in the first column |
130
- | `RowsEntityDataSource` | `'FullEntity' \| 'ViewName' \| 'Array'` | `'FullEntity'` | - | Data source type for rows |
131
- | `RowsEntityViewName` | `string` | - | When DataSource='ViewName' | User View name to run |
132
- | `RowsExtraFilter` | `string` | - | - | Additional SQL filter for rows |
133
- | `RowsOrderBy` | `string` | - | - | SQL order by clause for rows |
134
- | `RowsEntityArray` | `BaseEntity[]` | - | When DataSource='Array' | Array of entity objects |
135
-
136
- #### Column Configuration
137
- | Input | Type | Default | Required | Description |
138
- |-------|------|---------|----------|-------------|
139
- | `ColumnsMode` | `'Entity' \| 'Fields'` | `'Entity'` | - | Mode for column generation |
140
- | `ColumnsEntityName` | `string` | - | When Mode='Entity' | Name of entity for columns |
141
- | `ColumnsEntityDisplayField` | `string` | - | When Mode='Entity' | Field to display as column headers |
142
- | `ColumnsEntityDataSource` | `'FullEntity' \| 'ViewName' \| 'Array'` | `'FullEntity'` | - | Data source type for columns |
143
- | `ColumnsEntityViewName` | `string` | - | When DataSource='ViewName' | User View name to run |
144
- | `ColumnsExtraFilter` | `string` | - | - | Additional SQL filter for columns |
145
- | `ColumnsOrderBy` | `string` | - | - | SQL order by clause for columns |
146
- | `ColumnsEntityArray` | `BaseEntity[]` | - | When DataSource='Array' | Array of entity objects |
147
-
148
- #### Join Entity Configuration
149
- | Input | Type | Default | Required | Description |
150
- |-------|------|---------|----------|-------------|
151
- | `JoinEntityName` | `string` | - | ✓ | Name of the junction/join entity |
152
- | `JoinEntityRowForeignKey` | `string` | - | ✓ | Foreign key field linking to rows |
153
- | `JoinEntityColumnForeignKey` | `string` | - | ✓ | Foreign key field linking to columns |
154
- | `JoinEntityDisplayColumns` | `string[]` | - | When ColumnsMode='Fields' | Columns to display from join entity |
155
- | `JoinEntityExtraFilter` | `string` | - | - | Additional filter for join entity |
156
- | `CheckBoxValueMode` | `'RecordExists' \| 'ColumnValue'` | `'RecordExists'` | - | How checkbox state is determined |
157
- | `CheckBoxValueField` | `string` | - | When CheckBoxValueMode='ColumnValue' | Field storing checkbox value |
158
-
159
- ### Public Methods
160
-
161
- | Method | Parameters | Returns | Description |
162
- |--------|------------|---------|-------------|
163
- | `Refresh()` | - | `Promise<void>` | Reload all grid data |
164
- | `Save()` | - | `Promise<boolean>` | Save all pending changes |
165
- | `CancelEdit()` | - | `void` | Cancel all pending changes |
166
- | `UpdateCellValueDirect()` | `row: JoinGridRow, colIndex: number, newValue: any` | `void` | Update cell value (Fields mode) |
167
- | `AddJoinEntityRecord()` | `row: JoinGridRow` | `Promise<void>` | Add new join record (Fields mode) |
168
- | `RemoveJoinEntityRecord()` | `row: JoinGridRow` | `Promise<void>` | Remove join record (Fields mode) |
169
-
170
- ### Exported Classes
171
-
172
- #### JoinGridCell
173
- ```typescript
174
- export class JoinGridCell {
175
- index: number;
176
- RowForeignKeyValue: any;
177
- ColumnForeignKeyValue?: any;
178
- data?: BaseEntity; // Used in Entity mode
179
- value?: any; // Used in Fields mode
180
- }
181
- ```
182
-
183
- #### JoinGridRow
184
- ```typescript
185
- export class JoinGridRow {
186
- FirstColValue: any;
187
- JoinExists: boolean;
188
- RowForeignKeyValue: any;
189
- ColumnData: JoinGridCell[];
190
-
191
- GetColumnValue(colIndex: number): any;
192
- constructor(data: any);
193
- }
194
- ```
195
-
196
- ## Examples
197
-
198
- ### User-Role Assignment Grid
199
-
200
- ```typescript
201
- // Component
202
- @Component({
203
- selector: 'app-user-roles',
204
- template: `
205
- <mj-join-grid
206
- [RowsEntityName]="'Users'"
207
- [RowsEntityDisplayField]="'UserName'"
208
- [ColumnsEntityName]="'Roles'"
209
- [ColumnsEntityDisplayField]="'RoleName'"
210
- [JoinEntityName]="'UserRoles'"
211
- [JoinEntityRowForeignKey]="'UserID'"
212
- [JoinEntityColumnForeignKey]="'RoleID'"
213
- [RowsExtraFilter]="'IsActive = 1'"
214
- [ColumnsExtraFilter]="'IsActive = 1'"
215
- [RowsOrderBy]="'UserName ASC'"
216
- [ColumnsOrderBy]="'RoleName ASC'"
217
- [ShowSaveButton]="true"
218
- [ShowCancelButton]="true">
219
- </mj-join-grid>
220
- `
221
- })
222
- export class UserRolesComponent { }
223
- ```
224
-
225
- ### Product Category Assignment with Custom Values
226
-
227
- ```typescript
228
- // Component with defaults for new junction records
229
- @Component({
230
- selector: 'app-product-categories',
231
- template: `
232
- <mj-join-grid
233
- [RowsEntityName]="'Products'"
234
- [RowsEntityDisplayField]="'ProductName'"
235
- [ColumnsEntityName]="'Categories'"
236
- [ColumnsEntityDisplayField]="'CategoryName'"
237
- [JoinEntityName]="'ProductCategories'"
238
- [JoinEntityRowForeignKey]="'ProductID'"
239
- [JoinEntityColumnForeignKey]="'CategoryID'"
240
- [NewRecordDefaultValues]="defaultValues"
241
- [ShowSaveButton]="true"
242
- [ShowCancelButton]="true">
243
- </mj-join-grid>
244
- `
245
- })
246
- export class ProductCategoriesComponent {
247
- defaultValues = {
248
- 'IsPrimary': false,
249
- 'CreatedAt': new Date()
250
- };
251
- }
252
- ```
104
+ | `RowsEntityName` | `string` | -- | Entity for rows (required) |
105
+ | `RowsEntityDisplayField` | `string` | -- | Field to display in first column (required) |
106
+ | `RowsEntityDataSource` | `'FullEntity' \| 'ViewName' \| 'Array'` | `'FullEntity'` | Data source type |
107
+ | `RowsExtraFilter` | `string` | -- | SQL filter for rows |
108
+ | `RowsOrderBy` | `string` | -- | SQL order by for rows |
253
109
 
254
- ### Fields Mode Example - User Preferences
110
+ ### Column Configuration
255
111
 
256
- ```typescript
257
- // Edit fields directly in the join entity
258
- @Component({
259
- selector: 'app-user-preferences',
260
- template: `
261
- <mj-join-grid
262
- [RowsEntityName]="'Users'"
263
- [RowsEntityDisplayField]="'FullName'"
264
- [ColumnsMode]="'Fields'"
265
- [JoinEntityName]="'UserPreferences'"
266
- [JoinEntityRowForeignKey]="'UserID'"
267
- [JoinEntityDisplayColumns]="['PreferenceName', 'Value', 'IsEnabled']"
268
- [JoinEntityExtraFilter]="'CategoryID = 5'"
269
- [ShowSaveButton]="true"
270
- [ShowCancelButton]="true">
271
- </mj-join-grid>
272
- `
273
- })
274
- export class UserPreferencesComponent { }
275
- ```
276
-
277
- ### Using Views and Filters
278
-
279
- ```typescript
280
- // Component using views and filters for data sources
281
- @Component({
282
- selector: 'app-active-user-permissions',
283
- template: `
284
- <mj-join-grid
285
- [RowsEntityName]="'Users'"
286
- [RowsEntityDisplayField]="'UserName'"
287
- [RowsEntityDataSource]="'ViewName'"
288
- [RowsEntityViewName]="'Active Users'"
289
- [RowsOrderBy]="'LastLogin DESC'"
290
-
291
- [ColumnsEntityName]="'Permissions'"
292
- [ColumnsEntityDisplayField]="'PermissionName'"
293
- [ColumnsExtraFilter]="'IsActive = 1 AND CategoryID IN (1,2,3)'"
294
- [ColumnsOrderBy]="'DisplayOrder ASC, PermissionName ASC'"
295
-
296
- [JoinEntityName]="'UserPermissions'"
297
- [JoinEntityRowForeignKey]="'UserID'"
298
- [JoinEntityColumnForeignKey]="'PermissionID'"
299
- [JoinEntityExtraFilter]="'GrantedDate IS NOT NULL'"
300
-
301
- [ShowSaveButton]="true"
302
- [ShowCancelButton]="true">
303
- </mj-join-grid>
304
- `
305
- })
306
- export class ActiveUserPermissionsComponent { }
307
- ```
308
-
309
- ### Using Array Data Sources
310
-
311
- ```typescript
312
- // Component using pre-loaded arrays
313
- @Component({
314
- selector: 'app-team-skills',
315
- template: `
316
- <mj-join-grid
317
- [RowsEntityName]="'Employees'"
318
- [RowsEntityDisplayField]="'Name'"
319
- [RowsEntityDataSource]="'Array'"
320
- [RowsEntityArray]="teamMembers"
321
-
322
- [ColumnsEntityName]="'Skills'"
323
- [ColumnsEntityDisplayField]="'SkillName'"
324
- [ColumnsEntityDataSource]="'Array'"
325
- [ColumnsEntityArray]="relevantSkills"
326
-
327
- [JoinEntityName]="'EmployeeSkills'"
328
- [JoinEntityRowForeignKey]="'EmployeeID'"
329
- [JoinEntityColumnForeignKey]="'SkillID'"
330
-
331
- [ShowSaveButton]="true"
332
- [ShowCancelButton]="true">
333
- </mj-join-grid>
334
- `
335
- })
336
- export class TeamSkillsComponent implements OnInit {
337
- teamMembers: BaseEntity[] = [];
338
- relevantSkills: BaseEntity[] = [];
339
-
340
- async ngOnInit() {
341
- // Load team members and skills
342
- const md = new Metadata();
343
-
344
- // Load team members
345
- const employeeEntity = await md.GetEntityObject<BaseEntity>('Employees');
346
- const teamRv = new RunView();
347
- const teamResult = await teamRv.RunView({
348
- EntityName: 'Employees',
349
- ExtraFilter: 'DepartmentID = 5',
350
- ResultType: 'entity_object'
351
- });
352
- this.teamMembers = teamResult.Results;
353
-
354
- // Load relevant skills
355
- const skillsRv = new RunView();
356
- const skillsResult = await skillsRv.RunView({
357
- EntityName: 'Skills',
358
- ExtraFilter: 'CategoryID IN (1,2,3)',
359
- ResultType: 'entity_object'
360
- });
361
- this.relevantSkills = skillsResult.Results;
362
- }
363
- }
364
- ```
365
-
366
- ### Embedded in Parent Form with Edit Mode Control
367
-
368
- ```typescript
369
- // Component embedded in a larger form
370
- @Component({
371
- selector: 'app-employee-form',
372
- template: `
373
- <form>
374
- <!-- Other form fields -->
375
-
376
- <mj-join-grid
377
- #skillsGrid
378
- [RowsEntityName]="'Employees'"
379
- [RowsEntityDisplayField]="'Name'"
380
- [RowsEntityArray]="[currentEmployee]"
381
-
382
- [ColumnsEntityName]="'Skills'"
383
- [ColumnsEntityDisplayField]="'SkillName'"
384
-
385
- [JoinEntityName]="'EmployeeSkills'"
386
- [JoinEntityRowForeignKey]="'EmployeeID'"
387
- [JoinEntityColumnForeignKey]="'SkillID'"
388
-
389
- [EditMode]="editMode"
390
- [ShowSaveButton]="false"
391
- [ShowCancelButton]="false">
392
- </mj-join-grid>
393
-
394
- <button (click)="saveAll()">Save Employee</button>
395
- <button (click)="cancel()">Cancel</button>
396
- </form>
397
- `
398
- })
399
- export class EmployeeFormComponent {
400
- @ViewChild('skillsGrid') skillsGrid!: JoinGridComponent;
401
-
402
- currentEmployee: BaseEntity;
403
- editMode: 'None' | 'Save' | 'Queue' = 'Queue';
404
-
405
- async saveAll() {
406
- // Save the grid changes
407
- const gridSaved = await this.skillsGrid.Save();
408
-
409
- if (gridSaved) {
410
- // Save other form data
411
- await this.currentEmployee.Save();
412
- }
413
- }
414
-
415
- cancel() {
416
- this.skillsGrid.CancelEdit();
417
- // Cancel other form changes
418
- }
419
- }
420
- ```
421
-
422
- ### Checkbox Value Mode Example
423
-
424
- ```typescript
425
- // Using checkbox to update a field value instead of record existence
426
- @Component({
427
- selector: 'app-feature-access',
428
- template: `
429
- <mj-join-grid
430
- [RowsEntityName]="'Users'"
431
- [RowsEntityDisplayField]="'UserName'"
432
-
433
- [ColumnsEntityName]="'Features'"
434
- [ColumnsEntityDisplayField]="'FeatureName'"
435
-
436
- [JoinEntityName]="'UserFeatureAccess'"
437
- [JoinEntityRowForeignKey]="'UserID'"
438
- [JoinEntityColumnForeignKey]="'FeatureID'"
439
-
440
- [CheckBoxValueMode]="'ColumnValue'"
441
- [CheckBoxValueField]="'IsEnabled'"
442
-
443
- [ShowSaveButton]="true"
444
- [ShowCancelButton]="true">
445
- </mj-join-grid>
446
- `
447
- })
448
- export class FeatureAccessComponent { }
449
- ```
450
-
451
- ## Advanced Usage
452
-
453
- ### Integration with MemberJunction Forms
454
-
455
- The Join Grid component can be integrated with MemberJunction's form system and responds to form events:
456
-
457
- ```typescript
458
- import { BaseFormComponent } from '@memberjunction/ng-base-forms';
459
-
460
- @Component({
461
- template: `
462
- <mj-join-grid
463
- [parentForm]="parentFormComponent"
464
- ...other properties>
465
- </mj-join-grid>
466
- `
467
- })
468
- export class MyComponent {
469
- parentFormComponent: BaseFormComponent;
470
- }
471
- ```
472
-
473
- ### Transaction Support
112
+ | Input | Type | Default | Description |
113
+ |-------|------|---------|-------------|
114
+ | `ColumnsMode` | `'Entity' \| 'Fields'` | `'Entity'` | Column generation mode |
115
+ | `ColumnsEntityName` | `string` | -- | Entity for columns (Entity mode) |
116
+ | `ColumnsEntityDisplayField` | `string` | -- | Field for column headers |
474
117
 
475
- The component automatically manages transactions when editing:
476
- - Creates transaction groups for batch operations
477
- - Rolls back changes on save failure
478
- - Supports both immediate save and queued edit modes
118
+ ### Join Entity Configuration
479
119
 
480
- ### Event Handling
120
+ | Input | Type | Default | Description |
121
+ |-------|------|---------|-------------|
122
+ | `JoinEntityName` | `string` | -- | Junction entity name (required) |
123
+ | `JoinEntityRowForeignKey` | `string` | -- | FK linking to row entity (required) |
124
+ | `JoinEntityColumnForeignKey` | `string` | -- | FK linking to column entity (required) |
125
+ | `CheckBoxValueMode` | `'RecordExists' \| 'ColumnValue'` | `'RecordExists'` | How checkbox state is determined |
126
+ | `EditMode` | `'None' \| 'Save' \| 'Queue'` | `'None'` | Editing mode for form integration |
481
127
 
482
- The component emits events through the MemberJunction event system:
483
- - Form editing complete events
484
- - Save/cancel events
485
- - Data refresh events
128
+ ### Public Methods
486
129
 
487
- ## Building
130
+ | Method | Returns | Description |
131
+ |--------|---------|-------------|
132
+ | `Refresh()` | `Promise<void>` | Reload all grid data |
133
+ | `Save()` | `Promise<boolean>` | Save all pending changes |
134
+ | `CancelEdit()` | `void` | Cancel pending changes |
488
135
 
489
- To build the package:
136
+ ## Exported Classes
490
137
 
491
- ```bash
492
- cd packages/Angular/Generic/join-grid
493
- npm run build
494
- ```
138
+ - `JoinGridCell` -- Represents a single cell in the grid
139
+ - `JoinGridRow` -- Represents a row with column data
495
140
 
496
- ## Notes
141
+ ## Dependencies
497
142
 
498
- - The component requires proper entity metadata configuration in MemberJunction
499
- - Junction entities must have appropriate foreign key relationships defined
500
- - When using Fields mode, ensure the join entity has the display columns configured
501
- - The component respects entity permissions and validation rules
143
+ - [@memberjunction/core](../../MJCore/README.md) -- Metadata, RunView, BaseEntity
144
+ - [@memberjunction/ng-shared](../shared/README.md) -- Shared Angular utilities
145
+ - `@progress/kendo-angular-grid` -- Grid rendering
@@ -211,3 +211,4 @@ export declare class JoinGridComponent implements AfterViewInit {
211
211
  static ɵfac: i0.ɵɵFactoryDeclaration<JoinGridComponent, never>;
212
212
  static ɵcmp: i0.ɵɵComponentDeclaration<JoinGridComponent, "mj-join-grid", never, { "RowsEntityName": { "alias": "RowsEntityName"; "required": false; }; "RowsEntityDisplayName": { "alias": "RowsEntityDisplayName"; "required": false; }; "RowsEntityDisplayField": { "alias": "RowsEntityDisplayField"; "required": false; }; "RowsEntityDataSource": { "alias": "RowsEntityDataSource"; "required": false; }; "RowsExtraFilter": { "alias": "RowsExtraFilter"; "required": false; }; "RowsOrderBy": { "alias": "RowsOrderBy"; "required": false; }; "RowsEntityViewName": { "alias": "RowsEntityViewName"; "required": false; }; "RowsEntityArray": { "alias": "RowsEntityArray"; "required": false; }; "ColumnsMode": { "alias": "ColumnsMode"; "required": false; }; "ColumnsEntityName": { "alias": "ColumnsEntityName"; "required": false; }; "ColumnsEntityDisplayField": { "alias": "ColumnsEntityDisplayField"; "required": false; }; "ColumnsEntityDataSource": { "alias": "ColumnsEntityDataSource"; "required": false; }; "ColumnsExtraFilter": { "alias": "ColumnsExtraFilter"; "required": false; }; "ColumnsOrderBy": { "alias": "ColumnsOrderBy"; "required": false; }; "ColumnsEntityViewName": { "alias": "ColumnsEntityViewName"; "required": false; }; "ColumnsEntityArray": { "alias": "ColumnsEntityArray"; "required": false; }; "JoinEntityName": { "alias": "JoinEntityName"; "required": false; }; "JoinEntityRowForeignKey": { "alias": "JoinEntityRowForeignKey"; "required": false; }; "JoinEntityColumnForeignKey": { "alias": "JoinEntityColumnForeignKey"; "required": false; }; "JoinEntityDisplayColumns": { "alias": "JoinEntityDisplayColumns"; "required": false; }; "JoinEntityExtraFilter": { "alias": "JoinEntityExtraFilter"; "required": false; }; "CheckBoxValueMode": { "alias": "CheckBoxValueMode"; "required": false; }; "CheckBoxValueField": { "alias": "CheckBoxValueField"; "required": false; }; "NewRecordDefaultValues": { "alias": "NewRecordDefaultValues"; "required": false; }; "ShowSaveButton": { "alias": "ShowSaveButton"; "required": false; }; "ShowCancelButton": { "alias": "ShowCancelButton"; "required": false; }; "EditMode": { "alias": "EditMode"; "required": false; }; }, {}, never, never, false, never>;
213
213
  }
214
+ //# sourceMappingURL=join-grid.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"join-grid.component.d.ts","sourceRoot":"","sources":["../../../src/lib/join-grid/join-grid.component.ts"],"names":[],"mappings":"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"}
@@ -70,87 +70,87 @@ function JoinGridComponent_Conditional_4_Conditional_6_Template(rf, ctx) { if (r
70
70
  } }
71
71
  function JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_0_Template(rf, ctx) { if (rf & 1) {
72
72
  const _r6 = i0.ɵɵgetCurrentView();
73
- i0.ɵɵelementStart(0, "button", 10);
73
+ i0.ɵɵelementStart(0, "button", 9);
74
74
  i0.ɵɵlistener("click", function JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.AddJoinEntityRecord(row_r7)); });
75
- i0.ɵɵelement(1, "span", 11);
75
+ i0.ɵɵelement(1, "span", 10);
76
76
  i0.ɵɵelementEnd();
77
77
  } }
78
78
  function JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_1_Template(rf, ctx) { if (rf & 1) {
79
79
  const _r8 = i0.ɵɵgetCurrentView();
80
- i0.ɵɵelementStart(0, "button", 10);
80
+ i0.ɵɵelementStart(0, "button", 9);
81
81
  i0.ɵɵlistener("click", function JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.RemoveJoinEntityRecord(row_r7)); });
82
- i0.ɵɵelement(1, "span", 12);
82
+ i0.ɵɵelement(1, "span", 11);
83
83
  i0.ɵɵelementEnd();
84
84
  } }
85
85
  function JoinGridComponent_Conditional_4_For_9_Conditional_4_Template(rf, ctx) { if (rf & 1) {
86
- i0.ɵɵtemplate(0, JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_0_Template, 2, 0, "button", 9)(1, JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_1_Template, 2, 0, "button", 9);
86
+ i0.ɵɵconditionalCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_0_Template, 2, 0, "button", 8)(1, JoinGridComponent_Conditional_4_For_9_Conditional_4_Conditional_1_Template, 2, 0, "button", 8);
87
87
  } if (rf & 2) {
88
88
  const row_r7 = i0.ɵɵnextContext().$implicit;
89
89
  i0.ɵɵconditional(!row_r7.JoinExists ? 0 : 1);
90
90
  } }
91
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
91
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
92
92
  const _r9 = i0.ɵɵgetCurrentView();
93
- i0.ɵɵelementStart(0, "input", 17);
94
- i0.ɵɵlistener("change", function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r9); const i_r10 = i0.ɵɵnextContext(4).index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValue(row_r7, i_r10, $event)); });
93
+ i0.ɵɵelementStart(0, "input", 16);
94
+ i0.ɵɵlistener("change", function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r9); const ɵ$index_58_r10 = i0.ɵɵnextContext(4).$index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValue(row_r7, ɵ$index_58_r10, $event)); });
95
95
  i0.ɵɵelementEnd();
96
96
  } if (rf & 2) {
97
- const i_r10 = i0.ɵɵnextContext(4).index;
97
+ const ɵ$index_58_r10 = i0.ɵɵnextContext(4).$index;
98
98
  const row_r7 = i0.ɵɵnextContext(2).$implicit;
99
- i0.ɵɵproperty("checked", row_r7.GetColumnValue(i_r10));
99
+ i0.ɵɵproperty("checked", row_r7.GetColumnValue(ɵ$index_58_r10));
100
100
  } }
101
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
101
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
102
102
  const _r11 = i0.ɵɵgetCurrentView();
103
- i0.ɵɵelementStart(0, "kendo-textbox", 18);
104
- i0.ɵɵlistener("change", function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template_kendo_textbox_change_0_listener($event) { i0.ɵɵrestoreView(_r11); const i_r10 = i0.ɵɵnextContext(4).index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValue(row_r7, i_r10, $event)); });
103
+ i0.ɵɵelementStart(0, "kendo-textbox", 17);
104
+ i0.ɵɵlistener("change", function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template_kendo_textbox_change_0_listener($event) { i0.ɵɵrestoreView(_r11); const ɵ$index_58_r10 = i0.ɵɵnextContext(4).$index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValue(row_r7, ɵ$index_58_r10, $event)); });
105
105
  i0.ɵɵelementEnd();
106
106
  } if (rf & 2) {
107
- const i_r10 = i0.ɵɵnextContext(4).index;
107
+ const ɵ$index_58_r10 = i0.ɵɵnextContext(4).$index;
108
108
  const row_r7 = i0.ɵɵnextContext(2).$implicit;
109
- i0.ɵɵproperty("value", row_r7.GetColumnValue(i_r10));
109
+ i0.ɵɵproperty("value", row_r7.GetColumnValue(ɵ$index_58_r10));
110
110
  } }
111
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
112
- i0.ɵɵtemplate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template, 1, 1, "input", 15)(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template, 1, 1, "kendo-textbox", 16);
111
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
112
+ i0.ɵɵconditionalCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_0_Template, 1, 1, "input", 14)(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Conditional_1_Template, 1, 1, "kendo-textbox", 15);
113
113
  } if (rf & 2) {
114
114
  const colName_r12 = i0.ɵɵnextContext(3).$implicit;
115
115
  const ctx_r1 = i0.ɵɵnextContext(4);
116
116
  i0.ɵɵconditional(ctx_r1.GetJoinEntityField(colName_r12).TSType === ctx_r1.EntityFieldTSType.Boolean ? 0 : 1);
117
117
  } }
118
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
118
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
119
119
  const _r13 = i0.ɵɵgetCurrentView();
120
- i0.ɵɵelementStart(0, "kendo-dropdownlist", 19);
121
- i0.ɵɵlistener("selectionChange", function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_1_Template_kendo_dropdownlist_selectionChange_0_listener($event) { i0.ɵɵrestoreView(_r13); const i_r10 = i0.ɵɵnextContext(3).index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValueDirect(row_r7, i_r10, $event)); });
120
+ i0.ɵɵelementStart(0, "kendo-dropdownlist", 18);
121
+ i0.ɵɵlistener("selectionChange", function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_1_Template_kendo_dropdownlist_selectionChange_0_listener($event) { i0.ɵɵrestoreView(_r13); const ɵ$index_58_r10 = i0.ɵɵnextContext(3).$index; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.UpdateCellValueDirect(row_r7, ɵ$index_58_r10, $event)); });
122
122
  i0.ɵɵelementEnd();
123
123
  } if (rf & 2) {
124
124
  const ctx_r13 = i0.ɵɵnextContext(3);
125
125
  const colName_r12 = ctx_r13.$implicit;
126
- const i_r10 = ctx_r13.index;
126
+ const ɵ$index_58_r10 = ctx_r13.$index;
127
127
  const row_r7 = i0.ɵɵnextContext(2).$implicit;
128
128
  const ctx_r1 = i0.ɵɵnextContext(2);
129
- i0.ɵɵproperty("data", ctx_r1.GetJoinEntityFieldValues(colName_r12))("value", row_r7.GetColumnValue(i_r10));
129
+ i0.ɵɵproperty("data", ctx_r1.GetJoinEntityFieldValues(colName_r12))("value", row_r7.GetColumnValue(ɵ$index_58_r10));
130
130
  } }
131
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
132
- i0.ɵɵtemplate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_0_Template, 2, 1)(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Conditional_1_Template, 1, 2, "kendo-dropdownlist", 14);
131
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
132
+ i0.ɵɵconditionalCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_0_Template, 2, 1)(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Conditional_1_Template, 1, 2, "kendo-dropdownlist", 13);
133
133
  } if (rf & 2) {
134
134
  const colName_r12 = i0.ɵɵnextContext(2).$implicit;
135
135
  const ctx_r1 = i0.ɵɵnextContext(4);
136
136
  i0.ɵɵconditional(ctx_r1.GetJoinEntityField(colName_r12).ValueListType === "None" ? 0 : 1);
137
137
  } }
138
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
139
- i0.ɵɵtemplate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Conditional_0_Template, 2, 1);
138
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
139
+ i0.ɵɵconditionalCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Conditional_0_Template, 2, 1);
140
140
  } if (rf & 2) {
141
141
  const row_r7 = i0.ɵɵnextContext(3).$implicit;
142
142
  i0.ɵɵconditional(row_r7.JoinExists ? 0 : -1);
143
143
  } }
144
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
144
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
145
145
  i0.ɵɵtext(0);
146
146
  } if (rf & 2) {
147
- const i_r10 = i0.ɵɵnextContext().index;
147
+ const ɵ$index_58_r10 = i0.ɵɵnextContext().$index;
148
148
  const row_r7 = i0.ɵɵnextContext(2).$implicit;
149
- i0.ɵɵtextInterpolate1(" ", row_r7.GetColumnValue(i_r10), " ");
149
+ i0.ɵɵtextInterpolate1(" ", row_r7.GetColumnValue(ɵ$index_58_r10), " ");
150
150
  } }
151
- function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Template(rf, ctx) { if (rf & 1) {
152
- i0.ɵɵelementStart(0, "td", 8);
153
- i0.ɵɵtemplate(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_1_Template, 1, 1)(2, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Conditional_2_Template, 1, 1);
151
+ function JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Template(rf, ctx) { if (rf & 1) {
152
+ i0.ɵɵelementStart(0, "td", 12);
153
+ i0.ɵɵconditionalCreate(1, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_1_Template, 1, 1)(2, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Conditional_2_Template, 1, 1);
154
154
  i0.ɵɵelementEnd();
155
155
  } if (rf & 2) {
156
156
  const ctx_r1 = i0.ɵɵnextContext(4);
@@ -158,14 +158,14 @@ function JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Template(rf, c
158
158
  i0.ɵɵconditional(ctx_r1.EditMode !== "None" ? 1 : 2);
159
159
  } }
160
160
  function JoinGridComponent_Conditional_4_For_9_Conditional_5_Template(rf, ctx) { if (rf & 1) {
161
- i0.ɵɵtemplate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_td_0_Template, 3, 1, "td", 13);
161
+ i0.ɵɵrepeaterCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_5_For_1_Template, 3, 1, "td", 12, i0.ɵɵrepeaterTrackByIdentity);
162
162
  } if (rf & 2) {
163
163
  const ctx_r1 = i0.ɵɵnextContext(3);
164
- i0.ɵɵproperty("ngForOf", ctx_r1.JoinEntityDisplayColumns);
164
+ i0.ɵɵrepeater(ctx_r1.JoinEntityDisplayColumns);
165
165
  } }
166
166
  function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
167
167
  const _r17 = i0.ɵɵgetCurrentView();
168
- i0.ɵɵelementStart(0, "input", 23);
168
+ i0.ɵɵelementStart(0, "input", 22);
169
169
  i0.ɵɵlistener("click", function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_1_Template_input_click_0_listener($event) { i0.ɵɵrestoreView(_r17); const cell_r16 = i0.ɵɵnextContext().$implicit; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1._FlipRecord($event, row_r7, cell_r16, true)); });
170
170
  i0.ɵɵelementEnd();
171
171
  } if (rf & 2) {
@@ -181,9 +181,9 @@ function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_2
181
181
  } }
182
182
  function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Template(rf, ctx) { if (rf & 1) {
183
183
  const _r15 = i0.ɵɵgetCurrentView();
184
- i0.ɵɵelementStart(0, "td", 21);
184
+ i0.ɵɵelementStart(0, "td", 20);
185
185
  i0.ɵɵlistener("click", function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Template_td_click_0_listener($event) { const cell_r16 = i0.ɵɵrestoreView(_r15).$implicit; const row_r7 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1._FlipRecord($event, row_r7, cell_r16)); });
186
- i0.ɵɵtemplate(1, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_1_Template, 1, 1, "input", 22)(2, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_2_Template, 1, 1);
186
+ i0.ɵɵconditionalCreate(1, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_1_Template, 1, 1, "input", 21)(2, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Conditional_2_Template, 1, 1);
187
187
  i0.ɵɵelementEnd();
188
188
  } if (rf & 2) {
189
189
  const cell_r16 = ctx.$implicit;
@@ -193,7 +193,7 @@ function JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Template(rf,
193
193
  i0.ɵɵconditional(ctx_r1.EditMode !== "None" ? 1 : 2);
194
194
  } }
195
195
  function JoinGridComponent_Conditional_4_For_9_Conditional_6_Template(rf, ctx) { if (rf & 1) {
196
- i0.ɵɵrepeaterCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Template, 3, 2, "td", 20, i0.ɵɵrepeaterTrackByIdentity);
196
+ i0.ɵɵrepeaterCreate(0, JoinGridComponent_Conditional_4_For_9_Conditional_6_For_1_Template, 3, 2, "td", 19, i0.ɵɵrepeaterTrackByIdentity);
197
197
  } if (rf & 2) {
198
198
  const row_r7 = i0.ɵɵnextContext().$implicit;
199
199
  i0.ɵɵrepeater(row_r7.ColumnData);
@@ -202,9 +202,9 @@ function JoinGridComponent_Conditional_4_For_9_Template(rf, ctx) { if (rf & 1) {
202
202
  i0.ɵɵelementStart(0, "tr", 5)(1, "td", 7)(2, "span");
203
203
  i0.ɵɵtext(3);
204
204
  i0.ɵɵelementEnd();
205
- i0.ɵɵtemplate(4, JoinGridComponent_Conditional_4_For_9_Conditional_4_Template, 2, 1);
205
+ i0.ɵɵconditionalCreate(4, JoinGridComponent_Conditional_4_For_9_Conditional_4_Template, 2, 1);
206
206
  i0.ɵɵelementEnd();
207
- i0.ɵɵtemplate(5, JoinGridComponent_Conditional_4_For_9_Conditional_5_Template, 1, 1, "td", 8)(6, JoinGridComponent_Conditional_4_For_9_Conditional_6_Template, 2, 0);
207
+ i0.ɵɵconditionalCreate(5, JoinGridComponent_Conditional_4_For_9_Conditional_5_Template, 2, 0)(6, JoinGridComponent_Conditional_4_For_9_Conditional_6_Template, 2, 0);
208
208
  i0.ɵɵelementEnd();
209
209
  } if (rf & 2) {
210
210
  const row_r7 = ctx.$implicit;
@@ -221,7 +221,7 @@ function JoinGridComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
221
221
  i0.ɵɵelementStart(0, "table", 2)(1, "thead")(2, "tr")(3, "th");
222
222
  i0.ɵɵtext(4);
223
223
  i0.ɵɵelementEnd();
224
- i0.ɵɵtemplate(5, JoinGridComponent_Conditional_4_Conditional_5_Template, 2, 0)(6, JoinGridComponent_Conditional_4_Conditional_6_Template, 2, 0);
224
+ i0.ɵɵconditionalCreate(5, JoinGridComponent_Conditional_4_Conditional_5_Template, 2, 0)(6, JoinGridComponent_Conditional_4_Conditional_6_Template, 2, 0);
225
225
  i0.ɵɵelementEnd()();
226
226
  i0.ɵɵelementStart(7, "tbody");
227
227
  i0.ɵɵrepeaterCreate(8, JoinGridComponent_Conditional_4_For_9_Template, 7, 4, "tr", 5, i0.ɵɵrepeaterTrackByIdentity);
@@ -837,9 +837,12 @@ export class JoinGridComponent {
837
837
  return EntityFieldTSType;
838
838
  }
839
839
  static ɵfac = function JoinGridComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || JoinGridComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef)); };
840
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JoinGridComponent, selectors: [["mj-join-grid"]], inputs: { RowsEntityName: "RowsEntityName", RowsEntityDisplayName: "RowsEntityDisplayName", RowsEntityDisplayField: "RowsEntityDisplayField", RowsEntityDataSource: "RowsEntityDataSource", RowsExtraFilter: "RowsExtraFilter", RowsOrderBy: "RowsOrderBy", RowsEntityViewName: "RowsEntityViewName", RowsEntityArray: "RowsEntityArray", ColumnsMode: "ColumnsMode", ColumnsEntityName: "ColumnsEntityName", ColumnsEntityDisplayField: "ColumnsEntityDisplayField", ColumnsEntityDataSource: "ColumnsEntityDataSource", ColumnsExtraFilter: "ColumnsExtraFilter", ColumnsOrderBy: "ColumnsOrderBy", ColumnsEntityViewName: "ColumnsEntityViewName", ColumnsEntityArray: "ColumnsEntityArray", JoinEntityName: "JoinEntityName", JoinEntityRowForeignKey: "JoinEntityRowForeignKey", JoinEntityColumnForeignKey: "JoinEntityColumnForeignKey", JoinEntityDisplayColumns: "JoinEntityDisplayColumns", JoinEntityExtraFilter: "JoinEntityExtraFilter", CheckBoxValueMode: "CheckBoxValueMode", CheckBoxValueField: "CheckBoxValueField", NewRecordDefaultValues: "NewRecordDefaultValues", ShowSaveButton: "ShowSaveButton", ShowCancelButton: "ShowCancelButton", EditMode: "EditMode" }, decls: 5, vars: 4, consts: [[1, "wrapper"], ["kendoButton", "", 3, "disabled"], [1, "grid"], ["size", "medium", 3, "showText"], ["kendoButton", "", 3, "click", "disabled"], [3, "ngClass"], [1, "checkbox-column"], [1, "first-column"], [1, "column-cell"], ["kendoButton", "", 1, "cellButton"], ["kendoButton", "", 1, "cellButton", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "fa-solid", "fa-minus"], ["class", "column-cell", 4, "ngFor", "ngForOf"], [3, "data", "value"], ["type", "checkbox", 3, "checked"], [3, "value"], ["type", "checkbox", 3, "change", "checked"], [3, "change", "value"], [3, "selectionChange", "data", "value"], [1, "checkbox-column", 3, "ngClass"], [1, "checkbox-column", 3, "click", "ngClass"], ["type", "checkbox", "kendoCheckBox", "", 3, "checked"], ["type", "checkbox", "kendoCheckBox", "", 3, "click", "checked"]], template: function JoinGridComponent_Template(rf, ctx) { if (rf & 1) {
840
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JoinGridComponent, selectors: [["mj-join-grid"]], inputs: { RowsEntityName: "RowsEntityName", RowsEntityDisplayName: "RowsEntityDisplayName", RowsEntityDisplayField: "RowsEntityDisplayField", RowsEntityDataSource: "RowsEntityDataSource", RowsExtraFilter: "RowsExtraFilter", RowsOrderBy: "RowsOrderBy", RowsEntityViewName: "RowsEntityViewName", RowsEntityArray: "RowsEntityArray", ColumnsMode: "ColumnsMode", ColumnsEntityName: "ColumnsEntityName", ColumnsEntityDisplayField: "ColumnsEntityDisplayField", ColumnsEntityDataSource: "ColumnsEntityDataSource", ColumnsExtraFilter: "ColumnsExtraFilter", ColumnsOrderBy: "ColumnsOrderBy", ColumnsEntityViewName: "ColumnsEntityViewName", ColumnsEntityArray: "ColumnsEntityArray", JoinEntityName: "JoinEntityName", JoinEntityRowForeignKey: "JoinEntityRowForeignKey", JoinEntityColumnForeignKey: "JoinEntityColumnForeignKey", JoinEntityDisplayColumns: "JoinEntityDisplayColumns", JoinEntityExtraFilter: "JoinEntityExtraFilter", CheckBoxValueMode: "CheckBoxValueMode", CheckBoxValueField: "CheckBoxValueField", NewRecordDefaultValues: "NewRecordDefaultValues", ShowSaveButton: "ShowSaveButton", ShowCancelButton: "ShowCancelButton", EditMode: "EditMode" }, standalone: false, decls: 5, vars: 4, consts: [[1, "wrapper"], ["kendoButton", "", 3, "disabled"], [1, "grid"], ["size", "medium", 3, "showText"], ["kendoButton", "", 3, "click", "disabled"], [3, "ngClass"], [1, "checkbox-column"], [1, "first-column"], ["kendoButton", "", 1, "cellButton"], ["kendoButton", "", 1, "cellButton", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "fa-solid", "fa-minus"], [1, "column-cell"], [3, "data", "value"], ["type", "checkbox", 3, "checked"], [3, "value"], ["type", "checkbox", 3, "change", "checked"], [3, "change", "value"], [3, "selectionChange", "data", "value"], [1, "checkbox-column", 3, "ngClass"], [1, "checkbox-column", 3, "click", "ngClass"], ["type", "checkbox", "kendoCheckBox", "", 3, "checked"], ["type", "checkbox", "kendoCheckBox", "", 3, "click", "checked"]], template: function JoinGridComponent_Template(rf, ctx) { if (rf & 1) {
841
841
  i0.ɵɵelementStart(0, "div", 0);
842
- i0.ɵɵtemplate(1, JoinGridComponent_Conditional_1_Template, 2, 1, "div")(2, JoinGridComponent_Conditional_2_Template, 2, 1, "button", 1)(3, JoinGridComponent_Conditional_3_Template, 2, 1, "button", 1)(4, JoinGridComponent_Conditional_4_Template, 10, 2, "table", 2);
842
+ i0.ɵɵconditionalCreate(1, JoinGridComponent_Conditional_1_Template, 2, 1, "div");
843
+ i0.ɵɵconditionalCreate(2, JoinGridComponent_Conditional_2_Template, 2, 1, "button", 1);
844
+ i0.ɵɵconditionalCreate(3, JoinGridComponent_Conditional_3_Template, 2, 1, "button", 1);
845
+ i0.ɵɵconditionalCreate(4, JoinGridComponent_Conditional_4_Template, 10, 2, "table", 2);
843
846
  i0.ɵɵelementEnd();
844
847
  } if (rf & 2) {
845
848
  i0.ɵɵadvance();
@@ -850,11 +853,11 @@ export class JoinGridComponent {
850
853
  i0.ɵɵconditional(ctx.ShowCancelButton ? 3 : -1);
851
854
  i0.ɵɵadvance();
852
855
  i0.ɵɵconditional(!ctx._IsLoading ? 4 : -1);
853
- } }, dependencies: [i1.NgClass, i1.NgForOf, i2.TextBoxComponent, i2.CheckBoxDirective, i3.ButtonComponent, i4.DropDownListComponent, i5.LoadingComponent], styles: [".wrapper[_ngcontent-%COMP%] {\n overflow: auto;\n}\n\nbutton[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-top: 5px;\n width: 125px;\n}\n \nbutton.cellButton[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-top: 5px;\n width: 30px;\n margin-bottom: 5px;\n float: right;\n}\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n background-color: #f2f2f2; \n\n color: black; \n\n font-weight: bold; \n\n}\n\n\n\n\n\n\n\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%], table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n border: 1px solid gray; \n\n height: 36px; \n\n text-align: center;\n padding: 0 8px; \n\n}\n\ntd.column-cell[_ngcontent-%COMP%] {\n margin: 0;\n \n\n \n\n text-align: left;\n}\n\n\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child, table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child {\n min-width: 150px; \n\n text-align: left;\n vertical-align: middle;\n}\n\n.checkbox-column[_ngcontent-%COMP%] {\n width: 100px; \n\n}\n\n\n\ntable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(odd) {\n background-color: white; \n\n}\n\ntable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even) {\n background-color: #e7f4ff; \n\n}\n\ntable[_ngcontent-%COMP%] tr.dirty-row[_ngcontent-%COMP%] {\n font-style: italic;\n background-color: #ffcccc;\n}\n\ntable[_ngcontent-%COMP%] td.dirty-cell[_ngcontent-%COMP%] {\n font-style: italic;\n background-color: #ffcccc;\n}"] });
856
+ } }, dependencies: [i1.NgClass, i2.TextBoxComponent, i2.CheckBoxDirective, i3.ButtonComponent, i4.DropDownListComponent, i5.LoadingComponent], styles: [".wrapper[_ngcontent-%COMP%] {\n overflow: auto;\n}\n\nbutton[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-top: 5px;\n width: 125px;\n}\n \nbutton.cellButton[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-top: 5px;\n width: 30px;\n margin-bottom: 5px;\n float: right;\n}\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n background-color: #f2f2f2; \n\n color: black; \n\n font-weight: bold; \n\n}\n\n\n\n\n\n\n\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%], table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n border: 1px solid gray; \n\n height: 36px; \n\n text-align: center;\n padding: 0 8px; \n\n}\n\ntd.column-cell[_ngcontent-%COMP%] {\n margin: 0;\n \n\n \n\n text-align: left;\n}\n\n\n\ntable[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child, table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child {\n min-width: 150px; \n\n text-align: left;\n vertical-align: middle;\n}\n\n.checkbox-column[_ngcontent-%COMP%] {\n width: 100px; \n\n}\n\n\n\ntable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(odd) {\n background-color: white; \n\n}\n\ntable[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even) {\n background-color: #e7f4ff; \n\n}\n\ntable[_ngcontent-%COMP%] tr.dirty-row[_ngcontent-%COMP%] {\n font-style: italic;\n background-color: #ffcccc;\n}\n\ntable[_ngcontent-%COMP%] td.dirty-cell[_ngcontent-%COMP%] {\n font-style: italic;\n background-color: #ffcccc;\n}"] });
854
857
  }
855
858
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(JoinGridComponent, [{
856
859
  type: Component,
857
- args: [{ selector: 'mj-join-grid', template: "<div class=\"wrapper\"> \n @if (_IsLoading) {\n <div><mj-loading [showText]=\"false\" size=\"medium\"></mj-loading></div>\n }\n @if (ShowSaveButton) {\n <button [disabled]=\"NumDirtyRecords === 0\" kendoButton (click)=\"Save()\">Save</button>\n }\n @if (ShowCancelButton) {\n <button [disabled]=\"NumDirtyRecords === 0\" kendoButton (click)=\"CancelEdit()\">Cancel</button>\n }\n @if (!_IsLoading) {\n <table class=\"grid\">\n <thead>\n <tr>\n <!-- First column is the name of the Rows Entity -->\n <th>{{RowsEntityDisplayNameOrName}}</th>\n @if (ColumnsMode === 'Entity') {\n @for (colRecord of this._columnsEntityData; track colRecord) {\n <th class=\"checkbox-column\">{{colRecord.Get(this.ColumnsEntityDisplayField)}}</th>\n }\n }\n @else {\n <!-- we need one column for each of the fields in the JoinEntityDisplayColumns array -->\n @for (colName of JoinEntityDisplayColumns; track colName) {\n <th>{{colName}}</th>\n }\n }\n </tr>\n </thead>\n <tbody>\n @for (row of _GridData; track row) {\n <tr [ngClass]=\"IsRecordReallyDirty(row) ? 'dirty-row' : ''\">\n <td class=\"first-column\">\n <span>{{row.FirstColValue}}</span>\n @if (EditMode !== 'None'){\n @if (!row.JoinExists) {\n <button kendoButton class=\"cellButton\" (click)=\"AddJoinEntityRecord(row)\"><span class=\"fa-solid fa-plus\"></span></button>\n }\n @else {\n <button kendoButton class=\"cellButton\" (click)=\"RemoveJoinEntityRecord(row)\"><span class=\"fa-solid fa-minus\"></span></button>\n } \n }\n </td>\n @if (ColumnsMode === 'Fields') {\n <td class=\"column-cell\" *ngFor=\"let colName of JoinEntityDisplayColumns; let i = index\">\n @if (EditMode !== 'None') {\n @if (row.JoinExists) {\n @if (GetJoinEntityField(colName).ValueListType === \"None\") {\n @if (GetJoinEntityField(colName).TSType === EntityFieldTSType.Boolean) {\n <input type=\"checkbox\" [checked]=\"row.GetColumnValue(i)\" (change)=\"UpdateCellValue(row, i, $event)\" />\n }\n @else {\n <kendo-textbox [value]=\"row.GetColumnValue(i)\" (change)=\"UpdateCellValue(row, i, $event)\" /> \n }\n }\n @else {\n <kendo-dropdownlist\n [data]=\"GetJoinEntityFieldValues(colName)\"\n [value]=\"row.GetColumnValue(i)\"\n (selectionChange)=\"UpdateCellValueDirect(row, i, $event)\"\n >\n </kendo-dropdownlist>\n }\n }\n }\n @else {\n {{row.GetColumnValue(i)}}\n }\n </td>\n }\n @else {\n @for (cell of row.ColumnData; track cell) {\n <!-- loop through all the columns and display a checkbox and check it if we have a match in the current row -->\n <td class=\"checkbox-column\" (click)=\"_FlipRecord($event, row, cell)\"\n [ngClass]=\"IsCellReallyDirty(cell) ? 'dirty-cell' : ''\">\n @if (EditMode !== 'None') {\n <input type=\"checkbox\" \n kendoCheckBox \n [checked]=\"_IsColumnChecked(cell)\" \n (click)=\"_FlipRecord($event, row, cell, true)\">\n }\n @else {\n {{cell.value ? '\u2713' : ''}}\n }\n </td>\n }\n }\n </tr> \n } \n </tbody>\n </table>\n }\n</div>", styles: [".wrapper {\n overflow: auto;\n}\n\nbutton {\n margin-left: 5px;\n margin-top: 5px;\n width: 125px;\n}\n \nbutton.cellButton {\n margin-left: 5px;\n margin-top: 5px;\n width: 30px;\n margin-bottom: 5px;\n float: right;\n}\n\ntable th {\n background-color: #f2f2f2; /* Light gray background for headers */\n color: black; /* Black text color for headers */\n font-weight: bold; /* Bold font weight for headers */\n}\n/* \n.permission-left-col {\n cursor: pointer;\n} */\n\n/* Style for all table cells */\ntable th, table td {\n border: 1px solid gray; /* Gray border for cells */\n height: 36px; /* Fixed height for all rows */\n text-align: center;\n padding: 0 8px; /* Add some padding inside cells */\n}\n\ntd.column-cell {\n margin: 0;\n /* display: flex; */\n /* align-items: center; */\n text-align: left;\n}\n\n/* Specific styles for the first column */\ntable th:first-child, table td:first-child {\n min-width: 150px; /* Set width for the first column */\n text-align: left;\n vertical-align: middle;\n}\n\n.checkbox-column {\n width: 100px; /* Set width for \"Can\" columns */\n}\n\n/* Alternating row background colors */\ntable tr:nth-child(odd) {\n background-color: white; /* Light color for odd rows */\n}\n\ntable tr:nth-child(even) {\n background-color: #e7f4ff; /* Light blue for even rows */\n}\n\ntable tr.dirty-row {\n font-style: italic;\n background-color: #ffcccc;\n}\n\ntable td.dirty-cell {\n font-style: italic;\n background-color: #ffcccc;\n}"] }]
860
+ args: [{ standalone: false, selector: 'mj-join-grid', template: "<div class=\"wrapper\">\n @if (_IsLoading) {\n <div><mj-loading [showText]=\"false\" size=\"medium\"></mj-loading></div>\n }\n @if (ShowSaveButton) {\n <button [disabled]=\"NumDirtyRecords === 0\" kendoButton (click)=\"Save()\">Save</button>\n }\n @if (ShowCancelButton) {\n <button [disabled]=\"NumDirtyRecords === 0\" kendoButton (click)=\"CancelEdit()\">Cancel</button>\n }\n @if (!_IsLoading) {\n <table class=\"grid\">\n <thead>\n <tr>\n <!-- First column is the name of the Rows Entity -->\n <th>{{RowsEntityDisplayNameOrName}}</th>\n @if (ColumnsMode === 'Entity') {\n @for (colRecord of this._columnsEntityData; track colRecord) {\n <th class=\"checkbox-column\">{{colRecord.Get(this.ColumnsEntityDisplayField)}}</th>\n }\n }\n @else {\n <!-- we need one column for each of the fields in the JoinEntityDisplayColumns array -->\n @for (colName of JoinEntityDisplayColumns; track colName) {\n <th>{{colName}}</th>\n }\n }\n </tr>\n </thead>\n <tbody>\n @for (row of _GridData; track row) {\n <tr [ngClass]=\"IsRecordReallyDirty(row) ? 'dirty-row' : ''\">\n <td class=\"first-column\">\n <span>{{row.FirstColValue}}</span>\n @if (EditMode !== 'None'){\n @if (!row.JoinExists) {\n <button kendoButton class=\"cellButton\" (click)=\"AddJoinEntityRecord(row)\"><span class=\"fa-solid fa-plus\"></span></button>\n }\n @else {\n <button kendoButton class=\"cellButton\" (click)=\"RemoveJoinEntityRecord(row)\"><span class=\"fa-solid fa-minus\"></span></button>\n }\n }\n </td>\n @if (ColumnsMode === 'Fields') {\n @for (colName of JoinEntityDisplayColumns; track colName; let i = $index) {\n <td class=\"column-cell\">\n @if (EditMode !== 'None') {\n @if (row.JoinExists) {\n @if (GetJoinEntityField(colName).ValueListType === \"None\") {\n @if (GetJoinEntityField(colName).TSType === EntityFieldTSType.Boolean) {\n <input type=\"checkbox\" [checked]=\"row.GetColumnValue(i)\" (change)=\"UpdateCellValue(row, i, $event)\" />\n }\n @else {\n <kendo-textbox [value]=\"row.GetColumnValue(i)\" (change)=\"UpdateCellValue(row, i, $event)\" />\n }\n }\n @else {\n <kendo-dropdownlist\n [data]=\"GetJoinEntityFieldValues(colName)\"\n [value]=\"row.GetColumnValue(i)\"\n (selectionChange)=\"UpdateCellValueDirect(row, i, $event)\"\n >\n </kendo-dropdownlist>\n }\n }\n }\n @else {\n {{row.GetColumnValue(i)}}\n }\n </td>\n }\n }\n @else {\n @for (cell of row.ColumnData; track cell) {\n <!-- loop through all the columns and display a checkbox and check it if we have a match in the current row -->\n <td class=\"checkbox-column\" (click)=\"_FlipRecord($event, row, cell)\"\n [ngClass]=\"IsCellReallyDirty(cell) ? 'dirty-cell' : ''\">\n @if (EditMode !== 'None') {\n <input type=\"checkbox\"\n kendoCheckBox\n [checked]=\"_IsColumnChecked(cell)\"\n (click)=\"_FlipRecord($event, row, cell, true)\">\n }\n @else {\n {{cell.value ? '\u2713' : ''}}\n }\n </td>\n}\n}\n</tr>\n}\n</tbody>\n</table>\n}\n</div>", styles: [".wrapper {\n overflow: auto;\n}\n\nbutton {\n margin-left: 5px;\n margin-top: 5px;\n width: 125px;\n}\n \nbutton.cellButton {\n margin-left: 5px;\n margin-top: 5px;\n width: 30px;\n margin-bottom: 5px;\n float: right;\n}\n\ntable th {\n background-color: #f2f2f2; /* Light gray background for headers */\n color: black; /* Black text color for headers */\n font-weight: bold; /* Bold font weight for headers */\n}\n/* \n.permission-left-col {\n cursor: pointer;\n} */\n\n/* Style for all table cells */\ntable th, table td {\n border: 1px solid gray; /* Gray border for cells */\n height: 36px; /* Fixed height for all rows */\n text-align: center;\n padding: 0 8px; /* Add some padding inside cells */\n}\n\ntd.column-cell {\n margin: 0;\n /* display: flex; */\n /* align-items: center; */\n text-align: left;\n}\n\n/* Specific styles for the first column */\ntable th:first-child, table td:first-child {\n min-width: 150px; /* Set width for the first column */\n text-align: left;\n vertical-align: middle;\n}\n\n.checkbox-column {\n width: 100px; /* Set width for \"Can\" columns */\n}\n\n/* Alternating row background colors */\ntable tr:nth-child(odd) {\n background-color: white; /* Light color for odd rows */\n}\n\ntable tr:nth-child(even) {\n background-color: #e7f4ff; /* Light blue for even rows */\n}\n\ntable tr.dirty-row {\n font-style: italic;\n background-color: #ffcccc;\n}\n\ntable td.dirty-cell {\n font-style: italic;\n background-color: #ffcccc;\n}"] }]
858
861
  }], () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], { RowsEntityName: [{
859
862
  type: Input
860
863
  }], RowsEntityDisplayName: [{
@@ -910,5 +913,5 @@ export class JoinGridComponent {
910
913
  }], EditMode: [{
911
914
  type: Input
912
915
  }] }); })();
913
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JoinGridComponent, { className: "JoinGridComponent", filePath: "src/lib/join-grid/join-grid.component.ts", lineNumber: 42 }); })();
916
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JoinGridComponent, { className: "JoinGridComponent", filePath: "src/lib/join-grid/join-grid.component.ts", lineNumber: 43 }); })();
914
917
  //# sourceMappingURL=join-grid.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"join-grid.component.js","sourceRoot":"","sources":["../../../src/lib/join-grid/join-grid.component.ts","../../../src/lib/join-grid/join-grid.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"join-grid.component.js","sourceRoot":"","sources":["../../../src/lib/join-grid/join-grid.component.ts","../../../src/lib/join-grid/join-grid.component.html"],"names":[],"mappings":"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"}
@@ -15,3 +15,4 @@ export declare class JoinGridModule {
15
15
  static ɵmod: i0.ɵɵNgModuleDeclaration<JoinGridModule, [typeof i1.JoinGridComponent], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i4.DialogsModule, typeof i5.GridModule, typeof i6.InputsModule, typeof i7.ButtonsModule, typeof i8.DropDownsModule, typeof i4.DialogsModule, typeof i9.IndicatorsModule, typeof i10.ContainerDirectivesModule, typeof i11.SharedGenericModule], [typeof i1.JoinGridComponent]>;
16
16
  static ɵinj: i0.ɵɵInjectorDeclaration<JoinGridModule>;
17
17
  }
18
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAmBA,qBAqBa,cAAc;yCAAd,cAAc;0CAAd,cAAc;0CAAd,cAAc;CAAI"}
@@ -1,2 +1,3 @@
1
1
  export * from './lib/join-grid/join-grid.component';
2
2
  export * from './lib/module';
3
+ //# sourceMappingURL=public-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAIA,cAAc,qCAAqC,CAAC;AACpD,cAAc,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-join-grid",
3
- "version": "3.4.0",
3
+ "version": "4.1.0",
4
4
  "description": "MemberJunction: Grid component that is able to display/edit the relationship between two entities. For example being able to edit Users + Roles in a single grid.",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -15,31 +15,31 @@
15
15
  "author": "",
16
16
  "license": "ISC",
17
17
  "devDependencies": {
18
- "@angular/compiler": "18.2.14",
19
- "@angular/compiler-cli": "18.2.14"
18
+ "@angular/compiler": "21.1.3",
19
+ "@angular/compiler-cli": "21.1.3"
20
20
  },
21
21
  "peerDependencies": {
22
- "@angular/common": "18.2.14",
23
- "@angular/core": "18.2.14",
24
- "@angular/forms": "18.2.14",
25
- "@angular/router": "18.2.14"
22
+ "@angular/common": "21.1.3",
23
+ "@angular/core": "21.1.3",
24
+ "@angular/forms": "21.1.3",
25
+ "@angular/router": "21.1.3"
26
26
  },
27
27
  "dependencies": {
28
- "@memberjunction/core": "3.4.0",
29
- "@memberjunction/core-entities": "3.4.0",
30
- "@memberjunction/global": "3.4.0",
31
- "@memberjunction/ng-base-types": "3.4.0",
32
- "@memberjunction/ng-container-directives": "3.4.0",
33
- "@memberjunction/ng-shared": "3.4.0",
34
- "@memberjunction/ng-shared-generic": "3.4.0",
35
- "@progress/kendo-angular-buttons": "16.2.0",
36
- "@progress/kendo-angular-dialog": "16.2.0",
37
- "@progress/kendo-angular-dropdowns": "16.2.0",
38
- "@progress/kendo-angular-grid": "16.2.0",
39
- "@progress/kendo-angular-indicators": "16.2.0",
40
- "@progress/kendo-angular-inputs": "16.2.0",
41
- "@progress/kendo-angular-layout": "16.2.0",
42
- "tslib": "^2.3.0"
28
+ "@memberjunction/core": "4.1.0",
29
+ "@memberjunction/core-entities": "4.1.0",
30
+ "@memberjunction/global": "4.1.0",
31
+ "@memberjunction/ng-base-types": "4.1.0",
32
+ "@memberjunction/ng-container-directives": "4.1.0",
33
+ "@memberjunction/ng-shared": "4.1.0",
34
+ "@memberjunction/ng-shared-generic": "4.1.0",
35
+ "@progress/kendo-angular-buttons": "22.0.1",
36
+ "@progress/kendo-angular-dialog": "22.0.1",
37
+ "@progress/kendo-angular-dropdowns": "22.0.1",
38
+ "@progress/kendo-angular-grid": "22.0.1",
39
+ "@progress/kendo-angular-indicators": "22.0.1",
40
+ "@progress/kendo-angular-inputs": "22.0.1",
41
+ "@progress/kendo-angular-layout": "22.0.1",
42
+ "tslib": "^2.8.1"
43
43
  },
44
44
  "sideEffects": false,
45
45
  "repository": {