@dangl/angular-material-shared 2.2.0 → 2.3.0-beta0037

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 (172) hide show
  1. package/{esm2015/dangl-angular-material-shared.js → esm2020/dangl-angular-material-shared.mjs} +0 -0
  2. package/esm2020/lib/angular-material-shared.module.mjs +38 -0
  3. package/esm2020/lib/components/footer/footer.component.mjs +33 -0
  4. package/esm2020/lib/components/header/header.component.mjs +80 -0
  5. package/esm2020/lib/components/tiny-mce/tiny-mce.component.mjs +104 -0
  6. package/{esm2015/lib/models/footer-options.js → esm2020/lib/models/footer-options.mjs} +0 -0
  7. package/{esm2015/lib/utils/guid-generator.js → esm2020/lib/utils/guid-generator.mjs} +0 -0
  8. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  9. package/fesm2015/dangl-angular-material-shared.mjs +292 -0
  10. package/fesm2015/dangl-angular-material-shared.mjs.map +1 -0
  11. package/fesm2020/dangl-angular-material-shared.mjs +290 -0
  12. package/fesm2020/dangl-angular-material-shared.mjs.map +1 -0
  13. package/{dangl-angular-material-shared.d.ts → index.d.ts} +1 -0
  14. package/lib/angular-material-shared.module.d.ts +12 -0
  15. package/lib/components/footer/footer.component.d.ts +3 -0
  16. package/lib/components/header/header.component.d.ts +3 -0
  17. package/lib/components/tiny-mce/tiny-mce.component.d.ts +3 -0
  18. package/package.json +28 -16
  19. package/styles/material-style.scss +1 -1
  20. package/styles/material-theme.scss +4 -3
  21. package/styles/material-variables.scss +9 -8
  22. package/tinymce-assets/icons/default/icons.js +11 -1
  23. package/tinymce-assets/icons/default/icons.min.js +1 -1
  24. package/tinymce-assets/langs/cs.js +118 -75
  25. package/tinymce-assets/langs/cy.js +61 -18
  26. package/tinymce-assets/langs/da.js +60 -17
  27. package/tinymce-assets/langs/de.js +60 -17
  28. package/tinymce-assets/langs/eo.js +334 -138
  29. package/tinymce-assets/langs/es_ES.js +32 -2
  30. package/tinymce-assets/langs/fa.js +60 -17
  31. package/tinymce-assets/langs/fa_IR.js +31 -1
  32. package/tinymce-assets/langs/fr_FR.js +60 -17
  33. package/tinymce-assets/langs/hu_HU.js +60 -17
  34. package/tinymce-assets/langs/ja.js +60 -17
  35. package/tinymce-assets/langs/ko_KR.js +3 -3
  36. package/tinymce-assets/langs/nb_NO.js +61 -18
  37. package/tinymce-assets/langs/nl.js +60 -17
  38. package/tinymce-assets/langs/pl.js +60 -17
  39. package/tinymce-assets/langs/pt_BR.js +60 -17
  40. package/tinymce-assets/langs/pt_PT.js +60 -17
  41. package/tinymce-assets/langs/ro.js +60 -17
  42. package/tinymce-assets/langs/ro_RO.js +32 -2
  43. package/tinymce-assets/langs/ru.js +60 -17
  44. package/tinymce-assets/langs/ru_RU.js +445 -0
  45. package/tinymce-assets/langs/sl.js +59 -14
  46. package/tinymce-assets/langs/ta.js +60 -17
  47. package/tinymce-assets/langs/ta_IN.js +60 -17
  48. package/tinymce-assets/langs/th_TH.js +60 -17
  49. package/tinymce-assets/langs/tr_TR.js +81 -8
  50. package/tinymce-assets/langs/vi.js +179 -21
  51. package/tinymce-assets/langs/zh_CN.js +60 -17
  52. package/tinymce-assets/plugins/advlist/plugin.js +29 -48
  53. package/tinymce-assets/plugins/advlist/plugin.min.js +2 -2
  54. package/tinymce-assets/plugins/anchor/plugin.js +8 -8
  55. package/tinymce-assets/plugins/anchor/plugin.min.js +2 -2
  56. package/tinymce-assets/plugins/autolink/plugin.js +58 -30
  57. package/tinymce-assets/plugins/autolink/plugin.min.js +2 -2
  58. package/tinymce-assets/plugins/autoresize/plugin.js +25 -12
  59. package/tinymce-assets/plugins/autoresize/plugin.min.js +2 -2
  60. package/tinymce-assets/plugins/autosave/plugin.js +9 -9
  61. package/tinymce-assets/plugins/autosave/plugin.min.js +2 -2
  62. package/tinymce-assets/plugins/bbcode/plugin.js +6 -6
  63. package/tinymce-assets/plugins/bbcode/plugin.min.js +2 -2
  64. package/tinymce-assets/plugins/charmap/plugin.js +39 -49
  65. package/tinymce-assets/plugins/charmap/plugin.min.js +2 -2
  66. package/tinymce-assets/plugins/code/plugin.js +9 -10
  67. package/tinymce-assets/plugins/code/plugin.min.js +2 -2
  68. package/tinymce-assets/plugins/codesample/plugin.js +1921 -1914
  69. package/tinymce-assets/plugins/codesample/plugin.min.js +2 -2
  70. package/tinymce-assets/plugins/colorpicker/plugin.js +1 -2
  71. package/tinymce-assets/plugins/colorpicker/plugin.min.js +2 -2
  72. package/tinymce-assets/plugins/contextmenu/plugin.js +1 -2
  73. package/tinymce-assets/plugins/contextmenu/plugin.min.js +2 -2
  74. package/tinymce-assets/plugins/directionality/plugin.js +186 -53
  75. package/tinymce-assets/plugins/directionality/plugin.min.js +2 -2
  76. package/tinymce-assets/plugins/emoticons/js/emojiimages.js +1572 -1572
  77. package/tinymce-assets/plugins/emoticons/js/emojiimages.min.js +1 -1
  78. package/tinymce-assets/plugins/emoticons/js/emojis.js +1572 -1572
  79. package/tinymce-assets/plugins/emoticons/js/emojis.min.js +1 -1
  80. package/tinymce-assets/plugins/emoticons/plugin.js +231 -200
  81. package/tinymce-assets/plugins/emoticons/plugin.min.js +2 -2
  82. package/tinymce-assets/plugins/fullpage/plugin.js +42 -42
  83. package/tinymce-assets/plugins/fullpage/plugin.min.js +2 -2
  84. package/tinymce-assets/plugins/fullscreen/plugin.js +496 -129
  85. package/tinymce-assets/plugins/fullscreen/plugin.min.js +2 -2
  86. package/tinymce-assets/plugins/help/plugin.js +101 -122
  87. package/tinymce-assets/plugins/help/plugin.min.js +2 -2
  88. package/tinymce-assets/plugins/hr/plugin.js +9 -10
  89. package/tinymce-assets/plugins/hr/plugin.min.js +2 -2
  90. package/tinymce-assets/plugins/image/plugin.js +78 -73
  91. package/tinymce-assets/plugins/image/plugin.min.js +2 -2
  92. package/tinymce-assets/plugins/imagetools/plugin.js +484 -307
  93. package/tinymce-assets/plugins/imagetools/plugin.min.js +2 -2
  94. package/tinymce-assets/plugins/importcss/plugin.js +50 -51
  95. package/tinymce-assets/plugins/importcss/plugin.min.js +2 -2
  96. package/tinymce-assets/plugins/insertdatetime/plugin.js +22 -17
  97. package/tinymce-assets/plugins/insertdatetime/plugin.min.js +2 -2
  98. package/tinymce-assets/plugins/legacyoutput/plugin.js +8 -8
  99. package/tinymce-assets/plugins/legacyoutput/plugin.min.js +2 -2
  100. package/tinymce-assets/plugins/link/plugin.js +131 -125
  101. package/tinymce-assets/plugins/link/plugin.min.js +2 -2
  102. package/tinymce-assets/plugins/lists/plugin.js +256 -229
  103. package/tinymce-assets/plugins/lists/plugin.min.js +2 -2
  104. package/tinymce-assets/plugins/media/plugin.js +124 -147
  105. package/tinymce-assets/plugins/media/plugin.min.js +2 -2
  106. package/tinymce-assets/plugins/nonbreaking/plugin.js +13 -14
  107. package/tinymce-assets/plugins/nonbreaking/plugin.min.js +2 -2
  108. package/tinymce-assets/plugins/noneditable/plugin.js +6 -6
  109. package/tinymce-assets/plugins/noneditable/plugin.min.js +2 -2
  110. package/tinymce-assets/plugins/pagebreak/plugin.js +16 -17
  111. package/tinymce-assets/plugins/pagebreak/plugin.min.js +2 -2
  112. package/tinymce-assets/plugins/paste/plugin.js +196 -157
  113. package/tinymce-assets/plugins/paste/plugin.min.js +2 -2
  114. package/tinymce-assets/plugins/preview/plugin.js +13 -14
  115. package/tinymce-assets/plugins/preview/plugin.min.js +2 -2
  116. package/tinymce-assets/plugins/print/plugin.js +13 -14
  117. package/tinymce-assets/plugins/print/plugin.min.js +2 -2
  118. package/tinymce-assets/plugins/quickbars/plugin.js +33 -48
  119. package/tinymce-assets/plugins/quickbars/plugin.min.js +2 -2
  120. package/tinymce-assets/plugins/save/plugin.js +9 -8
  121. package/tinymce-assets/plugins/save/plugin.min.js +2 -2
  122. package/tinymce-assets/plugins/searchreplace/plugin.js +73 -70
  123. package/tinymce-assets/plugins/searchreplace/plugin.min.js +2 -2
  124. package/tinymce-assets/plugins/spellchecker/plugin.js +22 -23
  125. package/tinymce-assets/plugins/spellchecker/plugin.min.js +2 -2
  126. package/tinymce-assets/plugins/tabfocus/plugin.js +21 -20
  127. package/tinymce-assets/plugins/tabfocus/plugin.min.js +2 -2
  128. package/tinymce-assets/plugins/table/plugin.js +2831 -2264
  129. package/tinymce-assets/plugins/table/plugin.min.js +2 -2
  130. package/tinymce-assets/plugins/template/plugin.js +84 -70
  131. package/tinymce-assets/plugins/template/plugin.min.js +2 -2
  132. package/tinymce-assets/plugins/textcolor/plugin.js +1 -2
  133. package/tinymce-assets/plugins/textcolor/plugin.min.js +2 -2
  134. package/tinymce-assets/plugins/textpattern/plugin.js +76 -96
  135. package/tinymce-assets/plugins/textpattern/plugin.min.js +2 -2
  136. package/tinymce-assets/plugins/toc/plugin.js +31 -29
  137. package/tinymce-assets/plugins/toc/plugin.min.js +2 -2
  138. package/tinymce-assets/plugins/visualblocks/plugin.js +10 -11
  139. package/tinymce-assets/plugins/visualblocks/plugin.min.js +2 -2
  140. package/tinymce-assets/plugins/visualchars/plugin.js +52 -67
  141. package/tinymce-assets/plugins/visualchars/plugin.min.js +2 -2
  142. package/tinymce-assets/plugins/wordcount/plugin.js +67 -58
  143. package/tinymce-assets/plugins/wordcount/plugin.min.js +2 -2
  144. package/tinymce-assets/skins/ui/oxide/content.css +1 -1
  145. package/tinymce-assets/skins/ui/oxide/content.inline.css +1 -1
  146. package/tinymce-assets/skins/ui/oxide/content.inline.min.css +1 -1
  147. package/tinymce-assets/skins/ui/oxide/content.min.css +1 -1
  148. package/tinymce-assets/skins/ui/oxide/skin.css +35 -22
  149. package/tinymce-assets/skins/ui/oxide/skin.min.css +1 -1
  150. package/tinymce-assets/skins/ui/oxide/skin.shadowdom.css +7 -7
  151. package/tinymce-assets/skins/ui/oxide/skin.shadowdom.min.css +1 -1
  152. package/tinymce-assets/skins/ui/oxide-dark/content.css +1 -1
  153. package/tinymce-assets/skins/ui/oxide-dark/content.inline.css +1 -1
  154. package/tinymce-assets/skins/ui/oxide-dark/content.inline.min.css +1 -1
  155. package/tinymce-assets/skins/ui/oxide-dark/content.min.css +1 -1
  156. package/tinymce-assets/skins/ui/oxide-dark/skin.css +35 -22
  157. package/tinymce-assets/skins/ui/oxide-dark/skin.min.css +1 -1
  158. package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.css +7 -7
  159. package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -1
  160. package/tinymce-assets/themes/mobile/theme.js +2798 -3255
  161. package/tinymce-assets/themes/mobile/theme.min.js +2 -2
  162. package/tinymce-assets/themes/silver/theme.js +25400 -25371
  163. package/tinymce-assets/themes/silver/theme.min.js +2 -2
  164. package/bundles/dangl-angular-material-shared.umd.js +0 -285
  165. package/bundles/dangl-angular-material-shared.umd.js.map +0 -1
  166. package/dangl-angular-material-shared.metadata.json +0 -1
  167. package/esm2015/lib/angular-material-shared.module.js +0 -25
  168. package/esm2015/lib/components/footer/footer.component.js +0 -27
  169. package/esm2015/lib/components/header/header.component.js +0 -67
  170. package/esm2015/lib/components/tiny-mce/tiny-mce.component.js +0 -100
  171. package/fesm2015/dangl-angular-material-shared.js +0 -259
  172. package/fesm2015/dangl-angular-material-shared.js.map +0 -1
@@ -1,259 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { EventEmitter, Component, Input, Output, forwardRef, Inject, NgZone, NgModule } from '@angular/core';
3
- import { MatButtonModule } from '@angular/material/button';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { MatToolbarModule } from '@angular/material/toolbar';
6
- import { RouterModule } from '@angular/router';
7
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
-
9
- class FooterComponent {
10
- constructor() {
11
- this.currentYear = new Date().getFullYear();
12
- this.showLegalNotice = false;
13
- this.legalNoticeText = 'Legal Notice';
14
- this.legalNoticeLink = 'legal-notice';
15
- this.useLegalNoticeCallback = false;
16
- this.legalNoticeCallback = new EventEmitter();
17
- }
18
- }
19
- FooterComponent.decorators = [
20
- { type: Component, args: [{
21
- selector: 'dangl-footer',
22
- template: "<footer class=\"gd-footer\">\r\n <p>\r\n <ng-template [ngIf]=\"!options\">\r\n <span class=\"gd-logo gd-logo-sm\">GD</span>\r\n <span>&nbsp;</span>\r\n <a href=\"https://www.dangl-it.com\"\r\n >Dangl<strong>IT</strong> GmbH \u00A9 {{ currentYear }}</a\r\n >\r\n </ng-template>\r\n <ng-template [ngIf]=\"options\">\r\n <span *ngIf=\"options.logoInitials\" class=\"gd-logo gd-logo-sm\">{{\r\n options.logoInitials\r\n }}</span>\r\n <span>&nbsp;</span>\r\n <a *ngIf=\"options.copyrightUrl\" href=\"{{ options.copyrightUrl }}\"\r\n ><span [innerHtml]=\"options.companyNameHtml\"></span\r\n ></a>\r\n <span\r\n *ngIf=\"!options.copyrightUrl\"\r\n [innerHtml]=\"options.companyNameHtml\"\r\n ></span>\r\n </ng-template>\r\n <ng-template [ngIf]=\"showLegalNotice\">\r\n -\r\n <a *ngIf=\"!useLegalNoticeCallback\" [routerLink]=\"legalNoticeLink\">{{\r\n legalNoticeText\r\n }}</a>\r\n <a\r\n href=\"javascript:void(0)\"\r\n *ngIf=\"useLegalNoticeCallback\"\r\n (click)=\"legalNoticeCallback.next(null)\"\r\n >{{ legalNoticeText }}</a\r\n >\r\n </ng-template>\r\n </p>\r\n</footer>\r\n",
23
- styles: [""]
24
- },] }
25
- ];
26
- FooterComponent.propDecorators = {
27
- showLegalNotice: [{ type: Input }],
28
- legalNoticeText: [{ type: Input }],
29
- legalNoticeLink: [{ type: Input }],
30
- useLegalNoticeCallback: [{ type: Input }],
31
- options: [{ type: Input }],
32
- legalNoticeCallback: [{ type: Output }]
33
- };
34
-
35
- class HeaderComponent {
36
- constructor() {
37
- this.showMenuButton = false;
38
- this.logoInitials = "GD";
39
- this.menuButtonClicked = new EventEmitter();
40
- this._forceDisablePrereleaseHeader = false;
41
- }
42
- set showPrerelease(val) {
43
- if (val) {
44
- this._forceDisablePrereleaseHeader = false;
45
- this._showPrerelease = this.checkPrereleaseData();
46
- }
47
- else {
48
- this._forceDisablePrereleaseHeader = true;
49
- this._showPrerelease = false;
50
- }
51
- }
52
- get showPrerelease() {
53
- if (this._forceDisablePrereleaseHeader) {
54
- return false;
55
- }
56
- return this._showPrerelease;
57
- }
58
- ngOnChanges(_) {
59
- if (!this._forceDisablePrereleaseHeader) {
60
- this._showPrerelease = this.checkPrereleaseData();
61
- }
62
- }
63
- checkPrereleaseData() {
64
- let isShowing = this.preReleaseVersion != null ||
65
- this.preReleaseBuildDate != null ||
66
- this.preReleaseLiveSiteLink != null;
67
- if (this.preReleaseVersion != null && typeof Storage !== "undefined") {
68
- isShowing =
69
- this.preReleaseVersion !==
70
- localStorage.getItem("dangl_preview_notice_header_hide_version");
71
- }
72
- return isShowing;
73
- }
74
- hideForCurrentVersion() {
75
- if (typeof Storage !== "undefined") {
76
- localStorage.setItem("dangl_preview_notice_header_hide_version", this.preReleaseVersion);
77
- this.showPrerelease = false;
78
- }
79
- }
80
- }
81
- HeaderComponent.decorators = [
82
- { type: Component, args: [{
83
- selector: "dangl-header",
84
- template: "<mat-toolbar color=\"primary\">\r\n <mat-toolbar-row>\r\n <button\r\n mat-button\r\n class=\"menu-button\"\r\n *ngIf=\"showMenuButton\"\r\n (click)=\"menuButtonClicked.next(null)\"\r\n >\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n <a routerLink=\"/\" class=\"header-title\" *ngIf=\"iconUrl\">\r\n <img class=\"dangl-header-logo\" [src]=\"iconUrl\" />\r\n </a>\r\n <a routerLink=\"/\" class=\"header-title\">\r\n <h1>\r\n <span *ngIf=\"logoInitials\" class=\"gd-logo\">{{ logoInitials }}</span>\r\n <ng-container *ngIf=\"prefix || postfix\">\r\n {{ prefix }}<strong>{{ postfix }}</strong>\r\n </ng-container>\r\n </h1>\r\n </a>\r\n <span class=\"toolbar-spacer\"></span>\r\n <ng-content></ng-content>\r\n </mat-toolbar-row>\r\n <mat-toolbar-row *ngIf=\"showPrerelease\" class=\"preview-notice\">\r\n <div class=\"preview-row\">\r\n <span> <mat-icon>warning</mat-icon> This is a preview site. </span>\r\n <a href=\"{{ preReleaseLiveSiteLink }}\" *ngIf=\"preReleaseLiveSiteLink\"\r\n >Click here to go to the live site</a\r\n >\r\n <div>\r\n <button\r\n mat-button\r\n mat-raised-button\r\n color=\"primary\"\r\n (click)=\"showPrerelease = false\"\r\n >\r\n OK\r\n </button>\r\n <button\r\n mat-button\r\n mat-raised-button\r\n color=\"primary\"\r\n (click)=\"hideForCurrentVersion()\"\r\n >\r\n Hide for this version\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"preview-row\">\r\n <span *ngIf=\"preReleaseVersion\">Version: {{ preReleaseVersion }}</span>\r\n <span *ngIf=\"preReleaseBuildDate\"\r\n >Built: {{ preReleaseBuildDate | date: \"dd.MM.yyyy HH:mm\" }}</span\r\n >\r\n </div>\r\n </mat-toolbar-row>\r\n <mat-toolbar-row class=\"header-divider\"></mat-toolbar-row>\r\n</mat-toolbar>\r\n",
85
- styles: [".header-divider{background-color:#3b4c55;height:12px}.preview-notice{background-color:#f44336;display:flex;flex-direction:column}.preview-notice .preview-row{display:flex;width:100%;flex-direction:row;justify-content:space-between}.preview-notice .preview-row a{text-decoration:underline}.dangl-header-logo{max-height:64px;vertical-align:middle}@media (max-width: 599px){.dangl-header-logo{max-height:56px}}mat-toolbar-row{padding-left:0}.header-title{padding-left:16px}.menu-button{height:100%;margin-left:0;min-width:auto;width:52px}.menu-button mat-icon{transform:scale(1.25)}.toolbar-spacer{flex:1 1 auto}\n"]
86
- },] }
87
- ];
88
- HeaderComponent.propDecorators = {
89
- prefix: [{ type: Input }],
90
- postfix: [{ type: Input }],
91
- showMenuButton: [{ type: Input }],
92
- logoInitials: [{ type: Input }],
93
- iconUrl: [{ type: Input }],
94
- menuButtonClicked: [{ type: Output }],
95
- preReleaseVersion: [{ type: Input }],
96
- preReleaseBuildDate: [{ type: Input }],
97
- preReleaseLiveSiteLink: [{ type: Input }],
98
- showPrerelease: [{ type: Input }]
99
- };
100
-
101
- // tslint:disable:no-bitwise
102
- class GuidGenerator {
103
- /**
104
- * Taken from https://github.com/Steve-Fenton/TypeScriptUtilities/blob/master/Guid
105
- * (modified)
106
- * Generates a Version 4 (= Pseudorandom) Guid
107
- */
108
- static generatePseudoRandomGuid() {
109
- const newGuidPlaceholder = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';
110
- const pseudoGuid = newGuidPlaceholder.replace(/[xy]/g, letter => this.generateRandomHexDigit(letter));
111
- return pseudoGuid;
112
- }
113
- static generateRandomHexDigit(letter) {
114
- const r = Math.random() * 16 | 0;
115
- let v;
116
- if (letter === 'x') {
117
- v = r;
118
- }
119
- else if (letter === 'y') {
120
- v = r & 0x3 | 0x8;
121
- /* r & 0x3 -> Allows either 0x0000, 0x0001, 0x0010 or 0x0011
122
- * | 0x8 -> 0x1000 = 8
123
- * 0x1001 = 9
124
- * 0x1010 = A
125
- * 0x1011 = B
126
- * The possible variants of version 4 Guids
127
- */
128
- }
129
- else {
130
- throw new Error('Please provide either "x" to indicate a random replacement or "y" to '
131
- + 'indicate the generation of the variant identifier');
132
- }
133
- return v.toString(16);
134
- }
135
- }
136
-
137
- class TinyMceComponent {
138
- constructor(baseUrl, ngZone) {
139
- this.baseUrl = baseUrl;
140
- this.ngZone = ngZone;
141
- this.elementId = GuidGenerator.generatePseudoRandomGuid();
142
- this.onTouchedCallback = () => { };
143
- this.onChangeCallback = () => { };
144
- }
145
- get editorContent() {
146
- return this._editorContent;
147
- }
148
- set editorContent(value) {
149
- if (value !== this._editorContent) {
150
- this._editorContent = value;
151
- this.ngZone.run(() => {
152
- // tinyMCE events are outside of the Angular zone
153
- // ngZone.run() makes sure everything runs in the
154
- // Angular zone, so it integrates in the Angular
155
- // lifecycle. Otherwise, e.g., 'required' validation
156
- // would not update on change
157
- this.onChangeCallback(value);
158
- });
159
- }
160
- }
161
- ngAfterViewInit() {
162
- tinymce.init({
163
- selector: '#' + this.elementId,
164
- plugins: ['link', 'paste', 'table', 'image', 'code'],
165
- language: this.tinyMceLanguageCode,
166
- base_url: this.baseUrl,
167
- branding: false,
168
- setup: editor => {
169
- editor.on('change keyup', () => {
170
- const content = editor.getContent();
171
- this.editorContent = content;
172
- });
173
- },
174
- init_instance_callback: editor => {
175
- if (editor && this.editorContent) {
176
- editor.setContent(this.editorContent);
177
- }
178
- this.editor = editor;
179
- }
180
- });
181
- }
182
- ngOnDestroy() {
183
- tinymce.remove(this.editor);
184
- }
185
- writeValue(obj) {
186
- obj = obj || '';
187
- this.editorContent = obj;
188
- if (!this.editor) {
189
- return;
190
- }
191
- const tinyMceContent = this.editor.getContent();
192
- if (tinyMceContent !== obj) {
193
- this.editor.setContent(obj);
194
- }
195
- }
196
- registerOnChange(fn) {
197
- this.onChangeCallback = fn;
198
- }
199
- registerOnTouched(fn) {
200
- this.onTouchedCallback = fn;
201
- }
202
- setDisabledState(isDisabled) {
203
- if (isDisabled) {
204
- this.editor.setMode('readonly');
205
- }
206
- else {
207
- this.editor.setMode('design');
208
- }
209
- }
210
- }
211
- TinyMceComponent.decorators = [
212
- { type: Component, args: [{
213
- selector: 'dangl-tiny-mce',
214
- template: "<textarea id=\"{{ elementId }}\"></textarea>\r\n",
215
- providers: [
216
- {
217
- provide: NG_VALUE_ACCESSOR,
218
- useExisting: forwardRef(() => TinyMceComponent),
219
- multi: true,
220
- }
221
- ],
222
- styles: [""]
223
- },] }
224
- ];
225
- TinyMceComponent.ctorParameters = () => [
226
- { type: String, decorators: [{ type: Inject, args: ['TINYMCE_BASE_URL',] }] },
227
- { type: NgZone }
228
- ];
229
- TinyMceComponent.propDecorators = {
230
- tinyMceLanguageUrl: [{ type: Input }],
231
- tinyMceLanguageCode: [{ type: Input }]
232
- };
233
-
234
- class AngularMaterialSharedModule {
235
- }
236
- AngularMaterialSharedModule.decorators = [
237
- { type: NgModule, args: [{
238
- imports: [
239
- MatToolbarModule,
240
- MatIconModule,
241
- MatButtonModule,
242
- RouterModule,
243
- CommonModule
244
- ],
245
- declarations: [FooterComponent, HeaderComponent, TinyMceComponent],
246
- exports: [FooterComponent, HeaderComponent, TinyMceComponent]
247
- },] }
248
- ];
249
-
250
- /*
251
- * Public API Surface of angular-material-shared
252
- */
253
-
254
- /**
255
- * Generated bundle index. Do not edit.
256
- */
257
-
258
- export { AngularMaterialSharedModule, FooterComponent, GuidGenerator, HeaderComponent, TinyMceComponent };
259
- //# sourceMappingURL=dangl-angular-material-shared.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dangl-angular-material-shared.js","sources":["../../../projects/angular-material-shared/src/lib/components/footer/footer.component.ts","../../../projects/angular-material-shared/src/lib/components/header/header.component.ts","../../../projects/angular-material-shared/src/lib/utils/guid-generator.ts","../../../projects/angular-material-shared/src/lib/components/tiny-mce/tiny-mce.component.ts","../../../projects/angular-material-shared/src/lib/angular-material-shared.module.ts","../../../projects/angular-material-shared/src/public_api.ts","../../../projects/angular-material-shared/src/dangl-angular-material-shared.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\nimport { FooterOptions } from '../../models/footer-options';\r\n\r\n@Component({\r\n selector: 'dangl-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent {\r\n\r\n currentYear = new Date().getFullYear();\r\n\r\n @Input() showLegalNotice = false;\r\n @Input() legalNoticeText = 'Legal Notice';\r\n @Input() legalNoticeLink = 'legal-notice';\r\n @Input() useLegalNoticeCallback = false;\r\n @Input() options: FooterOptions;\r\n @Output() legalNoticeCallback = new EventEmitter();\r\n\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n SimpleChanges,\r\n} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"dangl-header\",\r\n templateUrl: \"./header.component.html\",\r\n styleUrls: [\"./header.component.scss\"],\r\n})\r\nexport class HeaderComponent implements OnChanges {\r\n @Input() prefix: string;\r\n @Input() postfix: string;\r\n @Input() showMenuButton = false;\r\n @Input() logoInitials = \"GD\";\r\n @Input() iconUrl: string;\r\n @Output() menuButtonClicked = new EventEmitter();\r\n\r\n @Input() preReleaseVersion: string;\r\n @Input() preReleaseBuildDate: Date;\r\n @Input() preReleaseLiveSiteLink: string;\r\n\r\n @Input() set showPrerelease(val: boolean) {\r\n if (val) {\r\n this._forceDisablePrereleaseHeader = false;\r\n this._showPrerelease = this.checkPrereleaseData();\r\n } else {\r\n this._forceDisablePrereleaseHeader = true;\r\n this._showPrerelease = false;\r\n }\r\n }\r\n\r\n get showPrerelease() {\r\n if (this._forceDisablePrereleaseHeader) {\r\n return false;\r\n }\r\n return this._showPrerelease;\r\n }\r\n\r\n private _showPrerelease: boolean;\r\n private _forceDisablePrereleaseHeader = false;\r\n\r\n ngOnChanges(_: SimpleChanges): void {\r\n if (!this._forceDisablePrereleaseHeader) {\r\n this._showPrerelease = this.checkPrereleaseData();\r\n }\r\n }\r\n\r\n checkPrereleaseData(): boolean {\r\n let isShowing =\r\n this.preReleaseVersion != null ||\r\n this.preReleaseBuildDate != null ||\r\n this.preReleaseLiveSiteLink != null;\r\n if (this.preReleaseVersion != null && typeof Storage !== \"undefined\") {\r\n isShowing =\r\n this.preReleaseVersion !==\r\n localStorage.getItem(\"dangl_preview_notice_header_hide_version\");\r\n }\r\n return isShowing;\r\n }\r\n\r\n hideForCurrentVersion() {\r\n if (typeof Storage !== \"undefined\") {\r\n localStorage.setItem(\r\n \"dangl_preview_notice_header_hide_version\",\r\n this.preReleaseVersion\r\n );\r\n this.showPrerelease = false;\r\n }\r\n }\r\n}\r\n","// tslint:disable:no-bitwise\r\n\r\nexport class GuidGenerator {\r\n /**\r\n * Taken from https://github.com/Steve-Fenton/TypeScriptUtilities/blob/master/Guid\r\n * (modified)\r\n * Generates a Version 4 (= Pseudorandom) Guid\r\n */\r\n public static generatePseudoRandomGuid(): string {\r\n const newGuidPlaceholder = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';\r\n const pseudoGuid = newGuidPlaceholder.replace(/[xy]/g, letter => this.generateRandomHexDigit(letter));\r\n return pseudoGuid;\r\n }\r\n\r\n private static generateRandomHexDigit(letter: string): string {\r\n const r = Math.random() * 16 | 0;\r\n let v: number;\r\n if (letter === 'x') {\r\n v = r;\r\n } else if (letter === 'y') {\r\n v = r & 0x3 | 0x8;\r\n /* r & 0x3 -> Allows either 0x0000, 0x0001, 0x0010 or 0x0011\r\n * | 0x8 -> 0x1000 = 8\r\n * 0x1001 = 9\r\n * 0x1010 = A\r\n * 0x1011 = B\r\n * The possible variants of version 4 Guids\r\n */\r\n } else {\r\n throw new Error('Please provide either \"x\" to indicate a random replacement or \"y\" to '\r\n + 'indicate the generation of the variant identifier');\r\n }\r\n return v.toString(16);\r\n }\r\n}\r\n","import { Component, forwardRef, Inject, NgZone, Input } from '@angular/core';\r\n// 'AfterViewInit' and 'OnDestroy' should be placed in a separate import to\r\n// mitigate this bug: https://github.com/ng-packagr/ng-packagr/issues/1543#issuecomment-593873874\r\nimport { AfterViewInit, OnDestroy } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { GuidGenerator } from '../../utils/guid-generator';\r\n\r\ndeclare var tinymce: any;\r\n\r\n@Component({\r\n selector: 'dangl-tiny-mce',\r\n templateUrl: './tiny-mce.component.html',\r\n styleUrls: ['./tiny-mce.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => TinyMceComponent),\r\n multi: true,\r\n }\r\n ]\r\n})\r\nexport class TinyMceComponent implements AfterViewInit, OnDestroy, ControlValueAccessor {\r\n\r\n @Input() tinyMceLanguageUrl: string;\r\n @Input() tinyMceLanguageCode: string;\r\n\r\n elementId = GuidGenerator.generatePseudoRandomGuid();\r\n editor: any;\r\n private _editorContent: string;\r\n get editorContent(): string {\r\n return this._editorContent;\r\n }\r\n set editorContent(value: string) {\r\n if (value !== this._editorContent) {\r\n this._editorContent = value;\r\n this.ngZone.run(() => {\r\n // tinyMCE events are outside of the Angular zone\r\n // ngZone.run() makes sure everything runs in the\r\n // Angular zone, so it integrates in the Angular\r\n // lifecycle. Otherwise, e.g., 'required' validation\r\n // would not update on change\r\n this.onChangeCallback(value);\r\n });\r\n }\r\n }\r\n\r\n private onTouchedCallback: () => void = () => { };\r\n private onChangeCallback: (_: any) => void = () => { };\r\n\r\n constructor(@Inject('TINYMCE_BASE_URL') private baseUrl: string,\r\n private ngZone: NgZone) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n tinymce.init({\r\n selector: '#' + this.elementId,\r\n plugins: ['link', 'paste', 'table', 'image', 'code'],\r\n language: this.tinyMceLanguageCode,\r\n base_url: this.baseUrl,\r\n branding: false, // To disable 'POWERED BY TINYMCE' in footer\r\n setup: editor => {\r\n editor.on('change keyup', () => {\r\n const content = editor.getContent();\r\n this.editorContent = content;\r\n });\r\n },\r\n init_instance_callback: editor => {\r\n if (editor && this.editorContent) {\r\n editor.setContent(this.editorContent);\r\n }\r\n this.editor = editor;\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n tinymce.remove(this.editor);\r\n }\r\n\r\n writeValue(obj: any): void {\r\n obj = obj || '';\r\n this.editorContent = obj;\r\n if (!this.editor) {\r\n return;\r\n }\r\n const tinyMceContent = this.editor.getContent();\r\n if (tinyMceContent !== obj) {\r\n this.editor.setContent(obj);\r\n }\r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChangeCallback = fn;\r\n }\r\n registerOnTouched(fn: any): void {\r\n this.onTouchedCallback = fn;\r\n }\r\n setDisabledState?(isDisabled: boolean): void {\r\n if (isDisabled) {\r\n this.editor.setMode('readonly');\r\n } else {\r\n this.editor.setMode('design');\r\n }\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TinyMceComponent } from './components/tiny-mce/tiny-mce.component';\r\n\r\n@NgModule({\r\n imports: [\r\n MatToolbarModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n RouterModule,\r\n CommonModule\r\n ],\r\n declarations: [FooterComponent, HeaderComponent, TinyMceComponent],\r\n exports: [FooterComponent, HeaderComponent, TinyMceComponent]\r\n})\r\nexport class AngularMaterialSharedModule { }\r\n","/*\r\n * Public API Surface of angular-material-shared\r\n */\r\n\r\nexport * from './lib/angular-material-shared.module';\r\nexport * from './lib/utils/guid-generator';\r\nexport * from './lib/models/footer-options';\r\n\r\nexport * from './lib/components/footer/footer.component';\r\nexport * from './lib/components/header/header.component';\r\nexport * from './lib/components/tiny-mce/tiny-mce.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}