PageSourceSearch

https://asubtlerevelry.com/assets/asubtlerevelry.com/wp-content/th…/bimber/js/featured-entries-cd827fea8f.js

js asubtlerevelry.com collected 2026-10-03 21:04:53 UTC 4,984 bytes, 154 lines download raw bytes

1var _____WB$wombat$assign$function_____=function(name){return (globalThis._wb_wombat && globalThis._wb_wombat.local_init && globalThis._wb_wombat.local_init(name))||globalThis[name];};if(!globalThis.__WB_pmw){globalThis.__WB_pmw=function(obj){this.__WB_source=obj;return this;}}{
2let window = _____WB$wombat$assign$function_____("window");
3let self = _____WB$wombat$assign$function_____("self");
4let document = _____WB$wombat$assign$function_____("document");
5let location = _____WB$wombat$assign$function_____("location");
6let top = _____WB$wombat$assign$function_____("top");
7let parent = _____WB$wombat$assign$function_____("parent");
8let frames = _____WB$wombat$assign$function_____("frames");
9let opener = _____WB$wombat$assign$function_____("opener");
10/*******************
11 *
12 * Featured Entries
13 *
14 ******************/
15
16(function ($) {
17
18    'use strict';
19
20    var selectors = {
21        'wrapper':  '.g1-featured',
22        'items':    '.g1-featured-items',
23        'item':     '.g1-featured-item',
24        'prevLink': '.g1-featured-arrow-prev',
25        'nextLink': '.g1-featured-arrow-next'
26    };
27
28    var classes = {
29        'startPos': 'g1-featured-viewport-start',
30        'endPos':   'g1-featured-viewport-end',
31        'noArrows':  'g1-featured-viewport-no-overflow'
32    };
33
34    var isRTL;
35    var $wrapper;   // main wrapper
36    var $items;     // items wrapper, is scrollable
37    var $prevLink;  // move collection left
38    var $nextLink;  // move collection right
39
40    // public
41    g1.featuredEntries = function () {
42        isRTL = g1.isRTL();
43
44        $(selectors.wrapper).each(function () {
45            $wrapper = $(this);
46            $items = $wrapper.find(selectors.items);
47            $prevLink = $wrapper.find(selectors.prevLink);
48            $nextLink = $wrapper.find(selectors.nextLink);
49
50            var singleItemWidth = $items.find(selectors.item + ':first').width();
51            var moveOffset = 2 * singleItemWidth;
52            var direction = isRTL ? -1 : 1;
53
54            $prevLink.on('click', function (e) {
55                e.preventDefault();
56
57                scrollHorizontally(-direction * moveOffset);
58            });
59
60            $nextLink.on('click', function (e) {
61                e.preventDefault();
62
63                scrollHorizontally(direction * moveOffset);
64            });
65
66            $items.on('scroll', function () {
67                window.requestAnimationFrame(function () {
68                    updateScrollState();
69                });
70            });
71
72            $wrapper.removeClass('g1-featured-no-js').addClass('g1-featured-js');
73
74            updateScrollState();
75        });
76    };
77
78    // private
79    function updateScrollState () {
80        var width = $items.get(0).scrollWidth;
81        var overflowedWidth = $items.width();
82        var scrollLeft = $items.scrollLeft();
83
84        $wrapper.removeClass(classes.endPos + ' ' + classes.startPos);
85        // we add 20px "error margin", so we don't have scroll when the last element's overflow only a tiny bit.
86        // 20px is equal to the padding of the title, so the text is always in viewport.
87        if ( $items[0].offsetWidth + 20 >= $items[0].scrollWidth ){
88            $wrapper.addClass(classes.noArrows);
89            return;
90        }
91
92        // no scroll LTR, most left RTL
93        if (scrollLeft <= 0) {
94            if (isRTL) {
95                $wrapper.addClass(classes.endPos);
96                $wrapper.removeClass(classes.startPos);
97            } else {
98                $wrapper.addClass(classes.startPos);
99                $wrapper.removeClass(classes.endPos);
100            }
101        // most right LTR, no scroll RTL
102        } else if (width <= scrollLeft + overflowedWidth) {
103            if (isRTL) {
104                $wrapper.addClass(classes.startPos);
105                $wrapper.removeClass(classes.endPos);
106            } else {
107                $wrapper.addClass(classes.endPos);
108                $wrapper.removeClass(classes.startPos);
109            }
110        }
111    }
112
113    function scrollHorizontally(difference) {
114        var leftOffset = $items.scrollLeft();
115
116        $items.animate(
117            // properties to animate
118            {
119                'scrollLeft': leftOffset + difference
120            },
121            375,        // duration
122            'swing'     // easing
123        );
124    }
125
126    // Fire it up.
127    $(document).ready(function () {
128        g1.featuredEntries();
129
130    });
131})(jQuery);
132
133}
134
135/*
136     FILE ARCHIVED ON 13:00:57 Mar 10, 2025 AND RETRIEVED FROM THE
137     INTERNET ARCHIVE ON 13:02:12 Aug 26, 2026.
138     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.
139
140     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
141     SECTION 108(a)(3)).
142*/
143/*
144playback timings (ms):
145  captures_list: 0.458
146  exclusion.robots: 0.07
147  exclusion.robots.policy: 0.062
148  esindex: 0.008
149  cdx.remote: 16.154
150  LoadShardBlock: 57.21 (3)
151  PetaboxLoader3.datanode: 38.322 (4)
152  PetaboxLoader3.resolve: 68.105 (2)
153  load_resource: 54.543
154*/

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.