@haiilo/catalyst 0.5.12 → 0.5.13

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 (79) hide show
  1. package/dist/catalyst/catalyst.css +7 -1
  2. package/dist/catalyst/catalyst.esm.js +1 -1
  3. package/dist/catalyst/catalyst.esm.js.map +1 -1
  4. package/dist/catalyst/index.esm.js +1 -1
  5. package/dist/catalyst/{p-e82b63e9.js → p-12486027.js} +2 -2
  6. package/dist/catalyst/{p-e82b63e9.js.map → p-12486027.js.map} +0 -0
  7. package/dist/catalyst/p-2ec5c87a.js +2 -0
  8. package/dist/catalyst/p-2ec5c87a.js.map +1 -0
  9. package/dist/catalyst/p-7c06183a.js +2 -0
  10. package/dist/catalyst/p-7c06183a.js.map +1 -0
  11. package/dist/catalyst/p-a8629c54.entry.js +2 -0
  12. package/dist/catalyst/p-a8629c54.entry.js.map +1 -0
  13. package/dist/catalyst/p-c7f3b231.js +10 -0
  14. package/dist/catalyst/p-c7f3b231.js.map +1 -0
  15. package/dist/catalyst/p-e6491f33.entry.js +10 -0
  16. package/dist/catalyst/p-e6491f33.entry.js.map +1 -0
  17. package/dist/cjs/{app-globals-2a30d681.js → app-globals-aa29ad72.js} +2 -2
  18. package/dist/cjs/{app-globals-2a30d681.js.map → app-globals-aa29ad72.js.map} +1 -1
  19. package/dist/cjs/cat-alert_15.cjs.entry.js +52 -88
  20. package/dist/cjs/cat-alert_15.cjs.entry.js.map +1 -1
  21. package/dist/cjs/cat-icon-registry-49b11b51.js +131 -0
  22. package/dist/cjs/cat-icon-registry-49b11b51.js.map +1 -0
  23. package/dist/cjs/cat-notification-156f4cf5.js +552 -0
  24. package/dist/cjs/cat-notification-156f4cf5.js.map +1 -0
  25. package/dist/cjs/cat-textarea.cjs.entry.js +91 -0
  26. package/dist/cjs/cat-textarea.cjs.entry.js.map +1 -0
  27. package/dist/cjs/catalyst.cjs.js +4 -3
  28. package/dist/cjs/catalyst.cjs.js.map +1 -1
  29. package/dist/cjs/index.cjs.js +4 -1
  30. package/dist/cjs/index.cjs.js.map +1 -1
  31. package/dist/cjs/loader.cjs.js +4 -3
  32. package/dist/cjs/loader.cjs.js.map +1 -1
  33. package/dist/cjs/{cat-icon-registry-b3a95a6b.js → loglevel-c9b2d01f.js} +3 -126
  34. package/dist/cjs/loglevel-c9b2d01f.js.map +1 -0
  35. package/dist/collection/collection-manifest.json +1 -0
  36. package/dist/collection/components/cat-notification/cat-notification.js +106 -0
  37. package/dist/collection/components/cat-notification/cat-notification.js.map +1 -0
  38. package/dist/collection/components/cat-toast-demo/cat-toast-demo.css +3 -0
  39. package/dist/collection/components/cat-toast-demo/cat-toast-demo.js +51 -0
  40. package/dist/collection/components/cat-toast-demo/cat-toast-demo.js.map +1 -0
  41. package/dist/collection/index.js +1 -0
  42. package/dist/collection/index.js.map +1 -1
  43. package/dist/components/cat-notification.js +550 -0
  44. package/dist/components/cat-notification.js.map +1 -0
  45. package/dist/components/cat-toast-demo.d.ts +11 -0
  46. package/dist/components/cat-toast-demo.js +84 -0
  47. package/dist/components/cat-toast-demo.js.map +1 -0
  48. package/dist/components/index.js +1 -0
  49. package/dist/components/index.js.map +1 -1
  50. package/dist/components/loglevel.js +1 -1
  51. package/dist/esm/{app-globals-77cd8c8e.js → app-globals-cf55f7f5.js} +2 -2
  52. package/dist/esm/{app-globals-77cd8c8e.js.map → app-globals-cf55f7f5.js.map} +1 -1
  53. package/dist/esm/cat-alert_15.entry.js +46 -82
  54. package/dist/esm/cat-alert_15.entry.js.map +1 -1
  55. package/dist/esm/cat-icon-registry-3ea75755.js +128 -0
  56. package/dist/esm/cat-icon-registry-3ea75755.js.map +1 -0
  57. package/dist/esm/cat-notification-cd98c266.js +550 -0
  58. package/dist/esm/cat-notification-cd98c266.js.map +1 -0
  59. package/dist/esm/cat-textarea.entry.js +87 -0
  60. package/dist/esm/cat-textarea.entry.js.map +1 -0
  61. package/dist/esm/catalyst.js +4 -3
  62. package/dist/esm/catalyst.js.map +1 -1
  63. package/dist/esm/index.js +3 -1
  64. package/dist/esm/index.js.map +1 -1
  65. package/dist/esm/loader.js +4 -3
  66. package/dist/esm/loader.js.map +1 -1
  67. package/dist/esm/{cat-icon-registry-a7acd6f7.js → loglevel-39a9e3f9.js} +2 -125
  68. package/dist/esm/loglevel-39a9e3f9.js.map +1 -0
  69. package/dist/types/components/cat-notification/cat-notification.d.ts +51 -0
  70. package/dist/types/components/cat-toast-demo/cat-toast-demo.d.ts +9 -0
  71. package/dist/types/components.d.ts +13 -0
  72. package/dist/types/index.d.ts +1 -0
  73. package/package.json +5 -3
  74. package/dist/catalyst/p-9a3c2375.js +0 -2
  75. package/dist/catalyst/p-9a3c2375.js.map +0 -1
  76. package/dist/catalyst/p-a6b8ebe9.entry.js +0 -10
  77. package/dist/catalyst/p-a6b8ebe9.entry.js.map +0 -1
  78. package/dist/cjs/cat-icon-registry-b3a95a6b.js.map +0 -1
  79. package/dist/esm/cat-icon-registry-a7acd6f7.js.map +0 -1
@@ -0,0 +1,552 @@
1
+ 'use strict';
2
+
3
+ const loglevel = require('./loglevel-c9b2d01f.js');
4
+
5
+ var toastify = loglevel.createCommonjsModule(function (module) {
6
+ /*!
7
+ * Toastify js 1.11.2
8
+ * https://github.com/apvarun/toastify-js
9
+ * @license MIT licensed
10
+ *
11
+ * Copyright (C) 2018 Varun A P
12
+ */
13
+ (function(root, factory) {
14
+ if (module.exports) {
15
+ module.exports = factory();
16
+ } else {
17
+ root.Toastify = factory();
18
+ }
19
+ })(loglevel.commonjsGlobal, function(global) {
20
+ // Object initialization
21
+ var Toastify = function(options) {
22
+ // Returning a new init object
23
+ return new Toastify.lib.init(options);
24
+ },
25
+ // Library version
26
+ version = "1.11.2";
27
+
28
+ // Set the default global options
29
+ Toastify.defaults = {
30
+ oldestFirst: true,
31
+ text: "Toastify is awesome!",
32
+ node: undefined,
33
+ duration: 3000,
34
+ selector: undefined,
35
+ callback: function () {
36
+ },
37
+ destination: undefined,
38
+ newWindow: false,
39
+ close: false,
40
+ gravity: "toastify-top",
41
+ positionLeft: false,
42
+ position: '',
43
+ backgroundColor: '',
44
+ avatar: "",
45
+ className: "",
46
+ stopOnFocus: true,
47
+ onClick: function () {
48
+ },
49
+ offset: {x: 0, y: 0},
50
+ escapeMarkup: true,
51
+ style: {background: ''}
52
+ };
53
+
54
+ // Defining the prototype of the object
55
+ Toastify.lib = Toastify.prototype = {
56
+ toastify: version,
57
+
58
+ constructor: Toastify,
59
+
60
+ // Initializing the object with required parameters
61
+ init: function(options) {
62
+ // Verifying and validating the input object
63
+ if (!options) {
64
+ options = {};
65
+ }
66
+
67
+ // Creating the options object
68
+ this.options = {};
69
+
70
+ this.toastElement = null;
71
+
72
+ // Validating the options
73
+ this.options.text = options.text || Toastify.defaults.text; // Display message
74
+ this.options.node = options.node || Toastify.defaults.node; // Display content as node
75
+ this.options.duration = options.duration === 0 ? 0 : options.duration || Toastify.defaults.duration; // Display duration
76
+ this.options.selector = options.selector || Toastify.defaults.selector; // Parent selector
77
+ this.options.callback = options.callback || Toastify.defaults.callback; // Callback after display
78
+ this.options.destination = options.destination || Toastify.defaults.destination; // On-click destination
79
+ this.options.newWindow = options.newWindow || Toastify.defaults.newWindow; // Open destination in new window
80
+ this.options.close = options.close || Toastify.defaults.close; // Show toast close icon
81
+ this.options.gravity = options.gravity === "bottom" ? "toastify-bottom" : Toastify.defaults.gravity; // toast position - top or bottom
82
+ this.options.positionLeft = options.positionLeft || Toastify.defaults.positionLeft; // toast position - left or right
83
+ this.options.position = options.position || Toastify.defaults.position; // toast position - left or right
84
+ this.options.backgroundColor = options.backgroundColor || Toastify.defaults.backgroundColor; // toast background color
85
+ this.options.avatar = options.avatar || Toastify.defaults.avatar; // img element src - url or a path
86
+ this.options.className = options.className || Toastify.defaults.className; // additional class names for the toast
87
+ this.options.stopOnFocus = options.stopOnFocus === undefined ? Toastify.defaults.stopOnFocus : options.stopOnFocus; // stop timeout on focus
88
+ this.options.onClick = options.onClick || Toastify.defaults.onClick; // Callback after click
89
+ this.options.offset = options.offset || Toastify.defaults.offset; // toast offset
90
+ this.options.escapeMarkup = options.escapeMarkup !== undefined ? options.escapeMarkup : Toastify.defaults.escapeMarkup;
91
+ this.options.style = options.style || Toastify.defaults.style;
92
+ if(options.backgroundColor) {
93
+ this.options.style.background = options.backgroundColor;
94
+ }
95
+
96
+ // Returning the current object for chaining functions
97
+ return this;
98
+ },
99
+
100
+ // Building the DOM element
101
+ buildToast: function() {
102
+ // Validating if the options are defined
103
+ if (!this.options) {
104
+ throw "Toastify is not initialized";
105
+ }
106
+
107
+ // Creating the DOM object
108
+ var divElement = document.createElement("div");
109
+ divElement.className = "toastify on " + this.options.className;
110
+
111
+ // Positioning toast to left or right or center
112
+ if (!!this.options.position) {
113
+ divElement.className += " toastify-" + this.options.position;
114
+ } else {
115
+ // To be depreciated in further versions
116
+ if (this.options.positionLeft === true) {
117
+ divElement.className += " toastify-left";
118
+ console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.');
119
+ } else {
120
+ // Default position
121
+ divElement.className += " toastify-right";
122
+ }
123
+ }
124
+
125
+ // Assigning gravity of element
126
+ divElement.className += " " + this.options.gravity;
127
+
128
+ if (this.options.backgroundColor) {
129
+ // This is being deprecated in favor of using the style HTML DOM property
130
+ console.warn('DEPRECATION NOTICE: "backgroundColor" is being deprecated. Please use the "style.background" property.');
131
+ }
132
+
133
+ // Loop through our style object and apply styles to divElement
134
+ for (var property in this.options.style) {
135
+ divElement.style[property] = this.options.style[property];
136
+ }
137
+
138
+ // Adding the toast message/node
139
+ if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {
140
+ // If we have a valid node, we insert it
141
+ divElement.appendChild(this.options.node);
142
+ } else {
143
+ if (this.options.escapeMarkup) {
144
+ divElement.innerText = this.options.text;
145
+ } else {
146
+ divElement.innerHTML = this.options.text;
147
+ }
148
+
149
+ if (this.options.avatar !== "") {
150
+ var avatarElement = document.createElement("img");
151
+ avatarElement.src = this.options.avatar;
152
+
153
+ avatarElement.className = "toastify-avatar";
154
+
155
+ if (this.options.position == "left" || this.options.positionLeft === true) {
156
+ // Adding close icon on the left of content
157
+ divElement.appendChild(avatarElement);
158
+ } else {
159
+ // Adding close icon on the right of content
160
+ divElement.insertAdjacentElement("afterbegin", avatarElement);
161
+ }
162
+ }
163
+ }
164
+
165
+ // Adding a close icon to the toast
166
+ if (this.options.close === true) {
167
+ // Create a span for close element
168
+ var closeElement = document.createElement("span");
169
+ closeElement.innerHTML = "✖";
170
+
171
+ closeElement.className = "toast-close";
172
+
173
+ // Triggering the removal of toast from DOM on close click
174
+ closeElement.addEventListener(
175
+ "click",
176
+ function(event) {
177
+ event.stopPropagation();
178
+ this.removeElement(this.toastElement);
179
+ window.clearTimeout(this.toastElement.timeOutValue);
180
+ }.bind(this)
181
+ );
182
+
183
+ //Calculating screen width
184
+ var width = window.innerWidth > 0 ? window.innerWidth : screen.width;
185
+
186
+ // Adding the close icon to the toast element
187
+ // Display on the right if screen width is less than or equal to 360px
188
+ if ((this.options.position == "left" || this.options.positionLeft === true) && width > 360) {
189
+ // Adding close icon on the left of content
190
+ divElement.insertAdjacentElement("afterbegin", closeElement);
191
+ } else {
192
+ // Adding close icon on the right of content
193
+ divElement.appendChild(closeElement);
194
+ }
195
+ }
196
+
197
+ // Clear timeout while toast is focused
198
+ if (this.options.stopOnFocus && this.options.duration > 0) {
199
+ var self = this;
200
+ // stop countdown
201
+ divElement.addEventListener(
202
+ "mouseover",
203
+ function(event) {
204
+ window.clearTimeout(divElement.timeOutValue);
205
+ }
206
+ );
207
+ // add back the timeout
208
+ divElement.addEventListener(
209
+ "mouseleave",
210
+ function() {
211
+ divElement.timeOutValue = window.setTimeout(
212
+ function() {
213
+ // Remove the toast from DOM
214
+ self.removeElement(divElement);
215
+ },
216
+ self.options.duration
217
+ );
218
+ }
219
+ );
220
+ }
221
+
222
+ // Adding an on-click destination path
223
+ if (typeof this.options.destination !== "undefined") {
224
+ divElement.addEventListener(
225
+ "click",
226
+ function(event) {
227
+ event.stopPropagation();
228
+ if (this.options.newWindow === true) {
229
+ window.open(this.options.destination, "_blank");
230
+ } else {
231
+ window.location = this.options.destination;
232
+ }
233
+ }.bind(this)
234
+ );
235
+ }
236
+
237
+ if (typeof this.options.onClick === "function" && typeof this.options.destination === "undefined") {
238
+ divElement.addEventListener(
239
+ "click",
240
+ function(event) {
241
+ event.stopPropagation();
242
+ this.options.onClick();
243
+ }.bind(this)
244
+ );
245
+ }
246
+
247
+ // Adding offset
248
+ if(typeof this.options.offset === "object") {
249
+
250
+ var x = getAxisOffsetAValue("x", this.options);
251
+ var y = getAxisOffsetAValue("y", this.options);
252
+
253
+ var xOffset = this.options.position == "left" ? x : "-" + x;
254
+ var yOffset = this.options.gravity == "toastify-top" ? y : "-" + y;
255
+
256
+ divElement.style.transform = "translate(" + xOffset + "," + yOffset + ")";
257
+
258
+ }
259
+
260
+ // Returning the generated element
261
+ return divElement;
262
+ },
263
+
264
+ // Displaying the toast
265
+ showToast: function() {
266
+ // Creating the DOM object for the toast
267
+ this.toastElement = this.buildToast();
268
+
269
+ // Getting the root element to with the toast needs to be added
270
+ var rootElement;
271
+ if (typeof this.options.selector === "string") {
272
+ rootElement = document.getElementById(this.options.selector);
273
+ } else if (this.options.selector instanceof HTMLElement || (typeof ShadowRoot !== 'undefined' && this.options.selector instanceof ShadowRoot)) {
274
+ rootElement = this.options.selector;
275
+ } else {
276
+ rootElement = document.body;
277
+ }
278
+
279
+ // Validating if root element is present in DOM
280
+ if (!rootElement) {
281
+ throw "Root element is not defined";
282
+ }
283
+
284
+ // Adding the DOM element
285
+ var elementToInsert = Toastify.defaults.oldestFirst ? rootElement.firstChild : rootElement.lastChild;
286
+ rootElement.insertBefore(this.toastElement, elementToInsert);
287
+
288
+ // Repositioning the toasts in case multiple toasts are present
289
+ Toastify.reposition();
290
+
291
+ if (this.options.duration > 0) {
292
+ this.toastElement.timeOutValue = window.setTimeout(
293
+ function() {
294
+ // Remove the toast from DOM
295
+ this.removeElement(this.toastElement);
296
+ }.bind(this),
297
+ this.options.duration
298
+ ); // Binding `this` for function invocation
299
+ }
300
+
301
+ // Supporting function chaining
302
+ return this;
303
+ },
304
+
305
+ hideToast: function() {
306
+ if (this.toastElement.timeOutValue) {
307
+ clearTimeout(this.toastElement.timeOutValue);
308
+ }
309
+ this.removeElement(this.toastElement);
310
+ },
311
+
312
+ // Removing the element from the DOM
313
+ removeElement: function(toastElement) {
314
+ // Hiding the element
315
+ // toastElement.classList.remove("on");
316
+ toastElement.className = toastElement.className.replace(" on", "");
317
+
318
+ // Removing the element from DOM after transition end
319
+ window.setTimeout(
320
+ function() {
321
+ // remove options node if any
322
+ if (this.options.node && this.options.node.parentNode) {
323
+ this.options.node.parentNode.removeChild(this.options.node);
324
+ }
325
+
326
+ // Remove the element from the DOM, only when the parent node was not removed before.
327
+ if (toastElement.parentNode) {
328
+ toastElement.parentNode.removeChild(toastElement);
329
+ }
330
+
331
+ // Calling the callback function
332
+ this.options.callback.call(toastElement);
333
+
334
+ // Repositioning the toasts again
335
+ Toastify.reposition();
336
+ }.bind(this),
337
+ 400
338
+ ); // Binding `this` for function invocation
339
+ },
340
+ };
341
+
342
+ // Positioning the toasts on the DOM
343
+ Toastify.reposition = function() {
344
+
345
+ // Top margins with gravity
346
+ var topLeftOffsetSize = {
347
+ top: 15,
348
+ bottom: 15,
349
+ };
350
+ var topRightOffsetSize = {
351
+ top: 15,
352
+ bottom: 15,
353
+ };
354
+ var offsetSize = {
355
+ top: 15,
356
+ bottom: 15,
357
+ };
358
+
359
+ // Get all toast messages on the DOM
360
+ var allToasts = document.getElementsByClassName("toastify");
361
+
362
+ var classUsed;
363
+
364
+ // Modifying the position of each toast element
365
+ for (var i = 0; i < allToasts.length; i++) {
366
+ // Getting the applied gravity
367
+ if (containsClass(allToasts[i], "toastify-top") === true) {
368
+ classUsed = "toastify-top";
369
+ } else {
370
+ classUsed = "toastify-bottom";
371
+ }
372
+
373
+ var height = allToasts[i].offsetHeight;
374
+ classUsed = classUsed.substr(9, classUsed.length-1);
375
+ // Spacing between toasts
376
+ var offset = 15;
377
+
378
+ var width = window.innerWidth > 0 ? window.innerWidth : screen.width;
379
+
380
+ // Show toast in center if screen with less than or equal to 360px
381
+ if (width <= 360) {
382
+ // Setting the position
383
+ allToasts[i].style[classUsed] = offsetSize[classUsed] + "px";
384
+
385
+ offsetSize[classUsed] += height + offset;
386
+ } else {
387
+ if (containsClass(allToasts[i], "toastify-left") === true) {
388
+ // Setting the position
389
+ allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + "px";
390
+
391
+ topLeftOffsetSize[classUsed] += height + offset;
392
+ } else {
393
+ // Setting the position
394
+ allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + "px";
395
+
396
+ topRightOffsetSize[classUsed] += height + offset;
397
+ }
398
+ }
399
+ }
400
+
401
+ // Supporting function chaining
402
+ return this;
403
+ };
404
+
405
+ // Helper function to get offset.
406
+ function getAxisOffsetAValue(axis, options) {
407
+
408
+ if(options.offset[axis]) {
409
+ if(isNaN(options.offset[axis])) {
410
+ return options.offset[axis];
411
+ }
412
+ else {
413
+ return options.offset[axis] + 'px';
414
+ }
415
+ }
416
+
417
+ return '0px';
418
+
419
+ }
420
+
421
+ function containsClass(elem, yourClass) {
422
+ if (!elem || typeof yourClass !== "string") {
423
+ return false;
424
+ } else if (
425
+ elem.className &&
426
+ elem.className
427
+ .trim()
428
+ .split(/\s+/gi)
429
+ .indexOf(yourClass) > -1
430
+ ) {
431
+ return true;
432
+ } else {
433
+ return false;
434
+ }
435
+ }
436
+
437
+ // Setting up the prototype for the init object
438
+ Toastify.lib.init.prototype = Toastify.lib;
439
+
440
+ // Returning the Toastify function to be assigned to the window object/module
441
+ return Toastify;
442
+ });
443
+ });
444
+
445
+ var TypeIcons;
446
+ (function (TypeIcons) {
447
+ TypeIcons["success"] = "check-circle-filled";
448
+ TypeIcons["error"] = "sparkle-filled";
449
+ TypeIcons["info"] = "sparkle-filled";
450
+ })(TypeIcons || (TypeIcons = {}));
451
+ const ToastPositions = {
452
+ 'top-left': {
453
+ gravity: 'top',
454
+ position: 'left'
455
+ },
456
+ 'top-center': {
457
+ gravity: 'top',
458
+ position: 'center'
459
+ },
460
+ 'top-right': {
461
+ gravity: 'top',
462
+ position: 'right'
463
+ },
464
+ 'bottom-left': {
465
+ gravity: 'bottom',
466
+ position: 'left'
467
+ },
468
+ 'bottom-center': {
469
+ gravity: 'bottom',
470
+ position: 'center'
471
+ },
472
+ 'bottom-right': {
473
+ gravity: 'bottom',
474
+ position: 'right'
475
+ }
476
+ };
477
+ class CatNotificationService {
478
+ toastHTMLTemplate(title, message = ' ', options) {
479
+ var _a;
480
+ const template = document.createElement('template');
481
+ const typeIcon = (options === null || options === void 0 ? void 0 : options.type) ? TypeIcons[options.type] : TypeIcons.info;
482
+ title = title.trim();
483
+ message = message.trim();
484
+ const hasMessage = message && message !== '';
485
+ const hasMessageClass = hasMessage ? 'has-message' : '';
486
+ template.innerHTML = `<div class="cat-toastify-wrapper">
487
+ <div class="cat-toastify-icon-wrapper ${(_a = options === null || options === void 0 ? void 0 : options.type) !== null && _a !== void 0 ? _a : 'info'}">
488
+ <cat-icon icon="${typeIcon}"></cat-icon>
489
+ </div>
490
+ <div class="cat-toastify-title-wrapper ${hasMessageClass}">
491
+ <div class="cat-toastify-title">${title}</div></div>
492
+ ${hasMessage ? `<div class="cat-toastify-message">${message}</div>` : ''}
493
+ </div>`;
494
+ return template.content.firstChild;
495
+ }
496
+ error(title, message = ' ', options) {
497
+ const position = this.getPosition(options);
498
+ const toastOptions = {
499
+ node: (options === null || options === void 0 ? void 0 : options.content) ? options.content : this.toastHTMLTemplate(title, message, options),
500
+ duration: CatNotificationService.DURATION,
501
+ close: true,
502
+ className: 'cat-toastify',
503
+ gravity: position.gravity,
504
+ position: position.position,
505
+ stopOnFocus: true
506
+ };
507
+ toastify(toastOptions).showToast();
508
+ }
509
+ success(title, message = ' ', options) {
510
+ const position = this.getPosition(options);
511
+ const toastOptions = {
512
+ node: (options === null || options === void 0 ? void 0 : options.content) ? options.content : this.toastHTMLTemplate(title, message, options),
513
+ duration: CatNotificationService.DURATION,
514
+ close: true,
515
+ className: 'cat-toastify',
516
+ gravity: position.gravity,
517
+ position: position.position,
518
+ stopOnFocus: true
519
+ };
520
+ toastify(toastOptions).showToast();
521
+ }
522
+ info(title, message = ' ', options) {
523
+ const position = this.getPosition(options);
524
+ const toastOptions = {
525
+ node: (options === null || options === void 0 ? void 0 : options.content) ? options.content : this.toastHTMLTemplate(title, message, options),
526
+ duration: CatNotificationService.DURATION,
527
+ close: true,
528
+ className: 'cat-toastify',
529
+ gravity: position.gravity,
530
+ position: position.position,
531
+ stopOnFocus: true
532
+ };
533
+ toastify(toastOptions).showToast();
534
+ }
535
+ getPosition(options) {
536
+ const position = {
537
+ gravity: 'bottom',
538
+ position: 'right'
539
+ };
540
+ if ((options === null || options === void 0 ? void 0 : options.position) && ToastPositions[options.position]) {
541
+ position.position = ToastPositions[options.position].position;
542
+ position.gravity = ToastPositions[options.position].gravity;
543
+ }
544
+ return position;
545
+ }
546
+ }
547
+ CatNotificationService.DURATION = 8000;
548
+ const NotificationsService = new CatNotificationService();
549
+
550
+ exports.NotificationsService = NotificationsService;
551
+
552
+ //# sourceMappingURL=cat-notification-156f4cf5.js.map
@@ -0,0 +1 @@
1
+ {"file":"cat-notification-156f4cf5.js","mappings":"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","names":["this","Toastify"],"sources":["../node_modules/toastify-js/src/toastify.js","./src/components/cat-notification/cat-notification.tsx"],"sourcesContent":["/*!\n * Toastify js 1.11.2\n * https://github.com/apvarun/toastify-js\n * @license MIT licensed\n *\n * Copyright (C) 2018 Varun A P\n */\n(function(root, factory) {\n if (typeof module === \"object\" && module.exports) {\n module.exports = factory();\n } else {\n root.Toastify = factory();\n }\n})(this, function(global) {\n // Object initialization\n var Toastify = function(options) {\n // Returning a new init object\n return new Toastify.lib.init(options);\n },\n // Library version\n version = \"1.11.2\";\n\n // Set the default global options\n Toastify.defaults = {\n oldestFirst: true,\n text: \"Toastify is awesome!\",\n node: undefined,\n duration: 3000,\n selector: undefined,\n callback: function () {\n },\n destination: undefined,\n newWindow: false,\n close: false,\n gravity: \"toastify-top\",\n positionLeft: false,\n position: '',\n backgroundColor: '',\n avatar: \"\",\n className: \"\",\n stopOnFocus: true,\n onClick: function () {\n },\n offset: {x: 0, y: 0},\n escapeMarkup: true,\n style: {background: ''}\n };\n\n // Defining the prototype of the object\n Toastify.lib = Toastify.prototype = {\n toastify: version,\n\n constructor: Toastify,\n\n // Initializing the object with required parameters\n init: function(options) {\n // Verifying and validating the input object\n if (!options) {\n options = {};\n }\n\n // Creating the options object\n this.options = {};\n\n this.toastElement = null;\n\n // Validating the options\n this.options.text = options.text || Toastify.defaults.text; // Display message\n this.options.node = options.node || Toastify.defaults.node; // Display content as node\n this.options.duration = options.duration === 0 ? 0 : options.duration || Toastify.defaults.duration; // Display duration\n this.options.selector = options.selector || Toastify.defaults.selector; // Parent selector\n this.options.callback = options.callback || Toastify.defaults.callback; // Callback after display\n this.options.destination = options.destination || Toastify.defaults.destination; // On-click destination\n this.options.newWindow = options.newWindow || Toastify.defaults.newWindow; // Open destination in new window\n this.options.close = options.close || Toastify.defaults.close; // Show toast close icon\n this.options.gravity = options.gravity === \"bottom\" ? \"toastify-bottom\" : Toastify.defaults.gravity; // toast position - top or bottom\n this.options.positionLeft = options.positionLeft || Toastify.defaults.positionLeft; // toast position - left or right\n this.options.position = options.position || Toastify.defaults.position; // toast position - left or right\n this.options.backgroundColor = options.backgroundColor || Toastify.defaults.backgroundColor; // toast background color\n this.options.avatar = options.avatar || Toastify.defaults.avatar; // img element src - url or a path\n this.options.className = options.className || Toastify.defaults.className; // additional class names for the toast\n this.options.stopOnFocus = options.stopOnFocus === undefined ? Toastify.defaults.stopOnFocus : options.stopOnFocus; // stop timeout on focus\n this.options.onClick = options.onClick || Toastify.defaults.onClick; // Callback after click\n this.options.offset = options.offset || Toastify.defaults.offset; // toast offset\n this.options.escapeMarkup = options.escapeMarkup !== undefined ? options.escapeMarkup : Toastify.defaults.escapeMarkup;\n this.options.style = options.style || Toastify.defaults.style;\n if(options.backgroundColor) {\n this.options.style.background = options.backgroundColor;\n }\n\n // Returning the current object for chaining functions\n return this;\n },\n\n // Building the DOM element\n buildToast: function() {\n // Validating if the options are defined\n if (!this.options) {\n throw \"Toastify is not initialized\";\n }\n\n // Creating the DOM object\n var divElement = document.createElement(\"div\");\n divElement.className = \"toastify on \" + this.options.className;\n\n // Positioning toast to left or right or center\n if (!!this.options.position) {\n divElement.className += \" toastify-\" + this.options.position;\n } else {\n // To be depreciated in further versions\n if (this.options.positionLeft === true) {\n divElement.className += \" toastify-left\";\n console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.')\n } else {\n // Default position\n divElement.className += \" toastify-right\";\n }\n }\n\n // Assigning gravity of element\n divElement.className += \" \" + this.options.gravity;\n\n if (this.options.backgroundColor) {\n // This is being deprecated in favor of using the style HTML DOM property\n console.warn('DEPRECATION NOTICE: \"backgroundColor\" is being deprecated. Please use the \"style.background\" property.');\n }\n\n // Loop through our style object and apply styles to divElement\n for (var property in this.options.style) {\n divElement.style[property] = this.options.style[property];\n }\n\n // Adding the toast message/node\n if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {\n // If we have a valid node, we insert it\n divElement.appendChild(this.options.node)\n } else {\n if (this.options.escapeMarkup) {\n divElement.innerText = this.options.text;\n } else {\n divElement.innerHTML = this.options.text;\n }\n\n if (this.options.avatar !== \"\") {\n var avatarElement = document.createElement(\"img\");\n avatarElement.src = this.options.avatar;\n\n avatarElement.className = \"toastify-avatar\";\n\n if (this.options.position == \"left\" || this.options.positionLeft === true) {\n // Adding close icon on the left of content\n divElement.appendChild(avatarElement);\n } else {\n // Adding close icon on the right of content\n divElement.insertAdjacentElement(\"afterbegin\", avatarElement);\n }\n }\n }\n\n // Adding a close icon to the toast\n if (this.options.close === true) {\n // Create a span for close element\n var closeElement = document.createElement(\"span\");\n closeElement.innerHTML = \"&#10006;\";\n\n closeElement.className = \"toast-close\";\n\n // Triggering the removal of toast from DOM on close click\n closeElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.removeElement(this.toastElement);\n window.clearTimeout(this.toastElement.timeOutValue);\n }.bind(this)\n );\n\n //Calculating screen width\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Adding the close icon to the toast element\n // Display on the right if screen width is less than or equal to 360px\n if ((this.options.position == \"left\" || this.options.positionLeft === true) && width > 360) {\n // Adding close icon on the left of content\n divElement.insertAdjacentElement(\"afterbegin\", closeElement);\n } else {\n // Adding close icon on the right of content\n divElement.appendChild(closeElement);\n }\n }\n\n // Clear timeout while toast is focused\n if (this.options.stopOnFocus && this.options.duration > 0) {\n var self = this;\n // stop countdown\n divElement.addEventListener(\n \"mouseover\",\n function(event) {\n window.clearTimeout(divElement.timeOutValue);\n }\n )\n // add back the timeout\n divElement.addEventListener(\n \"mouseleave\",\n function() {\n divElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n self.removeElement(divElement);\n },\n self.options.duration\n )\n }\n )\n }\n\n // Adding an on-click destination path\n if (typeof this.options.destination !== \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n if (this.options.newWindow === true) {\n window.open(this.options.destination, \"_blank\");\n } else {\n window.location = this.options.destination;\n }\n }.bind(this)\n );\n }\n\n if (typeof this.options.onClick === \"function\" && typeof this.options.destination === \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.options.onClick();\n }.bind(this)\n );\n }\n\n // Adding offset\n if(typeof this.options.offset === \"object\") {\n\n var x = getAxisOffsetAValue(\"x\", this.options);\n var y = getAxisOffsetAValue(\"y\", this.options);\n\n var xOffset = this.options.position == \"left\" ? x : \"-\" + x;\n var yOffset = this.options.gravity == \"toastify-top\" ? y : \"-\" + y;\n\n divElement.style.transform = \"translate(\" + xOffset + \",\" + yOffset + \")\";\n\n }\n\n // Returning the generated element\n return divElement;\n },\n\n // Displaying the toast\n showToast: function() {\n // Creating the DOM object for the toast\n this.toastElement = this.buildToast();\n\n // Getting the root element to with the toast needs to be added\n var rootElement;\n if (typeof this.options.selector === \"string\") {\n rootElement = document.getElementById(this.options.selector);\n } else if (this.options.selector instanceof HTMLElement || (typeof ShadowRoot !== 'undefined' && this.options.selector instanceof ShadowRoot)) {\n rootElement = this.options.selector;\n } else {\n rootElement = document.body;\n }\n\n // Validating if root element is present in DOM\n if (!rootElement) {\n throw \"Root element is not defined\";\n }\n\n // Adding the DOM element\n var elementToInsert = Toastify.defaults.oldestFirst ? rootElement.firstChild : rootElement.lastChild;\n rootElement.insertBefore(this.toastElement, elementToInsert);\n\n // Repositioning the toasts in case multiple toasts are present\n Toastify.reposition();\n\n if (this.options.duration > 0) {\n this.toastElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n this.removeElement(this.toastElement);\n }.bind(this),\n this.options.duration\n ); // Binding `this` for function invocation\n }\n\n // Supporting function chaining\n return this;\n },\n\n hideToast: function() {\n if (this.toastElement.timeOutValue) {\n clearTimeout(this.toastElement.timeOutValue);\n }\n this.removeElement(this.toastElement);\n },\n\n // Removing the element from the DOM\n removeElement: function(toastElement) {\n // Hiding the element\n // toastElement.classList.remove(\"on\");\n toastElement.className = toastElement.className.replace(\" on\", \"\");\n\n // Removing the element from DOM after transition end\n window.setTimeout(\n function() {\n // remove options node if any\n if (this.options.node && this.options.node.parentNode) {\n this.options.node.parentNode.removeChild(this.options.node);\n }\n\n // Remove the element from the DOM, only when the parent node was not removed before.\n if (toastElement.parentNode) {\n toastElement.parentNode.removeChild(toastElement);\n }\n\n // Calling the callback function\n this.options.callback.call(toastElement);\n\n // Repositioning the toasts again\n Toastify.reposition();\n }.bind(this),\n 400\n ); // Binding `this` for function invocation\n },\n };\n\n // Positioning the toasts on the DOM\n Toastify.reposition = function() {\n\n // Top margins with gravity\n var topLeftOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var topRightOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var offsetSize = {\n top: 15,\n bottom: 15,\n };\n\n // Get all toast messages on the DOM\n var allToasts = document.getElementsByClassName(\"toastify\");\n\n var classUsed;\n\n // Modifying the position of each toast element\n for (var i = 0; i < allToasts.length; i++) {\n // Getting the applied gravity\n if (containsClass(allToasts[i], \"toastify-top\") === true) {\n classUsed = \"toastify-top\";\n } else {\n classUsed = \"toastify-bottom\";\n }\n\n var height = allToasts[i].offsetHeight;\n classUsed = classUsed.substr(9, classUsed.length-1)\n // Spacing between toasts\n var offset = 15;\n\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Show toast in center if screen with less than or equal to 360px\n if (width <= 360) {\n // Setting the position\n allToasts[i].style[classUsed] = offsetSize[classUsed] + \"px\";\n\n offsetSize[classUsed] += height + offset;\n } else {\n if (containsClass(allToasts[i], \"toastify-left\") === true) {\n // Setting the position\n allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + \"px\";\n\n topLeftOffsetSize[classUsed] += height + offset;\n } else {\n // Setting the position\n allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + \"px\";\n\n topRightOffsetSize[classUsed] += height + offset;\n }\n }\n }\n\n // Supporting function chaining\n return this;\n };\n\n // Helper function to get offset.\n function getAxisOffsetAValue(axis, options) {\n\n if(options.offset[axis]) {\n if(isNaN(options.offset[axis])) {\n return options.offset[axis];\n }\n else {\n return options.offset[axis] + 'px';\n }\n }\n\n return '0px';\n\n }\n\n function containsClass(elem, yourClass) {\n if (!elem || typeof yourClass !== \"string\") {\n return false;\n } else if (\n elem.className &&\n elem.className\n .trim()\n .split(/\\s+/gi)\n .indexOf(yourClass) > -1\n ) {\n return true;\n } else {\n return false;\n }\n }\n\n // Setting up the prototype for the init object\n Toastify.lib.init.prototype = Toastify.lib;\n\n // Returning the Toastify function to be assigned to the window object/module\n return Toastify;\n});\n","import Toastify, { Options } from 'toastify-js';\n\nexport enum TypeIcons {\n 'success' = 'check-circle-filled',\n 'error' = 'sparkle-filled',\n 'info' = 'sparkle-filled'\n}\n\nexport const ToastPositions: { [key: string]: { gravity: 'top' | 'bottom'; position: 'left' | 'center' | 'right' } } = {\n 'top-left': {\n gravity: 'top',\n position: 'left'\n },\n 'top-center': {\n gravity: 'top',\n position: 'center'\n },\n 'top-right': {\n gravity: 'top',\n position: 'right'\n },\n 'bottom-left': {\n gravity: 'bottom',\n position: 'left'\n },\n 'bottom-center': {\n gravity: 'bottom',\n position: 'center'\n },\n 'bottom-right': {\n gravity: 'bottom',\n position: 'right'\n }\n};\n\nexport interface ToastPosition {\n gravity: 'top' | 'bottom';\n position: 'left' | 'center' | 'right';\n}\n\nexport interface ToastOptions {\n /**\n * HTML content of the toast\n */\n content: Node;\n /**\n * Show close button\n */\n close: boolean;\n /**\n * Toast position\n */\n position: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';\n /**\n * Type of toast\n */\n type: 'success' | 'info' | 'error';\n /**\n * Invoked when the toast is clicked\n */\n onClick: () => void;\n /**\n * Toggle the default behavior of escaping HTML markup\n */\n escapeMarkup: boolean;\n}\n\nclass CatNotificationService {\n private static DURATION = 8000;\n\n toastHTMLTemplate(title: string, message = ' ', options?: Partial<ToastOptions>): HTMLElement {\n const template = document.createElement('template');\n const typeIcon = options?.type ? TypeIcons[options.type] : TypeIcons.info;\n title = title.trim();\n message = message.trim();\n const hasMessage = message && message !== '';\n const hasMessageClass = hasMessage ? 'has-message' : '';\n template.innerHTML = `<div class=\"cat-toastify-wrapper\">\n <div class=\"cat-toastify-icon-wrapper ${options?.type ?? 'info'}\">\n <cat-icon icon=\"${typeIcon}\"></cat-icon>\n </div>\n <div class=\"cat-toastify-title-wrapper ${hasMessageClass}\">\n <div class=\"cat-toastify-title\">${title}</div></div>\n ${hasMessage ? `<div class=\"cat-toastify-message\">${message}</div>` : ''}\n </div>`;\n return template.content.firstChild as HTMLElement;\n }\n\n error(title: string, message = ' ', options?: Partial<ToastOptions>): void {\n const position: ToastPosition = this.getPosition(options);\n const toastOptions: Options = {\n node: options?.content ? options.content : this.toastHTMLTemplate(title, message, options),\n duration: CatNotificationService.DURATION,\n close: true,\n className: 'cat-toastify',\n gravity: position.gravity,\n position: position.position,\n stopOnFocus: true\n };\n Toastify(toastOptions).showToast();\n }\n\n success(title: string, message = ' ', options?: Partial<ToastOptions>): void {\n const position: ToastPosition = this.getPosition(options);\n const toastOptions: Options = {\n node: options?.content ? options.content : this.toastHTMLTemplate(title, message, options),\n duration: CatNotificationService.DURATION,\n close: true,\n className: 'cat-toastify',\n gravity: position.gravity,\n position: position.position,\n stopOnFocus: true\n };\n Toastify(toastOptions).showToast();\n }\n\n info(title: string, message = ' ', options?: Partial<ToastOptions>): void {\n const position: ToastPosition = this.getPosition(options);\n const toastOptions: Options = {\n node: options?.content ? options.content : this.toastHTMLTemplate(title, message, options),\n duration: CatNotificationService.DURATION,\n close: true,\n className: 'cat-toastify',\n gravity: position.gravity,\n position: position.position,\n stopOnFocus: true\n };\n Toastify(toastOptions).showToast();\n }\n\n private getPosition(options?: Partial<ToastOptions>): ToastPosition {\n const position: ToastPosition = {\n gravity: 'bottom',\n position: 'right'\n };\n if (options?.position && ToastPositions[options.position]) {\n position.position = ToastPositions[options.position].position;\n position.gravity = ToastPositions[options.position].gravity;\n }\n return position;\n }\n}\n\nexport const NotificationsService = new CatNotificationService();\n"],"version":3}