@bnsights/bbsf-controls 1.0.111 → 1.0.113

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.
Files changed (165) hide show
  1. package/README.md +9 -0
  2. package/bnsights-bbsf-controls-1.0.113.tgz +0 -0
  3. package/esm2022/lib/Shared/Components/app-base-component.mjs +11 -11
  4. package/esm2022/lib/Shared/Enums/StartView.mjs +1 -1
  5. package/esm2022/lib/Shared/Enums/map-enums.mjs +7 -7
  6. package/esm2022/lib/Shared/Models/Attribute.mjs +1 -1
  7. package/esm2022/lib/Shared/Models/AutocompleteOptions.mjs +9 -9
  8. package/esm2022/lib/Shared/Models/CalendarOptions.mjs +7 -7
  9. package/esm2022/lib/Shared/Models/CancelDTO.mjs +3 -3
  10. package/esm2022/lib/Shared/Models/CheckBoxOptions.mjs +3 -3
  11. package/esm2022/lib/Shared/Models/ConfirmationModalOptions.mjs +16 -16
  12. package/esm2022/lib/Shared/Models/ControlOptionsBase.mjs +5 -5
  13. package/esm2022/lib/Shared/Models/DatePickerOptions.mjs +24 -0
  14. package/esm2022/lib/Shared/Models/DropdownOptions.mjs +6 -6
  15. package/esm2022/lib/Shared/Models/EnglishArabicDTO.mjs +3 -3
  16. package/esm2022/lib/Shared/Models/FileDTO.mjs +22 -2
  17. package/esm2022/lib/Shared/Models/FileUploadModel.mjs +1 -1
  18. package/esm2022/lib/Shared/Models/FileUploadOptions.mjs +5 -3
  19. package/esm2022/lib/Shared/Models/FilterItem.mjs +2 -2
  20. package/esm2022/lib/Shared/Models/FormOptions.mjs +13 -13
  21. package/esm2022/lib/Shared/Models/HtmlEditorOptions.mjs +3 -3
  22. package/esm2022/lib/Shared/Models/ImageUploadOptions.mjs +4 -4
  23. package/esm2022/lib/Shared/Models/MapAutoCompleteOptions.mjs +1 -3
  24. package/esm2022/lib/Shared/Models/MapAutocompleteDTO.mjs +2 -2
  25. package/esm2022/lib/Shared/Models/MultiLingualHtmlEditorOptions.mjs +2 -2
  26. package/esm2022/lib/Shared/Models/MultiLingualTextAreaOptions.mjs +2 -2
  27. package/esm2022/lib/Shared/Models/{MultilingualTextBoxOptions.mjs → MultiLingualTextBoxOptions.mjs} +5 -5
  28. package/esm2022/lib/Shared/Models/MultilingualControlOptionsBase.mjs +6 -6
  29. package/esm2022/lib/Shared/Models/MultipleFileUploadModel.mjs +5 -5
  30. package/esm2022/lib/Shared/Models/PagingOptions.mjs +22 -22
  31. package/esm2022/lib/Shared/Models/PhoneOptions.mjs +4 -4
  32. package/esm2022/lib/Shared/Models/ProfileImageUploadOptions.mjs +3 -3
  33. package/esm2022/lib/Shared/Models/ProfilePictureDTO.mjs +1 -1
  34. package/esm2022/lib/Shared/Models/RadioButtonItem.mjs +1 -1
  35. package/esm2022/lib/Shared/Models/RadioButtonOptions.mjs +1 -1
  36. package/esm2022/lib/Shared/Models/RangeNumber.mjs +1 -1
  37. package/esm2022/lib/Shared/Models/Recaptcha.mjs +2 -2
  38. package/esm2022/lib/Shared/Models/RecaptchaOptions.mjs +9 -9
  39. package/esm2022/lib/Shared/Models/RepeaterField.mjs +1 -1
  40. package/esm2022/lib/Shared/Models/RepeaterOptions.mjs +9 -9
  41. package/esm2022/lib/Shared/Models/TagsInputDTO.mjs +1 -1
  42. package/esm2022/lib/Shared/Models/TagsInputOptions.mjs +19 -19
  43. package/esm2022/lib/Shared/Models/TextAreaOptions.mjs +1 -1
  44. package/esm2022/lib/Shared/Models/TextBoxOptions.mjs +9 -9
  45. package/esm2022/lib/Shared/Models/{ToggleslideOptions.mjs → ToggleSlideOptions.mjs} +2 -2
  46. package/esm2022/lib/Shared/Models/UploadPersonalImage.mjs +3 -3
  47. package/esm2022/lib/Shared/Models/filter-options.mjs +5 -5
  48. package/esm2022/lib/Shared/Models/page-header-options.mjs +32 -32
  49. package/esm2022/lib/Shared/services/ControlUtility.mjs +37 -37
  50. package/esm2022/lib/Shared/services/GlobalSettings.service.mjs +9 -9
  51. package/esm2022/lib/Shared/services/file-upload.service.mjs +29 -0
  52. package/esm2022/lib/controls/AutocompleteTextBox/AutocompleteTextBox.component.mjs +81 -81
  53. package/esm2022/lib/controls/Calendar/Calendar.component.mjs +40 -40
  54. package/esm2022/lib/controls/CheckBox/CheckBox.component.mjs +35 -35
  55. package/esm2022/lib/controls/ConfirmationModal/ConfirmationModal.component.mjs +30 -30
  56. package/esm2022/lib/controls/DateTimePicker/DateTimePicker.component.mjs +98 -97
  57. package/esm2022/lib/controls/DropdownList/DropdownList.component.mjs +74 -74
  58. package/esm2022/lib/controls/FileUplaod/FileUplaod.component.mjs +258 -191
  59. package/esm2022/lib/controls/Form/Form.component.mjs +24 -24
  60. package/esm2022/lib/controls/HtmlEditor/HtmlEditor.component.mjs +55 -55
  61. package/esm2022/lib/controls/ImageUpload/ImageUpload.component.mjs +126 -126
  62. package/esm2022/lib/controls/MapAutoComplete/MapAutoComplete.component.mjs +62 -66
  63. package/esm2022/lib/controls/MultiLingualHtmlEditor/MultiLingualHtmlEditor.component.mjs +163 -163
  64. package/esm2022/lib/controls/MultiLingualTextArea/MultiLingualTextArea.component.mjs +193 -193
  65. package/esm2022/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.mjs +210 -210
  66. package/esm2022/lib/controls/Paging/Paging.component.mjs +88 -88
  67. package/esm2022/lib/controls/Phone/Phone.component.mjs +42 -42
  68. package/esm2022/lib/controls/ProfileImageUploader/ProfileImageUploader.component.mjs +127 -127
  69. package/esm2022/lib/controls/RadioButton/RadioButton.component.mjs +38 -38
  70. package/esm2022/lib/controls/Recaptcha/Recaptcha.component.mjs +46 -46
  71. package/esm2022/lib/controls/Repeater/repeater/repeater.component.mjs +12 -12
  72. package/esm2022/lib/controls/Repeater/repeater-field-builder/repeater-field-builder.component.mjs +556 -556
  73. package/esm2022/lib/controls/Repeater/repeater-table/repeater-table.component.mjs +15 -15
  74. package/esm2022/lib/controls/TagsInput/TagsInput.component.mjs +100 -100
  75. package/esm2022/lib/controls/TextArea/TextArea.component.mjs +71 -71
  76. package/esm2022/lib/controls/TextBox/TextBox.component.mjs +116 -116
  77. package/esm2022/lib/controls/Toggleslide/Toggleslide.component.mjs +90 -0
  78. package/esm2022/lib/controls/bbsf-controls.module.mjs +2 -2
  79. package/esm2022/lib/controls/page-header-component/page-header-component.component.mjs +4 -4
  80. package/esm2022/public-api.mjs +7 -7
  81. package/fesm2022/bnsights-bbsf-controls.mjs +3001 -2892
  82. package/fesm2022/bnsights-bbsf-controls.mjs.map +1 -1
  83. package/lib/Shared/Enums/map-enums.d.ts +1 -1
  84. package/lib/Shared/Models/Attribute.d.ts +1 -1
  85. package/lib/Shared/Models/AutocompleteOptions.d.ts +20 -20
  86. package/lib/Shared/Models/CalendarOptions.d.ts +10 -10
  87. package/lib/Shared/Models/CancelDTO.d.ts +2 -2
  88. package/lib/Shared/Models/CheckBoxOptions.d.ts +2 -2
  89. package/lib/Shared/Models/ConfirmationModalOptions.d.ts +14 -14
  90. package/lib/Shared/Models/ControlOptionsBase.d.ts +17 -17
  91. package/lib/Shared/Models/{datePickerOptions.d.ts → DatePickerOptions.d.ts} +12 -13
  92. package/lib/Shared/Models/DropdownOptions.d.ts +15 -15
  93. package/lib/Shared/Models/EnglishArabicDTO.d.ts +2 -2
  94. package/lib/Shared/Models/FileDTO.d.ts +18 -18
  95. package/lib/Shared/Models/FileUploadModel.d.ts +1 -1
  96. package/lib/Shared/Models/FileUploadOptions.d.ts +10 -8
  97. package/lib/Shared/Models/FilterItem.d.ts +4 -4
  98. package/lib/Shared/Models/FormOptions.d.ts +11 -11
  99. package/lib/Shared/Models/HtmlEditorOptions.d.ts +11 -11
  100. package/lib/Shared/Models/ImageUploadOptions.d.ts +9 -9
  101. package/lib/Shared/Models/MapAutoCompleteOptions.d.ts +1 -2
  102. package/lib/Shared/Models/MapAutocompleteDTO.d.ts +5 -5
  103. package/lib/Shared/Models/MultiLingualHtmlEditorOptions.d.ts +7 -7
  104. package/lib/Shared/Models/MultiLingualTextAreaOptions.d.ts +5 -5
  105. package/lib/Shared/Models/{MultilingualTextBoxOptions.d.ts → MultiLingualTextBoxOptions.d.ts} +6 -6
  106. package/lib/Shared/Models/MultilingualControlOptionsBase.d.ts +34 -34
  107. package/lib/Shared/Models/MultipleFileUploadModel.d.ts +4 -4
  108. package/lib/Shared/Models/PagingOptions.d.ts +25 -25
  109. package/lib/Shared/Models/PhoneOptions.d.ts +9 -9
  110. package/lib/Shared/Models/ProfileImageUploadOptions.d.ts +10 -10
  111. package/lib/Shared/Models/ProfilePictureDTO.d.ts +9 -9
  112. package/lib/Shared/Models/RadioButtonItem.d.ts +2 -2
  113. package/lib/Shared/Models/RadioButtonOptions.d.ts +2 -2
  114. package/lib/Shared/Models/RangeNumber.d.ts +2 -2
  115. package/lib/Shared/Models/Recaptcha.d.ts +4 -4
  116. package/lib/Shared/Models/RecaptchaOptions.d.ts +10 -10
  117. package/lib/Shared/Models/RepeaterField.d.ts +4 -4
  118. package/lib/Shared/Models/RepeaterOptions.d.ts +16 -16
  119. package/lib/Shared/Models/TagsInputDTO.d.ts +4 -4
  120. package/lib/Shared/Models/TagsInputOptions.d.ts +29 -29
  121. package/lib/Shared/Models/TextAreaOptions.d.ts +11 -11
  122. package/lib/Shared/Models/TextBoxOptions.d.ts +18 -18
  123. package/lib/Shared/Models/{ToggleslideOptions.d.ts → ToggleSlideOptions.d.ts} +3 -3
  124. package/lib/Shared/Models/UploadPersonalImage.d.ts +2 -2
  125. package/lib/Shared/Models/filter-options.d.ts +4 -4
  126. package/lib/Shared/Models/page-header-options.d.ts +43 -43
  127. package/lib/Shared/services/ControlUtility.d.ts +8 -8
  128. package/lib/Shared/services/GlobalSettings.service.d.ts +8 -8
  129. package/lib/Shared/services/file-upload.service.d.ts +11 -0
  130. package/lib/controls/AutocompleteTextBox/AutocompleteTextBox.component.d.ts +11 -11
  131. package/lib/controls/Calendar/Calendar.component.d.ts +7 -7
  132. package/lib/controls/CheckBox/CheckBox.component.d.ts +10 -10
  133. package/lib/controls/DateTimePicker/DateTimePicker.component.d.ts +22 -24
  134. package/lib/controls/DropdownList/DropdownList.component.d.ts +13 -13
  135. package/lib/controls/FileUplaod/FileUplaod.component.d.ts +20 -16
  136. package/lib/controls/Form/Form.component.d.ts +2 -2
  137. package/lib/controls/HtmlEditor/HtmlEditor.component.d.ts +12 -12
  138. package/lib/controls/ImageUpload/ImageUpload.component.d.ts +16 -16
  139. package/lib/controls/MapAutoComplete/MapAutoComplete.component.d.ts +6 -9
  140. package/lib/controls/MultiLingualHtmlEditor/MultiLingualHtmlEditor.component.d.ts +25 -25
  141. package/lib/controls/MultiLingualTextArea/MultiLingualTextArea.component.d.ts +24 -24
  142. package/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.d.ts +32 -32
  143. package/lib/controls/Paging/Paging.component.d.ts +11 -11
  144. package/lib/controls/Phone/Phone.component.d.ts +12 -12
  145. package/lib/controls/ProfileImageUploader/ProfileImageUploader.component.d.ts +18 -18
  146. package/lib/controls/RadioButton/RadioButton.component.d.ts +11 -11
  147. package/lib/controls/Recaptcha/Recaptcha.component.d.ts +10 -10
  148. package/lib/controls/Repeater/repeater-field-builder/repeater-field-builder.component.d.ts +5 -5
  149. package/lib/controls/Repeater/repeater-table/repeater-table.component.d.ts +1 -1
  150. package/lib/controls/TagsInput/TagsInput.component.d.ts +17 -17
  151. package/lib/controls/TextArea/TextArea.component.d.ts +14 -14
  152. package/lib/controls/TextBox/TextBox.component.d.ts +25 -25
  153. package/lib/controls/Toggleslide/{toggleslide.component.d.ts → Toggleslide.component.d.ts} +10 -10
  154. package/lib/controls/bbsf-controls.module.d.ts +1 -1
  155. package/package.json +4 -3
  156. package/public-api.d.ts +4 -4
  157. package/src/lib/assets/Style-rtl.scss +16 -0
  158. package/src/lib/assets/images/marker-pin.svg +4 -4
  159. package/src/lib/assets/sass/file-upload.scss +39 -1
  160. package/src/lib/assets/sass/image-upload.scss +5 -6
  161. package/esm2022/bnsights-test-test-controls.mjs +0 -5
  162. package/esm2022/lib/Shared/Models/datePickerOptions.mjs +0 -23
  163. package/esm2022/lib/controls/Toggleslide/toggleslide.component.mjs +0 -90
  164. package/fesm2022/bnsights-test-test-controls.mjs +0 -9164
  165. package/fesm2022/bnsights-test-test-controls.mjs.map +0 -1
@@ -8,19 +8,19 @@ import * as i0 from "@angular/core";
8
8
  export declare class TextAreaComponent implements OnInit {
9
9
  private controlUtility;
10
10
  private controlContainer;
11
- TextAreaControlHost: FormGroupDirective;
12
- private UtilityService;
11
+ textAreaControlHost: FormGroupDirective;
12
+ private utilityService;
13
13
  private controlValidationService;
14
14
  private globalSettings;
15
15
  static controlContainerstatic: any;
16
- constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, TextAreaControlHost: FormGroupDirective, UtilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
16
+ constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, textAreaControlHost: FormGroupDirective, utilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
17
17
  group: FormGroup;
18
18
  options: TextAreaOptions;
19
- OnChange: EventEmitter<any>;
20
- TextAreaFormControl: AbstractControl;
21
- WordCount: number;
22
- WordCountArray: number;
23
- IsShowWordCount: boolean;
19
+ onChange: EventEmitter<any>;
20
+ textAreaFormControl: AbstractControl;
21
+ wordCount: number;
22
+ wordCountArray: number;
23
+ isShowWordCount: boolean;
24
24
  markAllAsTouched: boolean;
25
25
  validationRules: any[];
26
26
  validationRulesasync: any[];
@@ -41,11 +41,11 @@ export declare class TextAreaComponent implements OnInit {
41
41
  copyInputMessage(inputElement: any): void;
42
42
  onTextChange(): void;
43
43
  onFocus(isFocus: boolean): void;
44
- RemoveRequiredValidation: () => void;
45
- AddRequiredValidation: () => void;
46
- RemoveCustomValidation: (CustomValidation: any) => void;
47
- AddCustomValidation: (CustomValidation: any) => void;
48
- IsValid: () => void;
44
+ removeRequiredValidation: () => void;
45
+ addRequiredValidation: () => void;
46
+ removeCustomValidation: (customValidation: any) => void;
47
+ addCustomValidation: (customValidation: any) => void;
48
+ isValid: () => void;
49
49
  static ɵfac: i0.ɵɵFactoryDeclaration<TextAreaComponent, [null, { optional: true; }, null, null, null, null]>;
50
- static ɵcmp: i0.ɵɵComponentDeclaration<TextAreaComponent, "BBSF-TextArea", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "OnChange": "OnChange"; }, never, never, false, never>;
50
+ static ɵcmp: i0.ɵɵComponentDeclaration<TextAreaComponent, "BBSF-TextArea", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "onChange": "onChange"; }, never, never, false, never>;
51
51
  }
@@ -9,31 +9,31 @@ import * as i0 from "@angular/core";
9
9
  export declare class TextboxComponent implements OnInit {
10
10
  private controlUtility;
11
11
  private controlContainer;
12
- TextControlHost: FormGroupDirective;
13
- UtilityService: UtilityService;
12
+ textControlHost: FormGroupDirective;
13
+ utilityService: UtilityService;
14
14
  private controlValidationService;
15
15
  private globalSettings;
16
16
  static controlContainerstatic: any;
17
- constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, TextControlHost: FormGroupDirective, UtilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
17
+ constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, textControlHost: FormGroupDirective, utilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
18
18
  group: FormGroup;
19
19
  options: TextBoxOptions;
20
- OnChange: EventEmitter<any>;
21
- OnBlur: EventEmitter<any>;
20
+ onChange: EventEmitter<any>;
21
+ onBlur: EventEmitter<any>;
22
22
  inputType: typeof InputType;
23
- TextBoxFormControl: AbstractControl;
24
- MaskPattern: string;
25
- WordCount: number;
26
- WordCountArray: number;
27
- EmailValidationKey: string;
28
- URLValidationKey: string;
29
- PasswordComplexityHasNumber: string;
30
- ArabicLetterOnly: string;
31
- EnglishLetterOnly: string;
32
- PasswordComplexityHasCapitalLetter: string;
33
- PasswordComplexityHasSmallLetter: string;
34
- PasswordComplexityHasSpecialLetter: string;
35
- MaxWordCountValidationKey: string;
36
- IsShowWordCount: boolean;
23
+ textBoxFormControl: AbstractControl;
24
+ maskPattern: string;
25
+ wordCount: number;
26
+ wordCountArray: number;
27
+ emailValidationKey: string;
28
+ uRLValidationKey: string;
29
+ passwordComplexityHasNumber: string;
30
+ arabicLetterOnly: string;
31
+ englishLetterOnly: string;
32
+ passwordComplexityHasCapitalLetter: string;
33
+ passwordComplexityHasSmallLetter: string;
34
+ passwordComplexityHasSpecialLetter: string;
35
+ maxWordCountValidationKey: string;
36
+ isShowWordCount: boolean;
37
37
  markAllAsTouched: boolean;
38
38
  validationRules: any[];
39
39
  validationRulesasync: any[];
@@ -55,12 +55,12 @@ export declare class TextboxComponent implements OnInit {
55
55
  getCustomErrorsMassages(): void;
56
56
  onTextChange(): void;
57
57
  onFocus(isFocus: boolean): void;
58
- RemoveRequiredValidation: () => void;
59
- AddRequiredValidation: () => void;
60
- RemoveCustomValidation: (CustomValidation: any) => void;
61
- AddCustomValidation: (CustomValidation: any) => void;
62
- IsValid: () => void;
58
+ removeRequiredValidation: () => void;
59
+ addRequiredValidation: () => void;
60
+ removeCustomValidation: (customValidation: any) => void;
61
+ addCustomValidation: (customValidation: any) => void;
62
+ isValid: () => void;
63
63
  onTextBlur(): void;
64
64
  static ɵfac: i0.ɵɵFactoryDeclaration<TextboxComponent, [null, { optional: true; }, null, null, null, null]>;
65
- static ɵcmp: i0.ɵɵComponentDeclaration<TextboxComponent, "BBSF-TextBox", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "OnChange": "OnChange"; "OnBlur": "OnBlur"; }, never, never, false, never>;
65
+ static ɵcmp: i0.ɵɵComponentDeclaration<TextboxComponent, "BBSF-TextBox", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "onChange": "onChange"; "onBlur": "onBlur"; }, never, never, false, never>;
66
66
  }
@@ -1,33 +1,33 @@
1
1
  import { OnInit, EventEmitter } from '@angular/core';
2
2
  import { FormGroup, ControlContainer, FormGroupDirective, AbstractControl } from '@angular/forms';
3
3
  import { ControlUtility } from '../../Shared/services/ControlUtility';
4
- import { ToggleSlideOptions } from '../../Shared/Models/ToggleslideOptions';
4
+ import { ToggleSlideOptions } from '../../Shared/Models/ToggleSlideOptions';
5
5
  import { ControlValidationService, UtilityService } from '@bnsights/bbsf-utilities';
6
6
  import { GlobalSettings } from '../../Shared/services/GlobalSettings.service';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class ToggleslideComponent implements OnInit {
9
9
  private controlUtility;
10
10
  private controlContainer;
11
- ToggleslideControlHost: FormGroupDirective;
12
- TextControlHost: FormGroupDirective;
13
- UtilityService: UtilityService;
11
+ toggleslideControlHost: FormGroupDirective;
12
+ textControlHost: FormGroupDirective;
13
+ utilityService: UtilityService;
14
14
  private controlValidationService;
15
15
  private globalSettings;
16
16
  static controlContainerstatic: any;
17
- constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, ToggleslideControlHost: FormGroupDirective, TextControlHost: FormGroupDirective, UtilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
17
+ constructor(controlUtility: ControlUtility, controlContainer: ControlContainer, toggleslideControlHost: FormGroupDirective, textControlHost: FormGroupDirective, utilityService: UtilityService, controlValidationService: ControlValidationService, globalSettings: GlobalSettings);
18
18
  group: FormGroup;
19
19
  options: ToggleSlideOptions;
20
- OnChange: EventEmitter<any>;
21
- ToggleslideFormControl: AbstractControl;
22
- SlideValue: boolean;
20
+ onChange: EventEmitter<any>;
21
+ toggleslideFormControl: AbstractControl;
22
+ slideValue: boolean;
23
23
  markAllAsTouched: boolean;
24
24
  textDir: any;
25
25
  ngOnInit(): void;
26
26
  ngAfterViewInit(): void;
27
27
  resetError(): void;
28
28
  showGlobalError(): void;
29
- getErrorValidation(ErrorList: any[]): string;
29
+ getErrorValidation(errorList: any[]): string;
30
30
  changeValueToggle(): void;
31
31
  static ɵfac: i0.ɵɵFactoryDeclaration<ToggleslideComponent, [null, { optional: true; }, null, null, null, null, null]>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<ToggleslideComponent, "BBSF-Toggleslide", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "OnChange": "OnChange"; }, never, never, false, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToggleslideComponent, "BBSF-Toggleslide", never, { "group": { "alias": "group"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "onChange": "onChange"; }, never, never, false, never>;
33
33
  }
@@ -9,7 +9,7 @@ import * as i6 from "./MultiLingualTextArea/MultiLingualTextArea.component";
9
9
  import * as i7 from "./CheckBox/CheckBox.component";
10
10
  import * as i8 from "./DropdownList/DropdownList.component";
11
11
  import * as i9 from "./Phone/Phone.component";
12
- import * as i10 from "./Toggleslide/toggleslide.component";
12
+ import * as i10 from "./Toggleslide/Toggleslide.component";
13
13
  import * as i11 from "./HtmlEditor/HtmlEditor.component";
14
14
  import * as i12 from "./MultiLingualHtmlEditor/MultiLingualHtmlEditor.component";
15
15
  import * as i13 from "./ImageUpload/ImageUpload.component";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bnsights/bbsf-controls",
3
- "version": "1.0.111",
3
+ "version": "1.0.113",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^17.0.5",
6
6
  "@angular/cdk": "^17.0.2",
@@ -12,7 +12,7 @@
12
12
  "@angular/router": "^17.0.5"
13
13
  },
14
14
  "dependencies": {
15
- "@bnsights/bbsf-utilities": "^1.0.43",
15
+ "@bnsights/bbsf-utilities": "^1.0.44",
16
16
  "@danielmoncada/angular-datetime-picker": "^17.0.0",
17
17
  "@fullcalendar/angular": "^6.1.10",
18
18
  "@fullcalendar/core": "^6.1.10",
@@ -58,7 +58,8 @@
58
58
  "@types/google.maps": "^3.54.10",
59
59
  "@angular/google-maps": "^17.0.3",
60
60
  "@googlemaps/js-api-loader": "1.16.2",
61
- "ngx-script-loader": "^3.0.0"
61
+ "ngx-script-loader": "^3.0.0",
62
+ "moment": "^2.29.4"
62
63
  },
63
64
  "module": "fesm2022/bnsights-bbsf-controls.mjs",
64
65
  "typings": "index.d.ts",
package/public-api.d.ts CHANGED
@@ -8,7 +8,7 @@ export * from './lib/controls/MultiLingualTextArea/MultiLingualTextArea.componen
8
8
  export * from './lib/controls/CheckBox/CheckBox.component';
9
9
  export * from './lib/controls/DropdownList/DropdownList.component';
10
10
  export * from './lib/controls/Phone/Phone.component';
11
- export * from './lib/controls/Toggleslide/toggleslide.component';
11
+ export * from './lib/controls/Toggleslide/Toggleslide.component';
12
12
  export * from './lib/controls/HtmlEditor/HtmlEditor.component';
13
13
  export * from './lib/controls/MultiLingualHtmlEditor/MultiLingualHtmlEditor.component';
14
14
  export * from './lib/controls/ImageUpload/ImageUpload.component';
@@ -41,12 +41,12 @@ export * from './lib/Shared/Models/RecaptchaOptions';
41
41
  export * from './lib/Shared/Models/Recaptcha';
42
42
  export * from './lib/Shared/Models/MultilingualControlOptionsBase';
43
43
  export * from './lib/Shared/Models/CustomValidation';
44
- export * from './lib/Shared/Models/datePickerOptions';
44
+ export * from './lib/Shared/Models/DatePickerOptions';
45
45
  export * from './lib/Shared/Models/TextBoxOptions';
46
46
  export * from './lib/Shared/Models/FileUploadOptions';
47
47
  export * from './lib/Shared/Models/FileUploadModel';
48
48
  export * from './lib/Shared/Models/MultipleFileUploadModel';
49
- export * from './lib/Shared/Models/MultilingualTextBoxOptions';
49
+ export * from './lib/Shared/Models/MultiLingualTextBoxOptions';
50
50
  export * from './lib/Shared/Models/RangeNumber';
51
51
  export * from './lib/Shared/Models/EnglishArabicDTO';
52
52
  export * from './lib/Shared/Models/Attribute';
@@ -56,7 +56,7 @@ export * from './lib/Shared/Models/CheckBoxOptions';
56
56
  export * from './lib/Shared/Models/DropdownListItem';
57
57
  export * from './lib/Shared/Models/DropdownOptions';
58
58
  export * from './lib/Shared/Models/PhoneOptions';
59
- export * from './lib/Shared/Models/ToggleslideOptions';
59
+ export * from './lib/Shared/Models/ToggleSlideOptions';
60
60
  export * from './lib/Shared/Models/HtmlEditorOptions';
61
61
  export * from './lib/Shared/Models/MultiLingualHtmlEditorOptions';
62
62
  export * from './lib/Shared/Models/FileDTO';
@@ -174,4 +174,20 @@ input::-webkit-inner-spin-button {
174
174
 
175
175
  .form-control.input-icon-o {
176
176
  border-radius: 0 0.475rem 0.475rem 0 !important;
177
+ }
178
+
179
+ .form-group.bbsf-control.bbsf-file-upload {
180
+ .uploaded-items {
181
+ .btn-group {
182
+ .btn-download-file {
183
+ .file-name {
184
+ margin-right: 0.75rem;
185
+ margin-left: 0rem;
186
+ }
187
+ }
188
+
189
+ }
190
+
191
+
192
+ }
177
193
  }
@@ -1,4 +1,4 @@
1
- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M12 13C13.6569 13 15 11.6569 15 10C15 8.34315 13.6569 7 12 7C10.3431 7 9 8.34315 9 10C9 11.6569 10.3431 13 12 13Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
3
- <path d="M12 22C16 18 20 14.4183 20 10C20 5.58172 16.4183 2 12 2C7.58172 2 4 5.58172 4 10C4 14.4183 8 18 12 22Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
- </svg>
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M12 13C13.6569 13 15 11.6569 15 10C15 8.34315 13.6569 7 12 7C10.3431 7 9 8.34315 9 10C9 11.6569 10.3431 13 12 13Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M12 22C16 18 20 14.4183 20 10C20 5.58172 16.4183 2 12 2C7.58172 2 4 5.58172 4 10C4 14.4183 8 18 12 22Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -7,7 +7,7 @@
7
7
  align-items: center;
8
8
 
9
9
  &:hover {
10
- background: #ebebeb;
10
+ background: initial;
11
11
  }
12
12
 
13
13
  svg {
@@ -23,6 +23,23 @@
23
23
  margin-left: 0.75rem;
24
24
  }
25
25
  }
26
+
27
+ .btn-progress-upload {
28
+ position: relative;
29
+
30
+ .upload {
31
+ position: absolute;
32
+ left: 0;
33
+ right: 0;
34
+ background-color: #5cb85ca1;
35
+ height: 100%;
36
+ border-radius: 0.475rem;
37
+ }
38
+
39
+ .file-uploaded.upload {
40
+ background-color: transparent;
41
+ }
42
+ }
26
43
  }
27
44
 
28
45
  .btn-danger {
@@ -30,5 +47,26 @@
30
47
  align-items: center;
31
48
  justify-content: center;
32
49
  }
50
+
51
+ .btn-download-file.btn.btn-danger {
52
+ border-color: #e2e2e2 !important;
53
+ background-color: #c2bfbf !important;
54
+
55
+ &:hover {
56
+ border-color: #d9214e !important;
57
+ background-color: #d9214e !important;
58
+
59
+ }
60
+ }
33
61
  }
34
62
  }
63
+
64
+ .spinner-border.text-muted {
65
+ width: 18px;
66
+ height: 18px;
67
+ }
68
+
69
+ .btn-group-sm>.btn:not(.btn-outline):not(.btn-dashed):not(.border-hover):not(.border-active):not(.btn-flush):not(.btn-icon),
70
+ .btn:not(.btn-outline):not(.btn-dashed):not(.border-hover):not(.border-active):not(.btn-flush):not(.btn-icon).btn-sm {
71
+ padding: calc(0.55rem + 1px) calc(1rem + 1px) !important;
72
+ }
@@ -1,4 +1,6 @@
1
- .form-group.bbsf-control.bbsf-image-upload, .form-group.bbsf-control.bbsf-file-upload, .form-group.bbsf-control.bbsf-profile-image-upload {
1
+ .form-group.bbsf-control.bbsf-image-upload,
2
+ .form-group.bbsf-control.bbsf-file-upload,
3
+ .form-group.bbsf-control.bbsf-profile-image-upload {
2
4
  .bbsf-input-container {
3
5
  height: 140px;
4
6
  display: flex;
@@ -25,7 +27,7 @@
25
27
 
26
28
  .uploaded-items {
27
29
  display: flex;
28
- align-items: center;
30
+ align-items: baseline;
29
31
  flex-wrap: wrap;
30
32
 
31
33
  .btn-group {
@@ -33,9 +35,6 @@
33
35
  margin-right: 0.4rem;
34
36
  }
35
37
 
36
- .btn-group:last-child {
37
- margin:0rem;
38
- }
39
38
  }
40
39
 
41
40
  .svg-and-validation {
@@ -128,4 +127,4 @@
128
127
  }
129
128
  }
130
129
  }
131
- }
130
+ }
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm5zaWdodHMtdGVzdC10ZXN0LWNvbnRyb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvYm5zaWdodHMtdGVzdC10ZXN0LWNvbnRyb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -1,23 +0,0 @@
1
- import { StartView } from '../Enums/StartView';
2
- import { PickerType } from '../Enums/PickerType';
3
- import { SelectMode } from '../Enums/SelectMode';
4
- import { ControlOptionsBase } from './ControlOptionsBase';
5
- export class DatePickerOptions extends ControlOptionsBase {
6
- constructor() {
7
- super(...arguments);
8
- /**To set First Day Of Week to DatePicker */
9
- this.FirstDayOfWeek = 1;
10
- /**To set Hour12Timer to DatePicker is 12 Hour or 24 Hour*/
11
- this.Hour12Timer = true;
12
- /**To set PickerType to DatePicker is Calendar or Timer Or Both */
13
- this.PickerType = PickerType.Calendar;
14
- /**To set StartView to DatePicker is Year or Month Or Multi-Year */
15
- this.StartView = StartView.Month;
16
- /**To set SelectMode to DatePicker is Single or Range */
17
- this.SelectMode = SelectMode.Single;
18
- this.ForceDirection = null;
19
- /**Name of DatePicker control to compare value with it */
20
- this.StartControlToCompareWith = null;
21
- }
22
- }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZVBpY2tlck9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLWNvbnRyb2xzL3NyYy9saWIvU2hhcmVkL01vZGVscy9kYXRlUGlja2VyT3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUxRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsa0JBQWtCO0lBQXpEOztRQVdFLDhDQUE4QztRQUM5QyxtQkFBYyxHQUFXLENBQUMsQ0FBQTtRQUMxQiw0REFBNEQ7UUFDNUQsZ0JBQVcsR0FBWSxJQUFJLENBQUE7UUFDM0IsbUVBQW1FO1FBQ25FLGVBQVUsR0FBZSxVQUFVLENBQUMsUUFBUSxDQUFBO1FBQzVDLG9FQUFvRTtRQUNwRSxjQUFTLEdBQWMsU0FBUyxDQUFDLEtBQUssQ0FBQTtRQUN0Qyx5REFBeUQ7UUFDekQsZUFBVSxHQUFlLFVBQVUsQ0FBQyxNQUFNLENBQUE7UUFDMUMsbUJBQWMsR0FBbUIsSUFBSSxDQUFBO1FBQ3JDLDJEQUEyRDtRQUMzRCw4QkFBeUIsR0FBVyxJQUFJLENBQUM7SUFFM0MsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9yY2VEaXJlY3Rpb24gfSBmcm9tICcuLi9FbnVtcy9Gb3JjZURpcmVjdGlvbic7XHJcbmltcG9ydCB7IFN0YXJ0VmlldyB9IGZyb20gJy4uL0VudW1zL1N0YXJ0Vmlldyc7XHJcbmltcG9ydCB7IFBpY2tlclR5cGUgfSBmcm9tICcuLi9FbnVtcy9QaWNrZXJUeXBlJztcclxuaW1wb3J0IHsgU2VsZWN0TW9kZSB9IGZyb20gJy4uL0VudW1zL1NlbGVjdE1vZGUnO1xyXG5pbXBvcnQgeyBDb250cm9sT3B0aW9uc0Jhc2UgfSBmcm9tICcuL0NvbnRyb2xPcHRpb25zQmFzZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgRGF0ZVBpY2tlck9wdGlvbnMgZXh0ZW5kcyBDb250cm9sT3B0aW9uc0Jhc2Uge1xyXG5cclxuICAvKipUbyBzZXQgIHZhbHVlICB0byBEYXRlUGlja2VyICovXHJcbiAgVmFsdWU6IERhdGVcclxuICAvKipUbyBzZXQgIFN0YXJ0RGF0ZSAgdG8gRGF0ZVBpY2tlciAqL1xyXG4gIFN0YXJ0RGF0ZTogRGF0ZVxyXG4gIC8qKlRvIHNldCAgRW5kRGF0ZSAgdG8gRGF0ZVBpY2tlciAqL1xyXG4gIEVuZERhdGU6IERhdGU7XHJcbiAgLyoqIGFkZCBidXR0b24gdG8gZm9yIGNvcGluZyB0byBjbGlwYm9hcmQgKi9cclxuICBFbmFibGVDb3B5VG9DbGlwYm9hcmQ6IGJvb2xlYW5cclxuICBJc0dNVDogYm9vbGVhblxyXG4gIC8qKlRvIHNldCAgRmlyc3QgRGF5IE9mIFdlZWsgIHRvIERhdGVQaWNrZXIgKi9cclxuICBGaXJzdERheU9mV2VlazogbnVtYmVyID0gMVxyXG4gIC8qKlRvIHNldCBIb3VyMTJUaW1lciB0byBEYXRlUGlja2VyICBpcyAxMiBIb3VyIG9yIDI0IEhvdXIqL1xyXG4gIEhvdXIxMlRpbWVyOiBib29sZWFuID0gdHJ1ZVxyXG4gIC8qKlRvIHNldCBQaWNrZXJUeXBlIHRvIERhdGVQaWNrZXIgIGlzIENhbGVuZGFyIG9yIFRpbWVyIE9yIEJvdGggKi9cclxuICBQaWNrZXJUeXBlOiBQaWNrZXJUeXBlID0gUGlja2VyVHlwZS5DYWxlbmRhclxyXG4gIC8qKlRvIHNldCBTdGFydFZpZXcgdG8gRGF0ZVBpY2tlciAgaXMgWWVhciBvciBNb250aCBPciBNdWx0aS1ZZWFyICovXHJcbiAgU3RhcnRWaWV3OiBTdGFydFZpZXcgPSBTdGFydFZpZXcuTW9udGhcclxuICAvKipUbyBzZXQgU2VsZWN0TW9kZSB0byBEYXRlUGlja2VyICBpcyBTaW5nbGUgb3IgUmFuZ2UgKi9cclxuICBTZWxlY3RNb2RlOiBTZWxlY3RNb2RlID0gU2VsZWN0TW9kZS5TaW5nbGVcclxuICBGb3JjZURpcmVjdGlvbjogRm9yY2VEaXJlY3Rpb24gPSBudWxsXHJcbiAgLyoqTmFtZSBvZiBEYXRlUGlja2VyIGNvbnRyb2wgdG8gY29tcGFyZSB2YWx1ZSB3aXRoIGl0ICAgKi9cclxuICBTdGFydENvbnRyb2xUb0NvbXBhcmVXaXRoOiBzdHJpbmcgPSBudWxsO1xyXG5cclxufVxyXG4iXX0=
@@ -1,90 +0,0 @@
1
- import { Component, Input, Optional, EventEmitter, Output } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../Shared/services/ControlUtility";
5
- import * as i2 from "@angular/forms";
6
- import * as i3 from "@bnsights/bbsf-utilities";
7
- import * as i4 from "../../Shared/services/GlobalSettings.service";
8
- import * as i5 from "@angular/common";
9
- import * as i6 from "@angular/material/slide-toggle";
10
- import * as i7 from "@angular/cdk/bidi";
11
- import * as i8 from "ngx-intl-tel-input";
12
- export class ToggleslideComponent {
13
- static { this.controlContainerstatic = null; }
14
- // tslint:disable-next-line: max-line-length
15
- constructor(controlUtility, controlContainer, ToggleslideControlHost, TextControlHost, UtilityService, controlValidationService, globalSettings) {
16
- this.controlUtility = controlUtility;
17
- this.controlContainer = controlContainer;
18
- this.ToggleslideControlHost = ToggleslideControlHost;
19
- this.TextControlHost = TextControlHost;
20
- this.UtilityService = UtilityService;
21
- this.controlValidationService = controlValidationService;
22
- this.globalSettings = globalSettings;
23
- this.OnChange = new EventEmitter();
24
- this.SlideValue = false;
25
- this.markAllAsTouched = false;
26
- ToggleslideComponent.controlContainerstatic = this.controlContainer;
27
- }
28
- ngOnInit() {
29
- if (this.options.ForceDirection)
30
- this.textDir = this.options.ForceDirection == 2 ? 'rtl' : 'ltr';
31
- else
32
- this.textDir = localStorage.getItem('language') == 'ar' ? 'rtl' : 'ltr';
33
- this.group.addControl(this.options.Name, new FormControl(''));
34
- this.ToggleslideFormControl = this.group.controls[this.options.Name]; // new FormControl('',validationRules);
35
- let validationRules = [];
36
- let validationRulesasync = [];
37
- this.SlideValue = this.options.Value == undefined ? false : this.options.Value;
38
- if (!this.options.ViewType)
39
- this.options.ViewType = this.globalSettings.ViewType;
40
- if (this.options.IsDisabled || this.options.IsReadonly) {
41
- this.ToggleslideFormControl.disable();
42
- }
43
- if (this.options.LabelKey != null && this.options.LabelKey != "")
44
- this.options.LabelValue = this.UtilityService.getResourceValue(this.options.LabelKey);
45
- }
46
- ngAfterViewInit() {
47
- if (this.options.AttributeList != null) {
48
- var element = document.getElementById(this.options.Name);
49
- for (let index = 0; index < this.options.AttributeList.length; index++) {
50
- element.setAttribute(this.options.AttributeList[index].Key, this.options.AttributeList[index].value);
51
- }
52
- }
53
- }
54
- resetError() {
55
- this.controlValidationService.removeGlobalError();
56
- }
57
- showGlobalError() {
58
- this.controlUtility.showGlobalError();
59
- }
60
- getErrorValidation(ErrorList) {
61
- if (this.markAllAsTouched && this.group.invalid) {
62
- this.showGlobalError();
63
- this.markAllAsTouched = false;
64
- }
65
- return this.controlUtility.getErrorValidationMassage(ErrorList, this.group, this.options);
66
- }
67
- changeValueToggle() {
68
- this.OnChange.emit(this.SlideValue);
69
- this.options.Value = this.SlideValue;
70
- this.ToggleslideFormControl.setValue(this.SlideValue);
71
- if (this.options.PatchFunction && this.options.PatchPath && this.ToggleslideFormControl.valid) {
72
- this.controlUtility.patchControlValue(this.SlideValue, this.options.PatchFunction, this.options.PatchPath);
73
- }
74
- }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ToggleslideComponent, deps: [{ token: i1.ControlUtility }, { token: i2.ControlContainer, optional: true }, { token: i2.FormGroupDirective }, { token: i2.FormGroupDirective }, { token: i3.UtilityService }, { token: i3.ControlValidationService }, { token: i4.GlobalSettings }], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ToggleslideComponent, selector: "BBSF-Toggleslide", inputs: { group: "group", options: "options" }, outputs: { OnChange: "OnChange" }, ngImport: i0, template: "<div class=\"form-group bbsf-control bbsf-toggleslide\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.ViewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label [hidden]=\"options.HideLabel\" class=\"bbsf-label {{options.LabelExtraClasses}}\">\r\n {{options.LabelValue}}\r\n </label>\r\n <div *ngIf=\"!options.IsReadonly\"class=\"bbsf-input-container\">\r\n <!--input-->\r\n <mat-slide-toggle [(ngModel)]=\"SlideValue\" [dir]=\"textDir\" [cssClass]=\"(options.ViewType==1)?'':'col-md-9'\"\r\n formControlName=\"{{options.Name}}\" disableRipple=\"true\" [disabled]=\"options.IsDisabled\" (change)=\"changeValueToggle()\">\r\n </mat-slide-toggle>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.IsReadonly\">\r\n <span class=\"readonly-view\" *ngIf=\"options.Value\">{{UtilityService.getResourceValue(\"Yes\")}}</span>\r\n <span class=\"readonly-view\" *ngIf=\"!options.Value\">{{UtilityService.getResourceValue(\"No\")}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\">\r\n <!-- LabelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked", "hideIcon"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i7.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i8.NativeElementInjectorDirective, selector: "[ngModel], [formControl], [formControlName]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
77
- }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ToggleslideComponent, decorators: [{
79
- type: Component,
80
- args: [{ selector: 'BBSF-Toggleslide', template: "<div class=\"form-group bbsf-control bbsf-toggleslide\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.ViewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label [hidden]=\"options.HideLabel\" class=\"bbsf-label {{options.LabelExtraClasses}}\">\r\n {{options.LabelValue}}\r\n </label>\r\n <div *ngIf=\"!options.IsReadonly\"class=\"bbsf-input-container\">\r\n <!--input-->\r\n <mat-slide-toggle [(ngModel)]=\"SlideValue\" [dir]=\"textDir\" [cssClass]=\"(options.ViewType==1)?'':'col-md-9'\"\r\n formControlName=\"{{options.Name}}\" disableRipple=\"true\" [disabled]=\"options.IsDisabled\" (change)=\"changeValueToggle()\">\r\n </mat-slide-toggle>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.IsReadonly\">\r\n <span class=\"readonly-view\" *ngIf=\"options.Value\">{{UtilityService.getResourceValue(\"Yes\")}}</span>\r\n <span class=\"readonly-view\" *ngIf=\"!options.Value\">{{UtilityService.getResourceValue(\"No\")}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\">\r\n <!-- LabelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n </div>\r\n</div>\r\n" }]
81
- }], ctorParameters: () => [{ type: i1.ControlUtility }, { type: i2.ControlContainer, decorators: [{
82
- type: Optional
83
- }] }, { type: i2.FormGroupDirective }, { type: i2.FormGroupDirective }, { type: i3.UtilityService }, { type: i3.ControlValidationService }, { type: i4.GlobalSettings }], propDecorators: { group: [{
84
- type: Input
85
- }], options: [{
86
- type: Input
87
- }], OnChange: [{
88
- type: Output
89
- }] } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlc2xpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL1RvZ2dsZXNsaWRlL3RvZ2dsZXNsaWRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9Ub2dnbGVzbGlkZS9Ub2dnbGVzbGlkZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQW9FLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7O0FBVy9HLE1BQU0sT0FBTyxvQkFBb0I7YUFHeEIsMkJBQXNCLEdBQUcsSUFBSSxBQUFQLENBQVE7SUFDckMsNENBQTRDO0lBQzVDLFlBQW9CLGNBQThCLEVBQXNCLGdCQUFrQyxFQUNqRyxzQkFBMEMsRUFBUyxlQUFtQyxFQUN0RixjQUE4QixFQUFVLHdCQUFrRCxFQUN6RixjQUE4QjtRQUhwQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBc0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqRywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQW9CO1FBQVMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBQ3RGLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDekYsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBSzlCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXhDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBUGhDLG9CQUFvQixDQUFD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RyxLQUFLLENBQUE7U0FDOUI7UUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMseUJBQXlCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFHRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQTtRQUNuQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNyRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUU7WUFDN0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7U0FDMUc7SUFDSCxDQUFDOzhHQTdFVSxvQkFBb0I7a0dBQXBCLG9CQUFvQiwySUNaakMseXdDQXVCQTs7MkZEWGEsb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBUXlCLFFBQVE7NE1BTXBELEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3B0aW9uYWwsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgQ29udHJvbENvbnRhaW5lciwgRm9ybUdyb3VwRGlyZWN0aXZlLCBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDb250cm9sVXRpbGl0eSB9IGZyb20gJy4uLy4uL1NoYXJlZC9zZXJ2aWNlcy9Db250cm9sVXRpbGl0eSc7XHJcbmltcG9ydCB7IFRvZ2dsZVNsaWRlT3B0aW9ucyB9IGZyb20gJy4uLy4uL1NoYXJlZC9Nb2RlbHMvVG9nZ2xlc2xpZGVPcHRpb25zJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLCBVdGlsaXR5U2VydmljZSB9IGZyb20gICdAYm5zaWdodHMvYmJzZi11dGlsaXRpZXMnO1xyXG5pbXBvcnQgeyBHbG9iYWxTZXR0aW5ncyB9IGZyb20gJy4uLy4uL1NoYXJlZC9zZXJ2aWNlcy9HbG9iYWxTZXR0aW5ncy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdCQlNGLVRvZ2dsZXNsaWRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vVG9nZ2xlc2xpZGUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb2dnbGVzbGlkZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cclxuICBzdGF0aWMgY29udHJvbENvbnRhaW5lcnN0YXRpYyA9IG51bGw7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRyb2xVdGlsaXR5OiBDb250cm9sVXRpbGl0eSwgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLFxyXG4gICAgcHVibGljIFRvZ2dsZXNsaWRlQ29udHJvbEhvc3Q6IEZvcm1Hcm91cERpcmVjdGl2ZSwgcHVibGljIFRleHRDb250cm9sSG9zdDogRm9ybUdyb3VwRGlyZWN0aXZlLFxyXG4gICAgcHVibGljIFV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSwgcHJpdmF0ZSBjb250cm9sVmFsaWRhdGlvblNlcnZpY2U6IENvbnRyb2xWYWxpZGF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgZ2xvYmFsU2V0dGluZ3M6IEdsb2JhbFNldHRpbmdzKSB7XHJcbiAgICBUb2dnbGVzbGlkZUNvbXBvbmVudC5jb250cm9sQ29udGFpbmVyc3RhdGljID0gdGhpcy5jb250cm9sQ29udGFpbmVyO1xyXG4gIH1cclxuICBASW5wdXQoKSBncm91cDogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IFRvZ2dsZVNsaWRlT3B0aW9ucztcclxuICBAT3V0cHV0KCkgT25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgVG9nZ2xlc2xpZGVGb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sO1xyXG4gIFNsaWRlVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBtYXJrQWxsQXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdGV4dERpcjtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZih0aGlzLm9wdGlvbnMuRm9yY2VEaXJlY3Rpb24pXHJcbiAgICB0aGlzLnRleHREaXI9dGhpcy5vcHRpb25zLkZvcmNlRGlyZWN0aW9uPT0yPydydGwnOidsdHInO1xyXG4gICAgZWxzZVxyXG4gICAgdGhpcy50ZXh0RGlyPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpPT0nYXInPydydGwnOidsdHInO1xyXG4gICAgdGhpcy5ncm91cC5hZGRDb250cm9sKHRoaXMub3B0aW9ucy5OYW1lLCBuZXcgRm9ybUNvbnRyb2woJycpKTtcclxuICAgIHRoaXMuVG9nZ2xlc2xpZGVGb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXAuY29udHJvbHNbdGhpcy5vcHRpb25zLk5hbWVdOyAvLyAgbmV3IEZvcm1Db250cm9sKCcnLHZhbGlkYXRpb25SdWxlcyk7XHJcbiAgICBsZXQgdmFsaWRhdGlvblJ1bGVzID0gW107XHJcbiAgICBsZXQgdmFsaWRhdGlvblJ1bGVzYXN5bmMgPSBbXTtcclxuICAgIHRoaXMuU2xpZGVWYWx1ZSA9IHRoaXMub3B0aW9ucy5WYWx1ZSA9PSB1bmRlZmluZWQgPyBmYWxzZSA6IHRoaXMub3B0aW9ucy5WYWx1ZTtcclxuXHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5WaWV3VHlwZSlcclxuICAgICAgdGhpcy5vcHRpb25zLlZpZXdUeXBlID0gdGhpcy5nbG9iYWxTZXR0aW5ncy5WaWV3VHlwZTtcclxuXHJcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuSXNEaXNhYmxlZCB8fHRoaXMub3B0aW9ucy5Jc1JlYWRvbmx5ICkge1xyXG4gICAgICAgIHRoaXMuVG9nZ2xlc2xpZGVGb3JtQ29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICAgIH1cclxuICAgIGlmICh0aGlzLm9wdGlvbnMuTGFiZWxLZXkgIT0gbnVsbCAmJiB0aGlzLm9wdGlvbnMuTGFiZWxLZXkgIT0gXCJcIilcclxuICAgICAgdGhpcy5vcHRpb25zLkxhYmVsVmFsdWUgPSB0aGlzLlV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUodGhpcy5vcHRpb25zLkxhYmVsS2V5KTtcclxuICB9XHJcblxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zLkF0dHJpYnV0ZUxpc3QgIT0gbnVsbCkge1xyXG4gICAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMub3B0aW9ucy5OYW1lKTtcclxuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMub3B0aW9ucy5BdHRyaWJ1dGVMaXN0Lmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKHRoaXMub3B0aW9ucy5BdHRyaWJ1dGVMaXN0W2luZGV4XS5LZXksIHRoaXMub3B0aW9ucy5BdHRyaWJ1dGVMaXN0W2luZGV4XS52YWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcmVzZXRFcnJvcigpIHtcclxuICAgIHRoaXMuY29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLnJlbW92ZUdsb2JhbEVycm9yKCk7XHJcbiAgfVxyXG5cclxuICBzaG93R2xvYmFsRXJyb3IoKSB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnNob3dHbG9iYWxFcnJvcigpXHJcbiAgfVxyXG5cclxuICBnZXRFcnJvclZhbGlkYXRpb24oRXJyb3JMaXN0OiBhbnlbXSk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5tYXJrQWxsQXNUb3VjaGVkICYmIHRoaXMuZ3JvdXAuaW52YWxpZCkge1xyXG4gICAgICB0aGlzLnNob3dHbG9iYWxFcnJvcigpXHJcbiAgICAgIHRoaXMubWFya0FsbEFzVG91Y2hlZCA9IGZhbHNlXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbFV0aWxpdHkuZ2V0RXJyb3JWYWxpZGF0aW9uTWFzc2FnZShFcnJvckxpc3QsIHRoaXMuZ3JvdXAsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgY2hhbmdlVmFsdWVUb2dnbGUoKSB7XHJcbiAgICB0aGlzLk9uQ2hhbmdlLmVtaXQodGhpcy5TbGlkZVZhbHVlKVxyXG4gICAgdGhpcy5vcHRpb25zLlZhbHVlPSB0aGlzLlNsaWRlVmFsdWVcclxuICAgIHRoaXMuVG9nZ2xlc2xpZGVGb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLlNsaWRlVmFsdWUpXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLlBhdGNoRnVuY3Rpb24gJiYgdGhpcy5vcHRpb25zLlBhdGNoUGF0aCAmJiB0aGlzLlRvZ2dsZXNsaWRlRm9ybUNvbnRyb2wudmFsaWQpIHtcclxuICAgICAgdGhpcy5jb250cm9sVXRpbGl0eS5wYXRjaENvbnRyb2xWYWx1ZSh0aGlzLlNsaWRlVmFsdWUsdGhpcy5vcHRpb25zLlBhdGNoRnVuY3Rpb24gLHRoaXMub3B0aW9ucy5QYXRjaFBhdGgpXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGJic2YtY29udHJvbCBiYnNmLXRvZ2dsZXNsaWRlXCIgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwiKG9wdGlvbnMuVmlld1R5cGU9PTEpPydiYnNmLXZlcnRpY2FsJzonYmJzZi1ob3Jpem9udGFsJ1wiPlxyXG4gICAgPCEtLWxhYmVsLS0+XHJcbiAgICA8bGFiZWwgW2hpZGRlbl09XCJvcHRpb25zLkhpZGVMYWJlbFwiIGNsYXNzPVwiYmJzZi1sYWJlbCB7e29wdGlvbnMuTGFiZWxFeHRyYUNsYXNzZXN9fVwiPlxyXG4gICAgICB7e29wdGlvbnMuTGFiZWxWYWx1ZX19XHJcbiAgICA8L2xhYmVsPlxyXG4gICAgPGRpdiAqbmdJZj1cIiFvcHRpb25zLklzUmVhZG9ubHlcImNsYXNzPVwiYmJzZi1pbnB1dC1jb250YWluZXJcIj5cclxuICAgICAgPCEtLWlucHV0LS0+XHJcbiAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlIFsobmdNb2RlbCldPVwiU2xpZGVWYWx1ZVwiIFtkaXJdPVwidGV4dERpclwiIFtjc3NDbGFzc109XCIob3B0aW9ucy5WaWV3VHlwZT09MSk/Jyc6J2NvbC1tZC05J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInt7b3B0aW9ucy5OYW1lfX1cIiBkaXNhYmxlUmlwcGxlPVwidHJ1ZVwiIFtkaXNhYmxlZF09XCJvcHRpb25zLklzRGlzYWJsZWRcIiAoY2hhbmdlKT1cImNoYW5nZVZhbHVlVG9nZ2xlKClcIj5cclxuICAgICAgPC9tYXQtc2xpZGUtdG9nZ2xlPlxyXG4gICAgPC9kaXY+XHJcbiAgICAgIDwhLS0gcmVhZG9ubHkgLS0+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJvcHRpb25zLklzUmVhZG9ubHlcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInJlYWRvbmx5LXZpZXdcIiAqbmdJZj1cIm9wdGlvbnMuVmFsdWVcIj57e1V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJZZXNcIil9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInJlYWRvbmx5LXZpZXdcIiAqbmdJZj1cIiFvcHRpb25zLlZhbHVlXCI+e3tVdGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiTm9cIil9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cInN1YnRleHQtY29udGFpbmVyXCI+XHJcbiAgICA8IS0tIExhYmVsRGVzY3JpcHRpb24tLT5cclxuICAgIDxkaXYgY2xhc3M9XCJiYnNmLWNvbnRyb2wtZGVzY1wiICAqbmdJZj1cIm9wdGlvbnMuTGFiZWxEZXNjcmlwdGlvbiE9bnVsbFwiPnt7b3B0aW9ucy5MYWJlbERlc2NyaXB0aW9ufX08L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==