PageSourceSearch

https://www.navy.com/themes/custom/navycom/dist/js/career-explorer.js?tlijf5

js navy.com collected 2026-09-24 09:10:57 UTC 24,991 bytes, 424 lines download raw bytes

1(function($) {
2  $(window).on('load', function() {
3    if (!$('.node--type-component-category-page-filter').length) {
4      let $compareNum = 0;
5      let $cID_data0 = '';
6      let $cID_data1 = '';
7      let $cID_data2 = '';
8      let $cID_data_mod0 = '';
9      let $cID_data_mod1 = '';
10      let $cID_data_mod2 = '';
11      if ($.cookie('cID_data_mod0') !== undefined && $.cookie('cID_data_mod0') !== '') {
12        $compareNum = $compareNum + 1;
13        $cID_data_mod0 = $.cookie('cID_data_mod0');
14      } else {
15        $cID_data_mod0 = '';
16      }
17      if ($.cookie('cID_data_mod1') !== undefined && $.cookie('cID_data_mod1') !== '') {
18        $compareNum = $compareNum + 1;
19        $cID_data_mod1 = $.cookie('cID_data_mod1');
20      } else {
21        $cID_data_mod1 = '';
22      }
23      if ($.cookie('cID_data_mod2') !== undefined && $.cookie('cID_data_mod2') !== '') {
24        $compareNum = $compareNum + 1;
25        $cID_data_mod2 = $.cookie('cID_data_mod2');
26      } else {
27        $cID_data_mod2 = '';
28      }
29      let $totalSessionItems = $compareNum;
30      $('.careerlist-by-category .careerlist-by-category-header .close').on('click', function() {
31        $('.block-navycom-core-career-explorer-block .overlap').css('display','none');
32        //$('.block-navycom-core-career-explorer-block .careerlist-by-category').css({'left':'-580px','opacity':'0'});
33        $('.block-navycom-core-career-explorer-block .careerlist-by-category').removeClass('on');
34        // Show Get Connected Modal
35        $('#block-navycom-getconnected').removeClass('off');
36        // reset Career accordion header color
37        $('.view-career-list-by-category .view-content > h3').css('background-color','rgba(1, 14, 19, 0.8)');
38      });
39      //$careerCheck = $('.view-careers-grid .view-content .views-row .field--item.views-col .careerCompareCheck .checkcontainer input.cCheck');
40      $careerListModal = $('.block-navycom-core-career-explorer-block .careerlist-by-category');
41      $careerListModalItem = $careerListModal.find('.view-career-list-by-category');
42      $careerListModalItemList = $('.careerlist-by-category .view-career-list-by-category .view-content .node--view-mode-view-comparison');
43      $careerCheckPop = $careerListModalItemList.find('.careerCompareCheck .checkcontainer input.cCheck');
44      $firstCategoryCareersGrid = $('.view-careers-grid').first();
45      $firstCategoryCareersGridDivs = $firstCategoryCareersGrid.find('.view-content .views-view-grid .views-row > .views-col');
46      $compareToolModel = $('form#career-explorer-form');
47      let $compare0 =  $('form#career-explorer-form .form-item-career0');
48      let $compare1 =  $('form#career-explorer-form .form-item-career1');
49      let $compare2 =  $('form#career-explorer-form .form-item-career2');
50      let $cCheck = 0;
51      $careerCat_Max = 'false';
52      $lastCareerChecked = '';
53
54      /*
55      // Rendering From top compare with career list
56      */
57      let $job_list = $('.career-explorer-form .careerlist-by-category .view-id-career_list_by_category .view-content');
58      $job_list.accordion({
59        collapsible: true,
60        heightStyle: 'content',
61        animate: true,
62        active: false
63      });
64
65      // Check select upto 3 careers - disable checkbox
66      $.fn.updateCheckbox = function($cCheck) {
67        // Reset global module reset
68        if ($compare0.hasClass('cActive') && !$compare1.hasClass('cActive') && !$compare2.hasClass('cActive')) {
69          $compare1.removeClass('is-disabled');
70          $compare2.addClass('is-disabled');
71        } else if ($compare0.hasClass('cActive') && $compare1.hasClass('cActive') && !$compare2.hasClass('cActive')) {
72          $compare2.removeClass('is-disabled');
73        } else if ($compare0.hasClass('cActive') && !$compare1.hasClass('cActive') && $compare2.hasClass('cActive')) {
74          $compare1.removeClass('is-disabled');
75        } else if (!$compare0.hasClass('cActive') && $compare1.hasClass('cActive') && $compare2.hasClass('cActive')) {
76          $compare0.removeClass('is-disabled');
77        } else if (!$compare0.hasClass('cActive') && !$compare1.hasClass('cActive') && $compare2.hasClass('cActive')) {
78          $compare0.removeClass('is-disabled');
79          $compare1.addClass('is-disabled');
80        } else if (!$compare0.hasClass('cActive') && $compare1.hasClass('cActive') && !$compare2.hasClass('cActive')) {
81          $compare0.removeClass('is-disabled');
82          $compare2.addClass('is-disabled');
83        } else if (!$compare0.hasClass('cActive') && !$compare1.hasClass('cActive') && !$compare2.hasClass('cActive')) {
84          $compare0.removeClass('is-disabled');
85          $compare1.addClass('is-disabled');
86          $compare2.addClass('is-disabled');
87        }
88        if ($cCheck >= 3) {
89          $careerCat_Max = true;
90        } else {
91          if ($cCheck === 0) {
92            $('form#career-explorer-form button.compare-bt').prop('disabled', true);
93          } else {
94            $('form#career-explorer-form button.compare-bt').prop('disabled', false);
95          }
96          $('.careerCompareCheck .checkcontainer .checkmark').removeClass('dim');
97          $careerCat_Max = false;
98        }
99        return this;
100      };
101      // Add comment class careerChecks
102      $careerListModalItemList.each(function(index) {
103        $(this).addClass('careerCheck-' + (index + 1)).attr('data-rel','careerCheck-' + (index + 1));
104        $(this).find('.careerCompareCheck label.checkcontainer').attr('for',$.trim($(this).find('> .field--name-node-title').text()).replace(/\s/g, '-') + (index + 1));
105        $(this).find('.careerCompareCheck label.checkcontainer input').attr({
106          'id':$.trim($(this).find('> .field--name-node-title').text()).replace(/\s/g, '-') + (index + 1),
107          'aria-label': $.trim($(this).find('> .field--name-node-title').text())
108        });
109      });
110      // Run if user seesion found
111      $.fn.updateCheckboxWithSession = function($cCheck) {
112        if ($cCheck >= 3) {
113          $careerCheckPop.prop('disabled', true);
114          $('input.cChecked').addClass('newP').prop('disabled', false);
115        } else {
116          if ($cCheck === 0) {
117            $('form#career-explorer-form button.compare-bt').prop('disabled', true);
118          } else {
119            $('form#career-explorer-form button.compare-bt').prop('disabled', false);
120          }
121          $careerCheckPop.prop('disabled', false);
122          $('.careerCompareCheck .checkcontainer .checkmark').removeClass('dim');
123          $careerListModalItemList.removeClass('dim');
124        }
125        return this;
126      };
127      // Build global, career list and category grid if user session exists.
128      if ($totalSessionItems > 0) {
129        // Activate Global Comparison tool - fill in from session
130        $('.career-explorer-form').css('top', '0px');
131        let itemPP = 0;
132        for (var i = 0; i < 3; i++) {
133          const nField = $('.form-item-career' + i);
134          if ($totalSessionItems === 3) {
135            $('form#career-explorer-form button.compare-bt').prop('disabled', false);
136            // For Career list popup - global
137            let nIDcurrent = eval('$cID_data_mod' + i);
138            // Update Career List Select
139            const dataRel = $('.node--view-mode-view-comparison[data-history-node-id="'+nIDcurrent+'"]');
140            dataRel.find('.careerCompareCheck input').addClass('cChecked').removeClass('cCheck').prop('checked', true);
141            dataRel.addClass('sel');
142            $careerListModal.find('#'+dataRel.parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
143            // Update global compare modal
144            nField.find('.control-label span.input-title').html('<img src="/themes/custom/navycom/assets/images/swap_modal.svg" class="swap-on">' + dataRel.find('.field--name-node-title').text().trim() + '<img src="/themes/custom/navycom/assets/images/delete_x.svg" class="career-x">');
145            nField.addClass('cActive').attr({'nid':+nIDcurrent,'data-rel':dataRel.attr('data-rel')});
146            if(i===2){
147              $careerListModal.attr('data-check','3');
148            }
149            $cCheck = 3;
150            $('.careerlist-by-category').attr('data-check', $cCheck);
151          }
152          else {
153            if ($totalSessionItems === 2) {
154              $('form#career-explorer-form button.compare-bt').prop('disabled', false);
155              let nIDcurrent = eval('$cID_data_mod' + i);
156              if (nIDcurrent) {
157                // Update Career List Select
158                const dataRel = $('.node--view-mode-view-comparison[data-history-node-id="'+nIDcurrent+'"]');
159                dataRel.find('.careerCompareCheck input').removeClass('cCheck').addClass('cChecked').prop('checked', 'true');
160                dataRel.addClass('sel');
161                $careerListModal.find('#'+dataRel.parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
162                // Update global compare modal
163                nField.find('.control-label span.input-title').html('<img src="/themes/custom/navycom/assets/images/swap_modal.svg" class="swap-on">' + dataRel.find('.field--name-node-title').text().trim() + '<img src="/themes/custom/navycom/assets/images/delete_x.svg" class="career-x">');
164                nField.addClass('cActive').attr({'nid':+nIDcurrent,'data-rel':dataRel.attr('data-rel')}
164);
165              }
166              $cCheck = 2;
167              $('.careerlist-by-category').attr('data-check', $cCheck);
168            }
169            if ($totalSessionItems === 1) {
170              let nIDcurrent = eval('$cID_data_mod' + i);
171              if (nIDcurrent) {
172                // Update Career List Select
173                const dataRel = $('.node--view-mode-view-comparison[data-history-node-id="'+nIDcurrent+'"]');
174                dataRel.find('.careerCompareCheck input').addClass('cChecked').removeClass('cCheck').prop('checked', true);
175                dataRel.addClass('sel');
176                $careerListModal.find('#'+dataRel.parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
177                // Update global compare modal
178                nField.find('.control-label span.input-title').html('<img src="/themes/custom/navycom/assets/images/swap_modal.svg" class="swap-on">' + dataRel.find('.field--name-node-title').text().trim() + '<img src="/themes/custom/navycom/assets/images/delete_x.svg" class="career-x">');
179                nField.addClass('cActive').attr({'nid':+nIDcurrent,'data-rel':dataRel.attr('data-rel')});
180              }
181              $cCheck = 1;
182              $('.careerlist-by-category').attr('data-check', $cCheck);
183            }
184          }
185          $compareToolModel.on('click', '.form-item-career'+i+' .input-title .career-x', function (e) {
186            e.cancelBubble=true;
187            e.stopPropagation();
188            const dataCC = $('.node--view-mode-view-comparison[data-history-node-id="'+ nField.attr('nid') +'"]');
189            // Reset current Comparison modal
190            $compareToolModel.find('.form-type-textfield').each(function(index) {
191              if (!$(this).hasClass('cActive')) {
192                $(this).addClass('is-disabled');
193              }
194            });
195            nField.removeClass('cActive is-disabled').attr({'nid':'','data-rel':''}).find('label.control-label .input-title').text('ADD CAREER');
196            $cCheck = $compareToolModel.find('.cActive').length;
197            if ($cCheck === 0) {
198              $('form#career-explorer-form button.compare-bt').prop('disabled', true);
199              $('.view-career-list-by-category .view-content > h3').css('background-color','rgba(1, 14, 19, 0.8)');
200            }
201            // For Career list popup - global
202            $('.careerlist-by-category').attr('data-check', $cCheck);
203            dataCC.removeClass('sel').find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
204            // Update mod cookie
205            eval('$' + nField.attr('aria-label') + '= ""');
206            $.removeCookie(nField.attr('aria-label'), { path: '/' });
207          });
208
209        }
210      } else {
211        $('.careerlist-by-category').attr('data-check', $cCheck);
212      }
213      // toggle Compare Careers Switch
214      $("input#compareCheck").change(function() {
215        if ($(this).is(":checked")) {
216          $('.career-explorer-form').css('top', '0px');
217        } else {
218          $('.career-explorer-form').css('top', '-120px');
219        }
220      });
221      // Career list block checkbox bind
222      $lastCareerCheckedList = null;
223      $lastCheckedCareerFromCategory = null;
224
225      $careerListModalItem.each(function() {
226        $(this).find('input.cCheck, input.cChecked').change(function() {
227          let career_node = $(this).parent().parent().parent();
228          let data_rel = career_node.attr('data-rel');
229          if($(this).is(':checked')) {
230            // logic - update last Item and Swap with new career on modal position
231            // Get current position nid
232            $currentPos = $compareToolModel.find('.'+$careerListModal.attr('data-pos'));
233            $currentPosNum = $careerListModal.attr('data-pos-num');
234            $('.node--view-mode-view-comparison[data-history-node-id="'+ $currentPos.attr("nid") +'"]').removeClass('sel').find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
235            $currentPos.addClass('cActive').attr({'nid':career_node.attr('data-history-node-id'),'data-rel':data_rel});
236            $currentPos.find('label span.input-title').html('<img src="/themes/custom/navycom/assets/images/swap_modal.svg" class="swap-on">' + career_node.find('.field--name-node-title').text() + '<img src="/themes/custom/navycom/assets/images/delete_x.svg" class="career-x">');
237            $currentPos.find('input.career-comp').val(career_node.attr('data-history-node-id'));
238
239            let result_postion = $currentPosNum;
240            $.cookie('cID_data_mod'+result_postion, career_node.attr('data-history-node-id'), { path: '/' });
241            eval('$cID_data_mod' + result_postion + '=' + career_node.attr("data-history-node-id"));
242            $(this).addClass('cChecked').removeClass('cCheck');
243            career_node.addClass('sel');
244            $careerListModal.find('h3#'+$(this).parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
245            $cCheck = $cCheck + 1;
246            if($cCheck>3){
247              $cCheck = 3;
248            }
249            $('.careerlist-by-category').attr('data-check', $cCheck);
250            //$careerListModal.css({'left':'-580px','opacity':'0'});
251            $careerListModal.removeClass('on');
252            // Show Get Connected Modal
253            $('#block-navycom-getconnected').removeClass('off');
254            $('.overlap').css('display','none');
255            // Reset Career accordion header color
256            $('.view-career-list-by-category .view-content > h3').css('background-color','rgba(1, 14, 19, 0.8)');
257            // Set career x button on current career position
258            for (var i = 0; i < 3; i++) {
259              const nField = $('.form-item-career' + i);
260              $compareToolModel.on('click', '.form-item-career'+i+' .input-title .career-x', function (e) {
261                e.cancelBubble=true;
262                e.stopPropagation();
263                const dataCC = $('.node--view-mode-view-comparison[data-history-node-id="'+ nField.attr('nid') +'"]');
264                // Reset current Comparison modal
265                $compareToolModel.find('.form-type-textfield').each(function(index) {
266                  if (!$(this).hasClass('cActive')) {
267                    $(this).addClass('is-disabled');
268                  }
269                });
270                nField.removeClass('cActive is-disabled').attr({'nid':'','data-rel':''}).find('label.control-label .input-title').text('ADD CAREER');
271                $cCheck = $compareToolModel.find('.cActive').length;
272                if ($cCheck === 0) {
273                  $('form#career-explorer-form button.compare-bt').prop('disabled', true);
274                  $('.view-career-list-by-category .view-content > h3').css('background-color','rgba(1, 14, 19, 0.8)');
275                }
276                // For Career list popup - global
277                $('.careerlist-by-category').attr('data-check', $cCheck);
278                dataCC.removeClass('sel').find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
279                // Update mod cookie
280                eval('$' + nField.attr('aria-label') + '= ""');
281                $.removeCookie(nField.attr('aria-label'), { path: '/' });
282              });
283            }
284          }
285          else {
286            $(this).removeClass('cChecked').addClass('cCheck');
287            career_node.removeClass('sel');
288            if($compare0.attr('nid') === career_node.attr('data-history-node-id')) {
289              $compare0.removeClass('cActive').attr({'nid':'','data-rel':''});
290              $compare0.find('label span.input-title').text('ADD CAREER');
291              $compare0.find('input.career-comp').val(null);
292              $cID_data_mod0 = '';
293              $.removeCookie($compare0.attr('aria-label'), { path: '/' });
294              // Careers by category control
295              const dataRel_a = $('.node--view-mode-teaser.square[data-history-node-id="'+ career_node.attr('data-history-node-id') +'"]');
296              dataRel_a.parent().find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
297            } else if($compare1.attr('nid') === career_node.attr('data-history-node-id')) {
298              $compare1.removeClass('cActive').attr({'nid':'','data-rel':''});
299              $compare1.find('label span.input-title').text('ADD CAREER');
300              $compare1.find('input.career-comp').val(null);
301              $cID_data_mod1 = '';
302              $.removeCookie($compare1.attr('aria-label'), { path: '/' });
303              // Careers by category control
304              const dataRel_a = $('.node--view-mode-teaser.square[data-history-node-id="'+ career_node.attr('data-history-node-id') +'"]');
305              dataRel_a.parent().find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
306            } else if($compare2.attr('nid') === career_node.attr('data-history-node-id')) {
307              $compare2.removeClass('cActive').attr({'nid':'','data-rel':''});
308              $compare2.find('label span.input-title').text('ADD CAREER');
309              $compare2.find('input.career-comp').val(null);
310              $cID_data_mod2 = '';
311              $.removeCookie($compare2.attr('aria-label'), { path: '/' });
312              // Careers by category control
313              const dataRel_a = $('.node--view-mode-teaser.square[data-history-node-id="'+ career_node.attr('data-history-node-id') +'"]');
314              dataRel_a.parent().find('.careerCompareCheck input').addClass('cCheck').removeClass('cChecked').prop('checked', false);
315            }
316            // Set Career accordion header color
317            if (!$(this).parents('.c-accor').find('ul li div.sel').length > 0) {
318              $careerListModal.find('h3#'+$(this).parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(1, 14, 19, 0.8)');
319            }
320            $cCheck = $cCheck - 1;
321            if ($cCheck < 0) {
322              $cCheck = 0;
323            }
324            $('.careerlist-by-category').attr('data-check', $cCheck);
325          }
326          $.fn.updateCheckbox($cCheck);
327        });
328      });
329
330      // Set Career Compare Modal and Logic
331      $compareToolModel.find('.form-type-textfield').each(function(index) {
332        if($totalSessionItems === 0) {
333          if(index !== 0) {
334            $(this).addClass('is-disabled');
335          }
336        } else if ($totalSessionItems === 1) {
337          if(index === 2) {
338            $(this).addClass('is-disabled');
339          }
340        }
341        $(this).attr('aria-label','cID_data_mod' + index);
342        $compareToolModel.on('click', '.form-item-career'+index+':not(".is-disabled") .control-label', function (e) {
343          // Set Career accordion header color
344          $careerListModalItemList.each(function(index) {
345            $(this).css('opacity','1').find('.careerCompareCheck .checkcontainer input').removeClass('disabled').prop('disabled',false);
346            if ($(this).hasClass('sel')) {
347              $careerListModal.find('h3#'+$(this).parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
348            }
349          });
350          $('.block-navycom-core-career-explorer-block .overlap').css('display','block');
351          //$('.block-navycom-core-career-explorer-block .careerlist-by-category').css({'left':'15px','opacity':'1'}).attr({'data-pos':'form-item-career'+index,'data-pos-num':index});
352          $('.block-navycom-core-career-explorer-block .careerlist-by-category').addClass('on').attr({'data-pos':'form-item-career'+index,'data-pos-num':index});
353          // Hide Get Connected Modal
354          $('#block-navycom-getconnected').addClass('off');
355          // Apply to current compared items
356          for (let i = 0; i < 3; i++) {
357            let nIDcurrent_a = $('.form-item-career'+i+'.cActive').attr('nid');
358            const dataRel_a = $('.node--view-mode-view-comparison[data-history-node-id="'+nIDcurrent_a+'"]');
359            $job_list.find('#'+dataRel_a.parents('.c-accor').attr('aria-labelledby')).css('background-color','rgba(0, 118, 169, 0.5)');
360            dataRel_a.removeClass('sel').css('opacity', '0.3');
361            dataRel_a.find('.careerCompareCheck input').addClass('cChecked disabled').removeClass('cCheck').prop({'checked':true,'disabled':true});
362          }
363          // Update Career list popup - Selection
364          let nIDcurrent = $(this).attr('nid');
365          const dataRel = $('.node--view-mode-view-comparison[data-history-node-id="'+nIDcurrent+'"]');
366          dataRel.removeClass('sel').css('opacity', '0.3');
367          dataRel.find('.careerCompareCheck input').addClass('cCheck disabled').removeClass('cChecked').prop('disabled',true);
368          e.preventDefault();
369        });
370      });
371      /*
372      // Submit Compare careers
373      */
374      $.fn.compareSubmit = function() {
375        window.open('/careers-benefits/compare-careers', "_self");
376      }
377      $('form#career-explorer-form button.compare-bt').on('click', function(e) {
378        e.preventDefault();
379        $('.block-navycom-core-career-explorer-block .overlap').css({'display':'block','background-color':'rgba(0, 0, 0, 0.8)'}).html('<div class="lds-ellipsis"><div></div><div></div><div></div><div></div></div>');
380        for (var i = 0; i < 3; i++) {
381          if(eval('$cID_data_mod'+i) !== ''){
382            $.cookie('cID_data'+i, eval('$cID_data_mod'+i), { path: '/' });
383          } else {
384            let removeC='cID_data'+i;
385            $.removeCookie(removeC, { path: '/' });
386          }
387          if (i>=2){
388            $.fn.compareSubmit();
389          }
390        }
391      });
392    }
393    $('form#career-explorer-form .compare-reset').on('click', function(e) {
394      e.preventDefault();
395      $compareToolModel.find('.form-type-textfield').removeClass('cActive').find('label.control-label .input-title').text('ADD CAREER');
396      for (var i = 0; i < 3; i++) {
397        if(i !== 0) {
398          $compareToolModel.find('.form-item-career' + i).addClass('is-disabled');
399        }
400        const removeSetCookies='cID_data_mod'+i;
401        const removeGlobalCookies='cID_data'+i;
402        $.removeCookie(removeSetCookies, { path: '/' });
403        $.removeCookie(removeGlobalCookies, { path: '/' });
404      }
405      $('.career-explorer-form').css('top', '-120px');
406      if ($('body.page-node-type-careers-category')[0]) {
407        $('.compare_toggle input#compareCheck').prop('checked',fal
407se);
408        $('.view-careers-grid .compare_desc, .careerCompareCheck').css('display','none');
409      }
410      $cCheck = 0;
411      $('form#career-explorer-form button.compare-bt').prop('disabled', true);
412      $firstCategoryCareersGrid.attr('data-check','0');
413      $firstCategoryCareersGridDivs.find('.careerCompareCheck').removeClass('sel').find('.checkcontainer input').removeClass('cChecked').addClass('cCheck').prop('checked',false);
414      $careerListModal.attr('data-check','0').removeAttr('data-pos data-pos-num');
415      $careerListModalItemList.removeAttr('style').removeClass('sel').find('span.careerCompareCheck input').removeClass('disabled cChecked').addClass('cCheck').prop({'checked':false,'disabled':false});
416      $('.career-explorer-form .careerlist-by-category .view-id-career_list_by_category .view-content').accordion({
417        active: false,
418        activate: function( event, ui ) {
419          $('.ui-accordion-header').attr('tabindex', '0');
420        }
421      }).find('.ui-accordion-header').removeAttr('style').attr('tabindex', '0');
422    });
423  });
424})(jQuery);

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.