sk-front-lib 0.18.2 → 0.18.4

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 (176) hide show
  1. package/article/sk-article-editor-server.component.d.ts +1 -1
  2. package/article/sk-article-editor.component.d.ts +1 -1
  3. package/article/sk-froala-editor.directive.d.ts +1 -1
  4. package/crud/sk-auth-admin.guard.d.ts +2 -2
  5. package/crud/sk-auth.guard.d.ts +2 -2
  6. package/{esm2020 → esm2022}/api/sk-api.module.mjs +9 -9
  7. package/{esm2020 → esm2022}/api/sk-api.service.mjs +4 -4
  8. package/{esm2020 → esm2022}/article/sk-article-editor-server.component.mjs +4 -4
  9. package/{esm2020 → esm2022}/article/sk-article-editor.component.mjs +4 -4
  10. package/{esm2020 → esm2022}/article/sk-article-server.module.mjs +5 -5
  11. package/{esm2020 → esm2022}/article/sk-article.module.mjs +7 -7
  12. package/{esm2020 → esm2022}/article/sk-article.service.mjs +4 -4
  13. package/{esm2020 → esm2022}/article/sk-froala-editor.directive.mjs +7 -7
  14. package/{esm2020 → esm2022}/crud/sk-account.service.mjs +4 -4
  15. package/{esm2020 → esm2022}/crud/sk-affiliate.service.mjs +4 -4
  16. package/{esm2020 → esm2022}/crud/sk-auth-admin.guard.mjs +4 -4
  17. package/{esm2020 → esm2022}/crud/sk-auth.guard.mjs +4 -4
  18. package/{esm2020 → esm2022}/crud/sk-auth.service.mjs +7 -7
  19. package/{esm2020 → esm2022}/crud/sk-board.service.mjs +4 -4
  20. package/{esm2020 → esm2022}/crud/sk-brand.service.mjs +4 -4
  21. package/esm2022/crud/sk-cart.service.mjs +256 -0
  22. package/{esm2020 → esm2022}/crud/sk-category.service.mjs +4 -4
  23. package/{esm2020 → esm2022}/crud/sk-comment.service.mjs +4 -4
  24. package/{esm2020 → esm2022}/crud/sk-config.service.mjs +4 -4
  25. package/{esm2020 → esm2022}/crud/sk-contact.service.mjs +4 -4
  26. package/{esm2020 → esm2022}/crud/sk-coupon.service.mjs +4 -4
  27. package/{esm2020 → esm2022}/crud/sk-document.service.mjs +4 -4
  28. package/{esm2020 → esm2022}/crud/sk-etc.service.mjs +4 -4
  29. package/{esm2020 → esm2022}/crud/sk-file.service.mjs +4 -4
  30. package/{esm2020 → esm2022}/crud/sk-keyword.service.mjs +4 -4
  31. package/{esm2020 → esm2022}/crud/sk-order.service.mjs +4 -4
  32. package/{esm2020 → esm2022}/crud/sk-point.service.mjs +4 -4
  33. package/{esm2020 → esm2022}/crud/sk-product.service.mjs +4 -4
  34. package/{esm2020 → esm2022}/crud/sk-promotion.service.mjs +4 -4
  35. package/{esm2020 → esm2022}/crud/sk-search.service.mjs +4 -4
  36. package/{esm2020 → esm2022}/crud/sk-store.service.mjs +4 -4
  37. package/{esm2020 → esm2022}/crud/sk-user.service.mjs +4 -4
  38. package/{esm2020 → esm2022}/google-analytics/google-analytics-router.module.mjs +9 -9
  39. package/{esm2020 → esm2022}/google-analytics/google-analytics.module.mjs +5 -5
  40. package/esm2022/google-analytics/services/google-analytics.service.mjs +223 -0
  41. package/{esm2020 → esm2022}/image/sk-image.component.mjs +6 -6
  42. package/esm2022/image/sk-image.module.mjs +40 -0
  43. package/{esm2020 → esm2022}/lib/sk-byte.pipe.mjs +4 -4
  44. package/{esm2020 → esm2022}/lib/sk-date-time.pipe.mjs +4 -4
  45. package/{esm2020 → esm2022}/lib/sk-date.pipe.mjs +4 -4
  46. package/{esm2020 → esm2022}/lib/sk-front-lib.module.mjs +13 -13
  47. package/{esm2020 → esm2022}/lib/sk-keys.pipe.mjs +4 -4
  48. package/{esm2020 → esm2022}/lib/sk-time.pipe.mjs +4 -4
  49. package/esm2022/model/lib/filetype.mjs +179 -0
  50. package/esm2022/search-address/dialog/dialog.component.mjs +27 -0
  51. package/{esm2020 → esm2022}/search-address/sk-search-address.directive.mjs +6 -6
  52. package/esm2022/search-address/sk-search-address.module.mjs +47 -0
  53. package/{esm2020 → esm2022}/search-address/sk-search-address.service.mjs +4 -4
  54. package/esm2022/uploader/sk-uploader.component.mjs +119 -0
  55. package/esm2022/uploader/sk-uploader.directive.mjs +44 -0
  56. package/esm2022/uploader/sk-uploader.module.mjs +57 -0
  57. package/{fesm2020 → fesm2022}/sk-front-lib-api.mjs +11 -11
  58. package/{fesm2020 → fesm2022}/sk-front-lib-api.mjs.map +1 -1
  59. package/{fesm2020 → fesm2022}/sk-front-lib-article.mjs +25 -25
  60. package/{fesm2020 → fesm2022}/sk-front-lib-article.mjs.map +1 -1
  61. package/{fesm2020 → fesm2022}/sk-front-lib-crud.mjs +93 -93
  62. package/fesm2022/sk-front-lib-crud.mjs.map +1 -0
  63. package/{fesm2020 → fesm2022}/sk-front-lib-google-analytics.mjs +38 -16
  64. package/fesm2022/sk-front-lib-google-analytics.mjs.map +1 -0
  65. package/{fesm2020 → fesm2022}/sk-front-lib-image.mjs +21 -21
  66. package/fesm2022/sk-front-lib-image.mjs.map +1 -0
  67. package/{fesm2015 → fesm2022}/sk-front-lib-model.mjs +56 -56
  68. package/{fesm2020 → fesm2022}/sk-front-lib-model.mjs.map +1 -1
  69. package/{fesm2020 → fesm2022}/sk-front-lib-search-address.mjs +32 -32
  70. package/fesm2022/sk-front-lib-search-address.mjs.map +1 -0
  71. package/{fesm2020 → fesm2022}/sk-front-lib-uploader.mjs +48 -49
  72. package/fesm2022/sk-front-lib-uploader.mjs.map +1 -0
  73. package/{fesm2020 → fesm2022}/sk-front-lib.mjs +27 -27
  74. package/{fesm2015 → fesm2022}/sk-front-lib.mjs.map +1 -1
  75. package/google-analytics/services/google-analytics.service.d.ts +2 -1
  76. package/google-analytics/types/ga-action.type.d.ts +1 -1
  77. package/google-analytics/types/ga-bind.type.d.ts +1 -1
  78. package/image/sk-image.component.d.ts +2 -2
  79. package/image/sk-image.module.d.ts +3 -3
  80. package/model/lib/payment.d.ts +1 -1
  81. package/package.json +46 -68
  82. package/search-address/dialog/dialog.component.d.ts +1 -1
  83. package/search-address/sk-search-address.directive.d.ts +2 -2
  84. package/search-address/sk-search-address.module.d.ts +3 -3
  85. package/uploader/sk-uploader.component.d.ts +1 -1
  86. package/uploader/sk-uploader.directive.d.ts +2 -2
  87. package/uploader/sk-uploader.module.d.ts +5 -5
  88. package/esm2020/crud/sk-cart.service.mjs +0 -256
  89. package/esm2020/google-analytics/services/google-analytics.service.mjs +0 -200
  90. package/esm2020/image/sk-image.module.mjs +0 -40
  91. package/esm2020/model/lib/filetype.mjs +0 -179
  92. package/esm2020/search-address/dialog/dialog.component.mjs +0 -27
  93. package/esm2020/search-address/sk-search-address.module.mjs +0 -47
  94. package/esm2020/uploader/sk-uploader.component.mjs +0 -120
  95. package/esm2020/uploader/sk-uploader.directive.mjs +0 -44
  96. package/esm2020/uploader/sk-uploader.module.mjs +0 -57
  97. package/fesm2015/sk-front-lib-api.mjs +0 -216
  98. package/fesm2015/sk-front-lib-api.mjs.map +0 -1
  99. package/fesm2015/sk-front-lib-article.mjs +0 -758
  100. package/fesm2015/sk-front-lib-article.mjs.map +0 -1
  101. package/fesm2015/sk-front-lib-crud.mjs +0 -1529
  102. package/fesm2015/sk-front-lib-crud.mjs.map +0 -1
  103. package/fesm2015/sk-front-lib-google-analytics.mjs +0 -334
  104. package/fesm2015/sk-front-lib-google-analytics.mjs.map +0 -1
  105. package/fesm2015/sk-front-lib-image.mjs +0 -303
  106. package/fesm2015/sk-front-lib-image.mjs.map +0 -1
  107. package/fesm2015/sk-front-lib-model.mjs.map +0 -1
  108. package/fesm2015/sk-front-lib-search-address.mjs +0 -183
  109. package/fesm2015/sk-front-lib-search-address.mjs.map +0 -1
  110. package/fesm2015/sk-front-lib-uploader.mjs +0 -546
  111. package/fesm2015/sk-front-lib-uploader.mjs.map +0 -1
  112. package/fesm2015/sk-front-lib.mjs +0 -538
  113. package/fesm2020/sk-front-lib-crud.mjs.map +0 -1
  114. package/fesm2020/sk-front-lib-google-analytics.mjs.map +0 -1
  115. package/fesm2020/sk-front-lib-image.mjs.map +0 -1
  116. package/fesm2020/sk-front-lib-model.mjs +0 -1105
  117. package/fesm2020/sk-front-lib-search-address.mjs.map +0 -1
  118. package/fesm2020/sk-front-lib-uploader.mjs.map +0 -1
  119. package/fesm2020/sk-front-lib.mjs.map +0 -1
  120. /package/{esm2020 → esm2022}/api/model/api-config.mjs +0 -0
  121. /package/{esm2020 → esm2022}/api/model/api-pageable-param.mjs +0 -0
  122. /package/{esm2020 → esm2022}/api/model/api-pageable.mjs +0 -0
  123. /package/{esm2020 → esm2022}/api/model/api-response.mjs +0 -0
  124. /package/{esm2020 → esm2022}/api/model/index.mjs +0 -0
  125. /package/{esm2020 → esm2022}/api/public_api.mjs +0 -0
  126. /package/{esm2020 → esm2022}/api/sk-front-lib-api.mjs +0 -0
  127. /package/{esm2020 → esm2022}/article/public_api.mjs +0 -0
  128. /package/{esm2020 → esm2022}/article/sk-front-lib-article.mjs +0 -0
  129. /package/{esm2020 → esm2022}/crud/public_api.mjs +0 -0
  130. /package/{esm2020 → esm2022}/crud/sk-front-lib-crud.mjs +0 -0
  131. /package/{esm2020 → esm2022}/google-analytics/initializers/google-analytics-router.initializer.mjs +0 -0
  132. /package/{esm2020 → esm2022}/google-analytics/initializers/google-analytics.initializer.mjs +0 -0
  133. /package/{esm2020 → esm2022}/google-analytics/interfaces/google-analytics-command.mjs +0 -0
  134. /package/{esm2020 → esm2022}/google-analytics/interfaces/google-analytics-settings.mjs +0 -0
  135. /package/{esm2020 → esm2022}/google-analytics/public_api.mjs +0 -0
  136. /package/{esm2020 → esm2022}/google-analytics/sk-front-lib-google-analytics.mjs +0 -0
  137. /package/{esm2020 → esm2022}/google-analytics/tokens/google-analytics-settings-token.mjs +0 -0
  138. /package/{esm2020 → esm2022}/google-analytics/types/ga-action.type.mjs +0 -0
  139. /package/{esm2020 → esm2022}/google-analytics/types/ga-bind.type.mjs +0 -0
  140. /package/{esm2020 → esm2022}/image/public_api.mjs +0 -0
  141. /package/{esm2020 → esm2022}/image/sk-front-lib-image.mjs +0 -0
  142. /package/{esm2020 → esm2022}/lib/sk-animations.mjs +0 -0
  143. /package/{esm2020 → esm2022}/lib/sk-utils.mjs +0 -0
  144. /package/{esm2020 → esm2022}/model/lib/article.mjs +0 -0
  145. /package/{esm2020 → esm2022}/model/lib/audit.mjs +0 -0
  146. /package/{esm2020 → esm2022}/model/lib/auth.mjs +0 -0
  147. /package/{esm2020 → esm2022}/model/lib/board.mjs +0 -0
  148. /package/{esm2020 → esm2022}/model/lib/cart.mjs +0 -0
  149. /package/{esm2020 → esm2022}/model/lib/comment.mjs +0 -0
  150. /package/{esm2020 → esm2022}/model/lib/contact.mjs +0 -0
  151. /package/{esm2020 → esm2022}/model/lib/coupon.mjs +0 -0
  152. /package/{esm2020 → esm2022}/model/lib/document.mjs +0 -0
  153. /package/{esm2020 → esm2022}/model/lib/etc.mjs +0 -0
  154. /package/{esm2020 → esm2022}/model/lib/file.mjs +0 -0
  155. /package/{esm2020 → esm2022}/model/lib/grid.mjs +0 -0
  156. /package/{esm2020 → esm2022}/model/lib/nicepay.mjs +0 -0
  157. /package/{esm2020 → esm2022}/model/lib/order.mjs +0 -0
  158. /package/{esm2020 → esm2022}/model/lib/payment.mjs +0 -0
  159. /package/{esm2020 → esm2022}/model/lib/point.mjs +0 -0
  160. /package/{esm2020 → esm2022}/model/lib/product-series.mjs +0 -0
  161. /package/{esm2020 → esm2022}/model/lib/product.mjs +0 -0
  162. /package/{esm2020 → esm2022}/model/lib/promotion.mjs +0 -0
  163. /package/{esm2020 → esm2022}/model/lib/shipping.mjs +0 -0
  164. /package/{esm2020 → esm2022}/model/lib/user.mjs +0 -0
  165. /package/{esm2020 → esm2022}/model/public_api.mjs +0 -0
  166. /package/{esm2020 → esm2022}/model/sk-front-lib-model.mjs +0 -0
  167. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  168. /package/{esm2020 → esm2022}/search-address/public_api.mjs +0 -0
  169. /package/{esm2020 → esm2022}/search-address/sk-front-lib-search-address.mjs +0 -0
  170. /package/{esm2020 → esm2022}/search-address/sk-search-address.model.mjs +0 -0
  171. /package/{esm2020 → esm2022}/sk-front-lib.mjs +0 -0
  172. /package/{esm2020 → esm2022}/uploader/public_api.mjs +0 -0
  173. /package/{esm2020 → esm2022}/uploader/sk-front-lib-uploader.mjs +0 -0
  174. /package/{esm2020 → esm2022}/uploader/sk-uploader-file-item.model.mjs +0 -0
  175. /package/{esm2020 → esm2022}/uploader/sk-uploader.animation.mjs +0 -0
  176. /package/{esm2020 → esm2022}/uploader/sk-uploader.class.mjs +0 -0
@@ -1,334 +0,0 @@
1
- import { __awaiter } from 'tslib';
2
- import * as i0 from '@angular/core';
3
- import { InjectionToken, APP_INITIALIZER, PLATFORM_ID, isDevMode, Injectable, Inject, APP_BOOTSTRAP_LISTENER, NgModule } from '@angular/core';
4
- import { isPlatformServer, CommonModule } from '@angular/common';
5
- import { Router, NavigationEnd } from '@angular/router';
6
-
7
- const SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN = new InjectionToken('sk-google-analytics-setting', {
8
- factory: () => ({ trackingCode: '' })
9
- });
10
-
11
- const SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER = {
12
- provide: APP_INITIALIZER,
13
- multi: true,
14
- useFactory: GoogleAnalyticsInitializer,
15
- deps: [
16
- SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN,
17
- PLATFORM_ID
18
- ]
19
- };
20
- function GoogleAnalyticsInitializer(_settings, platform) {
21
- return () => __awaiter(this, void 0, void 0, function* () {
22
- if (!_settings.trackingCode) {
23
- if (!isDevMode()) {
24
- console.error('Empty tracking code for Google Analytics. Make sure to provide one when initializing SkGoogleAnalyticsModule.');
25
- }
26
- return;
27
- }
28
- if (isPlatformServer(platform)) {
29
- return;
30
- }
31
- // Set default ga.js uri
32
- _settings.uri = _settings.uri || `https://www.googletagmanager.com/gtag/js?id=${_settings.trackingCode}`;
33
- // these commands should run first!
34
- const initialCommands = [
35
- { command: 'js', values: [new Date()] },
36
- { command: 'config', values: [_settings.trackingCode] }
37
- ];
38
- _settings.initCommands = [...initialCommands, ...(_settings.initCommands || [])];
39
- window['dataLayer'] = window['dataLayer'] || [];
40
- window['gtag'] = window['gtag'] || function () {
41
- window['dataLayer'].push(arguments);
42
- };
43
- for (const command of _settings.initCommands) {
44
- window['gtag'](command.command, ...command.values);
45
- }
46
- const s = document.createElement('script');
47
- s.async = true;
48
- s.src = _settings.uri;
49
- const head = document.getElementsByTagName('head')[0];
50
- head.appendChild(s);
51
- });
52
- }
53
-
54
- class SkGoogleAnalyticsService {
55
- constructor(_trackingId) {
56
- this._trackingId = _trackingId;
57
- }
58
- throw(err) {
59
- if (console && console.error) {
60
- console.error(err);
61
- }
62
- }
63
- /**
64
- * Call native GA Tag
65
- *
66
- * @param action config|event
67
- * @param command Action specialization
68
- * @param options Command configuration
69
- */
70
- gtag(action, command, ...options) {
71
- try {
72
- window['gtag'](action, command, ...options);
73
- }
74
- catch (err) {
75
- this.throw(err);
76
- }
77
- }
78
- /**
79
- * Send an event trigger to GA. It is the same as call:
80
- * ```js
81
- * gtag('event', 'video_auto_play_start', {
82
- * 'event_label': 'My promotional video',
83
- * 'event_category': 'video_auto_play'
84
- * });
85
- * ```
86
- *
87
- * @param action 'video_auto_play_start'
88
- * @param category 'video_auto_play'
89
- * @param label 'My promotional video'
90
- * @param value An value to measure something
91
- */
92
- event(action, category, label, value, interaction) {
93
- try {
94
- if (window['gtag']) {
95
- const opt = {};
96
- if (category) {
97
- opt['event_category'] = category;
98
- }
99
- if (label) {
100
- opt['event_label'] = label;
101
- }
102
- if (value) {
103
- opt['value'] = value;
104
- }
105
- if (interaction !== undefined) {
106
- opt['interaction'] = interaction;
107
- }
108
- this.gtag('event', action, opt);
109
- }
110
- }
111
- catch (error) {
112
- this.throw(error);
113
- }
114
- }
115
- purchase(data) {
116
- try {
117
- if (window['gtag']) {
118
- this.gtag('event', 'purchase', data);
119
- }
120
- }
121
- catch (error) {
122
- this.throw(error);
123
- }
124
- }
125
- /**
126
- * Send an page view event. This is the same as
127
- *
128
- * ```js
129
- * gtag('config', 'GA_TRACKING_ID', {
130
- * 'page_title' : 'Homepage',
131
- * 'page_path': '/home'
132
- * });
133
- * ```
134
- *
135
- * The tracking ID is injected automatically by Inject Token NGX_GOOGLE_ANALYTICS_SETTINGS_TOKEN
136
- *
137
- * @param path /home
138
- * @param title Homepage
139
- * @param location '{ page_location }'
140
- * @param options '{ ... custom dimentions }'
141
- */
142
- pageView(path, title, location, options) {
143
- try {
144
- if (window['gtag']) {
145
- const opt = {};
146
- if (path) {
147
- opt['page_path'] = path;
148
- }
149
- if (title) {
150
- opt['page_title'] = title;
151
- }
152
- if (location) {
153
- opt['page_location'] = location;
154
- }
155
- if (options) {
156
- Object.assign(opt, options);
157
- }
158
- this.gtag('config', this._trackingId.trackingCode, opt);
159
- }
160
- }
161
- catch (error) {
162
- this.throw(error);
163
- }
164
- }
165
- /**
166
- * Send an evento to report a App Page View. It is the same as
167
- *
168
- * ```js
169
- * gtag('event', 'screen_view', {
170
- * 'app_name': 'myAppName',
171
- * 'screen_name' : 'Home'
172
- * });
173
- *
174
- * ```
175
- *
176
- * @param screen 'screen_name'
177
- * @param name 'app_name'
178
- * @param appId 'app_id'
179
- * @param appVersion 'app_version'
180
- * @param installerId 'app_installer_id'
181
- */
182
- appView(screen, appName, appId, appVersion, installerId) {
183
- try {
184
- if (window['gtag']) {
185
- const opt = {};
186
- if (screen) {
187
- opt['screen_name'] = screen;
188
- }
189
- if (appName) {
190
- opt['app_name'] = appName;
191
- }
192
- if (appId) {
193
- opt['app_id'] = appId;
194
- }
195
- if (appVersion) {
196
- opt['app_version'] = appVersion;
197
- }
198
- if (installerId) {
199
- opt['app_installer_id'] = installerId;
200
- }
201
- this.gtag('event', 'screen_view', opt);
202
- }
203
- }
204
- catch (error) {
205
- this.throw(error);
206
- }
207
- }
208
- /**
209
- * Send an event to GA to report an application error. It is the same as
210
- *
211
- * ```js
212
- * gtag('event', 'exception', {
213
- * 'description': 'error_description',
214
- * 'fatal': false // set to true if the error is fatal
215
- * });
216
- * ```
217
- *
218
- * @param description 'error_description'
219
- * @param fatal set to true if the error is fatal
220
- */
221
- exception(description, fatal) {
222
- try {
223
- if (window['gtag']) {
224
- const opt = {};
225
- if (description) {
226
- opt['description'] = description;
227
- }
228
- if (fatal) {
229
- opt['fatal'] = fatal;
230
- }
231
- this.gtag('event', 'exception', opt);
232
- }
233
- }
234
- catch (error) {
235
- this.throw(error);
236
- }
237
- }
238
- }
239
- SkGoogleAnalyticsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsService, deps: [{ token: SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
240
- SkGoogleAnalyticsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsService, providedIn: 'root' });
241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsService, decorators: [{
242
- type: Injectable,
243
- args: [{
244
- providedIn: 'root'
245
- }]
246
- }], ctorParameters: function () {
247
- return [{ type: undefined, decorators: [{
248
- type: Inject,
249
- args: [SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN]
250
- }] }];
251
- } });
252
-
253
- const SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER = {
254
- provide: APP_BOOTSTRAP_LISTENER,
255
- multi: true,
256
- useFactory: GoogleAnalyticsRouterInitializer,
257
- deps: [
258
- SkGoogleAnalyticsService,
259
- Router
260
- ]
261
- };
262
- function GoogleAnalyticsRouterInitializer(_googleAnalyticsService, _router) {
263
- return (c) => __awaiter(this, void 0, void 0, function* () {
264
- _router
265
- .events
266
- .subscribe(event => {
267
- if (event instanceof NavigationEnd) {
268
- _googleAnalyticsService.pageView(event.urlAfterRedirects, undefined, document.location.href);
269
- }
270
- });
271
- });
272
- }
273
-
274
- class SkGoogleAnalyticsModule {
275
- static forRoot(trackingCode, commands = [], uri) {
276
- return {
277
- ngModule: SkGoogleAnalyticsModule,
278
- providers: [
279
- {
280
- provide: SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN,
281
- useValue: {
282
- trackingCode,
283
- commands,
284
- uri
285
- }
286
- },
287
- SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER,
288
- ]
289
- };
290
- }
291
- }
292
- SkGoogleAnalyticsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
293
- SkGoogleAnalyticsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsModule, imports: [CommonModule] });
294
- SkGoogleAnalyticsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsModule, imports: [CommonModule] });
295
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsModule, decorators: [{
296
- type: NgModule,
297
- args: [{
298
- imports: [
299
- CommonModule,
300
- ],
301
- declarations: [],
302
- exports: []
303
- }]
304
- }] });
305
-
306
- class SkGoogleAnalyticsRouterModule {
307
- }
308
- SkGoogleAnalyticsRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
309
- SkGoogleAnalyticsRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsRouterModule, imports: [CommonModule,
310
- SkGoogleAnalyticsModule] });
311
- SkGoogleAnalyticsRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsRouterModule, providers: [
312
- SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER
313
- ], imports: [CommonModule,
314
- SkGoogleAnalyticsModule] });
315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SkGoogleAnalyticsRouterModule, decorators: [{
316
- type: NgModule,
317
- args: [{
318
- imports: [
319
- CommonModule,
320
- SkGoogleAnalyticsModule
321
- ],
322
- providers: [
323
- SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER
324
- ],
325
- declarations: []
326
- }]
327
- }] });
328
-
329
- /**
330
- * Generated bundle index. Do not edit.
331
- */
332
-
333
- export { GoogleAnalyticsInitializer, GoogleAnalyticsRouterInitializer, SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER, SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER, SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN, SkGoogleAnalyticsModule, SkGoogleAnalyticsRouterModule, SkGoogleAnalyticsService };
334
- //# sourceMappingURL=sk-front-lib-google-analytics.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sk-front-lib-google-analytics.mjs","sources":["../../../projects/sk-front-lib/google-analytics/src/tokens/google-analytics-settings-token.ts","../../../projects/sk-front-lib/google-analytics/src/initializers/google-analytics.initializer.ts","../../../projects/sk-front-lib/google-analytics/src/services/google-analytics.service.ts","../../../projects/sk-front-lib/google-analytics/src/initializers/google-analytics-router.initializer.ts","../../../projects/sk-front-lib/google-analytics/src/google-analytics.module.ts","../../../projects/sk-front-lib/google-analytics/src/google-analytics-router.module.ts","../../../projects/sk-front-lib/google-analytics/src/sk-front-lib-google-analytics.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport {ISkGoogleAnalyticsSettings} from \"../interfaces/google-analytics-settings\";\n\nexport const SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN = new InjectionToken<ISkGoogleAnalyticsSettings>('sk-google-analytics-setting', {\n factory: () => ({ trackingCode: '' })\n});\n","import {APP_INITIALIZER, Inject, isDevMode, PLATFORM_ID, Provider} from \"@angular/core\";\nimport {ISkGoogleAnalyticsSettings} from \"../interfaces/google-analytics-settings\";\nimport {SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN} from \"../tokens/google-analytics-settings-token\";\nimport {ISkGoogleAnalyticsCommand} from \"../interfaces/google-analytics-command\";\nimport {isPlatformServer} from \"@angular/common\";\n\nexport const SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER: Provider = {\n provide: APP_INITIALIZER,\n multi: true,\n useFactory: GoogleAnalyticsInitializer,\n deps: [\n SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN,\n PLATFORM_ID\n ]\n};\n\nexport function GoogleAnalyticsInitializer(_settings: ISkGoogleAnalyticsSettings,\n platform: Object) {\n return async () => {\n if (!_settings.trackingCode) {\n if (!isDevMode()) {\n console.error('Empty tracking code for Google Analytics. Make sure to provide one when initializing SkGoogleAnalyticsModule.');\n }\n\n return;\n }\n\n if (isPlatformServer(platform)) {\n return;\n }\n\n // Set default ga.js uri\n _settings.uri = _settings.uri || `https://www.googletagmanager.com/gtag/js?id=${_settings.trackingCode}`;\n\n // these commands should run first!\n const initialCommands: Array<ISkGoogleAnalyticsCommand> = [\n {command: 'js', values: [new Date()]},\n {command: 'config', values: [_settings.trackingCode]}\n ];\n\n _settings.initCommands = [...initialCommands, ...(_settings.initCommands || [])];\n\n window['dataLayer'] = window['dataLayer'] || [];\n window['gtag'] = window['gtag'] || function () {\n window['dataLayer'].push(arguments);\n };\n\n for (const command of _settings.initCommands) {\n window['gtag'](command.command, ...command.values);\n }\n\n const s: HTMLScriptElement = document.createElement('script');\n s.async = true;\n s.src = _settings.uri;\n\n const head: HTMLHeadElement = document.getElementsByTagName('head')[0];\n head.appendChild(s);\n };\n}\n","import {Injectable, Inject} from '@angular/core';\nimport {SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN} from \"../tokens/google-analytics-settings-token\";\nimport {ISkGoogleAnalyticsSettings} from \"../interfaces/google-analytics-settings\";\nimport {GaAction} from \"../types/ga-action.type\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SkGoogleAnalyticsService {\n\n constructor(@Inject(SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN) protected _trackingId: ISkGoogleAnalyticsSettings) {\n }\n\n protected throw(err: Error) {\n if (console && console.error) {\n console.error(err);\n }\n }\n\n /**\n * Call native GA Tag\n *\n * @param action config|event\n * @param command Action specialization\n * @param options Command configuration\n */\n gtag(action: string, command: string, ...options: Array<any>) {\n try {\n window['gtag'](action, command, ...options);\n } catch (err) {\n this.throw(err);\n }\n }\n\n /**\n * Send an event trigger to GA. It is the same as call:\n * ```js\n * gtag('event', 'video_auto_play_start', {\n * 'event_label': 'My promotional video',\n * 'event_category': 'video_auto_play'\n * });\n * ```\n *\n * @param action 'video_auto_play_start'\n * @param category 'video_auto_play'\n * @param label 'My promotional video'\n * @param value An value to measure something\n */\n event(action: GaAction | string, category?: string, label?: string, value?: number, interaction?: boolean) {\n try {\n if (window['gtag']) {\n const opt = {};\n if (category) {\n opt['event_category'] = category;\n }\n if (label) {\n opt['event_label'] = label;\n }\n if (value) {\n opt['value'] = value;\n }\n if (interaction !== undefined) {\n opt['interaction'] = interaction;\n }\n this.gtag('event', action as string, opt);\n }\n } catch (error) {\n this.throw(error);\n }\n }\n\n purchase(data) {\n try {\n if (window['gtag']) {\n this.gtag('event', 'purchase', data);\n }\n } catch (error) {\n this.throw(error);\n }\n }\n\n /**\n * Send an page view event. This is the same as\n *\n * ```js\n * gtag('config', 'GA_TRACKING_ID', {\n * 'page_title' : 'Homepage',\n * 'page_path': '/home'\n * });\n * ```\n *\n * The tracking ID is injected automatically by Inject Token NGX_GOOGLE_ANALYTICS_SETTINGS_TOKEN\n *\n * @param path /home\n * @param title Homepage\n * @param location '{ page_location }'\n * @param options '{ ... custom dimentions }'\n */\n pageView(path?: string, title?: string, location?: string, options?: Object) {\n try {\n if (window['gtag']) {\n const opt = {};\n if (path) {\n opt['page_path'] = path;\n }\n if (title) {\n opt['page_title'] = title;\n }\n if (location) {\n opt['page_location'] = location;\n }\n if (options) {\n Object.assign(opt, options);\n }\n this.gtag('config', this._trackingId.trackingCode, opt);\n }\n } catch (error) {\n this.throw(error);\n }\n }\n\n /**\n * Send an evento to report a App Page View. It is the same as\n *\n * ```js\n * gtag('event', 'screen_view', {\n * 'app_name': 'myAppName',\n * 'screen_name' : 'Home'\n * });\n *\n * ```\n *\n * @param screen 'screen_name'\n * @param name 'app_name'\n * @param appId 'app_id'\n * @param appVersion 'app_version'\n * @param installerId 'app_installer_id'\n */\n appView(screen: string, appName: string, appId?: string, appVersion?: string, installerId?: string) {\n try {\n if (window['gtag']) {\n const opt = {};\n if (screen) {\n opt['screen_name'] = screen;\n }\n if (appName) {\n opt['app_name'] = appName;\n }\n if (appId) {\n opt['app_id'] = appId;\n }\n if (appVersion) {\n opt['app_version'] = appVersion;\n }\n if (installerId) {\n opt['app_installer_id'] = installerId;\n }\n this.gtag('event', 'screen_view', opt);\n }\n } catch (error) {\n this.throw(error);\n }\n }\n\n /**\n * Send an event to GA to report an application error. It is the same as\n *\n * ```js\n * gtag('event', 'exception', {\n * 'description': 'error_description',\n * 'fatal': false // set to true if the error is fatal\n * });\n * ```\n *\n * @param description 'error_description'\n * @param fatal set to true if the error is fatal\n */\n exception(description?: string, fatal?: boolean) {\n try {\n if (window['gtag']) {\n const opt = {};\n if (description) {\n opt['description'] = description;\n }\n if (fatal) {\n opt['fatal'] = fatal;\n }\n this.gtag('event', 'exception', opt);\n }\n } catch (error) {\n this.throw(error);\n }\n }\n}\n","import {APP_BOOTSTRAP_LISTENER, ComponentRef, Provider} from \"@angular/core\";\nimport {NavigationEnd, Router} from \"@angular/router\";\nimport {SkGoogleAnalyticsService} from \"../services/google-analytics.service\";\n\nexport const SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER: Provider = {\n provide: APP_BOOTSTRAP_LISTENER,\n multi: true,\n useFactory: GoogleAnalyticsRouterInitializer,\n deps: [\n SkGoogleAnalyticsService,\n Router\n ]\n};\n\nexport function GoogleAnalyticsRouterInitializer(\n _googleAnalyticsService: SkGoogleAnalyticsService,\n _router: Router\n) {\n return async (c: ComponentRef<any>) => {\n _router\n .events\n .subscribe(event => {\n if (event instanceof NavigationEnd) {\n _googleAnalyticsService.pageView(event.urlAfterRedirects, undefined, document.location.href);\n }\n });\n };\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN } from './tokens/google-analytics-settings-token';\nimport { ISkGoogleAnalyticsCommand } from './interfaces/google-analytics-command';\nimport { SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER } from './initializers/google-analytics.initializer';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [],\n exports: []\n})\nexport class SkGoogleAnalyticsModule {\n static forRoot(trackingCode: string, commands: ISkGoogleAnalyticsCommand[] = [], uri?: string): ModuleWithProviders<SkGoogleAnalyticsModule> {\n return {\n ngModule: SkGoogleAnalyticsModule,\n providers: [\n {\n provide: SK_GOOGLE_ANALYTICS_SETTINGS_TOKEN,\n useValue: {\n trackingCode,\n commands,\n uri\n }\n },\n SK_GOOGLE_ANALYTICS_INITIALIZER_PROVIDER,\n ]\n };\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SkGoogleAnalyticsModule } from './google-analytics.module';\nimport { SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER } from './initializers/google-analytics-router.initializer';\n\n@NgModule({\n imports: [\n CommonModule,\n SkGoogleAnalyticsModule\n ],\n providers: [\n SK_GOOGLE_ANALYTICS_ROUTER_INITIALIZER_PROVIDER\n ],\n declarations: []\n})\nexport class SkGoogleAnalyticsRouterModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}