PageSourceSearch

https://social.brussels/app/libs/ng-a11y/nga11y.min.js

js social.brussels collected 2026-10-02 15:39:08 UTC 6,571 bytes, 8 lines download raw bytes

1/*!
2* Angular Directives For Accessible Applications
3*
4* Copyright (C) 2015 Deque Systems Inc., All Rights Reserved
5*
6* See the project LICENSE file for usage - https://github.com/dequelabs/ngA11y/blob/master/LICENSE
7*/
8!function(){"use strict";function a(a){for(var b=a[0].querySelectorAll(d),c=[],e=0,f=b.length;f>e;e++){var g=b[e],h=g.getAttribute("aria-hidden");if(!h||"true"!==h.toLowerCase()){var i=g.getAttribute("tabindex");i&&"-1"===i||c.push(b[e])}}return c.length>0?{first:c[0],last:c[c.length-1]}:void 0}var b;try{b=angular.module("ngA11y")}catch(c){b=angular.module("ngA11y",[])}var d="a, input, [tabindex], select, button, textarea, area";b.directive("nga11yModal",["$log",function(){return{link:function(b,c){c.attr("tabindex","-1");var d=c[0].querySelector("[nga11y-modal-closer]");c.on("keydown",function(b){if(27===b.which)return void(d&&angular.element(d).triggerHandler("click"));if(9===b.which){var e=a(c);e&&(e.first===e.last?(e.first.focus(),b.preventDefault()):b.target===e.first&&b.shiftKey?(e.last.focus(),b.preventDefault()):b.target!==e.last||b.shiftKey||(e.first.focus(),b.preventDefault()))}})}}}])}(),function(){"use strict";var a;try{a=angular.module("ngA11y")}catch(b){a=angular.module("ngA11y",[])}a.directive("editableGrid",[function(){return{restrict:"E",replace:!0,transclude:!0,template:'<table role="grid" ng-transclude></table>',link:function(a,b){b.on("keydown",function(a){var b=a.which||a.keyCode;if(!(a.ctrlKey||a.shiftKey||a.metaKey||a.altKey)){for(var c,d,e,f,g=a.target.parentNode,h=g.parentNode;"BODY"!==h.nodeName;){if("TR"===h.nodeName&&(c=h),"TABLE"===h.nodeName){d=h;break}h=h.parentNode}if(d&&c)switch(b){case 38:e=c.previousElementSibling||c.previousSibling,e&&e.cells&&"TH"!==e.cells[g.cellIndex].nodeName&&e.cells[g.cellIndex].firstChild.focus();break;case 40:f=c.nextElementSibling||c.nextSibling,f&&f.cells&&f.cells[g.cellIndex].firstChild.focus()}}})}}}]),a.directive("editableGridRow",[function(){return{restrict:"E",replace:!0,transclude:!0,template:'<tr role="row" ng-transclude></tr>',link:function(){}}}]),a.directive("editableGridCell",[function(){return{restrict:"E",replace:!0,transclude:!0,template:'<td role="cell" ng-transclude></td>',link:function(a,b,c){for(var d,e,f,g,h,i,j,k=b[0],l=k.parentNode;"BODY"!==l.nodeName;){if("TR"===l.nodeName&&(f=l),"TABLE"===l.nodeName){e=l;break}l=l.parentNode}if(e&&f&&(g=e.rows[0],f!==g&&"col"===g.cells[k.cellIndex].scope&&(i=g.cells[k.cellIndex],i.id||(i.id="id"+Math.random().toString().substring(2))),"row"===f.cells[0].scope&&(h=f.cells[0],h.id||(h.id="id"+Math.random().toString().substring(2))),e&&f&&c.type))switch(c.type){case"text":d=angular.element('<input type="text" />'),j="",h&&(j+=h.id),i&&(j&&(j+=" "),j+=i.id),j&&d.attr("aria-labelledby",j),b.append(d)}}}}]),a.directive("editableColumnHeader",[function(){return{restrict:"E",replace:!0,transclude:!0,template:'<th role="cell" scope="col" ng-transclude></th>',link:function(){}}}]),a.directive("editableRowHeader",[function(){return{restrict:"E",replace:!0,transclude:!0,template:'<th role="cell" scope="row" ng-transclude></th>',link:function(){}}}])}(),function(){"use strict";function a(a,b,c){for(var d=b.getAttribute("aria-describedby")||"",e=d,f=a.describedby||[],g=0,h=f.length;h>g;g++){var i=new RegExp("(?:^|\\s)"+f[g]+"(?!\\S)","g");d=d.replace(i,"")}if(a.describedby=[],c){var j=new RegExp("(?:^|\\s)"+c+"(?!\\S)");j.test(d)||(a.describedby.push(c),d+=" "+c)}d!==e&&b.setAttribute("aria-describedby",d)}function b(){return{restrict:"E",require:"?ngModel",link:function(a,b,c,d){d&&(d.focus=function(){b[0].focus()})}}}var c;try{c=angular.module("ngA11y")}catch(d){c=angular.module("ngA11y",[])}c.directive("nga11yValidation",["$timeout","nga11yAnnounce",function(b,c){return{require:"ngModel",link:function(d,e,f,g){function h(d){b(function(){var b=e[0];if(b&&(b.setAttribute("aria-invalid",g.$invalid),g.$invalid)){var h=d?d:"",i=f.nga11yValidationId;if(i){var j=document.getElementById(i);if(!j)return;angular.element(j).hasClass("ng-hide")?a(g,b):(h+=" "+j.innerText,a(g,b,i))}""!==h&&c.assertiveAnnounce(h)}},0)}var i,j=f.nga11yValidationDelay;d.debounce=j?parseInt(j,10):2e3,e.bind("blur",function(){i&&b.cancel(i),h("Previous field invali
8d.")}),g.$parsers.unshift(function(a){return i&&b.cancel(i),i=b(h,d.debounce),a})}}}]),c.directive("input",b),c.directive("textarea",b),c.directive("select",b),c.directive("nga11yForm",["$log",function(a){return{restrict:"A",link:function(b,c,d){if(!d.name)return void a.error("nga11yForm must have a name attribute");var e=b[d.name];b.focusFirst=function(){for(var a in e)if(e.hasOwnProperty(a)&&0!==a.indexOf("$")){var b=e[a];if(b.$invalid)return b.focus&&b.focus(),!0}return!1},c.on("submit",function(a){b.focusFirst()&&a.preventDefault()})}}}])}(),function(){"use strict";var a;try{a=angular.module("ngA11y")}catch(b){a=angular.module("ngA11y",[])}a.directive("nga11yFocus",["$timeout",function(a){function b(a){return!a.offsetWidth||!a.offsetHeight}return{restrict:"A",link:function(c,d){a(function(){if(!document.activeElement||document.activeElement&&(b(document.activeElement)||"BODY"===document.activeElement.nodeName)){if(b(d[0]))return;d[0].hasAttribute("tabindex")||d[0].setAttribute("tabindex","0"),d[0].focus()}},10)}}}])}(),function(){"use strict";var a;try{a=angular.module("ngA11y")}catch(b){a=angular.module("ngA11y",[])}a.factory("nga11yAnnounce",[function(){function a(a){var b=angular.element("<div>").attr({id:"nga11y-politeannounce"+a,role:"log","aria-live":"polite","aria-relevant":"additions",style:d});return angular.element(document.body).append(b),b}function b(a){var b=angular.element("<div>").attr({id:"nga11y-assertiveannounce"+a,role:"log","aria-live":"assertive","aria-relevant":"additions",style:d});return angular.element(document.body).append(b),b}var c={number:2,pIndex:0,aIndex:0},d="border: 0;clip: rect(0 0 0 0);clip: rect(0, 0, 0, 0);height: 1px;margin: -1px;overflow: hidden;padding: 0;width: 1px;position: absolute;";c.politeAnnouncers=[];for(var e=0;e<c.number;e++)c.politeAnnouncers.push(a(e));for(c.assertiveAnnouncers=[],e=0;e<c.number;e++)c.assertiveAnnouncers.push(b(e));return c.politeAnnounce=function(a){this.politeAnnouncers[this.pIndex].empty(),this.pIndex+=1,this.pIndex=this.pIndex%this.number,this.politeAnnouncers[this.pIndex].append(angular.element("<p>").text(a))},c.assertiveAnnounce=function(a){this.assertiveAnnouncers[this.aIndex].empty(),this.aIndex+=1,this.aIndex=this.aIndex%this.number,this.assertiveAnnouncers[this.aIndex].append(angular.element("<p>").text(a))},c}])}();

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.