sk-front-lib 0.17.49 → 0.17.51

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