@entake/particle 18.0.5 → 19.0.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.
Files changed (207) hide show
  1. package/LICENSE +1 -1
  2. package/app/{modules → shared/components}/accordion/accordion.component.d.ts +3 -3
  3. package/app/{modules/date-picker → shared}/components/calendar/calendar.component.d.ts +7 -12
  4. package/app/{modules → shared/components}/checkbox/checkbox.component.d.ts +5 -7
  5. package/app/{modules → shared/components}/color-picker/color-picker.component.d.ts +3 -9
  6. package/app/{modules → shared/components}/date-picker/date-picker.component.d.ts +20 -26
  7. package/app/{modules/date-picker → shared}/components/date-range-picker/date-range-picker.component.d.ts +10 -11
  8. package/app/{modules → shared/components}/dialog/dialog.component.d.ts +14 -24
  9. package/app/{modules → shared/components}/dropdown/dropdown.component.d.ts +12 -14
  10. package/app/{modules/icons/components → shared/components/icon-select}/icon-select.component.d.ts +14 -17
  11. package/app/{modules → shared/components}/idle-timeout/idle-timeout.component.d.ts +3 -4
  12. package/app/{modules → shared/components}/input-mask/input-mask.component.d.ts +6 -7
  13. package/app/shared/components/layout-full-framing/layout-full-framing.component.d.ts +27 -0
  14. package/app/shared/components/layout-fullwidth-sidebar/layout-fullwidth-sidebar.component.d.ts +23 -0
  15. package/app/{modules/loader/components → shared/components/loader}/loader.component.d.ts +2 -2
  16. package/app/{modules → shared/components}/multi-select/multi-select.component.d.ts +18 -24
  17. package/app/{modules → shared/components}/notification/notification.component.d.ts +5 -13
  18. package/app/{modules → shared/components}/paginator/paginator.component.d.ts +12 -11
  19. package/app/{modules → shared/components}/popover/popover.component.d.ts +10 -15
  20. package/app/{modules → shared/components}/profile-pic/profile-pic.component.d.ts +1 -1
  21. package/app/shared/components/progress-bar/progress-bar.component.d.ts +15 -0
  22. package/app/{modules → shared/components}/rich-text/rich-text.component.d.ts +11 -12
  23. package/app/shared/components/scroll-to-top/scroll-to-top.component.d.ts +18 -0
  24. package/app/shared/components/slideover/slideover.component.d.ts +35 -0
  25. package/app/{modules → shared/components}/slider/slider.component.d.ts +8 -22
  26. package/app/{modules → shared/components}/toggle-switch/toggle-switch.component.d.ts +4 -6
  27. package/app/{modules → shared/components}/week-picker/week-picker.component.d.ts +21 -22
  28. package/app/{modules/accordion → shared}/directives/accordion-content.directive.d.ts +1 -2
  29. package/app/{modules/accordion → shared}/directives/accordion-header.directive.d.ts +1 -2
  30. package/app/{modules/accordion → shared}/directives/accordion-item.directive.d.ts +1 -1
  31. package/app/{modules/background-carousel → shared/directives}/background-carousel.directive.d.ts +4 -4
  32. package/app/{modules/keyfilter → shared/directives}/keyfilter.directive.d.ts +1 -7
  33. package/app/{modules/tooltip → shared/directives}/tooltip.directive.d.ts +3 -9
  34. package/app/shared/models/carousel-options.model.d.ts +21 -0
  35. package/app/shared/models/pagination-event.model.d.ts +8 -0
  36. package/app/shared/models/particle-component-text.model.d.ts +0 -24
  37. package/app/shared/modules/icons/particle-icons.module.d.ts +7 -0
  38. package/app/{modules/ordinal-number-pipe → shared/pipes}/ordinal-number.pipe.d.ts +1 -1
  39. package/app/shared/services/base-data.service.d.ts +2 -2
  40. package/app/shared/services/dialog.service.d.ts +1 -1
  41. package/app/{modules/notification → shared}/services/notification.service.d.ts +0 -4
  42. package/app/{modules/theming → shared}/services/theming.service.d.ts +0 -19
  43. package/fesm2022/entake-particle.mjs +3871 -5573
  44. package/fesm2022/entake-particle.mjs.map +1 -1
  45. package/package.json +16 -25
  46. package/public_api.d.ts +47 -82
  47. package/app/modules/accordion/accordion.module.d.ts +0 -11
  48. package/app/modules/background-carousel/carousel-options.model.d.ts +0 -30
  49. package/app/modules/background-carousel/particle-background-carousel.module.d.ts +0 -8
  50. package/app/modules/checkbox/checkbox.module.d.ts +0 -9
  51. package/app/modules/color-picker/color-picker.module.d.ts +0 -9
  52. package/app/modules/date-picker/date-picker.module.d.ts +0 -15
  53. package/app/modules/dialog/dialog.module.d.ts +0 -9
  54. package/app/modules/dropdown/dropdown.module.d.ts +0 -9
  55. package/app/modules/endpoint-state/components/endpoint-state.component.d.ts +0 -46
  56. package/app/modules/endpoint-state/endpoint-state.module.d.ts +0 -8
  57. package/app/modules/icons/particle-icons.module.d.ts +0 -13
  58. package/app/modules/idle-timeout/particle-idle-timeout.module.d.ts +0 -9
  59. package/app/modules/input-mask/input-mask.module.d.ts +0 -8
  60. package/app/modules/keyfilter/keyfilter.module.d.ts +0 -8
  61. package/app/modules/layout/components/layout-full-framing/layout-full-framing.component.d.ts +0 -27
  62. package/app/modules/layout/components/layout-fullwidth-sidebar/layout-fullwidth-sidebar.component.d.ts +0 -23
  63. package/app/modules/layout/layout.module.d.ts +0 -10
  64. package/app/modules/loader/loader.module.d.ts +0 -8
  65. package/app/modules/multi-select/multi-select.module.d.ts +0 -8
  66. package/app/modules/notification/notification.module.d.ts +0 -8
  67. package/app/modules/ordinal-number-pipe/ordinal-number-pipe.module.d.ts +0 -8
  68. package/app/modules/paginator/pagination-event.model.d.ts +0 -24
  69. package/app/modules/paginator/particle-paginator.module.d.ts +0 -13
  70. package/app/modules/popover/popover.module.d.ts +0 -9
  71. package/app/modules/profile-pic/particle-profile-pic.module.d.ts +0 -9
  72. package/app/modules/progress-bar/progress-bar.component.d.ts +0 -16
  73. package/app/modules/progress-bar/progress-bar.module.d.ts +0 -8
  74. package/app/modules/push-container/particle-push-container.module.d.ts +0 -9
  75. package/app/modules/push-container/push-container-state.model.d.ts +0 -7
  76. package/app/modules/push-container/push-container.component.d.ts +0 -137
  77. package/app/modules/rich-text/particle-rich-text.module.d.ts +0 -15
  78. package/app/modules/rich-text/render-rich-text.component.d.ts +0 -6
  79. package/app/modules/scroll-to-top/particle-scroll-to-top.module.d.ts +0 -8
  80. package/app/modules/scroll-to-top/scroll-to-top.component.d.ts +0 -19
  81. package/app/modules/slideover/particle-slideover.module.d.ts +0 -8
  82. package/app/modules/slideover/slideover.component.d.ts +0 -35
  83. package/app/modules/slider/slider.module.d.ts +0 -9
  84. package/app/modules/theming/components/theming.component.d.ts +0 -43
  85. package/app/modules/theming/theming.module.d.ts +0 -12
  86. package/app/modules/toggle-switch/toggle-switch.module.d.ts +0 -8
  87. package/app/modules/tooltip/tooltip.module.d.ts +0 -8
  88. package/app/modules/week-picker/week-picker.module.d.ts +0 -13
  89. package/app/shared/enums/endpoint-status.enum.d.ts +0 -9
  90. package/esm2022/app/modules/accordion/accordion.component.mjs +0 -101
  91. package/esm2022/app/modules/accordion/accordion.module.mjs +0 -37
  92. package/esm2022/app/modules/accordion/directives/accordion-content.directive.mjs +0 -17
  93. package/esm2022/app/modules/accordion/directives/accordion-header.directive.mjs +0 -17
  94. package/esm2022/app/modules/accordion/directives/accordion-item.directive.mjs +0 -36
  95. package/esm2022/app/modules/background-carousel/background-carousel.directive.mjs +0 -91
  96. package/esm2022/app/modules/background-carousel/carousel-options.model.mjs +0 -36
  97. package/esm2022/app/modules/background-carousel/particle-background-carousel.module.mjs +0 -24
  98. package/esm2022/app/modules/checkbox/checkbox.component.mjs +0 -108
  99. package/esm2022/app/modules/checkbox/checkbox.module.mjs +0 -28
  100. package/esm2022/app/modules/color-picker/color-picker.component.mjs +0 -306
  101. package/esm2022/app/modules/color-picker/color-picker.module.mjs +0 -19
  102. package/esm2022/app/modules/date-picker/components/calendar/calendar.component.mjs +0 -496
  103. package/esm2022/app/modules/date-picker/components/date-range-picker/date-range-picker.component.mjs +0 -250
  104. package/esm2022/app/modules/date-picker/date-picker.component.mjs +0 -538
  105. package/esm2022/app/modules/date-picker/date-picker.module.mjs +0 -56
  106. package/esm2022/app/modules/dialog/dialog.component.mjs +0 -177
  107. package/esm2022/app/modules/dialog/dialog.module.mjs +0 -28
  108. package/esm2022/app/modules/dropdown/dropdown.component.mjs +0 -682
  109. package/esm2022/app/modules/dropdown/dropdown.module.mjs +0 -28
  110. package/esm2022/app/modules/dropdown/models/dropdown-option-group.model.mjs +0 -2
  111. package/esm2022/app/modules/dropdown/models/dropdown-option.model.mjs +0 -2
  112. package/esm2022/app/modules/endpoint-state/components/endpoint-state.component.mjs +0 -75
  113. package/esm2022/app/modules/endpoint-state/endpoint-state.module.mjs +0 -22
  114. package/esm2022/app/modules/icons/components/icon-select.component.mjs +0 -376
  115. package/esm2022/app/modules/icons/models/fontawesome-icons-brands.model.mjs +0 -471
  116. package/esm2022/app/modules/icons/models/fontawesome-icons-regular.model.mjs +0 -166
  117. package/esm2022/app/modules/icons/models/fontawesome-icons-solid.model.mjs +0 -1016
  118. package/esm2022/app/modules/icons/models/particle-icons-brands.model.mjs +0 -24
  119. package/esm2022/app/modules/icons/models/particle-icons-regular.model.mjs +0 -50
  120. package/esm2022/app/modules/icons/models/particle-icons-solid.model.mjs +0 -89
  121. package/esm2022/app/modules/icons/particle-icons.module.mjs +0 -66
  122. package/esm2022/app/modules/icons/services/icons.service.mjs +0 -82
  123. package/esm2022/app/modules/idle-timeout/idle-timeout.component.mjs +0 -85
  124. package/esm2022/app/modules/idle-timeout/idle-timer.mjs +0 -66
  125. package/esm2022/app/modules/idle-timeout/particle-idle-timeout.module.mjs +0 -28
  126. package/esm2022/app/modules/input-mask/input-mask.component.mjs +0 -594
  127. package/esm2022/app/modules/input-mask/input-mask.module.mjs +0 -18
  128. package/esm2022/app/modules/keyfilter/keyfilter.directive.mjs +0 -174
  129. package/esm2022/app/modules/keyfilter/keyfilter.module.mjs +0 -18
  130. package/esm2022/app/modules/layout/components/layout-full-framing/layout-full-framing.component.mjs +0 -81
  131. package/esm2022/app/modules/layout/components/layout-fullwidth-sidebar/layout-fullwidth-sidebar.component.mjs +0 -67
  132. package/esm2022/app/modules/layout/layout.module.mjs +0 -33
  133. package/esm2022/app/modules/loader/components/loader.component.mjs +0 -30
  134. package/esm2022/app/modules/loader/loader.module.mjs +0 -24
  135. package/esm2022/app/modules/multi-select/models/multi-select-option-group.model.mjs +0 -2
  136. package/esm2022/app/modules/multi-select/models/multi-select-option.model.mjs +0 -2
  137. package/esm2022/app/modules/multi-select/multi-select.component.mjs +0 -665
  138. package/esm2022/app/modules/multi-select/multi-select.module.mjs +0 -18
  139. package/esm2022/app/modules/notification/models/notification.model.mjs +0 -2
  140. package/esm2022/app/modules/notification/notification.component.mjs +0 -122
  141. package/esm2022/app/modules/notification/notification.module.mjs +0 -18
  142. package/esm2022/app/modules/notification/services/notification.service.mjs +0 -84
  143. package/esm2022/app/modules/ordinal-number-pipe/ordinal-number-pipe.module.mjs +0 -20
  144. package/esm2022/app/modules/ordinal-number-pipe/ordinal-number.pipe.mjs +0 -49
  145. package/esm2022/app/modules/paginator/pagination-event.model.mjs +0 -29
  146. package/esm2022/app/modules/paginator/paginator.component.mjs +0 -207
  147. package/esm2022/app/modules/paginator/particle-paginator.module.mjs +0 -48
  148. package/esm2022/app/modules/popover/popover.component.mjs +0 -352
  149. package/esm2022/app/modules/popover/popover.module.mjs +0 -24
  150. package/esm2022/app/modules/profile-pic/particle-profile-pic.module.mjs +0 -28
  151. package/esm2022/app/modules/profile-pic/profile-pic.component.mjs +0 -75
  152. package/esm2022/app/modules/progress-bar/progress-bar.component.mjs +0 -43
  153. package/esm2022/app/modules/progress-bar/progress-bar.module.mjs +0 -24
  154. package/esm2022/app/modules/push-container/particle-push-container.module.mjs +0 -26
  155. package/esm2022/app/modules/push-container/push-container-state.model.mjs +0 -2
  156. package/esm2022/app/modules/push-container/push-container.component.mjs +0 -363
  157. package/esm2022/app/modules/rich-text/particle-rich-text.module.mjs +0 -64
  158. package/esm2022/app/modules/rich-text/render-rich-text.component.mjs +0 -18
  159. package/esm2022/app/modules/rich-text/rich-text-capabilities.model.mjs +0 -2
  160. package/esm2022/app/modules/rich-text/rich-text.component.mjs +0 -209
  161. package/esm2022/app/modules/scroll-to-top/particle-scroll-to-top.module.mjs +0 -24
  162. package/esm2022/app/modules/scroll-to-top/scroll-to-top.component.mjs +0 -49
  163. package/esm2022/app/modules/slideover/particle-slideover.module.mjs +0 -24
  164. package/esm2022/app/modules/slideover/slideover.component.mjs +0 -115
  165. package/esm2022/app/modules/slider/slider.component.mjs +0 -243
  166. package/esm2022/app/modules/slider/slider.module.mjs +0 -26
  167. package/esm2022/app/modules/theming/components/theming.component.mjs +0 -86
  168. package/esm2022/app/modules/theming/models/theme.model.mjs +0 -9
  169. package/esm2022/app/modules/theming/services/theme-change-detection.service.mjs +0 -38
  170. package/esm2022/app/modules/theming/services/theming.service.mjs +0 -510
  171. package/esm2022/app/modules/theming/theming.module.mjs +0 -55
  172. package/esm2022/app/modules/toggle-switch/models/toggle-options.model.mjs +0 -2
  173. package/esm2022/app/modules/toggle-switch/toggle-switch.component.mjs +0 -107
  174. package/esm2022/app/modules/toggle-switch/toggle-switch.module.mjs +0 -24
  175. package/esm2022/app/modules/tooltip/tooltip.directive.mjs +0 -381
  176. package/esm2022/app/modules/tooltip/tooltip.module.mjs +0 -18
  177. package/esm2022/app/modules/week-picker/week-picker.component.mjs +0 -511
  178. package/esm2022/app/modules/week-picker/week-picker.module.mjs +0 -40
  179. package/esm2022/app/shared/enums/endpoint-status.enum.mjs +0 -11
  180. package/esm2022/app/shared/interceptors/json.interceptor.mjs +0 -23
  181. package/esm2022/app/shared/models/auditable.model.mjs +0 -2
  182. package/esm2022/app/shared/models/data-list.model.mjs +0 -2
  183. package/esm2022/app/shared/models/id.model.mjs +0 -2
  184. package/esm2022/app/shared/models/observable-container.mjs +0 -15
  185. package/esm2022/app/shared/models/particle-component-text.model.mjs +0 -2
  186. package/esm2022/app/shared/services/base-data.service.mjs +0 -190
  187. package/esm2022/app/shared/services/dialog.service.mjs +0 -50
  188. package/esm2022/app/shared/services/local-storage.service.mjs +0 -60
  189. package/esm2022/entake-particle.mjs +0 -5
  190. package/esm2022/public_api.mjs +0 -98
  191. /package/app/{modules/dropdown → shared}/models/dropdown-option-group.model.d.ts +0 -0
  192. /package/app/{modules/dropdown → shared}/models/dropdown-option.model.d.ts +0 -0
  193. /package/app/{modules/icons → shared}/models/fontawesome-icons-brands.model.d.ts +0 -0
  194. /package/app/{modules/icons → shared}/models/fontawesome-icons-regular.model.d.ts +0 -0
  195. /package/app/{modules/icons → shared}/models/fontawesome-icons-solid.model.d.ts +0 -0
  196. /package/app/{modules/multi-select → shared}/models/multi-select-option-group.model.d.ts +0 -0
  197. /package/app/{modules/multi-select → shared}/models/multi-select-option.model.d.ts +0 -0
  198. /package/app/{modules/notification → shared}/models/notification.model.d.ts +0 -0
  199. /package/app/{modules/icons → shared}/models/particle-icons-brands.model.d.ts +0 -0
  200. /package/app/{modules/icons → shared}/models/particle-icons-regular.model.d.ts +0 -0
  201. /package/app/{modules/icons → shared}/models/particle-icons-solid.model.d.ts +0 -0
  202. /package/app/{modules/rich-text → shared/models}/rich-text-capabilities.model.d.ts +0 -0
  203. /package/app/{modules/theming → shared}/models/theme.model.d.ts +0 -0
  204. /package/app/{modules/toggle-switch → shared}/models/toggle-options.model.d.ts +0 -0
  205. /package/app/{modules/icons → shared}/services/icons.service.d.ts +0 -0
  206. /package/app/{modules/idle-timeout → shared/services}/idle-timer.d.ts +0 -0
  207. /package/app/{modules/theming → shared}/services/theme-change-detection.service.d.ts +0 -0
@@ -1,209 +0,0 @@
1
- import { Component, EventEmitter, forwardRef, Input, Output, ViewEncapsulation } from '@angular/core';
2
- import { Editor } from '@tiptap/core';
3
- import StarterKit from '@tiptap/starter-kit';
4
- import Link from '@tiptap/extension-link';
5
- import Placeholder from '@tiptap/extension-placeholder';
6
- import TextAlign from '@tiptap/extension-text-align';
7
- import Image from '@tiptap/extension-image';
8
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/common";
11
- import * as i2 from "../tooltip/tooltip.directive";
12
- import * as i3 from "ngx-tiptap";
13
- import * as i4 from "@angular/forms";
14
- import * as i5 from "../dialog/dialog.component";
15
- export const RICH_TEXT_VALUE_ACCESSOR = {
16
- provide: NG_VALUE_ACCESSOR,
17
- useExisting: forwardRef(() => RichTextComponent),
18
- multi: true
19
- };
20
- export class RichTextComponent {
21
- placeholder = '';
22
- hideControls = false;
23
- height = '100px';
24
- get readonly() {
25
- return this._editable;
26
- }
27
- set readonly(readonly) {
28
- this._editable = !readonly;
29
- this.editor.setEditable(this._editable);
30
- }
31
- text = {
32
- heading1: 'Heading 1',
33
- heading2: 'Heading 2',
34
- bold: 'Bold',
35
- italic: 'Italic',
36
- strike: 'Strike',
37
- bulletedList: 'Bulleted List',
38
- orderedList: 'Ordered List',
39
- leftAlign: 'Left Align',
40
- centerAlign: 'Center Align',
41
- rightAlign: 'Right Align',
42
- justifyAlign: 'Justify Align',
43
- setLink: 'Set Link',
44
- removeLink: 'Remove Link',
45
- clearFormat: 'Clear Format',
46
- modifyLink: 'Modify Link',
47
- cancel: 'Cancel',
48
- update: 'Update',
49
- url: 'URL',
50
- addImage: 'Add Image',
51
- modifyImage: 'Modify Image'
52
- };
53
- capabilities = {
54
- heading: true,
55
- textDecoration: true,
56
- list: true,
57
- alignment: true,
58
- link: true,
59
- images: false
60
- };
61
- borderRadius = '0px';
62
- textChanged = new EventEmitter();
63
- showDialog = null;
64
- dialogLink = null;
65
- dialogType = null;
66
- /**
67
- * Function called on change
68
- */
69
- onChange;
70
- /**
71
- * Function called on touch
72
- */
73
- onTouched;
74
- _value = null;
75
- _editable = true;
76
- window = window;
77
- editor = new Editor({
78
- extensions: [
79
- StarterKit,
80
- Link.configure({
81
- openOnClick: false,
82
- HTMLAttributes: {
83
- class: 'rich-text-link',
84
- target: '_blank'
85
- },
86
- }),
87
- TextAlign.configure({
88
- types: ['heading', 'paragraph'],
89
- }),
90
- Placeholder.configure({
91
- placeholder: () => this.placeholder
92
- }),
93
- Image
94
- ],
95
- editorProps: {
96
- attributes: {
97
- class: '',
98
- spellcheck: 'true',
99
- },
100
- },
101
- enablePasteRules: [Link, StarterKit, TextAlign]
102
- });
103
- get value() {
104
- return this._value;
105
- }
106
- set value(value) {
107
- if (value === '<p></p>') {
108
- return;
109
- }
110
- if (value !== this._value) {
111
- this._value = value;
112
- if (this.onChange) {
113
- this.onChange(value);
114
- }
115
- }
116
- }
117
- ngAfterViewInit() {
118
- this.editor.setEditable(this._editable);
119
- this.editor.on('update', ({ editor }) => {
120
- this.textChanged.emit({
121
- textValue: editor.getText(),
122
- htmlValue: this._value
123
- });
124
- });
125
- }
126
- onBlur() {
127
- if (this.onTouched) {
128
- this.onTouched();
129
- }
130
- }
131
- writeValue(value) {
132
- if (value !== this._value) {
133
- this._value = value;
134
- }
135
- }
136
- registerOnChange(fn) {
137
- this.onChange = fn;
138
- }
139
- registerOnTouched(fn) {
140
- this.onTouched = fn;
141
- }
142
- setDisabledState(isDisabled) {
143
- this.editor.setEditable(isDisabled);
144
- }
145
- openLinkDialog() {
146
- const previousUrl = this.editor.getAttributes('link').href;
147
- this.showDialog = {};
148
- this.dialogLink = previousUrl;
149
- this.dialogType = 'link';
150
- }
151
- openImageDialog() {
152
- const previousUrl = this.editor.getAttributes('image').src;
153
- this.showDialog = {};
154
- this.dialogLink = previousUrl;
155
- this.dialogType = 'image';
156
- }
157
- changeEditorLink(action) {
158
- switch (action) {
159
- case 'remove':
160
- this.editor.chain().focus().extendMarkRange('link').unsetLink().run();
161
- break;
162
- case 'save':
163
- if (this.dialogType === 'link') {
164
- this.editor.chain().focus().extendMarkRange('link').setLink({
165
- href: this.dialogLink,
166
- target: this.dialogLink && !this.dialogLink.startsWith('/') ? '_blank' : '_self'
167
- }).run();
168
- }
169
- else if (this.dialogType === 'image') {
170
- this.editor.chain().focus().setImage({ src: this.dialogLink }).run();
171
- }
172
- break;
173
- default:
174
- console.log(action);
175
- }
176
- this.dialogLink = null;
177
- this.dialogType = null;
178
- this.showDialog = null;
179
- }
180
- focus(position) {
181
- if (!position) {
182
- position = 'start';
183
- }
184
- this.editor.commands.focus(position);
185
- }
186
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: RichTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
187
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: RichTextComponent, selector: "particle-rich-text", inputs: { placeholder: "placeholder", hideControls: "hideControls", height: "height", readonly: "readonly", text: "text", capabilities: "capabilities", borderRadius: "borderRadius" }, outputs: { textChanged: "textChanged" }, providers: [RICH_TEXT_VALUE_ACCESSOR], ngImport: i0, template: "<div class=\"row_block width100 content_color ptl_brdr_radius ptl_brdr_color ptl_brdr_size\" style=\"overflow: hidden\">\r\n <ng-container *ngIf=\"!this.hideControls && this.editor.isEditable\">\r\n <div class=\"row ptl_input_bg_color ptl_brdr_color ptl_brdr_size border_bottom wrap hide_element\">\r\n <ng-container *ngIf=\"capabilities.heading\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"heading1\"\r\n [attr.aria-label]=\"text.heading1\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right5 mar_left5 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.heading1\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleHeading({ level: 1 }).run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('heading', { level: 1 }) }\"\r\n >\r\n <i class=\"fas fa-header fa-fw\"></i>1\r\n </button>\r\n <button\r\n id=\"heading2\"\r\n [attr.aria-label]=\"text.heading2\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right5 mar_left5 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.heading2\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleHeading({ level: 2 }).run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('heading', { level: 2 }) }\"\r\n >\r\n <i class=\"fas fa-header fa-fw\"></i>2\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.textDecoration\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"bold\"\r\n [attr.aria-label]=\"text.bold\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.bold\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleBold().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('bold') }\"\r\n >\r\n <i class=\"fas fa-bold fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"italic\"\r\n [attr.aria-label]=\"text.italic\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.italic\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleItalic().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('italic') }\"\r\n >\r\n <i class=\"fas fa-italic fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"strike\"\r\n [attr.aria-label]=\"text.strike\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.strike\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleStrike().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('strike') }\"\r\n >\r\n <i class=\"fas fa-strikethrough fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.list\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"bullet-list\"\r\n [attr.aria-label]=\"text.bulletedList\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.bulletedList\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleBulletList().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('bullet-list') }\"\r\n >\r\n <i class=\"fas fa-list fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"ordered-list\"\r\n [attr.aria-label]=\"text.orderedList\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.orderedList\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleOrderedList().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('ordered-list') }\"\r\n >\r\n <i class=\"fas fa-list-ol fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.alignment\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"left-align\"\r\n [attr.aria-label]=\"text.leftAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.leftAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('left').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'left' }) }\"\r\n >\r\n <i class=\"fas fa-align-left fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"center-align\"\r\n [attr.aria-label]=\"text.centerAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.centerAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('center').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'center' }) }\"\r\n >\r\n <i class=\"fas fa-align-center fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"right-align\"\r\n [attr.aria-label]=\"text.rightAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.rightAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('right').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'right' }) }\"\r\n >\r\n <i class=\"fas fa-align-right fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"justify-align\"\r\n [attr.aria-label]=\"text.justifyAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.justifyAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('justify').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'justify' }) }\"\r\n >\r\n <i class=\"fas fa-align-justify fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.link\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"link\"\r\n [attr.aria-label]=\"text.setLink\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.setLink\" tooltipPosition=\"top\"\r\n (click)=\"openLinkDialog()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('link') }\"\r\n >\r\n <i class=\"fas fa-link fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"unlink\"\r\n [attr.aria-label]=\"text.removeLink\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.removeLink\" tooltipPosition=\"top\"\r\n (click)=\"this.editor.isActive('link') ? changeEditorLink('remove') : null\"\r\n [disabled]=\"!this.editor.isActive('link')\"\r\n >\r\n <i class=\"fas fa-unlink fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.images\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"image\"\r\n [attr.aria-label]=\"this.editor.isActive('image') ? text.modifyImage : text.addImage\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n (click)=\"openImageDialog()\"\r\n [particleTooltip]=\"this.editor.isActive('image') ? text.modifyImage : text.addImage\"\r\n tooltipPosition=\"top\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('image') }\"\r\n >\r\n <i class=\"far fa-image fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <div class=\"col v_center pad_5\">\r\n <button\r\n id=\"clear-format\"\r\n [attr.aria-label]=\"text.clearFormat\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.clearFormat\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().clearNodes().unsetAllMarks().run()\"\r\n >\r\n <i class=\"fas fa-text-slash fa-fw\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"pad_10 ptl_input_text_size scroll_yauto\" [style.height]=\"this.height\">\r\n <tiptap-editor [editor]=\"editor\" [(ngModel)]=\"value\"></tiptap-editor>\r\n </div>\r\n</div>\r\n\r\n<particle-dialog\r\n [title]=\"dialogType === 'link' ? text.modifyLink : text.modifyImage\"\r\n titleClass=\"header_color min_h40\"\r\n [object]=\"showDialog\"\r\n [allowClose]=\"false\"\r\n [borderRadius]=\"borderRadius\"\r\n width=\"400px\"\r\n height=\"150px\"\r\n>\r\n <div class=\"pad_15 ptl_input_text_size\" [style.height]=\"window.innerWidth > 768 ? '70px' : 'calc(100% - 40px)'\">\r\n <input class=\"access input md\"\r\n [(ngModel)]=\"dialogLink\"\r\n [attr.aria-label]=\"text.url\"\r\n placeholder=\"eg. https://www.google.com\"\r\n (keyup.enter)=\"changeEditorLink('save')\"\r\n />\r\n </div>\r\n <div class=\"col min_h40 footer_color\">\r\n <div class=\"row center_right pad_right15 pad_left15\">\r\n <div class=\"col\">\r\n <button class=\"access btnset clear\" [attr.aria-label]=\"text.cancel\" (click)=\"changeEditorLink('cancel')\">\r\n <div class=\" pad_5\">{{text.cancel}}</div>\r\n </button>\r\n <div class=\"mar_lr5 ptl_brdr_size ptl_brdr_color border_left\">\r\n </div>\r\n <button\r\n type=\"button\"\r\n class=\"access btnset spaced md hov_glow ok_button_color ptl_brdr_radius\"\r\n [attr.aria-label]=\"text.update\"\r\n (click)=\"changeEditorLink('save')\"\r\n >\r\n <div class=\"brdr border_right mar_right5 pad_right5\"><i class=\"fas fa-check\"></i></div>\r\n <div>{{text.update}}</div>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</particle-dialog>\r\n", styles: [".ProseMirror:focus{outline:none}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none}.chip_size{display:flex;align-items:center;justify-content:center;width:22px;height:22px;max-width:22px;max-height:22px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TooltipDirective, selector: "[particleTooltip]", inputs: ["particleTooltip", "tooltipPosition", "tooltipDisabled"] }, { kind: "directive", type: i3.EditorDirective, selector: "tiptap[editor], [tiptap][editor], tiptap-editor[editor], [tiptapEditor][editor]", inputs: ["editor", "outputFormat"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.DialogComponent, selector: "particle-dialog", inputs: ["object", "title", "titleClass", "showTitle", "allowClose", "bodyClass", "height", "width", "borderRadius", "text"], outputs: ["closed", "opened"] }], encapsulation: i0.ViewEncapsulation.None });
188
- }
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: RichTextComponent, decorators: [{
190
- type: Component,
191
- args: [{ selector: 'particle-rich-text', providers: [RICH_TEXT_VALUE_ACCESSOR], encapsulation: ViewEncapsulation.None, template: "<div class=\"row_block width100 content_color ptl_brdr_radius ptl_brdr_color ptl_brdr_size\" style=\"overflow: hidden\">\r\n <ng-container *ngIf=\"!this.hideControls && this.editor.isEditable\">\r\n <div class=\"row ptl_input_bg_color ptl_brdr_color ptl_brdr_size border_bottom wrap hide_element\">\r\n <ng-container *ngIf=\"capabilities.heading\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"heading1\"\r\n [attr.aria-label]=\"text.heading1\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right5 mar_left5 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.heading1\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleHeading({ level: 1 }).run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('heading', { level: 1 }) }\"\r\n >\r\n <i class=\"fas fa-header fa-fw\"></i>1\r\n </button>\r\n <button\r\n id=\"heading2\"\r\n [attr.aria-label]=\"text.heading2\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right5 mar_left5 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.heading2\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleHeading({ level: 2 }).run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('heading', { level: 2 }) }\"\r\n >\r\n <i class=\"fas fa-header fa-fw\"></i>2\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.textDecoration\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"bold\"\r\n [attr.aria-label]=\"text.bold\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.bold\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleBold().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('bold') }\"\r\n >\r\n <i class=\"fas fa-bold fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"italic\"\r\n [attr.aria-label]=\"text.italic\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.italic\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleItalic().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('italic') }\"\r\n >\r\n <i class=\"fas fa-italic fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"strike\"\r\n [attr.aria-label]=\"text.strike\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.strike\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleStrike().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('strike') }\"\r\n >\r\n <i class=\"fas fa-strikethrough fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.list\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"bullet-list\"\r\n [attr.aria-label]=\"text.bulletedList\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.bulletedList\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleBulletList().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('bullet-list') }\"\r\n >\r\n <i class=\"fas fa-list fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"ordered-list\"\r\n [attr.aria-label]=\"text.orderedList\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.orderedList\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().toggleOrderedList().run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('ordered-list') }\"\r\n >\r\n <i class=\"fas fa-list-ol fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.alignment\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"left-align\"\r\n [attr.aria-label]=\"text.leftAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.leftAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('left').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'left' }) }\"\r\n >\r\n <i class=\"fas fa-align-left fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"center-align\"\r\n [attr.aria-label]=\"text.centerAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.centerAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('center').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'center' }) }\"\r\n >\r\n <i class=\"fas fa-align-center fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"right-align\"\r\n [attr.aria-label]=\"text.rightAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.rightAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('right').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'right' }) }\"\r\n >\r\n <i class=\"fas fa-align-right fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"justify-align\"\r\n [attr.aria-label]=\"text.justifyAlign\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.justifyAlign\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().setTextAlign('justify').run()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive({ textAlign: 'justify' }) }\"\r\n >\r\n <i class=\"fas fa-align-justify fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.link\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"link\"\r\n [attr.aria-label]=\"text.setLink\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.setLink\" tooltipPosition=\"top\"\r\n (click)=\"openLinkDialog()\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('link') }\"\r\n >\r\n <i class=\"fas fa-link fa-fw\"></i>\r\n </button>\r\n <button\r\n id=\"unlink\"\r\n [attr.aria-label]=\"text.removeLink\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.removeLink\" tooltipPosition=\"top\"\r\n (click)=\"this.editor.isActive('link') ? changeEditorLink('remove') : null\"\r\n [disabled]=\"!this.editor.isActive('link')\"\r\n >\r\n <i class=\"fas fa-unlink fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"capabilities.images\">\r\n <div class=\"col v_center ptl_brdr_color ptl_brdr_size border_right pad_5\">\r\n <button\r\n id=\"image\"\r\n [attr.aria-label]=\"this.editor.isActive('image') ? text.modifyImage : text.addImage\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n (click)=\"openImageDialog()\"\r\n [particleTooltip]=\"this.editor.isActive('image') ? text.modifyImage : text.addImage\"\r\n tooltipPosition=\"top\"\r\n [ngClass]=\"{ 'ok_button_color': this.editor.isActive('image') }\"\r\n >\r\n <i class=\"far fa-image fa-fw\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <div class=\"col v_center pad_5\">\r\n <button\r\n id=\"clear-format\"\r\n [attr.aria-label]=\"text.clearFormat\"\r\n class=\"access btnset chip_size content_color_dark_1 mar_right3 mar_left3 ptl_brdr_radius hov_darken\"\r\n [particleTooltip]=\"text.clearFormat\" tooltipPosition=\"top\"\r\n (click)=\"editor.chain().focus().clearNodes().unsetAllMarks().run()\"\r\n >\r\n <i class=\"fas fa-text-slash fa-fw\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"pad_10 ptl_input_text_size scroll_yauto\" [style.height]=\"this.height\">\r\n <tiptap-editor [editor]=\"editor\" [(ngModel)]=\"value\"></tiptap-editor>\r\n </div>\r\n</div>\r\n\r\n<particle-dialog\r\n [title]=\"dialogType === 'link' ? text.modifyLink : text.modifyImage\"\r\n titleClass=\"header_color min_h40\"\r\n [object]=\"showDialog\"\r\n [allowClose]=\"false\"\r\n [borderRadius]=\"borderRadius\"\r\n width=\"400px\"\r\n height=\"150px\"\r\n>\r\n <div class=\"pad_15 ptl_input_text_size\" [style.height]=\"window.innerWidth > 768 ? '70px' : 'calc(100% - 40px)'\">\r\n <input class=\"access input md\"\r\n [(ngModel)]=\"dialogLink\"\r\n [attr.aria-label]=\"text.url\"\r\n placeholder=\"eg. https://www.google.com\"\r\n (keyup.enter)=\"changeEditorLink('save')\"\r\n />\r\n </div>\r\n <div class=\"col min_h40 footer_color\">\r\n <div class=\"row center_right pad_right15 pad_left15\">\r\n <div class=\"col\">\r\n <button class=\"access btnset clear\" [attr.aria-label]=\"text.cancel\" (click)=\"changeEditorLink('cancel')\">\r\n <div class=\" pad_5\">{{text.cancel}}</div>\r\n </button>\r\n <div class=\"mar_lr5 ptl_brdr_size ptl_brdr_color border_left\">\r\n </div>\r\n <button\r\n type=\"button\"\r\n class=\"access btnset spaced md hov_glow ok_button_color ptl_brdr_radius\"\r\n [attr.aria-label]=\"text.update\"\r\n (click)=\"changeEditorLink('save')\"\r\n >\r\n <div class=\"brdr border_right mar_right5 pad_right5\"><i class=\"fas fa-check\"></i></div>\r\n <div>{{text.update}}</div>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</particle-dialog>\r\n", styles: [".ProseMirror:focus{outline:none}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none}.chip_size{display:flex;align-items:center;justify-content:center;width:22px;height:22px;max-width:22px;max-height:22px}\n"] }]
192
- }], propDecorators: { placeholder: [{
193
- type: Input
194
- }], hideControls: [{
195
- type: Input
196
- }], height: [{
197
- type: Input
198
- }], readonly: [{
199
- type: Input
200
- }], text: [{
201
- type: Input
202
- }], capabilities: [{
203
- type: Input
204
- }], borderRadius: [{
205
- type: Input
206
- }], textChanged: [{
207
- type: Output
208
- }] } });
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9yaWNoLXRleHQvcmljaC10ZXh0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9yaWNoLXRleHQvcmljaC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sVUFBVSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFDO0FBQzFDLE9BQU8sV0FBVyxNQUFNLCtCQUErQixDQUFDO0FBQ3hELE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JELE9BQU8sS0FBSyxNQUFNLHlCQUF5QixDQUFDO0FBQzVDLE9BQU8sRUFBdUIsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQUl2RSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBUTtJQUMzQyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7SUFDaEQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBVUYsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixXQUFXLEdBQUcsRUFBRSxDQUFDO0lBR2pCLFlBQVksR0FBRyxLQUFLLENBQUM7SUFHckIsTUFBTSxHQUFHLE9BQU8sQ0FBQztJQUVqQixJQUNJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLFFB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Q0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7Z0JBQ3RFLENBQUM7Z0JBQ0QsTUFBTTtZQUNSO2dCQUNFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBVyxDQUFDO1FBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBVyxDQUFDO1FBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBVyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBYztRQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3JCLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQzt1R0EvTVUsaUJBQWlCOzJGQUFqQixpQkFBaUIsOFFBSmpCLENBQUMsd0JBQXdCLENBQUMsMEJDckJ2QyxrMVdBZ09BOzsyRkR2TWEsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLG9CQUFvQixhQUduQixDQUFDLHdCQUF3QixDQUFDLGlCQUN0QixpQkFBaUIsQ0FBQyxJQUFJOzhCQU1yQyxXQUFXO3NCQURWLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJRixRQUFRO3NCQURYLEtBQUs7Z0JBV04sSUFBSTtzQkFESCxLQUFLO2dCQXlCTixZQUFZO3NCQURYLEtBQUs7Z0JBV04sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtFZGl0b3J9IGZyb20gJ0B0aXB0YXAvY29yZSc7XHJcbmltcG9ydCBTdGFydGVyS2l0IGZyb20gJ0B0aXB0YXAvc3RhcnRlci1raXQnO1xyXG5pbXBvcnQgTGluayBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi1saW5rJztcclxuaW1wb3J0IFBsYWNlaG9sZGVyIGZyb20gJ0B0aXB0YXAvZXh0ZW5zaW9uLXBsYWNlaG9sZGVyJztcclxuaW1wb3J0IFRleHRBbGlnbiBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi10ZXh0LWFsaWduJztcclxuaW1wb3J0IEltYWdlIGZyb20gJ0B0aXB0YXAvZXh0ZW5zaW9uLWltYWdlJztcclxuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtSaWNoVGV4dEVkaXRvclRleHR9IGZyb20gJy4uLy4uL3NoYXJlZC9tb2RlbHMvcGFydGljbGUtY29tcG9uZW50LXRleHQubW9kZWwnO1xyXG5pbXBvcnQge1JpY2hUZXh0Q2FwYWJpbGl0aWVzfSBmcm9tICcuL3JpY2gtdGV4dC1jYXBhYmlsaXRpZXMubW9kZWwnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFJJQ0hfVEVYVF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xyXG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJpY2hUZXh0Q29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwYXJ0aWNsZS1yaWNoLXRleHQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yaWNoLXRleHQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JpY2gtdGV4dC5jb21wb25lbnQuY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbUklDSF9URVhUX1ZBTFVFX0FDQ0VTU09SXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcblxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmljaFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcGxhY2Vob2xkZXIgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBoaWRlQ29udHJvbHMgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBoZWlnaHQgPSAnMTAwcHgnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCByZWFkb25seSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9lZGl0YWJsZTtcclxuICB9XHJcblxyXG4gIHNldCByZWFkb25seShyZWFkb25seTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZWRpdGFibGUgPSAhcmVhZG9ubHk7XHJcbiAgICB0aGlzLmVkaXRvci5zZXRFZGl0YWJsZSh0aGlzLl9lZGl0YWJsZSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHRleHQ6IFJpY2hUZXh0RWRpdG9yVGV4dCA9IHtcclxuICAgIGhlYWRpbmcxOiAnSGVhZGluZyAxJyxcclxuICAgIGhlYWRpbmcyOiAnSGVhZGluZyAyJyxcclxuICAgIGJvbGQ6ICdCb2xkJyxcclxuICAgIGl0YWxpYzogJ0l0YWxpYycsXHJcbiAgICBzdHJpa2U6ICdTdHJpa2UnLFxyXG4gICAgYnVsbGV0ZWRMaXN0OiAnQnVsbGV0ZWQgTGlzdCcsXHJcbiAgICBvcmRlcmVkTGlzdDogJ09yZGVyZWQgTGlzdCcsXHJcbiAgICBsZWZ0QWxpZ246ICdMZWZ0IEFsaWduJyxcclxuICAgIGNlbnRlckFsaWduOiAnQ2VudGVyIEFsaWduJyxcclxuICAgIHJpZ2h0QWxpZ246ICdSaWdodCBBbGlnbicsXHJcbiAgICBqdXN0aWZ5QWxpZ246ICdKdXN0aWZ5IEFsaWduJyxcclxuICAgIHNldExpbms6ICdTZXQgTGluaycsXHJcbiAgICByZW1vdmVMaW5rOiAnUmVtb3ZlIExpbmsnLFxyXG4gICAgY2xlYXJGb3JtYXQ6ICdDbGVhciBGb3JtYXQnLFxyXG4gICAgbW9kaWZ5TGluazogJ01vZGlmeSBMaW5rJyxcclxuICAgIGNhbmNlbDogJ0NhbmNlbCcsXHJcbiAgICB1cGRhdGU6ICdVcGRhdGUnLFxyXG4gICAgdXJsOiAnVVJMJyxcclxuICAgIGFkZEltYWdlOiAnQWRkIEltYWdlJyxcclxuICAgIG1vZGlmeUltYWdlOiAnTW9kaWZ5IEltYWdlJ1xyXG4gIH0gYXMgUmljaFRleHRFZGl0b3JUZXh0O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNhcGFiaWxpdGllcyA9IHtcclxuICAgIGhlYWRpbmc6IHRydWUsXHJcbiAgICB0ZXh0RGVjb3JhdGlvbjogdHJ1ZSxcclxuICAgIGxpc3Q6IHRydWUsXHJcbiAgICBhbGlnbm1lbnQ6IHRydWUsXHJcbiAgICBsaW5rOiB0cnVlLFxyXG4gICAgaW1hZ2VzOiBmYWxzZVxyXG4gIH0gYXMgUmljaFRleHRDYXBhYmlsaXRpZXM7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYm9yZGVyUmFkaXVzID0gJzBweCc7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHRleHRDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICBodG1sVmFsdWU6IHN0cmluZyxcclxuICAgIHRleHRWYWx1ZTogc3RyaW5nXHJcbiAgfT4oKTtcclxuXHJcbiAgc2hvd0RpYWxvZzogYW55ID0gbnVsbDtcclxuICBkaWFsb2dMaW5rOiBzdHJpbmcgPSBudWxsIGFzIGFueTtcclxuICBkaWFsb2dUeXBlOiBzdHJpbmcgPSBudWxsIGFzIGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogRnVuY3Rpb24gY2FsbGVkIG9uIGNoYW5nZVxyXG4gICAqL1xyXG4gIG9uQ2hhbmdlOiAoKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQpIHwgdW5kZWZpbmVkO1xyXG5cclxuICAvKipcclxuICAgKiBGdW5jdGlvbiBjYWxsZWQgb24gdG91Y2hcclxuICAgKi9cclxuICBvblRvdWNoZWQ6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcclxuXHJcbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyA9IG51bGwgYXMgYW55O1xyXG4gIHByaXZhdGUgX2VkaXRhYmxlID0gdHJ1ZTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHdpbmRvdyA9IHdpbmRvdztcclxuXHJcbiAgZWRpdG9yID0gbmV3IEVkaXRvcih7XHJcbiAgICBleHRlbnNpb25zOiBbXHJcbiAgICAgIFN0YXJ0ZXJLaXQsXHJcbiAgICAgIExpbmsuY29uZmlndXJlKHtcclxuICAgICAgICBvcGVuT25DbGljazogZmFsc2UsXHJcbiAgICAgICAgSFRNTEF0dHJpYnV0ZXM6IHtcclxuICAgICAgICAgIGNsYXNzOiAncmljaC10ZXh0LWxpbmsnLFxyXG4gICAgICAgICAgdGFyZ2V0OiAnX2JsYW5rJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pLFxyXG4gICAgICBUZXh0QWxpZ24uY29uZmlndXJlKHtcclxuICAgICAgICB0eXBlczogWydoZWFkaW5nJywgJ3BhcmFncmFwaCddLFxyXG5cclxuICAgICAgfSksXHJcbiAgICAgIFBsYWNlaG9sZGVyLmNvbmZpZ3VyZSh7XHJcbiAgICAgICAgcGxhY2Vob2xkZXI6ICgpID0+IHRoaXMucGxhY2Vob2xkZXJcclxuICAgICAgfSksXHJcbiAgICAgIEltYWdlXHJcbiAgICBdLFxyXG4gICAgZWRpdG9yUHJvcHM6IHtcclxuICAgICAgYXR0cmlidXRlczoge1xyXG4gICAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgICBzcGVsbGNoZWNrOiAndHJ1ZScsXHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgZW5hYmxlUGFzdGVSdWxlczogW0xpbmssIFN0YXJ0ZXJLaXQsIFRleHRBbGlnbl1cclxuICB9KTtcclxuXHJcbiAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbHVlID09PSAnPHA+PC9wPicpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcclxuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcclxuICAgICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0b3Iuc2V0RWRpdGFibGUodGhpcy5fZWRpdGFibGUpO1xyXG5cclxuICAgIHRoaXMuZWRpdG9yLm9uKCd1cGRhdGUnLCAoe2VkaXRvcn0pID0+IHtcclxuICAgICAgdGhpcy50ZXh0Q2hhbmdlZC5lbWl0KHtcclxuICAgICAgICB0ZXh0VmFsdWU6IGVkaXRvci5nZXRUZXh0KCksXHJcbiAgICAgICAgaHRtbFZhbHVlOiB0aGlzLl92YWx1ZVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25CbHVyKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMub25Ub3VjaGVkKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcclxuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0b3Iuc2V0RWRpdGFibGUoaXNEaXNhYmxlZCk7XHJcbiAgfVxyXG5cclxuICBvcGVuTGlua0RpYWxvZygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHByZXZpb3VzVXJsID0gdGhpcy5lZGl0b3IuZ2V0QXR0cmlidXRlcygnbGluaycpLmhyZWY7XHJcbiAgICB0aGlzLnNob3dEaWFsb2cgPSB7fTtcclxuICAgIHRoaXMuZGlhbG9nTGluayA9IHByZXZpb3VzVXJsO1xyXG4gICAgdGhpcy5kaWFsb2dUeXBlID0gJ2xpbmsnO1xyXG4gIH1cclxuXHJcbiAgb3BlbkltYWdlRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcHJldmlvdXNVcmwgPSB0aGlzLmVkaXRvci5nZXRBdHRyaWJ1dGVzKCdpbWFnZScpLnNyYztcclxuICAgIHRoaXMuc2hvd0RpYWxvZyA9IHt9O1xyXG4gICAgdGhpcy5kaWFsb2dMaW5rID0gcHJldmlvdXNVcmw7XHJcbiAgICB0aGlzLmRpYWxvZ1R5cGUgPSAnaW1hZ2UnO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlRWRpdG9yTGluayhhY3Rpb246IHN0cmluZyk6IHZvaWQge1xyXG4gICAgc3dpdGNoIChhY3Rpb24pIHtcclxuICAgICAgY2FzZSAncmVtb3ZlJzpcclxuICAgICAgICB0aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkuZXh0ZW5kTWFya1JhbmdlKCdsaW5rJykudW5zZXRMaW5rKCkucnVuKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3NhdmUnOlxyXG4gICAgICAgIGlmICh0aGlzLmRpYWxvZ1R5cGUgPT09ICdsaW5rJykge1xyXG4gICAgICAgICAgdGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLmV4dGVuZE1hcmtSYW5nZSgnbGluaycpLnNldExpbmsoe1xyXG4gICAgICAgICAgICBocmVmOiB0aGlzLmRpYWxvZ0xpbmssXHJcbiAgICAgICAgICAgIHRhcmdldDogdGhpcy5kaWFsb2dMaW5rICYmICF0aGlzLmRpYWxvZ0xpbmsuc3RhcnRzV2l0aCgnLycpID8gJ19ibGFuaycgOiAnX3NlbGYnXHJcbiAgICAgICAgICB9KS5ydW4oKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGlhbG9nVHlwZSA9PT0gJ2ltYWdlJykge1xyXG4gICAgICAgICAgdGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnNldEltYWdlKHsgc3JjOiB0aGlzLmRpYWxvZ0xpbmsgfSkucnVuKClcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgY29uc29sZS5sb2coYWN0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRpYWxvZ0xpbmsgPSBudWxsIGFzIGFueTtcclxuICAgIHRoaXMuZGlhbG9nVHlwZSA9IG51bGwgYXMgYW55O1xyXG4gICAgdGhpcy5zaG93RGlhbG9nID0gbnVsbCBhcyBhbnk7XHJcbiAgfVxyXG5cclxuICBmb2N1cyhwb3NpdGlvbj86IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKCFwb3NpdGlvbikge1xyXG4gICAgICBwb3NpdGlvbiA9ICdzdGFydCc7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5lZGl0b3IuY29tbWFuZHMuZm9jdXMocG9zaXRpb24pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd19ibG9jayB3aWR0aDEwMCBjb250ZW50X2NvbG9yIHB0bF9icmRyX3JhZGl1cyBwdGxfYnJkcl9jb2xvciBwdGxfYnJkcl9zaXplXCIgc3R5bGU9XCJvdmVyZmxvdzogaGlkZGVuXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF0aGlzLmhpZGVDb250cm9scyAmJiB0aGlzLmVkaXRvci5pc0VkaXRhYmxlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IHB0bF9pbnB1dF9iZ19jb2xvciBwdGxfYnJkcl9jb2xvciBwdGxfYnJkcl9zaXplIGJvcmRlcl9ib3R0b20gd3JhcCBoaWRlX2VsZW1lbnRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhcGFiaWxpdGllcy5oZWFkaW5nXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbCB2X2NlbnRlciBwdGxfYnJkcl9jb2xvciBwdGxfYnJkcl9zaXplIGJvcmRlcl9yaWdodCBwYWRfNVwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBpZD1cImhlYWRpbmcxXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmhlYWRpbmcxXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNoaXBfc2l6ZSBjb250ZW50X2NvbG9yX2RhcmtfMSBtYXJfcmlnaHQ1IG1hcl9sZWZ0NSBwdGxfYnJkcl9yYWRpdXMgaG92X2RhcmtlblwiXHJcbiAgICAgICAgICAgIFtwYXJ0aWNsZVRvb2x0aXBdPVwidGV4dC5oZWFkaW5nMVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJlZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZUhlYWRpbmcoeyBsZXZlbDogMSB9KS5ydW4oKVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ29rX2J1dHRvbl9jb2xvcic6IHRoaXMuZWRpdG9yLmlzQWN0aXZlKCdoZWFkaW5nJywgeyBsZXZlbDogMSB9KSB9XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtaGVhZGVyIGZhLWZ3XCI+PC9pPjFcclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBpZD1cImhlYWRpbmcyXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmhlYWRpbmcyXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNoaXBfc2l6ZSBjb250ZW50X2NvbG9yX2RhcmtfMSBtYXJfcmlnaHQ1IG1hcl9sZWZ0NSBwdGxfYnJkcl9yYWRpdXMgaG92X2RhcmtlblwiXHJcbiAgICAgICAgICAgIFtwYXJ0aWNsZVRvb2x0aXBdPVwidGV4dC5oZWFkaW5nMlwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJlZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZUhlYWRpbmcoeyBsZXZlbDogMiB9KS5ydW4oKVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ29rX2J1dHRvbl9jb2xvcic6IHRoaXMuZWRpdG9yLmlzQWN0aXZlKCdoZWFkaW5nJywgeyBsZXZlbDogMiB9KSB9XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtaGVhZGVyIGZhLWZ3XCI+PC9pPjJcclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhcGFiaWxpdGllcy50ZXh0RGVjb3JhdGlvblwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wgdl9jZW50ZXIgcHRsX2JyZHJfY29sb3IgcHRsX2JyZHJfc2l6ZSBib3JkZXJfcmlnaHQgcGFkXzVcIj5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgaWQ9XCJib2xkXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmJvbGRcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG5zZXQgY2hpcF9zaXplIGNvbnRlbnRfY29sb3JfZGFya18xIG1hcl9yaWdodDMgbWFyX2xlZnQzIHB0bF9icmRyX3JhZGl1cyBob3ZfZGFya2VuXCJcclxuICAgICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0ZXh0LmJvbGRcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVCb2xkKCkucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSgnYm9sZCcpIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1ib2xkIGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwiaXRhbGljXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0Lml0YWxpY1wiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBjaGlwX3NpemUgY29udGVudF9jb2xvcl9kYXJrXzEgbWFyX3JpZ2h0MyBtYXJfbGVmdDMgcHRsX2JyZHJfcmFkaXVzIGhvdl9kYXJrZW5cIlxyXG4gICAgICAgICAgICBbcGFydGljbGVUb29sdGlwXT1cInRleHQuaXRhbGljXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImVkaXRvci5jaGFpbigpLmZvY3VzKCkudG9nZ2xlSXRhbGljKCkucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSgnaXRhbGljJykgfVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWl0YWxpYyBmYS1md1wiPjwvaT5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBpZD1cInN0cmlrZVwiXHJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGV4dC5zdHJpa2VcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG5zZXQgY2hpcF9zaXplIGNvbnRlbnRfY29sb3JfZGFya18xIG1hcl9yaWdodDMgbWFyX2xlZnQzIHB0bF9icmRyX3JhZGl1cyBob3ZfZGFya2VuXCJcclxuICAgICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0ZXh0LnN0cmlrZVwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJlZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZVN0cmlrZSgpLnJ1bigpXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnb2tfYnV0dG9uX2NvbG9yJzogdGhpcy5lZGl0b3IuaXNBY3RpdmUoJ3N0cmlrZScpIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1zdHJpa2V0aHJvdWdoIGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmxpc3RcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sIHZfY2VudGVyIHB0bF9icmRyX2NvbG9yIHB0bF9icmRyX3NpemUgYm9yZGVyX3JpZ2h0IHBhZF81XCI+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwiYnVsbGV0LWxpc3RcIlxyXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRleHQuYnVsbGV0ZWRMaXN0XCJcclxuICAgICAgICAgICAgY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNoaXBfc2l6ZSBjb250ZW50X2NvbG9yX2RhcmtfMSBtYXJfcmlnaHQzIG1hcl9sZWZ0MyBwdGxfYnJkcl9yYWRpdXMgaG92X2RhcmtlblwiXHJcbiAgICAgICAgICAgIFtwYXJ0aWNsZVRvb2x0aXBdPVwidGV4dC5idWxsZXRlZExpc3RcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVCdWxsZXRMaXN0KCkucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSgnYnVsbGV0LWxpc3QnKSB9XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbGlzdCBmYS1md1wiPjwvaT5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBpZD1cIm9yZGVyZWQtbGlzdFwiXHJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGV4dC5vcmRlcmVkTGlzdFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBjaGlwX3NpemUgY29udGVudF9jb2xvcl9kYXJrXzEgbWFyX3JpZ2h0MyBtYXJfbGVmdDMgcHRsX2JyZHJfcmFkaXVzIGhvdl9kYXJrZW5cIlxyXG4gICAgICAgICAgICBbcGFydGljbGVUb29sdGlwXT1cInRleHQub3JkZXJlZExpc3RcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVPcmRlcmVkTGlzdCgpLnJ1bigpXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnb2tfYnV0dG9uX2NvbG9yJzogdGhpcy5lZGl0b3IuaXNBY3RpdmUoJ29yZGVyZWQtbGlzdCcpIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1saXN0LW9sIGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmFsaWdubWVudFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wgdl9jZW50ZXIgcHRsX2JyZHJfY29sb3IgcHRsX2JyZHJfc2l6ZSBib3JkZXJfcmlnaHQgcGFkXzVcIj5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgaWQ9XCJsZWZ0LWFsaWduXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmxlZnRBbGlnblwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBjaGlwX3NpemUgY29udGVudF9jb2xvcl9kYXJrXzEgbWFyX3JpZ2h0MyBtYXJfbGVmdDMgcHRsX2JyZHJfcmFkaXVzIGhvdl9kYXJrZW5cIlxyXG4gICAgICAgICAgICBbcGFydGljbGVUb29sdGlwXT1cInRleHQubGVmdEFsaWduXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImVkaXRvci5jaGFpbigpLmZvY3VzKCkuc2V0VGV4dEFsaWduKCdsZWZ0JykucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSh7IHRleHRBbGlnbjogJ2xlZnQnIH0pIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1hbGlnbi1sZWZ0IGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwiY2VudGVyLWFsaWduXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmNlbnRlckFsaWduXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNoaXBfc2l6ZSBjb250ZW50X2NvbG9yX2RhcmtfMSBtYXJfcmlnaHQzIG1hcl9sZWZ0MyBwdGxfYnJkcl9yYWRpdXMgaG92X2RhcmtlblwiXHJcbiAgICAgICAgICAgIFtwYXJ0aWNsZVRvb2x0aXBdPVwidGV4dC5jZW50ZXJBbGlnblwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJlZGl0b3IuY2hhaW4oKS5mb2N1cygpLnNldFRleHRBbGlnbignY2VudGVyJykucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSh7IHRleHRBbGlnbjogJ2NlbnRlcicgfSkgfVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWFsaWduLWNlbnRlciBmYS1md1wiPjwvaT5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBpZD1cInJpZ2h0LWFsaWduXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LnJpZ2h0QWxpZ25cIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG5zZXQgY2hpcF9zaXplIGNvbnRlbnRfY29sb3JfZGFya18xIG1hcl9yaWdodDMgbWFyX2xlZnQzIHB0bF9icmRyX3JhZGl1cyBob3ZfZGFya2VuXCJcclxuICAgICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0ZXh0LnJpZ2h0QWxpZ25cIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZWRpdG9yLmNoYWluKCkuZm9jdXMoKS5zZXRUZXh0QWxpZ24oJ3JpZ2h0JykucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSh7IHRleHRBbGlnbjogJ3JpZ2h0JyB9KSB9XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtYWxpZ24tcmlnaHQgZmEtZndcIj48L2k+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgaWQ9XCJqdXN0aWZ5LWFsaWduXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0Lmp1c3RpZnlBbGlnblwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBjaGlwX3NpemUgY29udGVudF9jb2xvcl9kYXJrXzEgbWFyX3JpZ2h0MyBtYXJfbGVmdDMgcHRsX2JyZHJfcmFkaXVzIGhvdl9kYXJrZW5cIlxyXG4gICAgICAgICAgICBbcGFydGljbGVUb29sdGlwXT1cInRleHQuanVzdGlmeUFsaWduXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImVkaXRvci5jaGFpbigpLmZvY3VzKCkuc2V0VGV4dEFsaWduKCdqdXN0aWZ5JykucnVuKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSh7IHRleHRBbGlnbjogJ2p1c3RpZnknIH0pIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1hbGlnbi1qdXN0aWZ5IGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmxpbmtcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sIHZfY2VudGVyIHB0bF9icmRyX2NvbG9yIHB0bF9icmRyX3NpemUgYm9yZGVyX3JpZ2h0IHBhZF81XCI+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwibGlua1wiXHJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGV4dC5zZXRMaW5rXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNoaXBfc2l6ZSBjb250ZW50X2NvbG9yX2RhcmtfMSBtYXJfcmlnaHQzIG1hcl9sZWZ0MyBwdGxfYnJkcl9yYWRpdXMgaG92X2RhcmtlblwiXHJcbiAgICAgICAgICAgIFtwYXJ0aWNsZVRvb2x0aXBdPVwidGV4dC5zZXRMaW5rXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5MaW5rRGlhbG9nKClcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdva19idXR0b25fY29sb3InOiB0aGlzLmVkaXRvci5pc0FjdGl2ZSgnbGluaycpIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1saW5rIGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwidW5saW5rXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LnJlbW92ZUxpbmtcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG5zZXQgY2hpcF9zaXplIGNvbnRlbnRfY29sb3JfZGFya18xIG1hcl9yaWdodDMgbWFyX2xlZnQzIHB0bF9icmRyX3JhZGl1cyBob3ZfZGFya2VuXCJcclxuICAgICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0ZXh0LnJlbW92ZUxpbmtcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwidGhpcy5lZGl0b3IuaXNBY3RpdmUoJ2xpbmsnKSA/IGNoYW5nZUVkaXRvckxpbmsoJ3JlbW92ZScpIDogbnVsbFwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhdGhpcy5lZGl0b3IuaXNBY3RpdmUoJ2xpbmsnKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXVubGluayBmYS1md1wiPjwvaT5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhcGFiaWxpdGllcy5pbWFnZXNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sIHZfY2VudGVyIHB0bF9icmRyX2NvbG9yIHB0bF9icmRyX3NpemUgYm9yZGVyX3JpZ2h0IHBhZF81XCI+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGlkPVwiaW1hZ2VcIlxyXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRoaXMuZWRpdG9yLmlzQWN0aXZlKCdpbWFnZScpID8gdGV4dC5tb2RpZnlJbWFnZSA6IHRleHQuYWRkSW1hZ2VcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG5zZXQgY2hpcF9zaXplIGNvbnRlbnRfY29sb3JfZGFya18xIG1hcl9yaWdodDMgbWFyX2xlZnQzIHB0bF9icmRyX3JhZGl1cyBob3ZfZGFya2VuXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5JbWFnZURpYWxvZygpXCJcclxuICAgICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0aGlzLmVkaXRvci5pc0FjdGl2ZSgnaW1hZ2UnKSA/IHRleHQubW9kaWZ5SW1hZ2UgOiB0ZXh0LmFkZEltYWdlXCJcclxuICAgICAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnb2tfYnV0dG9uX2NvbG9yJzogdGhpcy5lZGl0b3IuaXNBY3RpdmUoJ2ltYWdlJykgfVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLWltYWdlIGZhLWZ3XCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sIHZfY2VudGVyIHBhZF81XCI+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgaWQ9XCJjbGVhci1mb3JtYXRcIlxyXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmNsZWFyRm9ybWF0XCJcclxuICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBjaGlwX3NpemUgY29udGVudF9jb2xvcl9kYXJrXzEgbWFyX3JpZ2h0MyBtYXJfbGVmdDMgcHRsX2JyZHJfcmFkaXVzIGhvdl9kYXJrZW5cIlxyXG4gICAgICAgICAgW3BhcnRpY2xlVG9vbHRpcF09XCJ0ZXh0LmNsZWFyRm9ybWF0XCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgIChjbGljayk9XCJlZGl0b3IuY2hhaW4oKS5mb2N1cygpLmNsZWFyTm9kZXMoKS51bnNldEFsbE1hcmtzKCkucnVuKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXRleHQtc2xhc2ggZmEtZndcIj48L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPGRpdiBjbGFzcz1cInBhZF8xMCBwdGxfaW5wdXRfdGV4dF9zaXplIHNjcm9sbF95YXV0b1wiIFtzdHlsZS5oZWlnaHRdPVwidGhpcy5oZWlnaHRcIj5cclxuICAgIDx0aXB0YXAtZWRpdG9yIFtlZGl0b3JdPVwiZWRpdG9yXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiPjwvdGlwdGFwLWVkaXRvcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48cGFydGljbGUtZGlhbG9nXHJcbiAgW3RpdGxlXT1cImRpYWxvZ1R5cGUgPT09ICdsaW5rJyA/IHRleHQubW9kaWZ5TGluayA6IHRleHQubW9kaWZ5SW1hZ2VcIlxyXG4gIHRpdGxlQ2xhc3M9XCJoZWFkZXJfY29sb3IgbWluX2g0MFwiXHJcbiAgW29iamVjdF09XCJzaG93RGlhbG9nXCJcclxuICBbYWxsb3dDbG9zZV09XCJmYWxzZVwiXHJcbiAgW2JvcmRlclJhZGl1c109XCJib3JkZXJSYWRpdXNcIlxyXG4gIHdpZHRoPVwiNDAwcHhcIlxyXG4gIGhlaWdodD1cIjE1MHB4XCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJwYWRfMTUgcHRsX2lucHV0X3RleHRfc2l6ZVwiIFtzdHlsZS5oZWlnaHRdPVwid2luZG93LmlubmVyV2lkdGggPiA3NjggPyAnNzBweCcgOiAnY2FsYygxMDAlIC0gNDBweCknXCI+XHJcbiAgICA8aW5wdXQgY2xhc3M9XCJhY2Nlc3MgaW5wdXQgbWRcIlxyXG4gICAgICAgICAgIFsobmdNb2RlbCldPVwiZGlhbG9nTGlua1wiXHJcbiAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LnVybFwiXHJcbiAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlZy4gaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbVwiXHJcbiAgICAgICAgICAgKGtleXVwLmVudGVyKT1cImNoYW5nZUVkaXRvckxpbmsoJ3NhdmUnKVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJjb2wgbWluX2g0MCBmb290ZXJfY29sb3JcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgY2VudGVyX3JpZ2h0IHBhZF9yaWdodDE1IHBhZF9sZWZ0MTVcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNsZWFyXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmNhbmNlbFwiIChjbGljayk9XCJjaGFuZ2VFZGl0b3JMaW5rKCdjYW5jZWwnKVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIiBwYWRfNVwiPnt7dGV4dC5jYW5jZWx9fTwvZGl2PlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYXJfbHI1IHB0bF9icmRyX3NpemUgcHRsX2JyZHJfY29sb3IgYm9yZGVyX2xlZnRcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgIGNsYXNzPVwiYWNjZXNzIGJ0bnNldCBzcGFjZWQgbWQgaG92X2dsb3cgb2tfYnV0dG9uX2NvbG9yIHB0bF9icmRyX3JhZGl1c1wiXHJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRleHQudXBkYXRlXCJcclxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VFZGl0b3JMaW5rKCdzYXZlJylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJicmRyIGJvcmRlcl9yaWdodCBtYXJfcmlnaHQ1IHBhZF9yaWdodDVcIj48aSBjbGFzcz1cImZhcyBmYS1jaGVja1wiPjwvaT48L2Rpdj5cclxuICAgICAgICAgIDxkaXY+e3t0ZXh0LnVwZGF0ZX19PC9kaXY+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvcGFydGljbGUtZGlhbG9nPlxyXG4iXX0=
@@ -1,24 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { ScrollToTopComponent } from './scroll-to-top.component';
4
- import * as i0 from "@angular/core";
5
- export class ParticleScrollToTopModule {
6
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleScrollToTopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: ParticleScrollToTopModule, declarations: [ScrollToTopComponent], imports: [CommonModule], exports: [ScrollToTopComponent] });
8
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleScrollToTopModule, imports: [CommonModule] });
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleScrollToTopModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- declarations: [
14
- ScrollToTopComponent
15
- ],
16
- exports: [
17
- ScrollToTopComponent
18
- ],
19
- imports: [
20
- CommonModule,
21
- ]
22
- }]
23
- }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydGljbGUtc2Nyb2xsLXRvLXRvcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvc2Nyb2xsLXRvLXRvcC9wYXJ0aWNsZS1zY3JvbGwtdG8tdG9wLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7QUFhL0QsTUFBTSxPQUFPLHlCQUF5Qjt1R0FBekIseUJBQXlCO3dHQUF6Qix5QkFBeUIsaUJBVGxDLG9CQUFvQixhQU1wQixZQUFZLGFBSFosb0JBQW9CO3dHQU1YLHlCQUF5QixZQUhsQyxZQUFZOzsyRkFHSCx5QkFBeUI7a0JBWHJDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7U2Nyb2xsVG9Ub3BDb21wb25lbnR9IGZyb20gJy4vc2Nyb2xsLXRvLXRvcC5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNjcm9sbFRvVG9wQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTY3JvbGxUb1RvcENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFBhcnRpY2xlU2Nyb2xsVG9Ub3BNb2R1bGUge1xyXG59XHJcbiJdfQ==
@@ -1,49 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class ScrollToTopComponent {
6
- renderer;
7
- content = null;
8
- scrollDistance = 500;
9
- bottomOffset = 50;
10
- text = {
11
- scrollToTop: 'Scroll back to the top of the page'
12
- };
13
- $scrollTop = new BehaviorSubject(0);
14
- _listener;
15
- constructor(renderer) {
16
- this.renderer = renderer;
17
- }
18
- ngAfterViewInit() {
19
- this._listener = this.renderer.listen(this.content, 'scroll', () => {
20
- this.$scrollTop.next(this.content.scrollTop);
21
- });
22
- }
23
- ngOnDestroy() {
24
- this._listener();
25
- }
26
- scrollToTop() {
27
- if (this.content) {
28
- this.content.scroll({
29
- top: 0,
30
- behavior: 'smooth'
31
- });
32
- }
33
- }
34
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ScrollToTopComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
35
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: ScrollToTopComponent, selector: "particle-scroll-to-top", inputs: { content: "content", scrollDistance: "scrollDistance", bottomOffset: "bottomOffset", text: "text" }, ngImport: i0, template: "<ng-container *ngIf=\"$scrollTop | async as scrollTop\">\r\n <div [style.visibility]=\"scrollTop > scrollDistance ? 'visible' : 'hidden'\"\r\n [style.opacity]=\"scrollTop > scrollDistance ? '1' : '0'\"\r\n [style.bottom]=\"bottomOffset + 'px'\"\r\n class=\"particle_scroll_button mar_right10 mar_bot15\">\r\n <button (click)=\"scrollToTop()\"\r\n class=\"access btn pad_10 brad_3 brdr content_color\"\r\n type=\"button\"\r\n [attr.aria-label]=\"text.scrollToTop\">\r\n <span class=\"icon slide_up\"><i class=\"fas fa-chevron-up\"></i></span>\r\n </button>\r\n </div>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ScrollToTopComponent, decorators: [{
38
- type: Component,
39
- args: [{ selector: 'particle-scroll-to-top', template: "<ng-container *ngIf=\"$scrollTop | async as scrollTop\">\r\n <div [style.visibility]=\"scrollTop > scrollDistance ? 'visible' : 'hidden'\"\r\n [style.opacity]=\"scrollTop > scrollDistance ? '1' : '0'\"\r\n [style.bottom]=\"bottomOffset + 'px'\"\r\n class=\"particle_scroll_button mar_right10 mar_bot15\">\r\n <button (click)=\"scrollToTop()\"\r\n class=\"access btn pad_10 brad_3 brdr content_color\"\r\n type=\"button\"\r\n [attr.aria-label]=\"text.scrollToTop\">\r\n <span class=\"icon slide_up\"><i class=\"fas fa-chevron-up\"></i></span>\r\n </button>\r\n </div>\r\n</ng-container>\r\n" }]
40
- }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { content: [{
41
- type: Input
42
- }], scrollDistance: [{
43
- type: Input
44
- }], bottomOffset: [{
45
- type: Input
46
- }], text: [{
47
- type: Input
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLXRvcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvc2Nyb2xsLXRvLXRvcC9zY3JvbGwtdG8tdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zY3JvbGwtdG8tdG9wL3Njcm9sbC10by10b3AuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsS0FBSyxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7QUFPckMsTUFBTSxPQUFPLG9CQUFvQjtJQXFCdEI7SUFsQlQsT0FBTyxHQUFnQixJQUFXLENBQUM7SUFHbkMsY0FBYyxHQUFHLEdBQUcsQ0FBQztJQUdyQixZQUFZLEdBQUcsRUFBRSxDQUFDO0lBR2xCLElBQUksR0FBb0I7UUFDdEIsV0FBVyxFQUFFLG9DQUFvQztLQUMvQixDQUFDO0lBRXJCLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUVwQyxTQUFTLENBQU07SUFFdkIsWUFDUyxRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQ3pCLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDakUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ2xCLEdBQUcsRUFBRSxDQUFDO2dCQUNOLFFBQVEsRUFBRSxRQUFRO2FBQ25CLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO3VHQXpDVSxvQkFBb0I7MkZBQXBCLG9CQUFvQiw0S0NSakMsK29CQWFBOzsyRkRMYSxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0Usd0JBQXdCOzhFQU1sQyxPQUFPO3NCQUROLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgUmVuZGVyZXIyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1Njcm9sbFRvVG9wVGV4dH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9wYXJ0aWNsZS1jb21wb25lbnQtdGV4dC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3BhcnRpY2xlLXNjcm9sbC10by10b3AnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zY3JvbGwtdG8tdG9wLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2Nyb2xsVG9Ub3BDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbnRlbnQ6IEhUTUxFbGVtZW50ID0gbnVsbCBhcyBhbnk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2Nyb2xsRGlzdGFuY2UgPSA1MDA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYm90dG9tT2Zmc2V0ID0gNTA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGV4dDogU2Nyb2xsVG9Ub3BUZXh0ID0ge1xyXG4gICAgc2Nyb2xsVG9Ub3A6ICdTY3JvbGwgYmFjayB0byB0aGUgdG9wIG9mIHRoZSBwYWdlJ1xyXG4gIH0gYXMgU2Nyb2xsVG9Ub3BUZXh0O1xyXG5cclxuICAkc2Nyb2xsVG9wID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xyXG5cclxuICBwcml2YXRlIF9saXN0ZW5lcjogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyXHJcbiAgKSB7fVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9saXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuY29udGVudCwgJ3Njcm9sbCcsICgpID0+IHtcclxuICAgICAgdGhpcy4kc2Nyb2xsVG9wLm5leHQodGhpcy5jb250ZW50LnNjcm9sbFRvcCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbGlzdGVuZXIoKTtcclxuICB9XHJcblxyXG4gIHNjcm9sbFRvVG9wKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29udGVudCkge1xyXG4gICAgICB0aGlzLmNvbnRlbnQuc2Nyb2xsKHtcclxuICAgICAgICB0b3A6IDAsXHJcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiRzY3JvbGxUb3AgfCBhc3luYyBhcyBzY3JvbGxUb3BcIj5cclxuICA8ZGl2IFtzdHlsZS52aXNpYmlsaXR5XT1cInNjcm9sbFRvcCA+IHNjcm9sbERpc3RhbmNlID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIlxyXG4gICAgICAgW3N0eWxlLm9wYWNpdHldPVwic2Nyb2xsVG9wID4gc2Nyb2xsRGlzdGFuY2UgPyAnMScgOiAnMCdcIlxyXG4gICAgICAgW3N0eWxlLmJvdHRvbV09XCJib3R0b21PZmZzZXQgKyAncHgnXCJcclxuICAgICAgIGNsYXNzPVwicGFydGljbGVfc2Nyb2xsX2J1dHRvbiBtYXJfcmlnaHQxMCBtYXJfYm90MTVcIj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cInNjcm9sbFRvVG9wKClcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjY2VzcyBidG4gcGFkXzEwIGJyYWRfMyBicmRyIGNvbnRlbnRfY29sb3JcIlxyXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LnNjcm9sbFRvVG9wXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBzbGlkZV91cFwiPjxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tdXBcIj48L2k+PC9zcGFuPlxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
@@ -1,24 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { SlideoverComponent } from './slideover.component';
4
- import * as i0 from "@angular/core";
5
- export class ParticleSlideoverModule {
6
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleSlideoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: ParticleSlideoverModule, declarations: [SlideoverComponent], imports: [CommonModule], exports: [SlideoverComponent] });
8
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleSlideoverModule, imports: [CommonModule] });
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ParticleSlideoverModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- declarations: [
14
- SlideoverComponent
15
- ],
16
- exports: [
17
- SlideoverComponent
18
- ],
19
- imports: [
20
- CommonModule
21
- ]
22
- }]
23
- }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydGljbGUtc2xpZGVvdmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zbGlkZW92ZXIvcGFydGljbGUtc2xpZGVvdmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFhM0QsTUFBTSxPQUFPLHVCQUF1Qjt1R0FBdkIsdUJBQXVCO3dHQUF2Qix1QkFBdUIsaUJBVGhDLGtCQUFrQixhQU1sQixZQUFZLGFBSFosa0JBQWtCO3dHQU1ULHVCQUF1QixZQUhoQyxZQUFZOzsyRkFHSCx1QkFBdUI7a0JBWG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNsaWRlb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vc2xpZGVvdmVyLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgU2xpZGVvdmVyQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTbGlkZW92ZXJDb21wb25lbnRcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFBhcnRpY2xlU2xpZGVvdmVyTW9kdWxlIHtcclxufVxyXG4iXX0=
@@ -1,115 +0,0 @@
1
- import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- export class SlideoverComponent {
5
- _position = 'right';
6
- slideoverOpen = false;
7
- visible = false;
8
- set position(position) {
9
- if (position && ['left', 'right', 'top', 'bottom'].indexOf(position.toLowerCase()) > -1) {
10
- this._position = position.toLowerCase();
11
- }
12
- else {
13
- this._position = 'right';
14
- }
15
- }
16
- get position() {
17
- return this._position;
18
- }
19
- modal = true;
20
- width = '300px';
21
- height = '100px';
22
- bgClass = 'content_color';
23
- text = {
24
- close: 'Close Slideover'
25
- };
26
- /**
27
- * Breakpoint that will make the container take over the screen when it's crossed.
28
- */
29
- breakpoint = 769;
30
- opened = new EventEmitter();
31
- closed = new EventEmitter();
32
- overlay = null;
33
- breakpointExceeded = false;
34
- constructor() {
35
- }
36
- onResize(event) {
37
- this._determineBreakpointExceeded(event.target.innerWidth);
38
- }
39
- _determineBreakpointExceeded(innerWidth) {
40
- if (this.breakpoint) {
41
- this.breakpointExceeded = innerWidth < this.breakpoint || innerWidth < +this.width.substring(0, this.width.length - 2);
42
- }
43
- }
44
- open() {
45
- this.addModalMask();
46
- this.slideoverOpen = true;
47
- this.visible = true;
48
- this.opened.emit();
49
- }
50
- close() {
51
- this.removeModalMask();
52
- this.slideoverOpen = false;
53
- this.closed.emit();
54
- setTimeout(() => this.visible = false, 200);
55
- }
56
- toggle() {
57
- if (this.slideoverOpen) {
58
- this.close();
59
- }
60
- else {
61
- this.open();
62
- }
63
- }
64
- addModalMask() {
65
- if (this.modal) {
66
- this.overlay.nativeElement.classList.add('particle_dialog_overlay');
67
- document.body.classList.add('scroll_none');
68
- }
69
- }
70
- removeModalMask() {
71
- if (this.modal) {
72
- this.overlay.nativeElement.classList.remove('particle_dialog_overlay');
73
- document.body.classList.remove('scroll_none');
74
- }
75
- }
76
- ngOnDestroy() {
77
- this.removeModalMask();
78
- }
79
- ngAfterViewInit() {
80
- setTimeout(() => {
81
- this._determineBreakpointExceeded(window.innerWidth);
82
- }, 100);
83
- }
84
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SlideoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
85
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: SlideoverComponent, selector: "particle-slideover", inputs: { position: "position", modal: "modal", width: "width", height: "height", bgClass: "bgClass", text: "text", breakpoint: "breakpoint" }, outputs: { opened: "opened", closed: "closed" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "overlay", first: true, predicate: ["overlay"], descendants: true }], ngImport: i0, template: "<div #overlay (click)=\"close()\"></div>\r\n<div\r\n [ngClass]=\"bgClass + ' ' + (slideoverOpen ? 'slideover_active_' + position : 'slideover_inactive_' + position) + ' slideover-panel ' + position\"\r\n [style.width]=\"position === 'right' || position === 'left' ? (breakpointExceeded ? '100%' : width) : null\"\r\n [style.height]=\"position === 'top' || position === 'bottom' ? (breakpointExceeded ? '100%' : height) : null\"\r\n [style.left]=\"position === 'left' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : width) : null\"\r\n [style.right]=\"position === 'right' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : width) : null\"\r\n [style.bottom]=\"position === 'bottom' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : height) : null\"\r\n [style.top]=\"position === 'top' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : height) : null\"\r\n [style.visibility]=\"!visible ? 'hidden': 'visible'\"\r\n [attr.aria-hidden]=\"!slideoverOpen\"\r\n>\r\n <div class=\"push_close_bar\">\r\n <button class=\"access btnset clear\"\r\n [attr.aria-label]=\"text.close\"\r\n (click)=\"close()\">\r\n <div class=\"circle_20px ptl_brdr_color ptl_brdr_size ptl_input_bg_color\">\r\n <i class=\"fas fa-times\"></i>\r\n </div>\r\n </button>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".slideover-panel{position:fixed;transition:transform .3s;display:flex;flex-direction:column;z-index:var(--z-dialog)}.slideover-panel.left{top:0;left:0;height:100%}.slideover-panel.right{top:0;right:0;height:100%}.slideover-panel.top{top:0;left:0;width:100%}.slideover-panel.bottom{bottom:0;left:0;width:100%}.slideover_inactive_left,.slideover_active_left{transition:left .2s ease-in-out}.slideover_inactive_right,.slideover_active_right{transition:right .2s ease-in-out}.slideover_inactive_top,.slideover_active_top{transition:top .2s ease-in-out}.slideover_inactive_bottom,.slideover_active_bottom{transition:bottom .2s ease-in-out}.push_close_bar{position:absolute;right:0;top:0;width:45px;height:45px;z-index:var(--z-dialog);display:flex;justify-content:center;align-items:center}.data_hide_button{float:right;display:flex;align-items:center;justify-content:center;font-size:9pt;min-height:20px;height:20px;min-width:20px;width:20px;border-radius:50%;cursor:pointer;padding:0;transition:all .2s ease-in-out;background-color:#ffffffe6;color:#0006;border:1px solid rgba(0,0,0,.1)}.data_hide_button:hover{background-color:#0000004d;color:#fffc;border:1px solid rgba(0,0,0,.1)}.particle_dialog_overlay{position:fixed;display:block;width:100%;height:100%;inset:0;background-color:#78787866;z-index:var(--z-dialog)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
86
- }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SlideoverComponent, decorators: [{
88
- type: Component,
89
- args: [{ selector: 'particle-slideover', template: "<div #overlay (click)=\"close()\"></div>\r\n<div\r\n [ngClass]=\"bgClass + ' ' + (slideoverOpen ? 'slideover_active_' + position : 'slideover_inactive_' + position) + ' slideover-panel ' + position\"\r\n [style.width]=\"position === 'right' || position === 'left' ? (breakpointExceeded ? '100%' : width) : null\"\r\n [style.height]=\"position === 'top' || position === 'bottom' ? (breakpointExceeded ? '100%' : height) : null\"\r\n [style.left]=\"position === 'left' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : width) : null\"\r\n [style.right]=\"position === 'right' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : width) : null\"\r\n [style.bottom]=\"position === 'bottom' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : height) : null\"\r\n [style.top]=\"position === 'top' && !slideoverOpen ? '-' + (breakpointExceeded ? '100%' : height) : null\"\r\n [style.visibility]=\"!visible ? 'hidden': 'visible'\"\r\n [attr.aria-hidden]=\"!slideoverOpen\"\r\n>\r\n <div class=\"push_close_bar\">\r\n <button class=\"access btnset clear\"\r\n [attr.aria-label]=\"text.close\"\r\n (click)=\"close()\">\r\n <div class=\"circle_20px ptl_brdr_color ptl_brdr_size ptl_input_bg_color\">\r\n <i class=\"fas fa-times\"></i>\r\n </div>\r\n </button>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".slideover-panel{position:fixed;transition:transform .3s;display:flex;flex-direction:column;z-index:var(--z-dialog)}.slideover-panel.left{top:0;left:0;height:100%}.slideover-panel.right{top:0;right:0;height:100%}.slideover-panel.top{top:0;left:0;width:100%}.slideover-panel.bottom{bottom:0;left:0;width:100%}.slideover_inactive_left,.slideover_active_left{transition:left .2s ease-in-out}.slideover_inactive_right,.slideover_active_right{transition:right .2s ease-in-out}.slideover_inactive_top,.slideover_active_top{transition:top .2s ease-in-out}.slideover_inactive_bottom,.slideover_active_bottom{transition:bottom .2s ease-in-out}.push_close_bar{position:absolute;right:0;top:0;width:45px;height:45px;z-index:var(--z-dialog);display:flex;justify-content:center;align-items:center}.data_hide_button{float:right;display:flex;align-items:center;justify-content:center;font-size:9pt;min-height:20px;height:20px;min-width:20px;width:20px;border-radius:50%;cursor:pointer;padding:0;transition:all .2s ease-in-out;background-color:#ffffffe6;color:#0006;border:1px solid rgba(0,0,0,.1)}.data_hide_button:hover{background-color:#0000004d;color:#fffc;border:1px solid rgba(0,0,0,.1)}.particle_dialog_overlay{position:fixed;display:block;width:100%;height:100%;inset:0;background-color:#78787866;z-index:var(--z-dialog)}\n"] }]
90
- }], ctorParameters: () => [], propDecorators: { position: [{
91
- type: Input
92
- }], modal: [{
93
- type: Input
94
- }], width: [{
95
- type: Input
96
- }], height: [{
97
- type: Input
98
- }], bgClass: [{
99
- type: Input
100
- }], text: [{
101
- type: Input
102
- }], breakpoint: [{
103
- type: Input
104
- }], opened: [{
105
- type: Output
106
- }], closed: [{
107
- type: Output
108
- }], overlay: [{
109
- type: ViewChild,
110
- args: ['overlay']
111
- }], onResize: [{
112
- type: HostListener,
113
- args: ['window:resize', ['$event']]
114
- }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVvdmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zbGlkZW92ZXIvc2xpZGVvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zbGlkZW92ZXIvc2xpZGVvdmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7O0FBUXZCLE1BQU0sT0FBTyxrQkFBa0I7SUFFckIsU0FBUyxHQUFHLE9BQU8sQ0FBQztJQUU1QixhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFFaEIsSUFDSSxRQUFRLENBQUMsUUFBZ0I7UUFDM0IsSUFBSSxRQUFRLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN4RixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFHRCxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBR2IsS0FBSyxHQUFHLE9BQU8sQ0FBQztJQUdoQixNQUFNLEdBQUcsT0FBTyxDQUFDO0lBR2pCLE9BQU8sR0FBRyxlQUFlLENBQUM7SUFHMUIsSUFBSSxHQUFrQjtRQUNwQixLQUFLLEVBQUUsaUJBQWlCO0tBQ1IsQ0FBQztJQUVuQjs7T0FFRztJQUVILFVBQVUsR0FBRyxHQUFHLENBQUM7SUFHakIsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFHakMsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFHakMsT0FBTyxHQUFlLElBQVcsQ0FBQztJQUVsQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFFM0I7SUFDQSxDQUFDO0lBR0QsUUFBUSxDQUFDLEtBQVU7UUFDakIsSUFBSSxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVPLDRCQUE0QixDQUFDLFVBQWtCO1FBQ3JELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekgsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuQixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQztZQUNwRSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBQ3ZFLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELGVBQWU7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLDRCQUE0QixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN0RCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO3VHQWpIVSxrQkFBa0I7MkZBQWxCLGtCQUFrQiw2WkNuQi9CLG0yQ0F1QkE7OzJGREphLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxvQkFBb0I7d0RBWTFCLFFBQVE7c0JBRFgsS0FBSztnQkFjTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQVNOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixNQUFNO3NCQURMLE1BQU07Z0JBSVAsTUFBTTtzQkFETCxNQUFNO2dCQUlQLE9BQU87c0JBRE4sU0FBUzt1QkFBQyxTQUFTO2dCQVNwQixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE91dHB1dCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U2xpZGVvdmVyVGV4dH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9wYXJ0aWNsZS1jb21wb25lbnQtdGV4dC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3BhcnRpY2xlLXNsaWRlb3ZlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NsaWRlb3Zlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2xpZGVvdmVyLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2xpZGVvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgcHJpdmF0ZSBfcG9zaXRpb24gPSAncmlnaHQnO1xyXG5cclxuICBzbGlkZW92ZXJPcGVuID0gZmFsc2U7XHJcbiAgdmlzaWJsZSA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBwb3NpdGlvbihwb3NpdGlvbjogc3RyaW5nKSB7XHJcbiAgICBpZiAocG9zaXRpb24gJiYgWydsZWZ0JywgJ3JpZ2h0JywgJ3RvcCcsICdib3R0b20nXS5pbmRleE9mKHBvc2l0aW9uLnRvTG93ZXJDYXNlKCkpID4gLTEpIHtcclxuICAgICAgdGhpcy5fcG9zaXRpb24gPSBwb3NpdGlvbi50b0xvd2VyQ2FzZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fcG9zaXRpb24gPSAncmlnaHQnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IHBvc2l0aW9uKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIG1vZGFsID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICB3aWR0aCA9ICczMDBweCc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaGVpZ2h0ID0gJzEwMHB4JztcclxuXHJcbiAgQElucHV0KClcclxuICBiZ0NsYXNzID0gJ2NvbnRlbnRfY29sb3InO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRleHQ6IFNsaWRlb3ZlclRleHQgPSB7XHJcbiAgICBjbG9zZTogJ0Nsb3NlIFNsaWRlb3ZlcidcclxuICB9IGFzIFNsaWRlb3ZlclRleHQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIEJyZWFrcG9pbnQgdGhhdCB3aWxsIG1ha2UgdGhlIGNvbnRhaW5lciB0YWtlIG92ZXIgdGhlIHNjcmVlbiB3aGVuIGl0J3MgY3Jvc3NlZC5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIGJyZWFrcG9pbnQgPSA3Njk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIG9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnb3ZlcmxheScpXHJcbiAgb3ZlcmxheTogRWxlbWVudFJlZiA9IG51bGwgYXMgYW55O1xyXG5cclxuICBicmVha3BvaW50RXhjZWVkZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBvblJlc2l6ZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXRlcm1pbmVCcmVha3BvaW50RXhjZWVkZWQoZXZlbnQudGFyZ2V0LmlubmVyV2lkdGgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZGV0ZXJtaW5lQnJlYWtwb2ludEV4Y2VlZGVkKGlubmVyV2lkdGg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYnJlYWtwb2ludCkge1xyXG4gICAgICB0aGlzLmJyZWFrcG9pbnRFeGNlZWRlZCA9IGlubmVyV2lkdGggPCB0aGlzLmJyZWFrcG9pbnQgfHwgaW5uZXJXaWR0aCA8ICt0aGlzLndpZHRoLnN1YnN0cmluZygwLCB0aGlzLndpZHRoLmxlbmd0aCAtIDIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3BlbigpOiB2b2lkIHtcclxuICAgIHRoaXMuYWRkTW9kYWxNYXNrKCk7XHJcbiAgICB0aGlzLnNsaWRlb3Zlck9wZW4gPSB0cnVlO1xyXG4gICAgdGhpcy52aXNpYmxlID0gdHJ1ZTtcclxuICAgIHRoaXMub3BlbmVkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW1vdmVNb2RhbE1hc2soKTtcclxuICAgIHRoaXMuc2xpZGVvdmVyT3BlbiA9IGZhbHNlO1xyXG4gICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy52aXNpYmxlID0gZmFsc2UsIDIwMCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGUoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zbGlkZW92ZXJPcGVuKSB7XHJcbiAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub3BlbigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhZGRNb2RhbE1hc2soKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5tb2RhbCkge1xyXG4gICAgICB0aGlzLm92ZXJsYXkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdwYXJ0aWNsZV9kaWFsb2dfb3ZlcmxheScpO1xyXG4gICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ3Njcm9sbF9ub25lJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZU1vZGFsTWFzaygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm1vZGFsKSB7XHJcbiAgICAgIHRoaXMub3ZlcmxheS5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ3BhcnRpY2xlX2RpYWxvZ19vdmVybGF5Jyk7XHJcbiAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnc2Nyb2xsX25vbmUnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW1vdmVNb2RhbE1hc2soKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9kZXRlcm1pbmVCcmVha3BvaW50RXhjZWVkZWQod2luZG93LmlubmVyV2lkdGgpXHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiAjb3ZlcmxheSAoY2xpY2spPVwiY2xvc2UoKVwiPjwvZGl2PlxyXG48ZGl2XHJcbiAgW25nQ2xhc3NdPVwiYmdDbGFzcyArICcgJyArIChzbGlkZW92ZXJPcGVuID8gJ3NsaWRlb3Zlcl9hY3RpdmVfJyArIHBvc2l0aW9uIDogJ3NsaWRlb3Zlcl9pbmFjdGl2ZV8nICsgcG9zaXRpb24pICsgJyBzbGlkZW92ZXItcGFuZWwgJyArIHBvc2l0aW9uXCJcclxuICBbc3R5bGUud2lkdGhdPVwicG9zaXRpb24gPT09ICdyaWdodCcgfHwgcG9zaXRpb24gPT09ICdsZWZ0JyA/IChicmVha3BvaW50RXhjZWVkZWQgPyAnMTAwJScgOiB3aWR0aCkgOiBudWxsXCJcclxuICBbc3R5bGUuaGVpZ2h0XT1cInBvc2l0aW9uID09PSAndG9wJyB8fCBwb3NpdGlvbiA9PT0gJ2JvdHRvbScgPyAoYnJlYWtwb2ludEV4Y2VlZGVkID8gJzEwMCUnIDogaGVpZ2h0KSA6IG51bGxcIlxyXG4gIFtzdHlsZS5sZWZ0XT1cInBvc2l0aW9uID09PSAnbGVmdCcgJiYgIXNsaWRlb3Zlck9wZW4gPyAnLScgKyAoYnJlYWtwb2ludEV4Y2VlZGVkID8gJzEwMCUnIDogd2lkdGgpIDogbnVsbFwiXHJcbiAgW3N0eWxlLnJpZ2h0XT1cInBvc2l0aW9uID09PSAncmlnaHQnICYmICFzbGlkZW92ZXJPcGVuID8gJy0nICsgKGJyZWFrcG9pbnRFeGNlZWRlZCA/ICcxMDAlJyA6IHdpZHRoKSA6IG51bGxcIlxyXG4gIFtzdHlsZS5ib3R0b21dPVwicG9zaXRpb24gPT09ICdib3R0b20nICYmICFzbGlkZW92ZXJPcGVuID8gJy0nICsgKGJyZWFrcG9pbnRFeGNlZWRlZCA/ICcxMDAlJyA6IGhlaWdodCkgOiBudWxsXCJcclxuICBbc3R5bGUudG9wXT1cInBvc2l0aW9uID09PSAndG9wJyAmJiAhc2xpZGVvdmVyT3BlbiA/ICctJyArIChicmVha3BvaW50RXhjZWVkZWQgPyAnMTAwJScgOiBoZWlnaHQpIDogbnVsbFwiXHJcbiAgW3N0eWxlLnZpc2liaWxpdHldPVwiIXZpc2libGUgPyAnaGlkZGVuJzogJ3Zpc2libGUnXCJcclxuICBbYXR0ci5hcmlhLWhpZGRlbl09XCIhc2xpZGVvdmVyT3BlblwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwicHVzaF9jbG9zZV9iYXJcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJhY2Nlc3MgYnRuc2V0IGNsZWFyXCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0ZXh0LmNsb3NlXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlKClcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNpcmNsZV8yMHB4IHB0bF9icmRyX2NvbG9yIHB0bF9icmRyX3NpemUgcHRsX2lucHV0X2JnX2NvbG9yXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdGltZXNcIj48L2k+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuIl19