{"version":3,"sources":["SearchSuggestions.ts"],"names":["SearchSugesstion","prototype","AddCsrfToken","payload","csrfToken","$","length","csrfFieldId","val","GetValue","key","collection","i","item","Key","Value","initilize","searchBox","clickBtn","widget","ui","autocomplete","noResults","_renderItem","ul","attr","value","append","label","appendTo","source","request","response","jsonToPost","encodeURIComponent","term","_spPageContextInfo","webAbsoluteUrl","toJSON","ajax","url","data","dataType","type","timeout","success","eval","autocompleteResults","Properties","map","replace","error","errorType","errorThrown","minLength","select","event","click","exports"],"mappings":"qIAIA,IAAAA,kBAAA,WAEI,QAAAA,qBA8FJ,MA1FIA,kBAAAC,UAAAC,aAAA,SAAaC,GACT,GACIC,GAAYC,EAAE,eAClB,OAAiB,OAAbD,GAAyC,GAApBA,EAAUE,OACxBH,EAGAI,eAAoBH,EAAUI,MAAQ,IAAML,GAI3DH,iBAAAC,UAAAQ,SAAA,SAASC,EAAKC,GACV,GAAW,MAAPD,GAAsB,IAAPA,EACf,IAAK,GAAIE,GAAI,EAAGA,EAAID,EAAWL,OAAQM,IAAK,CACxC,GAAIC,GAAOF,EAAWC,EAEtB,IAAIC,EAAKC,KAAOJ,EACZ,MAAOG,GAAKE,MAKxB,MAAO,OAGXf,iBAAAC,UAAAe,UAAA,SAAUC,UAAgBC,UAChBb,EAAGc,OAAO,kBAAyBd,EAAGe,GAAGC,cAC3CC,UAAW,GACXC,YAAa,SAAUC,EAAIX,GACvB,MAAOR,GAAE,QACJoB,KAAK,aAAcZ,EAAKa,OACxBC,OAAOd,EAAKe,OACZC,SAASL,MAIhBnB,EAAE,IAAMY,WAAYI,cAEtBS,OAAQ,SAAUC,QAASC,UAEvB,GAAIC,cAAgBnB,IAAO,kBAAmBC,MAASmB,mBAAmBH,QAAQI,QAAWrB,IAAO,cAAeC,MAASqB,mBAAmBC,iBAC3IlC,QAAgBE,EAAGiC,OAAOL,WAE9B5B,GAAEkC,MACEC,IAAK,gCACLC,KAAMzC,iBAAiBC,UAAUC,aAAaC,SAC9CuC,SAAU,OACVC,KAAM,OACNC,QAAS,IACTC,QAAS,SAAUJ,MACf,GAAIpB,cAAeyB,KAAKL,KACxB,IAAoB,MAAhBpB,aAAJ,CAEA,GAAI0B,qBAAsB/C,iBAAiBC,UAAUQ,SAAS,qBAAsBY,aAAa2B,WAEjGhB,UAAS3B,EAAE4C,IAAIF,oBAAqB,SAAUlC,GAC1C,OACIe,MAAOf,EACPa,MAAgBb,EAAMqC,QAAQ,MAAO,IAAIA,QAAQ,OAAQ,UAIrEC,MAAO,SAAUpB,EAASqB,EAAWC,GACjC,aAKZC,UAAW,EACXC,OAAQ,SAAUC,EAAOpC,GACrBf,EAAE,IAAMY,WAAWT,IAAIY,EAAGP,KAAKa,OAC/BrB,EAAE,IAAMa,UAAUuC,YAmBlCzD,mBAhGa0D,SAAA1D,iBAAAA","file":"SearchSuggestions.js","sourcesContent":["/// \r\nimport * as $ from \"jquery\"\r\n//import * as JQueryUI from \"JQueryUI\"\r\n\r\nexport class SearchSugesstion {\r\n\r\n constructor() {\r\n\r\n }\r\n\r\n AddCsrfToken(payload) {\r\n var csrfFieldId = \"__CSRFTOKEN\";\r\n var csrfToken = $(\"#\" + csrfFieldId);\r\n if (csrfToken == null || csrfToken.length == 0) {\r\n return payload;\r\n }\r\n else {\r\n return csrfFieldId + \"=\" + csrfToken.val() + \"&\" + payload;\r\n }\r\n }\r\n\r\n GetValue(key, collection) {\r\n if (key != null && key != \"\") {\r\n for (var i = 0; i < collection.length; i++) {\r\n var item = collection[i];\r\n\r\n if (item.Key == key) {\r\n return item.Value;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n initilize(searchBox: any, clickBtn: any) {\r\n ($).widget(\"ui.autocomplete\", ($).ui.autocomplete, {\r\n noResults: '',\r\n _renderItem: function (ul, item) {\r\n return $(\"
  • \")\r\n .attr(\"data-value\", item.value)\r\n .append(item.label)\r\n .appendTo(ul);\r\n }\r\n });\r\n\r\n ($(\"#\" + searchBox)).autocomplete({\r\n\r\n source: function (request, response) {\r\n\r\n var jsonToPost = [{ \"Key\": \"Search_Keywords\", \"Value\": encodeURIComponent(request.term) }, { \"Key\": \"Current_Url\", \"Value\": _spPageContextInfo.webAbsoluteUrl }]\r\n var payload = ($).toJSON(jsonToPost);\r\n\r\n $.ajax({\r\n url: \"/Services/search/autocomplete\",\r\n data: SearchSugesstion.prototype.AddCsrfToken(payload),\r\n dataType: \"json\",\r\n type: \"POST\",\r\n timeout: 1000,\r\n success: function (data) {\r\n var autocomplete = eval(data);\r\n if (autocomplete == null)\r\n return;\r\n var autocompleteResults = SearchSugesstion.prototype.GetValue(\"AutoCompleteResult\", autocomplete.Properties);\r\n\r\n response($.map(autocompleteResults, function (item) {\r\n return {\r\n label: item,\r\n value: (item).replace(\"\", \"\").replace(\"\", \"\")\r\n }\r\n }))\r\n },\r\n error: function (request, errorType, errorThrown) {\r\n return [];\r\n }\r\n });\r\n\r\n },\r\n minLength: 3,\r\n select: function (event, ui) {\r\n $(\"#\" + searchBox).val(ui.item.value);\r\n $('#' + clickBtn).click();\r\n }\r\n //open: function () {\r\n // $(this).removeClass(\"ui-corner-all\").addClass(\"ui-corner-top\");\r\n //},\r\n //close: function () {\r\n // $(this).removeClass(\"ui-corner-top\").addClass(\"ui-corner-all\");\r\n //}\r\n })\r\n // .data(\"autocomplete\")._renderItem = function (ul, item) {\r\n // return $(\"
  • \")\r\n // .attr(\"data-value\", item.value)\r\n // .append(item.label)\r\n // .appendTo(ul);\r\n //};\r\n\r\n }\r\n\r\n\r\n} "]}