PageSourceSearch

https://www.moiramatters.com.au/application/js/hive-alerts.js?_v=2.70.24.0

js moiramatters.com.au collected 2026-09-28 14:32:05 UTC 2,612 bytes, 74 lines download raw bytes

1(function (global) {
2    'use strict';
3
4    var defaults = {
5        type: 'info',
6        icon: 'info',
7        delay: 5000,
8        title: '',
9        message: '',
10        classes: ''
11    };
12
13    var target = document.body;
14
15    function generateHTML(settings) {
16        var dir = settings.dir || (window.i18next ? window.i18next.dir() : 'ltr');
17        return [
18            '<div class="hive-alert hive-alert-', settings.type, ' ', settings.classes, '" dir="', dir, '">',
19            '<i class="hive-alert-icon fa fa-', settings.icon, '"></i>',
20            '<div class="hive-alert-inner">',
21            settings.title ? '<div class="hive-alert-title">' + settings.title + '</div>' : '',
22            '<div class="hive-alert-msg">', settings.message, '</div>',
23            '</div></div>'
24        ].join('');
25    }
26
27    function createNotification(baseOptions, options) {
28        var settings = Object.assign({}, defaults, baseOptions, options);
29        settings.target = settings.target || HiveAlerts.getTarget();
30
31        var messageHTML = generateHTML(settings);
32        return alertify.log(messageHTML, settings.type, settings.delay, settings.target);
33    }
34
35    var HiveAlerts = {
36        info: function(options) {
37            return createNotification({ type: 'info', icon: 'info-circle' }, options);
38        },
39
40        success: function(options) {
41            return createNotification({ type: 'success', icon: 'check-circle' }, options);
42        },
43
44        error: function(options) {
45            return createNotification({ type: 'danger', icon: 'exclamation-circle' }, options);
46        },
47
48        getTarget: function() {
49            return target;
50        },
51
52        setTarget: function(newTarget) {
53            if (typeof newTarget === 'string') {
54                var resolvedTarget = document.querySelector(newTarget);
55                if (!resolvedTarget) {
56                    console.error('Invalid selector: No element found for ' + newTarget);
57                    return;
58                }
59                target = resolvedTarget;
60            } else if (newTarget instanceof ShadowRoot) {
61                target = newTarget.querySelector('.hive-alert-container') ||
62                         newTarget.appendChild(document.createElement('div'));
63                target.className = 'hive-alert-container';
64            } else if (newTarget instanceof Node) {
65                target = newTarget;
66            } else {
67                console.error('Invalid target element');
68            }
69        }
70    };
71
72    global.HiveAlerts = HiveAlerts;
73
74}(typeof window !== 'undefined' ? window : global));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.