@memberjunction/ng-base-forms 1.5.2 → 1.6.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.
@@ -25,9 +25,9 @@ export declare class MJFormField extends BaseRecordComponent implements AfterVie
25
25
  */
26
26
  FieldName: string;
27
27
  /**
28
- * The type of control to be rendered for the field. The default is 'textbox'. Other possible values are 'textarea', 'numerictextbox', 'datepicker', 'checkbox', 'dropdownlist', 'combobox'.
28
+ * The type of control to be rendered for the field. The default is 'textbox'. Other possible values are 'textarea', 'numerictextbox', 'datepicker', 'checkbox', 'dropdownlist', 'combobox', 'code'.
29
29
  */
30
- Type: 'textbox' | 'textarea' | 'numerictextbox' | 'datepicker' | 'checkbox' | 'dropdownlist' | 'combobox';
30
+ Type: 'textbox' | 'textarea' | 'numerictextbox' | 'datepicker' | 'checkbox' | 'dropdownlist' | 'combobox' | 'code';
31
31
  /**
32
32
  * Optional, the type of link field that should be shown. Email and URL fields will be rendered as hyperlinks, Record fields will be rendered as links to the record. The default is 'None'. Record Fields are only
33
33
  * valid when the FieldName field is a foreign key field to another entity.
@@ -37,6 +37,7 @@ export declare class MJFormField extends BaseRecordComponent implements AfterVie
37
37
  * If set to false, the label for the field will not be shown. The default is true.
38
38
  */
39
39
  ShowLabel: boolean;
40
+ languages: import("@codemirror/language").LanguageDescription[];
40
41
  private _displayName;
41
42
  /**
42
43
  * Display Name to show on the the control. By default, this is derived from the DisplayName in the entity field metadata, and can be overridden if desired by setting this property manually. Leave it empty to use the default.
@@ -1 +1 @@
1
- {"version":3,"file":"base-field-component.d.ts","sourceRoot":"","sources":["../../src/lib/base-field-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAyB,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3I,OAAO,EAAE,UAAU,EAAE,eAAe,EAAqB,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;;AAGjD;;;;;GAKG;AACH,qBAKa,WAAY,SAAQ,mBAAoB,YAAW,aAAa;IAqH7D,OAAO,CAAC,QAAQ;IAAa,OAAO,CAAC,GAAG;IApHpD;;OAEG;IACM,MAAM,EAAG,UAAU,CAAC;IAC7B;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IACnC;;OAEG;IACM,SAAS,EAAE,MAAM,CAAM;IAChC;;OAEG;IACM,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,gBAAgB,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,UAAU,CAAa;IAC/H;;;OAGG;IACM,QAAQ,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAU;IAEhE;;OAEG;IACM,SAAS,EAAE,OAAO,CAAQ;IAEnC,OAAO,CAAC,YAAY,CAAuB;IAC3C;;OAEG;IACH,IACW,WAAW,IAAI,MAAM,CAS/B;IAED,IAAW,WAAW,CAAC,QAAQ,EAAE,MAAM,EAEtC;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,OAAO,CAAC,eAAe,CAAyB;IAChD;;;OAGG;IACH,IAAa,cAAc,IAAI,MAAM,EAAE,CAStC;IAED,IAAI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAEpC;IAED,IACW,KAAK,IAAI,GAAG,CAWtB;IACD,IAAW,KAAK,CAAC,QAAQ,EAAE,GAAG,EAM7B;IACS,WAAW,oBAA2B;IAEhD;;OAEG;IACH,IAAW,eAAe,IAAI,OAAO,CAMpC;IAED,IAAW,SAAS,IAAI,eAAe,CAMtC;IAGyC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAClF,OAAO,CAAC,QAAQ,CAA+B;gBAE3B,QAAQ,EAAE,SAAS,EAAU,GAAG,EAAE,iBAAiB;IAIvE,eAAe,IAAI,IAAI;yCAzHd,WAAW;2CAAX,WAAW;CAiMvB"}
1
+ {"version":3,"file":"base-field-component.d.ts","sourceRoot":"","sources":["../../src/lib/base-field-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAyB,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC3I,OAAO,EAAE,UAAU,EAAE,eAAe,EAAqB,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;;AAGjD;;;;;GAKG;AACH,qBAKa,WAAY,SAAQ,mBAAoB,YAAW,aAAa;IA8GzE,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,GAAG;IA9Gb;;OAEG;IACM,MAAM,EAAG,UAAU,CAAC;IAC7B;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IACnC;;OAEG;IACM,SAAS,EAAE,MAAM,CAAM;IAChC;;OAEG;IACM,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,gBAAgB,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,MAAM,CAAa;IACxI;;;OAGG;IACM,QAAQ,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAU;IAEhE;;OAEG;IACM,SAAS,EAAE,OAAO,CAAQ;IAEnC,SAAS,uDAAa;IAEtB,OAAO,CAAC,YAAY,CAAuB;IAC3C;;OAEG;IACH,IACW,WAAW,IAAI,MAAM,CAO/B;IAED,IAAW,WAAW,CAAC,QAAQ,EAAE,MAAM,EAEtC;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,OAAO,CAAC,eAAe,CAAyB;IAChD;;;OAGG;IACH,IAAa,cAAc,IAAI,MAAM,EAAE,CAOtC;IAED,IAAI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAEpC;IAED,IACW,KAAK,IAAI,GAAG,CAUtB;IACD,IAAW,KAAK,CAAC,QAAQ,EAAE,GAAG,EAM7B;IACS,WAAW,oBAA2B;IAEhD;;OAEG;IACH,IAAW,eAAe,IAAI,OAAO,CAIpC;IAED,IAAW,SAAS,IAAI,eAAe,CAItC;IAEyC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAClF,OAAO,CAAC,QAAQ,CAA+B;gBAGrC,QAAQ,EAAE,SAAS,EACnB,GAAG,EAAE,iBAAiB;IAKhC,eAAe,IAAI,IAAI;yCApHZ,WAAW;2CAAX,WAAW;CA2LvB"}
@@ -1,6 +1,7 @@
1
1
  import { Component, Input, Output, EventEmitter, ViewChild } from '@angular/core';
2
2
  import { EntityFieldTSType } from '@memberjunction/core';
3
3
  import { BaseRecordComponent } from './base-record-component';
4
+ import { languages } from '@codemirror/language-data';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
6
7
  import * as i2 from "@angular/forms";
@@ -9,191 +10,189 @@ import * as i4 from "@progress/kendo-angular-dateinputs";
9
10
  import * as i5 from "@progress/kendo-angular-dropdowns";
10
11
  import * as i6 from "@memberjunction/ng-link-directives";
11
12
  import * as i7 from "@memberjunction/ng-container-directives";
12
- import * as i8 from "ngx-markdown";
13
- import * as i9 from "./link-field.component";
13
+ import * as i8 from "@memberjunction/ng-code-editor";
14
+ import * as i9 from "ngx-markdown";
15
+ import * as i10 from "./link-field.component";
14
16
  const _c0 = ["markdown"];
15
17
  function MJFormField_Conditional_0_div_0_label_1_Template(rf, ctx) { if (rf & 1) {
16
18
  i0.ɵɵelementStart(0, "label");
17
19
  i0.ɵɵtext(1);
18
20
  i0.ɵɵelementEnd();
19
21
  } if (rf & 2) {
20
- const ctx_r3 = i0.ɵɵnextContext(3);
22
+ const ctx_r0 = i0.ɵɵnextContext(3);
21
23
  i0.ɵɵadvance();
22
- i0.ɵɵtextInterpolate(ctx_r3.DisplayName);
24
+ i0.ɵɵtextInterpolate(ctx_r0.DisplayName);
23
25
  } }
24
26
  function MJFormField_Conditional_0_div_0_Case_2_Conditional_0_Template(rf, ctx) { if (rf & 1) {
25
- i0.ɵɵelementStart(0, "pre");
26
- i0.ɵɵtext(1);
27
- i0.ɵɵelementEnd();
27
+ i0.ɵɵelement(0, "mj-code-editor", 7);
28
28
  } if (rf & 2) {
29
- const ctx_r8 = i0.ɵɵnextContext(4);
30
- i0.ɵɵadvance();
31
- i0.ɵɵtextInterpolate(ctx_r8.record.Get(ctx_r8.FieldName));
29
+ const ctx_r0 = i0.ɵɵnextContext(4);
30
+ i0.ɵɵproperty("value", ctx_r0.record.Get(ctx_r0.FieldName))("readonly", true)("languages", ctx_r0.languages)("language", "JavaScript");
32
31
  } }
33
32
  function MJFormField_Conditional_0_div_0_Case_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
34
- i0.ɵɵelement(0, "markdown", 3, 4);
33
+ i0.ɵɵelement(0, "markdown", 8, 0);
35
34
  } if (rf & 2) {
36
- const ctx_r9 = i0.ɵɵnextContext(4);
37
- i0.ɵɵproperty("data", ctx_r9.record.Get(ctx_r9.FieldName));
35
+ const ctx_r0 = i0.ɵɵnextContext(4);
36
+ i0.ɵɵproperty("data", ctx_r0.record.Get(ctx_r0.FieldName));
38
37
  } }
39
38
  function MJFormField_Conditional_0_div_0_Case_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
40
39
  i0.ɵɵelementStart(0, "span");
41
40
  i0.ɵɵtext(1);
42
41
  i0.ɵɵelementEnd();
43
42
  } if (rf & 2) {
44
- const ctx_r10 = i0.ɵɵnextContext(4);
43
+ const ctx_r0 = i0.ɵɵnextContext(4);
45
44
  i0.ɵɵadvance();
46
- i0.ɵɵtextInterpolate(ctx_r10.FormatValue(ctx_r10.FieldName, 0));
45
+ i0.ɵɵtextInterpolate(ctx_r0.FormatValue(ctx_r0.FieldName, 0));
47
46
  } }
48
47
  function MJFormField_Conditional_0_div_0_Case_2_Template(rf, ctx) { if (rf & 1) {
49
- i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_0_Case_2_Conditional_0_Template, 2, 1, "pre")(1, MJFormField_Conditional_0_div_0_Case_2_Conditional_1_Template, 2, 1)(2, MJFormField_Conditional_0_div_0_Case_2_Conditional_2_Template, 2, 1);
48
+ i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_0_Case_2_Conditional_0_Template, 1, 4, "mj-code-editor", 7)(1, MJFormField_Conditional_0_div_0_Case_2_Conditional_1_Template, 2, 1, "markdown", 8)(2, MJFormField_Conditional_0_div_0_Case_2_Conditional_2_Template, 2, 1, "span");
50
49
  } if (rf & 2) {
51
- const ctx_r4 = i0.ɵɵnextContext(3);
52
- i0.ɵɵconditional(0, ctx_r4.ExtendedType === "Code" ? 0 : ctx_r4.FieldInfo.Length === -1 ? 1 : 2);
50
+ const ctx_r0 = i0.ɵɵnextContext(3);
51
+ i0.ɵɵconditional(ctx_r0.ExtendedType === "Code" ? 0 : ctx_r0.FieldInfo.Length === -1 ? 1 : 2);
53
52
  } }
54
53
  function MJFormField_Conditional_0_div_0_Case_3_Template(rf, ctx) { if (rf & 1) {
55
- i0.ɵɵelementStart(0, "span", 5);
54
+ i0.ɵɵelementStart(0, "span", 4);
56
55
  i0.ɵɵtext(1);
57
56
  i0.ɵɵelementEnd();
58
57
  } if (rf & 2) {
59
- const ctx_r5 = i0.ɵɵnextContext(3);
60
- i0.ɵɵproperty("field", ctx_r5.record.GetFieldByName(ctx_r5.FieldName));
58
+ const ctx_r0 = i0.ɵɵnextContext(3);
59
+ i0.ɵɵproperty("field", ctx_r0.record.GetFieldByName(ctx_r0.FieldName));
61
60
  i0.ɵɵadvance();
62
- i0.ɵɵtextInterpolate(ctx_r5.FormatValue(ctx_r5.FieldName, 0));
61
+ i0.ɵɵtextInterpolate(ctx_r0.FormatValue(ctx_r0.FieldName, 0));
63
62
  } }
64
63
  function MJFormField_Conditional_0_div_0_Case_4_Template(rf, ctx) { if (rf & 1) {
65
- i0.ɵɵelementStart(0, "span", 6);
64
+ i0.ɵɵelementStart(0, "span", 5);
66
65
  i0.ɵɵtext(1);
67
66
  i0.ɵɵelementEnd();
68
67
  } if (rf & 2) {
69
- const ctx_r6 = i0.ɵɵnextContext(3);
70
- i0.ɵɵproperty("field", ctx_r6.record.GetFieldByName(ctx_r6.FieldName));
68
+ const ctx_r0 = i0.ɵɵnextContext(3);
69
+ i0.ɵɵproperty("field", ctx_r0.record.GetFieldByName(ctx_r0.FieldName));
71
70
  i0.ɵɵadvance();
72
- i0.ɵɵtextInterpolate(ctx_r6.FormatValue(ctx_r6.FieldName, 0));
71
+ i0.ɵɵtextInterpolate(ctx_r0.FormatValue(ctx_r0.FieldName, 0));
73
72
  } }
74
73
  function MJFormField_Conditional_0_div_0_Case_5_Template(rf, ctx) { if (rf & 1) {
75
- i0.ɵɵelementStart(0, "span", 7);
74
+ i0.ɵɵelementStart(0, "span", 6);
76
75
  i0.ɵɵtext(1);
77
76
  i0.ɵɵelementEnd();
78
77
  } if (rf & 2) {
79
- const ctx_r7 = i0.ɵɵnextContext(3);
80
- i0.ɵɵproperty("record", ctx_r7.record)("fieldName", ctx_r7.FieldName);
78
+ const ctx_r0 = i0.ɵɵnextContext(3);
79
+ i0.ɵɵproperty("record", ctx_r0.record)("fieldName", ctx_r0.FieldName);
81
80
  i0.ɵɵadvance();
82
- i0.ɵɵtextInterpolate(ctx_r7.FormatValue(ctx_r7.FieldName, 0));
81
+ i0.ɵɵtextInterpolate(ctx_r0.FormatValue(ctx_r0.FieldName, 0));
83
82
  } }
84
83
  function MJFormField_Conditional_0_div_0_Template(rf, ctx) { if (rf & 1) {
85
- i0.ɵɵelementStart(0, "div", 1);
86
- i0.ɵɵtemplate(1, MJFormField_Conditional_0_div_0_label_1_Template, 2, 1, "label", 2)(2, MJFormField_Conditional_0_div_0_Case_2_Template, 3, 1)(3, MJFormField_Conditional_0_div_0_Case_3_Template, 2, 2)(4, MJFormField_Conditional_0_div_0_Case_4_Template, 2, 2)(5, MJFormField_Conditional_0_div_0_Case_5_Template, 2, 3);
84
+ i0.ɵɵelementStart(0, "div", 2);
85
+ i0.ɵɵtemplate(1, MJFormField_Conditional_0_div_0_label_1_Template, 2, 1, "label", 3)(2, MJFormField_Conditional_0_div_0_Case_2_Template, 3, 1)(3, MJFormField_Conditional_0_div_0_Case_3_Template, 2, 2, "span", 4)(4, MJFormField_Conditional_0_div_0_Case_4_Template, 2, 2, "span", 5)(5, MJFormField_Conditional_0_div_0_Case_5_Template, 2, 3, "span", 6);
87
86
  i0.ɵɵelementEnd();
88
87
  } if (rf & 2) {
89
- const ctx_r1 = i0.ɵɵnextContext(2);
90
- let MJFormField_Conditional_0_div_0_contFlowTmp;
88
+ let tmp_3_0;
89
+ const ctx_r0 = i0.ɵɵnextContext(2);
91
90
  i0.ɵɵadvance();
92
- i0.ɵɵproperty("ngIf", ctx_r1.ShowLabel);
91
+ i0.ɵɵproperty("ngIf", ctx_r0.ShowLabel);
93
92
  i0.ɵɵadvance();
94
- i0.ɵɵconditional(2, (MJFormField_Conditional_0_div_0_contFlowTmp = ctx_r1.LinkType) === "None" ? 2 : MJFormField_Conditional_0_div_0_contFlowTmp === "Email" ? 3 : MJFormField_Conditional_0_div_0_contFlowTmp === "URL" ? 4 : MJFormField_Conditional_0_div_0_contFlowTmp === "Record" ? 5 : -1);
93
+ i0.ɵɵconditional((tmp_3_0 = ctx_r0.LinkType) === "None" ? 2 : tmp_3_0 === "Email" ? 3 : tmp_3_0 === "URL" ? 4 : tmp_3_0 === "Record" ? 5 : -1);
95
94
  } }
96
95
  function MJFormField_Conditional_0_div_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
97
96
  i0.ɵɵelementStart(0, "label");
98
97
  i0.ɵɵtext(1);
99
98
  i0.ɵɵelementEnd();
100
99
  } if (rf & 2) {
101
- const ctx_r12 = i0.ɵɵnextContext(3);
100
+ const ctx_r0 = i0.ɵɵnextContext(3);
102
101
  i0.ɵɵadvance();
103
- i0.ɵɵtextInterpolate(ctx_r12.DisplayName);
102
+ i0.ɵɵtextInterpolate(ctx_r0.DisplayName);
104
103
  } }
105
104
  function MJFormField_Conditional_0_div_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
106
- i0.ɵɵelement(0, "mj-link-field", 8);
105
+ i0.ɵɵelement(0, "mj-link-field", 9);
107
106
  } if (rf & 2) {
108
- const ctx_r13 = i0.ɵɵnextContext(3);
109
- i0.ɵɵproperty("record", ctx_r13.record)("FieldName", ctx_r13.FieldName);
107
+ const ctx_r0 = i0.ɵɵnextContext(3);
108
+ i0.ɵɵproperty("record", ctx_r0.record)("FieldName", ctx_r0.FieldName);
110
109
  } }
111
110
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_0_Template(rf, ctx) { if (rf & 1) {
112
- const _r23 = i0.ɵɵgetCurrentView();
113
- i0.ɵɵelementStart(0, "kendo-textbox", 9);
114
- i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_0_Template_kendo_textbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r23); const ctx_r22 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r22.Value, $event) || (ctx_r22.Value = $event); return i0.ɵɵresetView($event); });
111
+ const _r2 = i0.ɵɵgetCurrentView();
112
+ i0.ɵɵelementStart(0, "kendo-textbox", 16);
113
+ i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_0_Template_kendo_textbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
115
114
  i0.ɵɵelementEnd();
116
115
  } if (rf & 2) {
117
- const ctx_r15 = i0.ɵɵnextContext(4);
118
- i0.ɵɵtwoWayProperty("ngModel", ctx_r15.Value);
116
+ const ctx_r0 = i0.ɵɵnextContext(4);
117
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r0.Value);
119
118
  } }
120
119
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_1_Template(rf, ctx) { if (rf & 1) {
121
- const _r25 = i0.ɵɵgetCurrentView();
122
- i0.ɵɵelementStart(0, "kendo-textarea", 10);
123
- i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_1_Template_kendo_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r24.Value, $event) || (ctx_r24.Value = $event); return i0.ɵɵresetView($event); });
120
+ const _r3 = i0.ɵɵgetCurrentView();
121
+ i0.ɵɵelementStart(0, "kendo-textarea", 17);
122
+ i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_1_Template_kendo_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
124
123
  i0.ɵɵelementEnd();
125
124
  } if (rf & 2) {
126
- const ctx_r16 = i0.ɵɵnextContext(4);
127
- i0.ɵɵtwoWayProperty("ngModel", ctx_r16.Value);
128
- i0.ɵɵproperty("fillWidth", ctx_r16.ShowLabel ? false : true)("fillHeight", ctx_r16.ShowLabel ? false : true);
125
+ const ctx_r0 = i0.ɵɵnextContext(4);
126
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r0.Value);
127
+ i0.ɵɵproperty("fillWidth", ctx_r0.ShowLabel ? false : true)("fillHeight", ctx_r0.ShowLabel ? false : true);
129
128
  } }
130
129
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_2_Template(rf, ctx) { if (rf & 1) {
131
- const _r27 = i0.ɵɵgetCurrentView();
132
- i0.ɵɵelementStart(0, "kendo-numerictextbox", 11);
133
- i0.ɵɵtwoWayListener("valueChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_2_Template_kendo_numerictextbox_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r26.Value, $event) || (ctx_r26.Value = $event); return i0.ɵɵresetView($event); });
130
+ const _r4 = i0.ɵɵgetCurrentView();
131
+ i0.ɵɵelementStart(0, "kendo-numerictextbox", 18);
132
+ i0.ɵɵtwoWayListener("valueChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_2_Template_kendo_numerictextbox_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
134
133
  i0.ɵɵelementEnd();
135
134
  } if (rf & 2) {
136
- const ctx_r17 = i0.ɵɵnextContext(4);
137
- i0.ɵɵtwoWayProperty("value", ctx_r17.Value);
135
+ const ctx_r0 = i0.ɵɵnextContext(4);
136
+ i0.ɵɵtwoWayProperty("value", ctx_r0.Value);
138
137
  } }
139
138
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_3_Template(rf, ctx) { if (rf & 1) {
140
- const _r29 = i0.ɵɵgetCurrentView();
141
- i0.ɵɵelementStart(0, "kendo-datepicker", 11);
142
- i0.ɵɵtwoWayListener("valueChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_3_Template_kendo_datepicker_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r28 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r28.Value, $event) || (ctx_r28.Value = $event); return i0.ɵɵresetView($event); });
139
+ const _r5 = i0.ɵɵgetCurrentView();
140
+ i0.ɵɵelementStart(0, "kendo-datepicker", 18);
141
+ i0.ɵɵtwoWayListener("valueChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_3_Template_kendo_datepicker_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
143
142
  i0.ɵɵelementEnd();
144
143
  } if (rf & 2) {
145
- const ctx_r18 = i0.ɵɵnextContext(4);
146
- i0.ɵɵtwoWayProperty("value", ctx_r18.Value);
144
+ const ctx_r0 = i0.ɵɵnextContext(4);
145
+ i0.ɵɵtwoWayProperty("value", ctx_r0.Value);
147
146
  } }
148
147
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_4_Template(rf, ctx) { if (rf & 1) {
149
- const _r31 = i0.ɵɵgetCurrentView();
150
- i0.ɵɵelementStart(0, "input", 12);
151
- i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_4_Template_input_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r30 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r30.Value, $event) || (ctx_r30.Value = $event); return i0.ɵɵresetView($event); });
148
+ const _r6 = i0.ɵɵgetCurrentView();
149
+ i0.ɵɵelementStart(0, "input", 19);
150
+ i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_4_Template_input_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
152
151
  i0.ɵɵelementEnd();
153
152
  } if (rf & 2) {
154
- const ctx_r19 = i0.ɵɵnextContext(4);
155
- i0.ɵɵtwoWayProperty("ngModel", ctx_r19.Value);
153
+ const ctx_r0 = i0.ɵɵnextContext(4);
154
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r0.Value);
156
155
  } }
157
156
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_5_Template(rf, ctx) { if (rf & 1) {
158
- const _r33 = i0.ɵɵgetCurrentView();
159
- i0.ɵɵelementStart(0, "kendo-dropdownlist", 13);
160
- i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_5_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r33); const ctx_r32 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r32.Value, $event) || (ctx_r32.Value = $event); return i0.ɵɵresetView($event); });
157
+ const _r7 = i0.ɵɵgetCurrentView();
158
+ i0.ɵɵelementStart(0, "kendo-dropdownlist", 20);
159
+ i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_5_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
161
160
  i0.ɵɵelementEnd();
162
161
  } if (rf & 2) {
163
- const ctx_r20 = i0.ɵɵnextContext(4);
164
- i0.ɵɵproperty("data", ctx_r20.PossibleValues);
165
- i0.ɵɵtwoWayProperty("ngModel", ctx_r20.Value);
162
+ const ctx_r0 = i0.ɵɵnextContext(4);
163
+ i0.ɵɵproperty("data", ctx_r0.PossibleValues);
164
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r0.Value);
166
165
  } }
167
166
  function MJFormField_Conditional_0_div_1_Conditional_3_Case_6_Template(rf, ctx) { if (rf & 1) {
168
- const _r35 = i0.ɵɵgetCurrentView();
169
- i0.ɵɵelementStart(0, "kendo-combobox", 14);
170
- i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_6_Template_kendo_combobox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r35); const ctx_r34 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r34.Value, $event) || (ctx_r34.Value = $event); return i0.ɵɵresetView($event); });
167
+ const _r8 = i0.ɵɵgetCurrentView();
168
+ i0.ɵɵelementStart(0, "kendo-combobox", 21);
169
+ i0.ɵɵtwoWayListener("ngModelChange", function MJFormField_Conditional_0_div_1_Conditional_3_Case_6_Template_kendo_combobox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r0 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r0.Value, $event) || (ctx_r0.Value = $event); return i0.ɵɵresetView($event); });
171
170
  i0.ɵɵelementEnd();
172
171
  } if (rf & 2) {
173
- const ctx_r21 = i0.ɵɵnextContext(4);
174
- i0.ɵɵproperty("data", ctx_r21.PossibleValues)("allowCustom", true);
175
- i0.ɵɵtwoWayProperty("ngModel", ctx_r21.Value);
172
+ const ctx_r0 = i0.ɵɵnextContext(4);
173
+ i0.ɵɵproperty("data", ctx_r0.PossibleValues)("allowCustom", true);
174
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r0.Value);
176
175
  } }
177
176
  function MJFormField_Conditional_0_div_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
178
- i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_1_Conditional_3_Case_0_Template, 1, 1)(1, MJFormField_Conditional_0_div_1_Conditional_3_Case_1_Template, 1, 3)(2, MJFormField_Conditional_0_div_1_Conditional_3_Case_2_Template, 1, 1)(3, MJFormField_Conditional_0_div_1_Conditional_3_Case_3_Template, 1, 1)(4, MJFormField_Conditional_0_div_1_Conditional_3_Case_4_Template, 1, 1)(5, MJFormField_Conditional_0_div_1_Conditional_3_Case_5_Template, 1, 2)(6, MJFormField_Conditional_0_div_1_Conditional_3_Case_6_Template, 1, 3);
177
+ i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_1_Conditional_3_Case_0_Template, 1, 1, "kendo-textbox", 10)(1, MJFormField_Conditional_0_div_1_Conditional_3_Case_1_Template, 1, 3, "kendo-textarea", 11)(2, MJFormField_Conditional_0_div_1_Conditional_3_Case_2_Template, 1, 1, "kendo-numerictextbox", 12)(3, MJFormField_Conditional_0_div_1_Conditional_3_Case_3_Template, 1, 1, "kendo-datepicker", 12)(4, MJFormField_Conditional_0_div_1_Conditional_3_Case_4_Template, 1, 1, "input", 13)(5, MJFormField_Conditional_0_div_1_Conditional_3_Case_5_Template, 1, 2, "kendo-dropdownlist", 14)(6, MJFormField_Conditional_0_div_1_Conditional_3_Case_6_Template, 1, 3, "kendo-combobox", 15);
179
178
  } if (rf & 2) {
180
- const ctx_r14 = i0.ɵɵnextContext(3);
181
- let MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp;
182
- i0.ɵɵconditional(0, (MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp = ctx_r14.Type) === "textbox" ? 0 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "textarea" ? 1 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "numerictextbox" ? 2 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "datepicker" ? 3 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "checkbox" ? 4 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "dropdownlist" ? 5 : MJFormField_Conditional_0_div_1_Conditional_3_contFlowTmp === "combobox" ? 6 : -1);
179
+ let tmp_3_0;
180
+ const ctx_r0 = i0.ɵɵnextContext(3);
181
+ i0.ɵɵconditional((tmp_3_0 = ctx_r0.Type) === "textbox" ? 0 : tmp_3_0 === "textarea" ? 1 : tmp_3_0 === "numerictextbox" ? 2 : tmp_3_0 === "datepicker" ? 3 : tmp_3_0 === "checkbox" ? 4 : tmp_3_0 === "dropdownlist" ? 5 : tmp_3_0 === "combobox" ? 6 : -1);
183
182
  } }
184
183
  function MJFormField_Conditional_0_div_1_Template(rf, ctx) { if (rf & 1) {
185
- i0.ɵɵelementStart(0, "div", 1);
186
- i0.ɵɵtemplate(1, MJFormField_Conditional_0_div_1_Conditional_1_Template, 2, 1, "label")(2, MJFormField_Conditional_0_div_1_Conditional_2_Template, 1, 2, "mj-link-field", 8)(3, MJFormField_Conditional_0_div_1_Conditional_3_Template, 7, 1);
184
+ i0.ɵɵelementStart(0, "div", 2);
185
+ i0.ɵɵtemplate(1, MJFormField_Conditional_0_div_1_Conditional_1_Template, 2, 1, "label")(2, MJFormField_Conditional_0_div_1_Conditional_2_Template, 1, 2, "mj-link-field", 9)(3, MJFormField_Conditional_0_div_1_Conditional_3_Template, 7, 1);
187
186
  i0.ɵɵelementEnd();
188
187
  } if (rf & 2) {
189
- const ctx_r2 = i0.ɵɵnextContext(2);
188
+ const ctx_r0 = i0.ɵɵnextContext(2);
190
189
  i0.ɵɵadvance();
191
- i0.ɵɵconditional(1, ctx_r2.ShowLabel ? 1 : -1);
190
+ i0.ɵɵconditional(ctx_r0.ShowLabel ? 1 : -1);
192
191
  i0.ɵɵadvance();
193
- i0.ɵɵconditional(2, ctx_r2.FieldInfo && ctx_r2.FieldInfo.RelatedEntity && ctx_r2.FieldInfo.RelatedEntity.length > 0 ? 2 : 3);
192
+ i0.ɵɵconditional(ctx_r0.FieldInfo && ctx_r0.FieldInfo.RelatedEntity && ctx_r0.FieldInfo.RelatedEntity.length > 0 ? 2 : 3);
194
193
  } }
195
194
  function MJFormField_Conditional_0_Template(rf, ctx) { if (rf & 1) {
196
- i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_0_Template, 6, 2, "div", 0)(1, MJFormField_Conditional_0_div_1_Template, 4, 2, "div", 0);
195
+ i0.ɵɵtemplate(0, MJFormField_Conditional_0_div_0_Template, 6, 2, "div", 1)(1, MJFormField_Conditional_0_div_1_Template, 4, 2, "div", 1);
197
196
  } if (rf & 2) {
198
197
  const ctx_r0 = i0.ɵɵnextContext();
199
198
  i0.ɵɵproperty("ngIf", !ctx_r0.EditMode || ctx_r0.IsFieldReadOnly);
@@ -213,7 +212,7 @@ export class MJFormField extends BaseRecordComponent {
213
212
  get DisplayName() {
214
213
  var _a;
215
214
  if (!this._displayName) {
216
- const ef = (_a = this.record.Fields.find(f => f.CodeName == this.FieldName)) === null || _a === void 0 ? void 0 : _a.EntityFieldInfo;
215
+ const ef = (_a = this.record.Fields.find((f) => f.CodeName == this.FieldName)) === null || _a === void 0 ? void 0 : _a.EntityFieldInfo;
217
216
  if (ef)
218
217
  this._displayName = ef.DisplayNameOrName;
219
218
  else
@@ -236,9 +235,9 @@ export class MJFormField extends BaseRecordComponent {
236
235
  get PossibleValues() {
237
236
  var _a;
238
237
  if (!this._possibleValues) {
239
- const ef = (_a = this.record.Fields.find(f => f.CodeName == this.FieldName)) === null || _a === void 0 ? void 0 : _a.EntityFieldInfo;
238
+ const ef = (_a = this.record.Fields.find((f) => f.CodeName == this.FieldName)) === null || _a === void 0 ? void 0 : _a.EntityFieldInfo;
240
239
  if (ef && ef.ValueListType !== 'None')
241
- this._possibleValues = ef.EntityFieldValues.map(v => v.Value);
240
+ this._possibleValues = ef.EntityFieldValues.map((v) => v.Value);
242
241
  else
243
242
  this._possibleValues = [];
244
243
  }
@@ -250,7 +249,7 @@ export class MJFormField extends BaseRecordComponent {
250
249
  }
251
250
  get Value() {
252
251
  const v = this.record.Get(this.FieldName);
253
- const f = this.record.Fields.find(f => f.CodeName == this.FieldName);
252
+ const f = this.record.Fields.find((f) => f.CodeName == this.FieldName);
254
253
  if (v === null || v === undefined) {
255
254
  // check to see if this is a text type of field
256
255
  if ((f === null || f === void 0 ? void 0 : f.EntityFieldInfo.TSType) === EntityFieldTSType.String)
@@ -270,14 +269,14 @@ export class MJFormField extends BaseRecordComponent {
270
269
  * Returns true if the field is read only. This is determined by the ReadOnly property in the entity field metadata.
271
270
  */
272
271
  get IsFieldReadOnly() {
273
- const f = this.record.Fields.find(f => f.CodeName == this.FieldName);
272
+ const f = this.record.Fields.find((f) => f.CodeName == this.FieldName);
274
273
  if (f)
275
274
  return f.ReadOnly;
276
275
  else
277
276
  throw new Error(`Field ${this.FieldName} not found in record ${this.record.EntityInfo.Name}`);
278
277
  }
279
278
  get FieldInfo() {
280
- const f = this.record.Fields.find(f => f.Name == this.FieldName);
279
+ const f = this.record.Fields.find((f) => f.Name == this.FieldName);
281
280
  if (f)
282
281
  return f.EntityFieldInfo;
283
282
  else
@@ -296,7 +295,7 @@ export class MJFormField extends BaseRecordComponent {
296
295
  */
297
296
  this.FieldName = '';
298
297
  /**
299
- * The type of control to be rendered for the field. The default is 'textbox'. Other possible values are 'textarea', 'numerictextbox', 'datepicker', 'checkbox', 'dropdownlist', 'combobox'.
298
+ * The type of control to be rendered for the field. The default is 'textbox'. Other possible values are 'textarea', 'numerictextbox', 'datepicker', 'checkbox', 'dropdownlist', 'combobox', 'code'.
300
299
  */
301
300
  this.Type = 'textbox';
302
301
  /**
@@ -308,6 +307,7 @@ export class MJFormField extends BaseRecordComponent {
308
307
  * If set to false, the label for the field will not be shown. The default is true.
309
308
  */
310
309
  this.ShowLabel = true;
310
+ this.languages = languages;
311
311
  this._displayName = null;
312
312
  this._possibleValues = null;
313
313
  this.ValueChange = new EventEmitter();
@@ -343,14 +343,14 @@ MJFormField.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJFormField, se
343
343
  } if (rf & 2) {
344
344
  let _t;
345
345
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.markdown = _t.first);
346
- } }, inputs: { record: "record", EditMode: "EditMode", FieldName: "FieldName", Type: "Type", LinkType: "LinkType", ShowLabel: "ShowLabel", DisplayName: "DisplayName", PossibleValues: "PossibleValues", Value: "Value" }, outputs: { ValueChange: "ValueChange" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "record-form-row", 4, "ngIf"], [1, "record-form-row"], [4, "ngIf"], [3, "data"], ["markdown", ""], ["mjEmailLink", "", 3, "field"], ["mjWebLink", "", 3, "field"], ["mjFieldLink", "", 3, "record", "fieldName"], [3, "record", "FieldName"], [3, "ngModel", "ngModelChange"], ["mjFillContainer", "", 3, "ngModel", "fillWidth", "fillHeight", "ngModelChange"], [3, "value", "valueChange"], ["type", "checkbox", "kendoCheckBox", "", 3, "ngModel", "ngModelChange"], [3, "data", "ngModel", "ngModelChange"], [3, "data", "allowCustom", "ngModel", "ngModelChange"]], template: function MJFormField_Template(rf, ctx) { if (rf & 1) {
346
+ } }, inputs: { record: "record", EditMode: "EditMode", FieldName: "FieldName", Type: "Type", LinkType: "LinkType", ShowLabel: "ShowLabel", DisplayName: "DisplayName", PossibleValues: "PossibleValues", Value: "Value" }, outputs: { ValueChange: "ValueChange" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["markdown", ""], ["class", "record-form-row", 4, "ngIf"], [1, "record-form-row"], [4, "ngIf"], ["mjEmailLink", "", 3, "field"], ["mjWebLink", "", 3, "field"], ["mjFieldLink", "", 3, "record", "fieldName"], [3, "value", "readonly", "languages", "language"], [3, "data"], [3, "record", "FieldName"], [3, "ngModel"], ["mjFillContainer", "", 3, "ngModel", "fillWidth", "fillHeight"], [3, "value"], ["type", "checkbox", "kendoCheckBox", "", 3, "ngModel"], [3, "data", "ngModel"], [3, "data", "allowCustom", "ngModel"], [3, "ngModelChange", "ngModel"], ["mjFillContainer", "", 3, "ngModelChange", "ngModel", "fillWidth", "fillHeight"], [3, "valueChange", "value"], ["type", "checkbox", "kendoCheckBox", "", 3, "ngModelChange", "ngModel"], [3, "ngModelChange", "data", "ngModel"], [3, "ngModelChange", "data", "allowCustom", "ngModel"]], template: function MJFormField_Template(rf, ctx) { if (rf & 1) {
347
347
  i0.ɵɵtemplate(0, MJFormField_Conditional_0_Template, 2, 2);
348
348
  } if (rf & 2) {
349
- i0.ɵɵconditional(0, ctx.record.IsSaved || !ctx.IsFieldReadOnly ? 0 : -1);
350
- } }, dependencies: [i1.NgIf, i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel, i3.TextAreaComponent, i3.TextBoxComponent, i3.NumericTextBoxComponent, i3.CheckBoxDirective, i4.DatePickerComponent, i5.ComboBoxComponent, i5.DropDownListComponent, i6.EmailLink, i6.FieldLink, i6.WebLink, i7.FillContainer, i8.MarkdownComponent, i9.MJLinkField], styles: [".record-form-row[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: start;\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n align-items: start; \n\n} \n \n \n.record-form-row[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-weight: bold;\n padding-right: 10px;\n width: 240px;\n margin-bottom: 0;\n align-self: start; \n\n}\n\n\n\n\n\n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > p[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h1[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h2[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h3[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h4[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%], .record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%] {\n margin:0 !important;\n}\n\nmarkdown[_ngcontent-%COMP%] {\n font-size: 1rem; \n\n}\n\n\n@media (min-width: 768px) {\n .record-form-row[_ngcontent-%COMP%] {\n display: grid; \n\n grid-template-columns: auto 1fr;\n align-items: start; \n\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n\n .record-form-row[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n width: 240px;\n margin-bottom: 0;\n align-self: start; \n\n }\n}"] });
349
+ i0.ɵɵconditional(ctx.record.IsSaved || !ctx.IsFieldReadOnly ? 0 : -1);
350
+ } }, dependencies: [i1.NgIf, i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel, i3.TextAreaComponent, i3.TextBoxComponent, i3.NumericTextBoxComponent, i3.CheckBoxDirective, i4.DatePickerComponent, i5.ComboBoxComponent, i5.DropDownListComponent, i6.EmailLink, i6.FieldLink, i6.WebLink, i7.FillContainer, i8.CodeEditorComponent, i9.MarkdownComponent, i10.MJLinkField], styles: [".record-form-row[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: start;\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n align-items: start; \n\n} \n \n \n.record-form-row[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-weight: bold;\n padding-right: 10px;\n width: 240px;\n margin-bottom: 0;\n align-self: start; \n\n}\n\n\n\n\n\n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > p[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h1[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h2[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h3[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h4[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%], \n.record-form-row[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%] {\n margin:0 !important;\n}\n\nmarkdown[_ngcontent-%COMP%] {\n font-size: 1rem; \n\n}\n\n\n@media (min-width: 768px) {\n .record-form-row[_ngcontent-%COMP%] {\n display: grid; \n\n grid-template-columns: auto 1fr;\n align-items: start; \n\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n\n .record-form-row[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n width: 240px;\n margin-bottom: 0;\n align-self: start; \n\n }\n}"] });
351
351
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MJFormField, [{
352
352
  type: Component,
353
- args: [{ selector: 'mj-form-field', template: "<!-- \n Using a blend of *ngIf and the new @switch control flow because of a bug in early Angular 17 where \n the @if wrapping the @switch didn't fully remove elements when swtiching back and forth. In the future if Angular fixes the bug\n we can get rid of the *ngIf outer div blocks and instead use @if and contain the @switch within the same div block.\n-->\n@if (record.IsSaved || !IsFieldReadOnly) {\n <!-- We only render a field if the record is either saved, or the field is editable. Meaning, for NEW records, we only show editable fields -->\n <div class=\"record-form-row\" *ngIf=\"!EditMode || IsFieldReadOnly\">\n <label *ngIf=\"ShowLabel\">{{DisplayName}}</label>\n @switch (LinkType) {\n @case ('None') {\n @if (ExtendedType === 'Code') {\n <pre>{{record.Get(FieldName)}}</pre>\n }\n @else if (FieldInfo.Length === -1) {\n <!-- this is a varchar(max) type of field -->\n <markdown #markdown [data]=\"record.Get(FieldName)\"></markdown>\n <!-- <span [innerHTML]=\"record.Get(FieldName) | formatText\"></span> -->\n }\n @else {\n <span>{{FormatValue(FieldName, 0)}}</span>\n }\n }\n @case ('Email') {\n <span mjEmailLink [field]=\"record.GetFieldByName(FieldName)\" >{{FormatValue(FieldName, 0)}}</span>\n }\n @case ('URL') {\n <span mjWebLink [field]=\"record.GetFieldByName(FieldName)\" >{{FormatValue(FieldName, 0)}}</span>\n }\n @case ('Record') {\n <span mjFieldLink [record]=\"record\" [fieldName]=\"FieldName\" >{{FormatValue(FieldName, 0)}}</span>\n }\n }\n </div> \n <div class=\"record-form-row\" *ngIf=\"EditMode && !IsFieldReadOnly\">\n @if (ShowLabel) {\n <label>{{DisplayName}}</label>\n }\n @if (FieldInfo && FieldInfo.RelatedEntity && FieldInfo.RelatedEntity.length > 0) {\n <!-- Foreign Key Link here -->\n <mj-link-field [record]=\"record\" [FieldName]=\"FieldName\"></mj-link-field> \n }\n @else {\n <!-- Not a foreign key -->\n @switch (Type) {\n @case ('textbox') {\n <kendo-textbox [(ngModel)]=\"Value\" /> \n }\n @case ('textarea') {\n <kendo-textarea [(ngModel)]=\"Value\" mjFillContainer [fillWidth]=\"ShowLabel ? false : true\" [fillHeight]=\"ShowLabel ? false : true\" ></kendo-textarea>\n }\n @case ('numerictextbox') {\n <kendo-numerictextbox [(value)]=\"Value\" /> \n }\n @case ('datepicker') {\n <kendo-datepicker [(value)]=\"Value\"></kendo-datepicker>\n }\n @case ('checkbox') {\n <input type=\"checkbox\" [(ngModel)]=\"Value\" kendoCheckBox /> \n }\n @case ('dropdownlist') {\n <kendo-dropdownlist [data]=\"PossibleValues\" [(ngModel)]=\"Value\"></kendo-dropdownlist> \n }\n @case ('combobox') {\n <kendo-combobox [data]=\"PossibleValues\" [allowCustom]=\"true\" [(ngModel)]=\"Value\"></kendo-combobox>\n }\n } \n }\n </div> \n}", styles: [".record-form-row {\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: start;\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n align-items: start; /* Ensure items are aligned at the top */\n} \n \n \n.record-form-row label {\n font-weight: bold;\n padding-right: 10px;\n width: 240px;\n margin-bottom: 0;\n align-self: start; /* Align the label to the start (top) */\n}\n\n/*\n Eliminate the default margin and padding for the markdown elements\n */\n.record-form-row markdown > p,\n.record-form-row markdown > h1,\n.record-form-row markdown > h2,\n.record-form-row markdown > h3,\n.record-form-row markdown > h4,\n.record-form-row markdown > h5,\n.record-form-row markdown > h6 {\n margin:0 !important;\n}\n\nmarkdown {\n font-size: 1rem; /* Adjust this value to match your app's regular text size */\n}\n\n\n@media (min-width: 768px) {\n .record-form-row {\n display: grid; /* Ensure grid display is used for larger screens as well */\n grid-template-columns: auto 1fr;\n align-items: start; /* Keep the alignment at the top */\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n\n .record-form-row label {\n width: 240px;\n margin-bottom: 0;\n align-self: start; /* Ensure the label is aligned to the top */\n }\n}\n "] }]
353
+ args: [{ selector: 'mj-form-field', template: "<!--\n Using a blend of *ngIf and the new @switch control flow because of a bug in early Angular 17 where\n the @if wrapping the @switch didn't fully remove elements when swtiching back and forth. In the future if Angular fixes the bug\n we can get rid of the *ngIf outer div blocks and instead use @if and contain the @switch within the same div block.\n-->\n@if (record.IsSaved || !IsFieldReadOnly) {\n <!-- We only render a field if the record is either saved, or the field is editable. Meaning, for NEW records, we only show editable fields -->\n <div class=\"record-form-row\" *ngIf=\"!EditMode || IsFieldReadOnly\">\n <label *ngIf=\"ShowLabel\">{{DisplayName}}</label>\n @switch (LinkType) {\n @case ('None') {\n @if (ExtendedType === 'Code') {\n <mj-code-editor [value]=\"record.Get(FieldName)\" [readonly]=\"true\" [languages]=\"languages\" [language]=\"'JavaScript'\"></mj-code-editor>\n }\n @else if (FieldInfo.Length === -1) {\n <!-- this is a varchar(max) type of field -->\n <markdown #markdown [data]=\"record.Get(FieldName)\"></markdown>\n <!-- <span [innerHTML]=\"record.Get(FieldName) | formatText\"></span> -->\n }\n @else {\n <span>{{FormatValue(FieldName, 0)}}</span>\n }\n }\n @case ('Email') {\n <span mjEmailLink [field]=\"record.GetFieldByName(FieldName)\" >{{FormatValue(FieldName, 0)}}</span>\n }\n @case ('URL') {\n <span mjWebLink [field]=\"record.GetFieldByName(FieldName)\" >{{FormatValue(FieldName, 0)}}</span>\n }\n @case ('Record') {\n <span mjFieldLink [record]=\"record\" [fieldName]=\"FieldName\" >{{FormatValue(FieldName, 0)}}</span>\n }\n }\n </div>\n <div class=\"record-form-row\" *ngIf=\"EditMode && !IsFieldReadOnly\">\n @if (ShowLabel) {\n <label>{{DisplayName}}</label>\n }\n @if (FieldInfo && FieldInfo.RelatedEntity && FieldInfo.RelatedEntity.length > 0) {\n <!-- Foreign Key Link here -->\n <mj-link-field [record]=\"record\" [FieldName]=\"FieldName\"></mj-link-field>\n }\n @else {\n <!-- Not a foreign key -->\n @switch (Type) {\n @case ('textbox') {\n <kendo-textbox [(ngModel)]=\"Value\" />\n }\n @case ('textarea') {\n <kendo-textarea [(ngModel)]=\"Value\" mjFillContainer [fillWidth]=\"ShowLabel ? false : true\" [fillHeight]=\"ShowLabel ? false : true\" ></kendo-textarea>\n }\n @case ('numerictextbox') {\n <kendo-numerictextbox [(value)]=\"Value\" />\n }\n @case ('datepicker') {\n <kendo-datepicker [(value)]=\"Value\"></kendo-datepicker>\n }\n @case ('checkbox') {\n <input type=\"checkbox\" [(ngModel)]=\"Value\" kendoCheckBox />\n }\n @case ('dropdownlist') {\n <kendo-dropdownlist [data]=\"PossibleValues\" [(ngModel)]=\"Value\"></kendo-dropdownlist>\n }\n @case ('combobox') {\n <kendo-combobox [data]=\"PossibleValues\" [allowCustom]=\"true\" [(ngModel)]=\"Value\"></kendo-combobox>\n }\n }\n }\n </div>\n}\n", styles: [".record-form-row {\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: start;\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n align-items: start; /* Ensure items are aligned at the top */\n} \n \n \n.record-form-row label {\n font-weight: bold;\n padding-right: 10px;\n width: 240px;\n margin-bottom: 0;\n align-self: start; /* Align the label to the start (top) */\n}\n\n/*\n Eliminate the default margin and padding for the markdown elements\n */\n.record-form-row markdown > p,\n.record-form-row markdown > h1,\n.record-form-row markdown > h2,\n.record-form-row markdown > h3,\n.record-form-row markdown > h4,\n.record-form-row markdown > h5,\n.record-form-row markdown > h6 {\n margin:0 !important;\n}\n\nmarkdown {\n font-size: 1rem; /* Adjust this value to match your app's regular text size */\n}\n\n\n@media (min-width: 768px) {\n .record-form-row {\n display: grid; /* Ensure grid display is used for larger screens as well */\n grid-template-columns: auto 1fr;\n align-items: start; /* Keep the alignment at the top */\n gap: 10px;\n margin-bottom: 12px;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n\n .record-form-row label {\n width: 240px;\n margin-bottom: 0;\n align-self: start; /* Ensure the label is aligned to the top */\n }\n}\n "] }]
354
354
  }], () => [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }], { record: [{
355
355
  type: Input
356
356
  }], EditMode: [{
@@ -18,25 +18,25 @@ import * as i3 from "@progress/kendo-angular-buttons";
18
18
  import * as i4 from "@progress/kendo-angular-inputs";
19
19
  const _c0 = ["inputBox"];
20
20
  function MJLinkField_ul_5_li_1_Template(rf, ctx) { if (rf & 1) {
21
- const _r5 = i0.ɵɵgetCurrentView();
21
+ const _r2 = i0.ɵɵgetCurrentView();
22
22
  i0.ɵɵelementStart(0, "li", 6);
23
- i0.ɵɵlistener("click", function MJLinkField_ul_5_li_1_Template_li_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r5); const record_r3 = restoredCtx.$implicit; const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.onRecordSelected(record_r3)); });
23
+ i0.ɵɵlistener("click", function MJLinkField_ul_5_li_1_Template_li_click_0_listener() { const record_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onRecordSelected(record_r3)); });
24
24
  i0.ɵɵtext(1);
25
25
  i0.ɵɵelementEnd();
26
26
  } if (rf & 2) {
27
27
  const record_r3 = ctx.$implicit;
28
- const ctx_r2 = i0.ɵɵnextContext(2);
28
+ const ctx_r3 = i0.ɵɵnextContext(2);
29
29
  i0.ɵɵadvance();
30
- i0.ɵɵtextInterpolate1(" ", ctx_r2.RelatedEntityNameField ? record_r3.Get(ctx_r2.RelatedEntityNameField) : "No Value", " ");
30
+ i0.ɵɵtextInterpolate1(" ", ctx_r3.RelatedEntityNameField ? record_r3.Get(ctx_r3.RelatedEntityNameField) : "No Value", " ");
31
31
  } }
32
32
  function MJLinkField_ul_5_Template(rf, ctx) { if (rf & 1) {
33
33
  i0.ɵɵelementStart(0, "ul", 4);
34
34
  i0.ɵɵtemplate(1, MJLinkField_ul_5_li_1_Template, 2, 1, "li", 5);
35
35
  i0.ɵɵelementEnd();
36
36
  } if (rf & 2) {
37
- const ctx_r1 = i0.ɵɵnextContext();
37
+ const ctx_r3 = i0.ɵɵnextContext();
38
38
  i0.ɵɵadvance();
39
- i0.ɵɵproperty("ngForOf", ctx_r1.matchingRecords);
39
+ i0.ɵɵproperty("ngForOf", ctx_r3.matchingRecords);
40
40
  } }
41
41
  /**
42
42
  * This component is used to automatically generate a UI for any field in a given BaseEntity object. The CodeGen tool will generate forms and form sections that
@@ -89,8 +89,8 @@ export class MJLinkField extends BaseRecordComponent {
89
89
  });
90
90
  }
91
91
  AttemptToLinkValue() {
92
- var _a;
93
92
  return __awaiter(this, void 0, void 0, function* () {
93
+ var _a;
94
94
  const relatedEntityID = (_a = this.EntityField) === null || _a === void 0 ? void 0 : _a.RelatedEntityID;
95
95
  const md = new Metadata();
96
96
  this.RecordLinked = false;
@@ -134,8 +134,8 @@ export class MJLinkField extends BaseRecordComponent {
134
134
  this.showMatchingRecords = false;
135
135
  }
136
136
  fetchMatchingRecords(query) {
137
- var _a, _b;
138
137
  return __awaiter(this, void 0, void 0, function* () {
138
+ var _a, _b;
139
139
  const relatedEntityID = (_a = this.EntityField) === null || _a === void 0 ? void 0 : _a.RelatedEntityID;
140
140
  const md = new Metadata();
141
141
  this.RecordLinked = false;
@@ -174,12 +174,13 @@ MJLinkField.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJLinkField, se
174
174
  } if (rf & 2) {
175
175
  let _t;
176
176
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.inputBox = _t.first);
177
- } }, inputs: { record: "record", FieldName: "FieldName", RecordName: "RecordName" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 6, vars: 3, consts: [["type", "text", "kendoTextBox", "", 1, "input-box", 3, "ngClass", "ngModel", "ngModelChange"], ["inputBox", ""], ["kendoButton", "", 3, "click"], ["class", "matching-records", 4, "ngIf"], [1, "matching-records"], [3, "click", 4, "ngFor", "ngForOf"], [3, "click"]], template: function MJLinkField_Template(rf, ctx) { if (rf & 1) {
178
- i0.ɵɵelementStart(0, "div")(1, "input", 0, 1);
179
- i0.ɵɵtwoWayListener("ngModelChange", function MJLinkField_Template_input_ngModelChange_1_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.RecordName, $event) || (ctx.RecordName = $event); return $event; });
177
+ } }, inputs: { record: "record", FieldName: "FieldName", RecordName: "RecordName" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 6, vars: 3, consts: [["inputBox", ""], ["type", "text", "kendoTextBox", "", 1, "input-box", 3, "ngModelChange", "ngClass", "ngModel"], ["kendoButton", "", 3, "click"], ["class", "matching-records", 4, "ngIf"], [1, "matching-records"], [3, "click", 4, "ngFor", "ngForOf"], [3, "click"]], template: function MJLinkField_Template(rf, ctx) { if (rf & 1) {
178
+ const _r1 = i0.ɵɵgetCurrentView();
179
+ i0.ɵɵelementStart(0, "div")(1, "input", 1, 0);
180
+ i0.ɵɵtwoWayListener("ngModelChange", function MJLinkField_Template_input_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r1); i0.ɵɵtwoWayBindingSet(ctx.RecordName, $event) || (ctx.RecordName = $event); return i0.ɵɵresetView($event); });
180
181
  i0.ɵɵelementEnd();
181
182
  i0.ɵɵelementStart(3, "button", 2);
182
- i0.ɵɵlistener("click", function MJLinkField_Template_button_click_3_listener() { return ctx.onClearClicked(); });
183
+ i0.ɵɵlistener("click", function MJLinkField_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onClearClicked()); });
183
184
  i0.ɵɵtext(4, "Clear");
184
185
  i0.ɵɵelementEnd();
185
186
  i0.ɵɵtemplate(5, MJLinkField_ul_5_Template, 2, 1, "ul", 3);
@@ -50,9 +50,9 @@ SectionLoaderComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Sect
50
50
  } if (rf & 2) {
51
51
  let _t;
52
52
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.container = _t.first);
53
- } }, inputs: { Entity: "Entity", Section: "Section", record: "record", EditMode: "EditMode" }, outputs: { LoadComplete: "LoadComplete" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 0, consts: [[1, "form-section"], ["container", ""]], template: function SectionLoaderComponent_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵelementStart(0, "div", 0);
55
- i0.ɵɵtemplate(1, SectionLoaderComponent_ng_template_1_Template, 0, 0, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
53
+ } }, inputs: { Entity: "Entity", Section: "Section", record: "record", EditMode: "EditMode" }, outputs: { LoadComplete: "LoadComplete" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 0, consts: [["container", ""], [1, "form-section"]], template: function SectionLoaderComponent_Template(rf, ctx) { if (rf & 1) {
54
+ i0.ɵɵelementStart(0, "div", 1);
55
+ i0.ɵɵtemplate(1, SectionLoaderComponent_ng_template_1_Template, 0, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
56
56
  i0.ɵɵelementEnd();
57
57
  } }, encapsulation: 2 });
58
58
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SectionLoaderComponent, [{
package/dist/module.d.ts CHANGED
@@ -15,10 +15,11 @@ import * as i13 from "@progress/kendo-angular-dialog";
15
15
  import * as i14 from "@progress/kendo-angular-indicators";
16
16
  import * as i15 from "@memberjunction/ng-container-directives";
17
17
  import * as i16 from "@memberjunction/ng-shared";
18
- import * as i17 from "ngx-markdown";
18
+ import * as i17 from "@memberjunction/ng-code-editor";
19
+ import * as i18 from "ngx-markdown";
19
20
  export declare class BaseFormsModule {
20
21
  static ɵfac: i0.ɵɵFactoryDeclaration<BaseFormsModule, never>;
21
- static ɵmod: i0.ɵɵNgModuleDeclaration<BaseFormsModule, [typeof i1.SectionLoaderComponent, typeof i2.MJFormField, typeof i3.MJLinkField], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i6.MJTabStripModule, typeof i7.RecordChangesModule, typeof i8.ButtonsModule, typeof i9.InputsModule, typeof i10.DateInputsModule, typeof i11.DropDownsModule, typeof i12.LinkDirectivesModule, typeof i13.DialogsModule, typeof i14.IndicatorsModule, typeof i15.ContainerDirectivesModule, typeof i16.MemberJunctionSharedModule, typeof i17.MarkdownModule], [typeof i1.SectionLoaderComponent, typeof i2.MJFormField, typeof i3.MJLinkField]>;
22
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BaseFormsModule, [typeof i1.SectionLoaderComponent, typeof i2.MJFormField, typeof i3.MJLinkField], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i6.MJTabStripModule, typeof i7.RecordChangesModule, typeof i8.ButtonsModule, typeof i9.InputsModule, typeof i10.DateInputsModule, typeof i11.DropDownsModule, typeof i12.LinkDirectivesModule, typeof i13.DialogsModule, typeof i14.IndicatorsModule, typeof i15.ContainerDirectivesModule, typeof i16.MemberJunctionSharedModule, typeof i17.CodeEditorModule, typeof i18.MarkdownModule], [typeof i1.SectionLoaderComponent, typeof i2.MJFormField, typeof i3.MJLinkField]>;
22
23
  static ɵinj: i0.ɵɵInjectorDeclaration<BaseFormsModule>;
23
24
  }
24
25
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAyBA,qBA4Ba,eAAe;yCAAf,eAAe;0CAAf,eAAe;0CAAf,eAAe;CAAI"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AA0BA,qBA6Ba,eAAe;yCAAf,eAAe;0CAAf,eAAe;0CAAf,eAAe;CAAI"}
package/dist/module.js CHANGED
@@ -15,6 +15,7 @@ import { SectionLoaderComponent } from './lib/section-loader-component';
15
15
  import { MJFormField } from './lib/base-field-component';
16
16
  import { ContainerDirectivesModule } from '@memberjunction/ng-container-directives';
17
17
  import { MemberJunctionSharedModule } from '@memberjunction/ng-shared';
18
+ import { CodeEditorModule } from '@memberjunction/ng-code-editor';
18
19
  // Markdown
19
20
  import { MarkdownModule } from 'ngx-markdown';
20
21
  import { MJLinkField } from './lib/link-field.component';
@@ -37,6 +38,7 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
37
38
  IndicatorsModule,
38
39
  ContainerDirectivesModule,
39
40
  MemberJunctionSharedModule,
41
+ CodeEditorModule,
40
42
  MarkdownModule.forRoot()] });
41
43
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseFormsModule, [{
42
44
  type: NgModule,
@@ -60,6 +62,7 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
60
62
  IndicatorsModule,
61
63
  ContainerDirectivesModule,
62
64
  MemberJunctionSharedModule,
65
+ CodeEditorModule,
63
66
  MarkdownModule.forRoot()
64
67
  ],
65
68
  exports: [
@@ -83,6 +86,7 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
83
86
  DialogsModule,
84
87
  IndicatorsModule,
85
88
  ContainerDirectivesModule,
86
- MemberJunctionSharedModule, i1.MarkdownModule], exports: [SectionLoaderComponent,
89
+ MemberJunctionSharedModule,
90
+ CodeEditorModule, i1.MarkdownModule], exports: [SectionLoaderComponent,
87
91
  MJFormField,
88
92
  MJLinkField] }); })();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-base-forms",
3
- "version": "1.5.2",
3
+ "version": "1.6.0",
4
4
  "description": "MemberJunction: Angular Base Form Components",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -15,29 +15,30 @@
15
15
  "author": "",
16
16
  "license": "ISC",
17
17
  "devDependencies": {
18
- "@angular/compiler": "~17.2.2",
19
- "@angular/compiler-cli": "~17.2.2"
18
+ "@angular/compiler": "18.0.2",
19
+ "@angular/compiler-cli": "18.0.2"
20
20
  },
21
21
  "peerDependencies": {
22
- "@angular/common": "~17.2.2",
23
- "@angular/core": "~17.2.2",
24
- "@angular/forms": "~17.2.2",
25
- "@angular/router": "~17.2.2"
22
+ "@angular/common": "18.0.2",
23
+ "@angular/core": "18.0.2",
24
+ "@angular/forms": "18.0.2",
25
+ "@angular/router": "18.0.2"
26
26
  },
27
27
  "dependencies": {
28
- "@memberjunction/global": "~1.5.2",
29
- "@memberjunction/core": "~1.5.2",
30
- "@memberjunction/ng-shared": "~1.5.2",
31
- "@memberjunction/ng-tabstrip": "~1.5.2",
32
- "@memberjunction/ng-link-directives": "~1.5.2",
33
- "@memberjunction/ng-container-directives": "~1.5.2",
34
- "@memberjunction/ng-record-changes": "~1.5.2",
35
- "@progress/kendo-angular-buttons": "~15.1.0",
36
- "@progress/kendo-angular-dropdowns": "~15.1.0",
37
- "@progress/kendo-angular-inputs": "~15.1.0",
38
- "@progress/kendo-angular-dateinputs": "~15.1.0",
39
- "@progress/kendo-angular-dialog": "~15.1.0",
40
- "ngx-markdown": "^17.1.1",
28
+ "@memberjunction/global": "1.6.0",
29
+ "@memberjunction/core": "1.6.0",
30
+ "@memberjunction/ng-code-editor": "1.6.0",
31
+ "@memberjunction/ng-shared": "1.6.0",
32
+ "@memberjunction/ng-tabstrip": "1.6.0",
33
+ "@memberjunction/ng-link-directives": "1.6.0",
34
+ "@memberjunction/ng-container-directives": "1.6.0",
35
+ "@memberjunction/ng-record-changes": "1.6.0",
36
+ "@progress/kendo-angular-buttons": "16.2.0",
37
+ "@progress/kendo-angular-dropdowns": "16.2.0",
38
+ "@progress/kendo-angular-inputs": "16.2.0",
39
+ "@progress/kendo-angular-dateinputs": "16.2.0",
40
+ "@progress/kendo-angular-dialog": "16.2.0",
41
+ "ngx-markdown": "18.0.0",
41
42
  "rxjs": "^7.8.1",
42
43
  "tslib": "^2.3.0"
43
44
  },