From 4c8fb9b200a8a976ce95d7f3f9aea965699c534a Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 28 Jan 2021 00:38:49 +0000 Subject: [PATCH 1/2] Refresh Editor ATT&CK data --- editor/src/data/software.json | 48 ++++++++++++++++++++++++++++++ editor/src/data/techniques.json | 52 +++++++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+) diff --git a/editor/src/data/software.json b/editor/src/data/software.json index a683509..c292a03 100644 --- a/editor/src/data/software.json +++ b/editor/src/data/software.json @@ -3616,5 +3616,53 @@ "Network" ], "autosuggest": "S0519 - SYNful Knock" + }, + { + "software_id": "S0521", + "software_name": "BloodHound", + "platforms": [ + "Windows" + ], + "autosuggest": "S0521 - BloodHound" + }, + { + "software_id": "S0552", + "software_name": "AdFind", + "platforms": [ + "Windows" + ], + "autosuggest": "S0552 - AdFind" + }, + { + "software_id": "S0559", + "software_name": "Sunburst", + "platforms": [ + "Windows" + ], + "autosuggest": "S0559 - Sunburst" + }, + { + "software_id": "S0560", + "software_name": "Teardrop", + "platforms": [ + "Windows" + ], + "autosuggest": "S0560 - Teardrop" + }, + { + "software_id": "S0562", + "software_name": "Sunspot", + "platforms": [ + "Windows" + ], + "autosuggest": "S0562 - Sunspot" + }, + { + "software_id": "S0565", + "software_name": "Raindrop", + "platforms": [ + "Windows" + ], + "autosuggest": "S0565 - Raindrop" } ] \ No newline at end of file diff --git a/editor/src/data/techniques.json b/editor/src/data/techniques.json index 0066209..b7a7f1b 100644 --- a/editor/src/data/techniques.json +++ b/editor/src/data/techniques.json @@ -2428,6 +2428,23 @@ ], "autosuggest": "T1484 - Group Policy Modification" }, + { + "technique_id": "T1484.001", + "technique_name": "Group Policy Modification", + "platforms": [ + "Windows" + ], + "autosuggest": "T1484.001 - Group Policy Modification" + }, + { + "technique_id": "T1484.002", + "technique_name": "Domain Trust Modification", + "platforms": [ + "Azure AD", + "Windows" + ], + "autosuggest": "T1484.002 - Domain Trust Modification" + }, { "technique_id": "T1485", "technique_name": "Data Destruction", @@ -4921,5 +4938,40 @@ "Network" ], "autosuggest": "T1602.002 - Network Device Configuration Dump" + }, + { + "technique_id": "T1606", + "technique_name": "Forge Web Credentials", + "platforms": [ + "Azure AD", + "Linux", + "Office 365", + "SaaS", + "Windows", + "macOS" + ], + "autosuggest": "T1606 - Forge Web Credentials" + }, + { + "technique_id": "T1606.001", + "technique_name": "Web Cookies", + "platforms": [ + "Linux", + "SaaS", + "Windows", + "macOS" + ], + "autosuggest": "T1606.001 - Web Cookies" + }, + { + "technique_id": "T1606.002", + "technique_name": "SAML Tokens", + "platforms": [ + "Azure AD", + "Office 365", + "SaaS", + "Windows" + ], + "autosuggest": "T1606.002 - SAML Tokens" } ] \ No newline at end of file From 2af8ccfadde1e643849937cc5770f9b5d251f87d Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 28 Jan 2021 00:40:08 +0000 Subject: [PATCH 2/2] New build of the Editor --- editor/dist/dettect-editor/index.html | 2 +- .../dettect-editor/js/{app.6dd397e3.js => app.54893e27.js} | 4 ++-- .../js/{app.6dd397e3.js.map => app.54893e27.js.map} | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) rename editor/dist/dettect-editor/js/{app.6dd397e3.js => app.54893e27.js} (65%) rename editor/dist/dettect-editor/js/{app.6dd397e3.js.map => app.54893e27.js.map} (99%) diff --git a/editor/dist/dettect-editor/index.html b/editor/dist/dettect-editor/index.html index 47caa0a..3d5e235 100644 --- a/editor/dist/dettect-editor/index.html +++ b/editor/dist/dettect-editor/index.html @@ -1 +1 @@ -DeTT&CT Editor
\ No newline at end of file +DeTT&CT Editor
\ No newline at end of file diff --git a/editor/dist/dettect-editor/js/app.6dd397e3.js b/editor/dist/dettect-editor/js/app.54893e27.js similarity index 65% rename from editor/dist/dettect-editor/js/app.6dd397e3.js rename to editor/dist/dettect-editor/js/app.54893e27.js index 81d3fbc..9da4900 100644 --- a/editor/dist/dettect-editor/js/app.6dd397e3.js +++ b/editor/dist/dettect-editor/js/app.54893e27.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var a,n,r=t[0],l=t[1],u=t[2],d=0,m=[];d{e.preventDefault(),e.returnValue=""})}},u=l,c=s("2877"),d=Object(c["a"])(u,n,r,!1,null,null,null),m=d.exports,f=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"wrapper"},[s("side-bar",[s("template",{slot:"links"},[s("sidebar-link",{attrs:{to:"/home",name:"Home",icon:"tim-icons icon-bank"}}),s("sidebar-link",{attrs:{to:"/datasources",name:"Data sources",icon:"tim-icons icon-coins"}}),s("sidebar-link",{attrs:{to:"/techniques",name:"Techniques",icon:"tim-icons icon-zoom-split"}}),s("sidebar-link",{attrs:{to:"/groups",name:"Groups",icon:"tim-icons icon-single-02"}})],1)],2),s("div",{staticClass:"main-panel"},[s("dashboard-content",{nativeOn:{click:function(t){return e.toggleSidebar(t)}}}),s("content-footer")],1)],1)},p=[],g=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("footer",{staticClass:"footer"},[s("div",{staticClass:"container-fluid"},[s("div",{staticClass:"copyright"},[e._v(" © "+e._s(e.year)+" made with "),s("i",{staticClass:"tim-icons icon-heart-2"}),e._v(" by "),s("a",{attrs:{href:"https://www.binarcode.com",target:"_blank",rel:"noopener"}},[e._v("Binar Code")]),e._v(" & "),s("a",{attrs:{href:"https://www.creative-tim.com",target:"_blank",rel:"noopener"}},[e._v("Creative Tim")]),e._v(" for a better web. ")])])])},h=[],_={data(){return{year:(new Date).getFullYear()}}},w=_,S=Object(c["a"])(w,g,h,!1,null,null,null),T=S.exports,y=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"content",attrs:{id:"customcontent"}},[s("fade-transition",{attrs:{duration:100,mode:"out-in"}},[s("router-view")],1)],1)},v=[],q=s("7c76"),b={components:{FadeTransition:q["a"]}},C=b,W=Object(c["a"])(C,y,v,!1,null,null,null),k=W.exports,A={components:{ContentFooter:T,DashboardContent:k},methods:{toggleSidebar(){this.$sidebar.showSidebar&&this.$sidebar.displaySidebar(!1)}}},O=A,x=Object(c["a"])(O,f,p,!1,null,null,null),L=x.exports,D=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},E=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-bank pb-md-2"}),e._v(" Home")])]),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Introduction")]),s("p",[e._v(" The DeTT&CT data source, technique and group YAML files can be edited using this editor. ")]),s("p",{staticClass:"mt-md-3"},[e._v(" Usefull links on the Wiki: "),s("ul",[s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Getting-started",target:"_blank"}},[e._v("Getting started with DeTT&CT")])]),s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/dettect-editor",target:"_blank"}},[e._v("DeTT&CT Editor")])]),s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor",target:"_blank"}},[e._v("Future developments")])])])])]),s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Client-side and saving results")]),s("p",[e._v(" The DeTT&CT Editor is entirely client-side. Therefore, the content of your YAML file is not send to a server. ")]),s("p",{staticClass:"mt-md-2"},[e._v("It is important to take into account that modifed YAML files should be download using the button "),s("strong",[e._v("Save YAML file")]),e._v(", to save the results.")])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Keyboard shortcuts")]),s("p",[s("ul",[s("li",[e._v("Ctrl+Shift+Up/Down: go to the next or previous item when editing a data source or technique administration YAML file.")])])]),s("h4",[e._v("Limitations")]),s("p",[e._v(" With a few exceptions, all key-value pairs within a data source, techniques or group YAML file can be edited. More info can be found "),s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor",target:"_blank"}},[e._v("here")]),e._v(". ")]),s("p",{staticClass:"mt-md-2"},[e._v(" Please note that comments ("),s("code",[e._v("#")]),e._v(") within your YAML files are not preserved due to lack of support in the YAML JavaScript library. Put your comments within a key-value pair to keep them. For example: "),s("code",[e._v("my-comment-1: your comment goes here")]),e._v(". ")])]),s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Authors and contributions")]),s("p",[e._v("DeTT&CT is developed and maintained by "),s("a",{attrs:{href:"https://github.com/marcusbakker",target:"_blank"}},[e._v("Marcus Bakker")]),e._v(" (Twitter: "),s("a",{attrs:{href:"https://twitter.com/Bakk3rM",target:"_blank"}},[e._v("@Bakk3rM")]),e._v(") and "),s("a",{attrs:{href:"https://github.com/rubinatorz",target:"_blank"}},[e._v("Ruben Bouman")]),e._v(" (Twitter: "),s("a",{attrs:{href:"https://twitter.com/rubenb_2/",target:"_blank"}},[e._v("@rubenb_2")]),e._v("). Feel free to contact, DMs are open.")]),s("p",{staticClass:"mt-md-2"},[e._v(" We welcome contributions! Contributions can be both in code, as well as in ideas you might have for further development, usability improvements, etc.")])])])])])])])}],P={name:"groups-page",data(){return{}}},I=P,R=Object(c["a"])(I,D,E,!1,null,null,null),M=R.exports,N=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[null!=e.doc?s("div",{staticClass:"back-to-top"},[s("label",{staticClass:"cursor-pointer",attrs:{title:"Back to top"},on:{click:e.navigateToTop}},[s("icons",{attrs:{icon:"arrow-up"}})],1)]):e._e(),s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[e._m(0),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn mr-md-3",attrs:{type:"button"},on:{click:e.askNewFile}},[s("icons",{attrs:{icon:"file-empty"}}),e._v(" New file ")],1),s("label",{staticClass:"custom-file-upload"},[s("icons",{attrs:{icon:"file"}}),e._v(" Select YAML file "),s("file-reader",{attrs:{setFileNameFn:e.setFileName,id:"dsFileReader"},on:{load:function(t){return e.readFile(t)}}})],1),e.fileChanged?s("label",{staticClass:"pl-2"},[s("icons",{attrs:{icon:"text-balloon"}}),e._v(" You have unsaved changes. You may want to save the file to preserve your changes.")],1):e._e()])]),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col"},[s("file-details",{attrs:{filename:e.filename,doc:e.doc,platforms:e.platforms}})],1)]):e._e(),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col card-text"},[s("button",{staticClass:"btn",attrs:{type:"button"},on:{click:function(t){return e.downloadYaml("data_sources","data_source_name")}}},[s("icons",{attrs:{icon:"save"}}),e._v(" Save YAML file ")],1)])]):e._e()])])])]),null!=e.doc?s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("p",[s("button",{staticClass:"btn btn-secondary",attrs:{type:"button"},on:{click:function(t){return e.addItem("data_sources","data_source_name",e.emptyDataSourceObject)}}},[s("icons",{attrs:{icon:"plus"}}),e._v(" Add data source ")],1)])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("base-input",{attrs:{placeholder:"filter"},model:{value:e.filters.filter.value,callback:function(t){e.$set(e.filters.filter,"value",t)},expression:"filters.filter.value"}}),s("v-table",{ref:"data_table",staticClass:"table-custom",attrs:{data:e.doc.data_sources,selectedClass:"table-selected-custom",filters:e.filters},on:{selectionChanged:function(t){return e.selectItem(t)}},scopedSlots:e._u([{key:"body",fn:function(t){var a=t.displayData;return s("tbody",{},e._l(a,(function(t,a){return s("v-tr",{key:t.data_source_name,ref:"data_table_rows",refInFor:!0,attrs:{row:t}},[s("td",[e._v(e._s(t.data_source_name))]),s("td",[e._v(e._s(t.date_registered))]),s("td",[e._v(e._s(e._f("listToString")(t.products)))]),s("td",[s("i",{staticClass:"tim-icons icon-trash-simple cursor-pointer",attrs:{idx:a,data_source_name:t.data_source_name},on:{click:function(t){return e.deleteDataSource(t)}}})])])})),1)}}],null,!1,2659452512)},[s("thead",{attrs:{slot:"head"},slot:"head"},[s("v-th",{attrs:{sortKey:"data_source_name",defaultSort:"asc",width:"350"}},[e._v("Name")]),s("v-th",{attrs:{sortKey:"date_registered",width:"200"}},[e._v("Date registered")]),s("v-th",{attrs:{sortKey:"products",width:"350"}},[e._v("Products")]),s("th")],1)])],1)])])],1),s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[null!=e.getSelectedItem()?s("data-source-detail",{attrs:{dataSource:e.getSelectedItem(),allDataSources:e.doc.data_sources,dqHelpText:e.dqHelpText,dsHelpText:e.dsHelpText,prevDataSourceQuality:e.prevDataSourceQuality,navigateItem:e.navigateItem}}):e._e()],1)],1)]):e._e()])},j=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-coins"}),e._v(" Data Sources")])])}],B=function(){var e=this,t=e.$createElement,s=e._self._c||t;return null!=e.dataSource?s("div",{staticClass:"card"},[s("auto-suggest-title",{attrs:{title:"Data source",item:e.dataSource,itemIdName:"data_source_name",allItems:e.allDataSources,suggestionList:e.dataSourceSuggestionList,navigateItem:e.navigateItem}}),s("div",{staticClass:"row mt-md-3"},[e._m(0),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.helptextDataSourceKVPairs=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.helptextDataSourceKVPairs,id:"dsModal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.helptextDataSourceKVPairs=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v("Data source key-value pairs")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.dsHelpText}})],1)])],1),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-1"},[s("date-picker",{attrs:{date:e.dataSource.date_registered,name:"Date registered"},on:{dateUpdated:function(t){e.dataSource.date_registered=t}}})],1),s("div",{staticClass:"col-md-4 pr-md-1"},[s("date-picker",{attrs:{date:e.dataSource.date_connected,name:"Date connected"},on:{dateUpdated:function(t){e.dataSource.date_connected=t}}})],1)]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col-md-4 pr-md-1"},[s("toggle-button",{attrs:{state:e.dataSource.available_for_data_analytics,name:"Available for data analytics"},on:{toggleButtonUpdated:function(t){e.dataSource.available_for_data_analytics=t}}})],1),s("div",{staticClass:"col-md-5 pr-md-1"},[s("toggle-button",{attrs:{state:e.dsEnabled,name:"Data source enabled",helpText:"Enables a data source by setting all data quality scores to 1, or restore to the previous value. Disables a data source by setting al data quality scores to 0."},on:{toggleButtonUpdated:e.toggleEnabled}})],1)]),s("list-editor",{staticClass:"mt-md-2",attrs:{list:e.dataSource.products,name:"Products",placeholder:"Products"}}),s("div",{staticClass:"row mt-md-0"},[s("div",{staticClass:"col-md-11 form-group pr-md-2"},[s("label",{staticClass:"card"},[e._v("Comment")]),s("extended-textarea",{attrs:{data_object:e.dataSource,data_field:"comment",id:"datasource",rows:"4",cb_function:e.editCommentCallback}})],1)]),s("div",{staticClass:"row mt-md-3 col-md-5"},[e._m(1),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.helptextDataQuality=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.helptextDataQuality,id:"dqModal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.helptextDataQuality=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v("Scoring data quality")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.dqHelpText}})],1)])],1),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Device completeness",score:e.dataSource.data_quality.device_completeness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.device_completeness=t}}})],1),s("div",{staticClass:"col-md-5 ml-md-3"},[s("score-slider",{attrs:{name:"Data field completeness",score:e.dataSource.data_quality.data_field_completeness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.data_field_completeness=t}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Timeliness",score:e.dataSource.data_quality.timeliness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.timeliness=t}}})],1),s("div",{staticClass:"col-md-5 ml-md-3"},[s("score-slider",{attrs:{name:"Consistency",score:e.dataSource.data_quality.consistency,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.consistency=t}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Retention",score:e.dataSource.data_quality.retention,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.retention=t}}})],1)]),s("custom-key-value-editor",{staticClass:"mt-md-5",attrs:{item:e.dataSource,defaultKeys:e.dataSourceDefaultKeys}})],1):e._e()},H=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title mb-md-3"},[e._v("Data source key-value pairs")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("h5",{staticClass:"title mb-md-3"},[e._v("Data quality")])])}],F=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v(e._s(e.name))])]),""!=e.helpText?s("div",{staticClass:"col ml-md-0 pb-md-2"},[s("icons",{attrs:{icon:"help",tooltip:e.helpText}})],1):e._e()]),e._l(e.list,(function(t,a){return s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-8 pr-md-0"},[s("base-input",{attrs:{value:t,idx:a},on:{change:function(t){return e.updateItem(t)}}})],1),s("div",{staticClass:"col mt-md-1"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",attrs:{idx:a},on:{click:function(t){return e.deleteItem(t)}}})])])})),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-8 pr-md-0 form-group"},[s("base-input",{attrs:{placeholder:e.placeholder},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addItem(t)}},model:{value:e.newItem,callback:function(t){e.newItem=t},expression:"newItem"}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addItem}},[e._v(" Add ")])])])],2)},G=[],z=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticStyle:{display:"inline-block"}},["arrow-up"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("line",{attrs:{x1:"12",y1:"19",x2:"12",y2:"5"}}),s("polyline",{attrs:{points:"5 12 12 5 19 12"}})]):e._e(),"arrow-down"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("line",{attrs:{x1:"12",y1:"5",x2:"12",y2:"19"}}),s("polyline",{attrs:{points:"19 12 12 19 5 12"}})]):e._e(),"file"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}}),s("polyline",{attrs:{points:"14 2 14 8 20 8"}}),s("line",{attrs:{x1:"16",y1:"13",x2:"8",y2:"13"}}),s("line",{attrs:{x1:"16",y1:"17",x2:"8",y2:"17"}}),s("polyline",{attrs:{points:"10 9 9 9 8 9"}})]):e._e(),"file-empty"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"}}),s("polyline",{attrs:{points:"13 2 13 9 20 9"}})]):e._e(),"text-balloon"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}}),s("line",{attrs:{x1:"12",y1:"9",x2:"12",y2:"13"}}),s("line",{attrs:{x1:"12",y1:"17",x2:"12.01",y2:"17"}})]):e._e(),"save"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"}}),s("polyline",{attrs:{points:"17 21 17 13 7 13 7 21"}}),s("polyline",{attrs:{points:"7 3 7 8 15 8"}})]):e._e(),"plus"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("circle",{attrs:{cx:"12",cy:"12",r:"10"}}),s("line",{attrs:{x1:"12",y1:"8",x2:"12",y2:"16"}}),s("line",{attrs:{x1:"8",y1:"12",x2:"16",y2:"12"}})]):e._e(),"help"==e.icon?s("svg",{directives:[{name:"tooltip",rawName:"v-tooltip.top",value:e.tooltip,expression:"tooltip",modifiers:{top:!0}}],staticClass:"cursor-pointer",staticStyle:{"margin-top":"-4px",fill:"#fff"},attrs:{viewBox:"0 0 512 512",width:"24",height:"24","stroke-width":"1px"},on:{click:function(t){e.showHelpText=!0}}},[s("path",{attrs:{d:"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z"}}),s("path",{attrs:{d:"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z"}})]):e._e()])},$=[],K={props:{icon:{type:String,required:!0},tooltip:{type:String,required:!1,default:""}},methods:{}},U=K,Y=Object(c["a"])(U,z,$,!1,null,null,null),V=Y.exports,Q=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},J=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[e._v("Welcome to "),s("b",[e._v("Black Dashboard")]),e._v(" - a beautiful freebie for every web developer.")])}],X={name:"notification-template"},Z=X,ee=Object(c["a"])(Z,Q,J,!1,null,null,null),te=ee.exports;const se={data(){return{}},methods:{notifyInfo(e,t){this.$notify({component:te,icon:"tim-icons icon-zoom-split",horizontalAlign:"right",verticalAlign:"top",type:"info",timeout:1e4,title:e,message:t})},notifyInfoWithCallback(e,t,s,a,i){this.$notify({component:te,icon:"tim-icons icon-trash-simple",horizontalAlign:"right",verticalAlign:"top",type:"info",timeout:1e4,title:e,message:t,cb_function:s,cb_function_text:a,cb_function_key:i})},notifyDanger(e,t){this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"danger",timeout:1e4,title:e,message:t})},notifyDangerWithCallback(e,t,s,a,i,o){let n=1e4;o&&(n=0),this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"danger",timeout:n,title:e,message:t,cb_function:s,cb_function_text:a,cb_function_key:i})},notifyWarning(e,t){this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"warning",timeout:1e4,title:e,message:t})}}};var ae={data(){return{caseInsensitive:s("7232"),newItem:""}},mixins:[se],components:{Icons:V},props:{list:{type:Array,required:!0},name:{type:String,required:!0},placeholder:{type:String,required:!0},helpText:{type:String,default:""},externalListToValidate:{type:Array,default:()=>[]},notifyText:{type:String,required:!1,default:"The value 'KEYNAME' is already part of the list. Duplicate entries are not allowed."}},methods:{addItem(){this.caseInsensitive(this.list).includes(this.newItem)||this.caseInsensitive(this.externalListToValidate).includes(this.newItem)?this.notifyDuplicate(this.newItem):""!=this.newItem&&(this.list.push(this.newItem),this.newItem="")},updateItem(e){let t=e.target.value;this.caseInsensitive(this.list).includes(t)||this.caseInsensitive(this.externalListToValidate).includes(t)?this.notifyDuplicate(t):""!=t&&this.$set(this.list,e.target.getAttribute("idx"),t)},deleteItem(e){let t=e.target.getAttribute("idx");this.list.splice(t,1)},notifyDuplicate(e){let t="Duplicate value",s=this.notifyText.replace("KEYNAME",e);this.notifyWarning(t,s)}}},ie=ae,oe=Object(c["a"])(ie,F,G,!1,null,null,null),ne=oe.exports,re=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("label",{staticClass:"card"},[e._v(e._s(e.name))]):e._e(),s("datepicker",{attrs:{value:e.date,format:"yyyy-MM-dd","monday-first":!0,typeable:!0,"input-class":"form-control"},on:{selected:e.updateDate}})],1)},le=[],ue=s("fa33"),ce=s("c1df"),de=s.n(ce),me={props:{date:{type:[String,Date],default:""},name:{type:String,required:!0},showLabel:{type:Boolean,required:!1,default:!0}},methods:{updateDate(e){let t=de()(e,"DD/MM/YYYY").format("YYYY-MM-DD");"Invalid date"!=t&&this.$emit("dateUpdated",t)}},components:{Datepicker:ue["a"]}},fe=me,pe=Object(c["a"])(fe,re,le,!1,null,null,null),ge=pe.exports,he=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("div",{class:e.getDivStyleClass()},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v(e._s(e.name))])]),""!=e.helpText?s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:e.helpText}})],1):e._e()]):e._e(),s("div",{staticClass:"row toggle-button"},[s("div",{staticClass:"col-md-auto"},[s("toggle-button",{attrs:{value:e.state,sync:!0,labels:{checked:"Yes",unchecked:"No"},"font-size":14,height:30,width:95,color:{checked:"#00bf9a",unchecked:"#ff8d72",disabled:"#CCCCCC"}},on:{change:e.switchButton}})],1)])])},_e=[],we=s("f206"),Se={props:{state:{type:Boolean,default:!1},name:{type:String,required:!0},helpText:{type:String,default:""},showLabel:{type:Boolean,required:!1,default:!0},extraPaddingBottom:{type:Boolean,required:!1,default:!0}},methods:{switchButton(e){this.$emit("toggleButtonUpdated",e.value)},getDivStyleClass(){return this.extraPaddingBottom?"row pb-md-2":"row"}},components:{ToggleButton:we["ToggleButton"],Icons:V}},Te=Se,ye=Object(c["a"])(Te,he,_e,!1,null,null,null),ve=ye.exports,qe=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("label",{staticClass:"card"},[e._v(e._s(e.name))]):e._e(),s("vue-slider",{attrs:{value:e.score,dotSize:"18",data:e.markData,"tooltip-formatter":function(t){return e.markDataTooltip[t]},marks:!0,useKeyboard:!0,tooltypeStyle:{"background-color":"#419EF9","border-color":"#419EF9"},processStyle:{"background-color":"#419EF9"},labelStyle:{color:"rgb(255, 255, 255, 0.8)"}},on:{change:e.updateScore}})],1)},be=[],Ce=s("4971"),We=s.n(Ce),ke=(s("24df"),{props:{score:{type:Number,required:!0},markData:{type:Array,required:!0},markDataTooltip:{type:Object,required:!0},name:{type:String,required:!0},showLabel:{type:Boolean,required:!1,default:!0}},methods:{updateScore(e){this.$emit("scoreUpdated",e)}},components:{VueSlider:We.a}}),Ae=ke,Oe=Object(c["a"])(Ae,qe,be,!1,null,null,null),xe=Oe.exports,Le=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[e._m(0),s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:"It's possible to have custom key-value pairs in your YAML file. The Editor supports numbers and string for the value."}})],1),e.useInModal?s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){return e.$bvModal.hide(e.modalId)}}},[e._v("×")])]):e._e()]),e._m(1),e._l(e.item,(function(t,a,i){return s("div",{key:i},[e.defaultKeys.includes(a)?e._e():s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-0"},[s("base-input",{attrs:{value:a},on:{change:function(t){return e.updateKey(a,t)}}})],1),s("div",{staticClass:"col-md-6"},[s("base-input",{attrs:{value:e.item[a]},on:{change:function(t){return e.updateValue(a,t)}}})],1),s("div",{staticClass:"col-md-0 mt-md-1"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",on:{click:function(t){return e.deleteProperty(a)}}})])])])})),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-0"},[s("base-input",{attrs:{placeholder:"key"},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addProperty(t)}},model:{value:e.newKey,callback:function(t){e.newKey=t},expression:"newKey"}})],1),s("div",{staticClass:"col-md-5 pr-md-0"},[s("base-input",{attrs:{placeholder:"value"},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addProperty(t)},keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:e.addProperty(t)}},model:{value:e.newValue,callback:function(t){e.newValue=t},expression:"newValue"}})],1),s("div",{staticClass:"col-md-2"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addProperty}},[e._v(" Add ")])])])],2)},De=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Custom key-value pairs")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4"},[s("label",{staticClass:"card"},[e._v("Key")])]),s("div",{staticClass:"col-md-5"},[s("label",{staticClass:"card"},[e._v("Value")])])])}],Ee={data(){return{newKey:"",newValue:"",caseInsensitive:s("7232")}},mixins:[se],components:{Icons:V},props:{item:{type:Object,required:!0},defaultKeys:{type:Array,required:!0},useInModal:{type:Boolean,required:!1,default:!1},modalId:{type:String,required:!1,default:""}},methods:{updateKey(e,t){let s=t.target.value;this.isKeyAllowed(s)&&(this.$set(this.item,s,this.item[e]),this.$delete(this.item,e))},updateValue(e,t){this.item[e]=t.target.value},deleteProperty(e){this.$delete(this.item,e)},addProperty(){""!=this.newKey&&this.isKeyAllowed(this.newKey)&&(this.$set(this.item,this.newKey,this.newValue),this.newKey="",this.newValue="")},isKeyAllowed(e){if(this.caseInsensitive(this.defaultKeys).includes(e)){let t="Reserved key",s="The key '"+e+"' is not allowed for a custom key-value pair.";return this.notifyWarning(t,s),!1}if(this.caseInsensitive(Object.keys(this.item)).includes(e)){let t="Duplicate key",s="The key '"+e+"' is already part of the YAML file. Duplicate entries are not allowed.";return this.notifyWarning(t,s),!1}return!0}}},Pe=Ee,Ie=Object(c["a"])(Pe,Le,De,!1,null,null,null),Re=Ie.exports,Me=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"container-fluid d-flex flex-column"},[e.isNewItem||e.editItem?s("div",[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0 pl-md-0 margin-top-8"},[s("label",[e._v(e._s(e.title))])]),s("vue-simple-suggest",{staticClass:"col-md-7 pl-md-2 pr-md-0",attrs:{value:e.item[e.itemIdName],list:e.filteredSuggestionList,"max-suggestions":0,"filter-by-query":!0,"display-attribute":e.displayAttr,"value-attribute":e.valueAttr,styles:e.autoCompleteStyle},on:{input:function(t){e.tmpItemId=t},blur:e.setItemIdValue}}),s("i",{staticClass:"tim-icons icon-check-2 icon-color icon-padding cursor-pointer",attrs:{id:"checkmark"},on:{click:e.setItemIdValue}})],1)]):s("div",{staticClass:"row flex-fill"},[s("div",{staticClass:"col-md pr-md-0 pl-md-0"},[e.itemTitle?s("span",{staticClass:"card-title",attrs:{id:"detailCard"}},[e._v(e._s(e.item[e.itemTitle.id]+" - "+e.item[e.itemTitle.name]))]):s("span",{staticClass:"card-title",attrs:{id:"detailCard"}},[e._v(e._s(e.item[e.itemIdName]))]),s("i",{staticClass:"tim-icons icon-pencil icon-color icon-padding cursor-pointer",on:{click:function(t){e.editItem=!0}}})]),s("div",[s("label",{staticClass:"cursor-pointer",attrs:{title:"Previous "+e.title.toLowerCase()},on:{click:function(t){return e.navigateItem(!1)}}},[s("icons",{attrs:{icon:"arrow-up"}})],1),s("label",{staticClass:"cursor-pointer",attrs:{title:"Next "+e.title.toLowerCase()},on:{click:function(t){return e.navigateItem(!0)}}},[s("icons",{attrs:{icon:"arrow-down"}})],1)])])])])},Ne=[],je=s("5111");s("c4c9");const Be={data(){return{autoCompleteStyle:{defaultInput:"autocomplete-input",suggestions:"autocomplete-result",suggestItem:"autocomplete-suggest"}}},props:{title:{type:String,required:!0},itemIdName:{type:String,required:!0},suggestionList:{type:Array,required:!0}},computed:{listKnownIDs(){return this.suggestionList.map(e=>e[this.itemIdName])},listKnownIDsForPlatform(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e)))&&e.push(this.suggestionList[t]);return e.map(e=>e[this.itemIdName])}},components:{VueSimpleSuggest:je["a"]}};var He={data(){return{caseInsensitive:s("7232"),tmpItemId:null,checkBoxClicked:!1,editItem:!1}},components:{Icons:V},mixins:[Be,se],props:{item:{type:Object,required:!0},allItems:{type:Array,required:!0},itemTitle:{type:Object,default:null},valueAttr:{type:String,default:""},displayAttr:{type:String,default:""},isAttackEntity:{type:Boolean,default:!1},platforms:{type:Array,default:null},notifyText:{type:String,required:!1,default:"'ID' is an invalid TITLE."},navigateItem:{type:Function,required:!0}},watch:{item(){this.editItem=!1}},methods:{getAttackEntityName(e,t,s){for(let a=0;a0)return;if(!this.tmpItemId.match(/\bT\d{4}(\.\d{3}|)\b/i))return void("checkmark"!=e.target.id&&this.notifyInvalid(this.tmpItemId));let t=this.tmpItemId.match(/\b(T\d{4}(\.\d{3}|))\b/i)[0].toUpperCase();if(!t.startsWith("T"))return void("checkmark"!=e.target.id&&this.notifyInvalid(t));if(this.isDuplicateItem(t)){if("checkmark"!=e.target.id){let e="Duplicate "+this.title.toLowerCase(),s="The "+this.title.toLowerCase()+" '"+t+"' is already part of the YAML administration file. Duplicate entries are not allowed.";this.notifyWarning(e,s)}return}if(this.listKnownIDs.includes(t)){if(!this.listKnownIDsForPlatform.includes(t)&&"checkmark"!=e.target.id){let e="Non-applicable "+this.title.toLowerCase(),s="The "+this.title.toLowerCase()+" "+t+" is not applicable to any of the selected platform(s).";this.notifyWarning(e,s)}}else if("checkmark"!=e.target.id){let e="Unknown "+this.title,s="The "+this.title+" "+t+" is not part of ATT&CK.";this.notifyWarning(e,s)}this.item[this.itemIdName]=t;let s=this.getAttackEntityName(t,"technique_id","technique_name");this.item["technique_name"]=s,this.tmpItemId=null,this.editItem=!1}else if(null!=this.tmpItemId&&""!=this.tmpItemId){if(this.isDuplicateItem(this.tmpItemId)){if("checkmark"!=e.target.id){let e="Duplicate "+this.title.toLowerCase(),t="The "+this.title.toLowerCase()+" '"+this.tmpItemId+"' is already part of the YAML administration file. Duplicate entries are not allowed.";this.notifyWarning(e,t)}return}if(!this.suggestionList.includes(this.tmpItemId)&&"checkmark"!=e.target.id){let e="Non-ATT&CK "+this.title.toLowerCase(),t="The "+this.title.toLowerCase()+" '"+this.tmpItemId+"' is not part of ATT&CK.";this.notifyWarning(e,t)}this.item[this.itemIdName]=this.tmpItemId,this.tmpItemId=null,this.editItem=!1}},notifyInvalid(e){let t="Invalid "+this.title.toLowerCase(),s=this.notifyText.replace("ID",e).replace("TITLE",this.title.toLowerCase());this.notifyWarning(t,s)},isDuplicateItem(e){return!(!this.caseInsensitive(this.allItemsIdValues).includes(e)||this.editItem&&this.caseInsensitive(this.item[this.itemIdName]).equals(e))}},computed:{isNewItem(){return""==this.item[this.itemIdName]},allItemsIdValues(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e))&&!this.allItemsIdValues.includes(this.suggestionList[t][this.valueAttr]))&&e.push(this.suggestionList[t]);return e}return this.suggestionList}}},Fe=He,Ge=Object(c["a"])(Fe,Me,Ne,!1,null,null,null),ze=Ge.exports,$e=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("textarea",{directives:[{name:"model",rawName:"v-model",value:e.data_object[e.data_field],expression:"data_object[data_field]"}],staticClass:"form-control textarea-border pl-md-3 textarea-customstyle",attrs:{rows:e.rows,placeholder:". . ."},domProps:{value:e.data_object[e.data_field]},on:{input:function(t){t.target.composing||e.$set(e.data_object,e.data_field,t.target.value)}}}),s("div",{directives:[{name:"b-modal",rawName:"v-b-modal",value:"comment-modal-"+e.id,expression:"'comment-modal-' + id"}],staticClass:"icon-example",on:{click:function(t){return e.callCbFunction("comment-modal-"+e.id)}}}),s("b-modal",{attrs:{id:"comment-modal-"+e.id,"dialog-class":"modal-edit-small","content-class":"modal-dark-mode","hide-footer":"","hide-header":"","no-close-on-esc":""}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Comment")])]),s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){e.$bvModal.hide("comment-modal-"+e.id),e.callCbFunction("comment-modal-"+e.id)}}},[e._v(" × ")])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-12"},[s("textarea",{directives:[{name:"model",rawName:"v-model",value:e.data_object[e.data_field],expression:"data_object[data_field]"}],staticClass:"form-control textarea-border textarea-modal pl-md-3",attrs:{rows:"50",placeholder:". . ."},domProps:{value:e.data_object[e.data_field]},on:{input:function(t){t.target.composing||e.$set(e.data_object,e.data_field,t.target.value)}}})])])])],1)},Ke=[],Ue={data(){return{}},components:{},props:{data_object:{type:Object,required:!0},data_field:{type:String,required:!0},id:{type:String,required:!0},cb_function:{type:Function,required:!1},rows:{type:String,required:!0}},methods:{callCbFunction(e){void 0!=this.cb_function&&this.cb_function(e)}}},Ye=Ue,Ve=Object(c["a"])(Ye,$e,Ke,!1,null,null,null),Qe=Ve.exports,Je={YAML_DATASOURCES_VERSION:1,YAML_TECHNIQUES_VERSION:1.2,YAML_GROUPS_VERSION:1,YAML_OBJ_NEW_DATA_SOURCES_FILE:{version:1,file_type:"data-source-administration",name:"example",platform:["all"],data_sources:[]},YAML_OBJ_DATA_SOURCES:{data_source_name:"",date_registered:null,date_connected:null,products:[],available_for_data_analytics:!1,comment:"",data_quality:{device_completeness:0,data_field_completeness:0,timeliness:0,consistency:0,retention:0}},YAML_OBJ_NEW_GROUPS_FILE:{version:1,file_type:"group-administration",platform:["all"],groups:[]},YAML_OBJ_GROUP:{group_name:"",campaign:"",technique_id:[],software_id:[],enabled:!0},YAML_OBJ_NEW_TECHNIQUES_FILE:{version:1.2,file_type:"technique-administration",name:"example",platform:["all"],techniques:[]},YAML_OBJ_TECHNIQUE:{technique_id:"",technique_name:"",detection:[{applicable_to:["all"],location:[],comment:"",score_logbook:[{date:null,score:-1,comment:""}]}],visibility:[{applicable_to:["all"],comment:"",score_logbook:[{date:null,score:0,comment:"",auto_generated:!1}]}]},YAML_OBJ_TECHNIQUE_DETECTION:{applicable_to:["all"],location:[],comment:"",score_logbook:[{date:null,score:-1,comment:""}]},YAML_OBJ_TECHNIQUE_VISIBILITY:{applicable_to:["all"],comment:"",score_logbook:[{date:null,score:0,comment:"",auto_generated:!1}]},YAML_OBJ_SCORE_DETECTION_LOGBOOK:{date:null,score:-1,comment:""},YAML_OBJ_SCORE_VISIBILITY_LOGBOOK:{date:null,score:0,comment:"",auto_generated:!1},PLATFORMS:["all","Windows","Linux","PRE","macOS","AWS","GCP","Azure","Azure AD","Office 365","SaaS","Network"],PLATFORM_CONVERSION:{windows:"Windows",linux:"Linux",pre:"PRE",macos:"macOS",aws:"AWS",gcp:"GCP",azure:"Azure","azure ad":"Azure AD","office 365":"Office 365",saas:"SaaS",network:"Network"}},Xe=s("1a5e"),Ze=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("SlideYUpTransition",{attrs:{duration:e.animationDuration}},[s("div",{directives:[{name:"show",rawName:"v-show",value:e.show,expression:"show"}],staticClass:"modal fade",class:[{"show d-block":e.show},{"d-none":!e.show},{"modal-mini":"mini"===e.type}],attrs:{tabindex:"-1",role:"dialog","aria-hidden":!e.show},on:{click:function(t){return t.target!==t.currentTarget?null:e.closeModal(t)}}},[s("div",{staticClass:"modal-dialog",class:[{"modal-notice":"notice"===e.type},{"modal-dialog-centered":e.centered},e.modalClasses]},[s("div",{staticClass:"modal-content",class:[e.gradient?"bg-gradient-"+e.gradient:"",e.modalContentClasses]},[e.$slots.header?s("div",{staticClass:"modal-header",class:[e.headerClasses]},[e._t("header"),e._t("close-button",[e.showClose?s("button",{staticClass:"close",attrs:{type:"button","data-dismiss":"modal","aria-label":"Close"},on:{click:e.closeModal}},[s("i",{staticClass:"tim-icons icon-simple-remove"})]):e._e()])],2):e._e(),e.$slots.default?s("div",{staticClass:"modal-body",class:e.bodyClasses},[e._t("default")],2):e._e(),e.$slots.footer?s("div",{staticClass:"modal-footer",class:e.footerClasses},[e._t("footer")],2):e._e()])])])])},et=[],tt={name:"modal",components:{SlideYUpTransition:q["b"]},props:{show:Boolean,showClose:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},type:{type:String,default:"",validator(e){let t=["","notice","mini"];return-1!==t.indexOf(e)},description:'Modal type (notice|mini|"") '},modalClasses:{type:[Object,String],description:"Modal dialog css classes"},modalContentClasses:{type:[Object,String],description:"Modal dialog content css classes"},gradient:{type:String,description:"Modal gradient type (danger, primary etc)"},headerClasses:{type:[Object,String],description:"Modal Header css classes"},bodyClasses:{type:[Object,String],description:"Modal Body css classes"},footerClasses:{type:[Object,String],description:"Modal Footer css classes"},animationDuration:{type:Number,default:500,description:"Modal transition duration"}},methods:{closeModal(){this.$emit("update:show",!1),this.$emit("close")}},watch:{show(e){let t=document.body.classList;e?t.add("modal-open"):t.remove("modal-open")}}},st=tt,at=(s("22d7"),Object(c["a"])(st,Ze,et,!1,null,null,null)),it=at.exports;s("a04c");const ot={data(){return{}},created:function(){document.addEventListener("keyup",this.escapeKeyListener)},destroyed:function(){document.removeEventListener("keyup",this.escapeKeyListener)},components:{},methods:{}};var nt=s("2ef0"),rt=s.n(nt),lt={data(){return{dataQualityScores:[0,1,2,3,4,5],dataQualityTooltip:{0:"None",1:"Poor",2:"Fair",3:"Good",4:"Very good",5:"Excellent"},dataSourceDefaultKeys:Object.keys(Je.YAML_OBJ_DATA_SOURCES),dataSourceSuggestionList:Xe,helptextDataQuality:!1,helptextDataSourceKVPairs:!1,commentModal:!1}},mixins:[ot],props:{dataSource:{type:Object,required:!0},allDataSources:{type:Array,required:!0},dqHelpText:{type:String,required:!0},dsHelpText:{type:String,required:!0},prevDataSourceQuality:{type:Array,required:!0},navigateItem:{type:Function,required:!0}},methods:{escapeKeyListener:function(e){27===e.keyCode&&this.helptextDataQuality?this.helptextDataQuality=!1:27===e.keyCode&&this.helptextDataSourceKVPairs?this.helptextDataSourceKVPairs=!1:27===e.keyCode&&""!=this.commentModal&&(this.$bvModal.hide(this.commentModal),this.commentModal="")},toggleEnabled(){let e=this.dataSource["data_source_name"];if(this.dsEnabled){this.prevDataSourceQuality[e]=rt.a.cloneDeep(this.dataSource.data_quality);for(let e in this.dataSource.data_quality)this.dataSource.data_quality[e]=0}else if(e in this.prevDataSourceQuality)this.dataSource.data_quality=rt.a.cloneDeep(this.prevDataSourceQuality[e]);else for(let t in this.dataSource.data_quality)this.dataSource.data_quality[t]=1},editCommentCallback(e){this.commentModal=e}},computed:{dsEnabled(){for(const e of Object.values(this.dataSource.data_quality))if(e>0)return!0;return!1}},components:{DatePicker:ge,ListEditor:ne,ToggleButton:ve,ScoreSlider:xe,CustomKeyValueEditor:Re,AutoSuggestTitle:ze,Modal:it,Icons:V,ExtendedTextarea:Qe}},ut=lt,ct=Object(c["a"])(ut,B,H,!1,null,null,null),dt=ct.exports,mt=s("651e"),ft=s.n(mt),pt=s("f13c"),gt=s.n(pt),ht=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("label",{staticClass:"text-reader"},[s("input",{attrs:{type:"file",id:e.id},on:{change:e.loadTextFromFile}})])},_t=[],wt={props:{setFileNameFn:Function,id:String},methods:{loadTextFromFile(e){const t=e.target.files[0],s=new FileReader;this.setFileNameFn(e.target.files[0].name),s.onload=e=>this.$emit("load",e.target),s.readAsText(t)}}},St=wt,Tt=Object(c["a"])(St,ht,_t,!1,null,null,null),yt=Tt.exports,vt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("table",{staticClass:"table-file-details"},[e._m(0),s("tr",[s("td",{attrs:{width:"100"}},[e._v("Filename:")]),s("td",[e._v(e._s(e.filename))])]),s("tr",[s("td",[e._v("File type:")]),s("td",[e._v(e._s(e.doc["file_type"]))])]),s("tr",[s("td",[e._v("Version:")]),s("td",[e._v(e._s(e.doc["version"].toFixed(1)))])]),s("tr",{directives:[{name:"show",rawName:"v-show",value:e.showName,expression:"showName"}]},[s("td",[e._v("Name:")]),s("td",[s("base-input",{staticClass:"file-detail-edit",model:{value:e.doc["name"],callback:function(t){e.$set(e.doc,"name",t)},expression:"doc['name']"}})],1)]),s("tr",[s("td",[e._v("Notes:")]),s("td",[s("div",{staticClass:"textareaFileDetails"},[s("extended-textarea",{attrs:{data_object:e.doc,data_field:"notes",rows:"2",id:"notes"}})],1)])]),s("tr",[s("td",[e._v("Platform:")]),s("td",e._l(e.platforms,(function(t){return s("label",{staticClass:"custom-checkbox",attrs:{for:t}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.doc.platform,expression:"doc.platform"}],attrs:{type:"checkbox",id:t},domProps:{value:t,checked:Array.isArray(e.doc.platform)?e._i(e.doc.platform,t)>-1:e.doc.platform},on:{click:function(s){return e.platformEventHandler(t)},change:[function(s){var a=e.doc.platform,i=s.target,o=!!i.checked;if(Array.isArray(a)){var n=t,r=e._i(a,n);i.checked?r<0&&e.$set(e.doc,"platform",a.concat([n])):r>-1&&e.$set(e.doc,"platform",a.slice(0,r).concat(a.slice(r+1)))}else e.$set(e.doc,"platform",o)},e.checkPlatform]}}),e._v(" "+e._s(t)+" ")])})),0)])])},qt=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("tr",[s("td",{attrs:{width:"100",colspan:"2"}},[s("b",[e._v("File details")])])])}],bt={mixins:[se],props:{filename:{type:String,required:!0},doc:{type:Object,required:!0},platforms:{type:Array,required:!0},showName:{type:Boolean,required:!1,default:!0}},methods:{platformEventHandler(e){if("all"==e)this.doc.platform=["all"];else{let e=-1;for(let t=0;t=0&&this.doc.platform.splice(e,1)}},checkPlatform(){0==this.doc.platform.length&&this.notifyDanger("Missing value","No value for platform selected. Please select one or more platforms.")}},components:{ExtendedTextarea:Qe}},Ct=bt,Wt=Object(c["a"])(Ct,vt,qt,!1,null,null,null),kt=Wt.exports,At={container:"body",easing:"ease-in",offset:-35,duration:0,force:!1,cancelable:!0,onStart:function(e){},onDone:function(e){},onCancel:function(){},x:!1,y:!0};const Ot={data(){return{filename:"",selected_filename:"",doc:null,selectedRow:[],fileChanged:!1,unwatchFunction:null,deletedRows:[],platforms:Je.PLATFORMS}},components:{FileReader:yt,FileDetails:kt},methods:{navigateToTop(){gt.a.scrollTo("#pageTop",300,At)},navigateToDetail(){gt.a.scrollTo("#detailCard",300,At)},setFileName(e){this.selected_filename=e},selectItem(e){this.selectedRow!=e&&(this.selectedRow=e,e.length>0&&this.navigateToDetail())},addItem(e,t,s){this.filters.filter.value="";let a=null;for(let i=0;i0?this.selectedRow[0]:null},deleteItem(e,t,s,a,i){let o=e.target.getAttribute(s),n=-1;for(let l=0;l0&&(""==o||o==this.selectedRow[0][s])&&this.selectedRow.pop(),this.doc[t].splice(n,1);let r="";r=""==o?"The empty "+a.toLowerCase()+" is removed.":a+" '"+o+"' is removed.",this.notifyInfoWithCallback("Removal status",r,i,"Undo this action",o)},recoverDeletedItem(e,t){let s=null;for(let a=0;a=0&&(this.doc[e].splice(a,1),this.selectedRow.pop()),this.cleanupBeforeDownload(),0==this.doc.platform.length)return void this.notifyDanger("Missing value","No value for platform selected. Please select one or more platforms.");let i=rt.a.cloneDeep(this.doc);this.convertBeforeDownload(i);var o=new Blob([ft.a.safeDump(i,{lineWidth:2e3})],{type:"text/plain;charset=utf-8"}),n=s("21a6");n.saveAs(o,this.filename),this.fileChanged=!1,this.setWatch()},setWatch(){null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0})},askNewFile(){this.fileChanged?this.$bvModal.msgBoxConfirm("You have unsaved changes that will be lost if you choose to continue.",{title:"Unsaved changes",size:"sm",cancelVariant:"warning",okVariant:"info",okTitle:"Continue",modalClass:"confirmMessage"}).then(e=>{e&&this.newFile()}):this.newFile()},navigateItem(e){let t=1;e||(t=-1);let s=this.$refs.data_table.$el.rows,a=0;for(let i=0;i=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s0)this.selectedRow.pop();for(let t=0;t5?5:"number"==typeof e?e:0},cleanupBeforeDownload(){},convertBeforeDownload(e){for(let t=0;t{this.dqHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1")},e=>{this.dqHelpText="An error occurred while loading the help content."}),this.dsHelpText="Loading the help content...",this.$http.get(this.dsFileToRender).then(e=>{this.dsHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1"),this.dsHelpText=this.dsHelpText.match(/## Data source object((.*|\n)*)/gim,"$1")[0],this.dsHelpText=this.dsHelpText.replace(/^## Data source object/gim,""),this.dsHelpText=this.dsHelpText.replace(/^## .+((.*|\n)*)/gim,"")},e=>{this.dsHelpText="An error occurred while loading the help content."})},notifyInvalidFileType(e){this.notifyDanger("Invalid YAML file type","The file '"+e+"' is not a valid data source administration file.")}},filters:{listToString:function(e){return Array.isArray(e)?e.join(", "):e}}},Dt=Lt,Et=Object(c["a"])(Dt,N,j,!1,null,null,null),Pt=Et.exports,It=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[null!=e.doc?s("div",{staticClass:"back-to-top"},[s("label",{staticClass:"cursor-pointer",attrs:{title:"Back to top"},on:{click:e.navigateToTop}},[s("icons",{attrs:{icon:"arrow-up"}})],1)]):e._e(),s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[e._m(0),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn mr-md-3",attrs:{type:"button"},on:{click:e.askNewFile}},[s("icons",{attrs:{icon:"file-empty"}}),e._v(" New file ")],1),s("label",{staticClass:"custom-file-upload"},[s("icons",{attrs:{icon:"file"}}),e._v(" Select YAML file "),s("file-reader",{attrs:{setFileNameFn:e.setFileName,id:"techniqueFileReader"},on:{load:function(t){return e.readFile(t)}}})],1),e.fileChanged?s("label",{staticClass:"pl-2"},[s("icons",{attrs:{icon:"text-balloon"}}),e._v(" You have unsaved changes. You may want to save the file to preserve your changes.")],1):e._e()])]),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col"},[s("file-details",{attrs:{filename:e.filename,doc:e.doc,platforms:e.platforms}})],1)]):e._e(),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col card-text"},[s("button",{staticClass:"btn",attrs:{type:"button"},on:{click:function(t){return e.downloadYaml("techniques","technique_id")}}},[s("icons",{attrs:{icon:"save"}}),e._v(" Save YAML file ")],1)])]):e._e()])])])]),null!=e.doc?s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("p",[s("button",{staticClass:"btn btn-secondary",attrs:{type:"button"},on:{click:function(t){return e.addItem("techniques","technique_id",e.emptyTechObject)}}},[s("icons",{attrs:{icon:"plus"}}),e._v(" Add technique ")],1)])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("base-input",{attrs:{placeholder:"filter"},model:{value:e.filters.filter.value,callback:function(t){e.$set(e.filters.filter,"value",t)},expression:"filters.filter.value"}}),s("v-table",{ref:"data_table",staticClass:"table-custom",attrs:{data:e.doc.techniques,selectedClass:"table-selected-custom",filters:e.filters},on:{selectionChanged:function(t){return e.selectTechnique(t)}},scopedSlots:e._u([{key:"body",fn:function(t){var a=t.displayData;return s("tbody",{},e._l(a,(function(t,a){return s("v-tr",{key:t.technique_id,ref:"data_table_rows",refInFor:!0,attrs:{row:t}},[s("td",[e._v(e._s(t.technique_id))]),s("td",[e._v(e._s(t.technique_name))]),s("td",[s("i",{staticClass:"tim-icons icon-trash-simple cursor-pointer",attrs:{idx:a,technique_id:t.technique_id},on:{click:function(t){return e.deleteTechnique(t)}}})])])})),1)}}],null,!1,2895191889)},[s("thead",{attrs:{slot:"head"},slot:"head"},[s("v-th",{attrs:{sortKey:"technique_id",defaultSort:"asc",width:"200"}},[e._v("Technique ID")]),s("v-th",{attrs:{sortKey:"technique_name",width:"400"}},[e._v("Name")]),s("th")],1)])],1)])])],1),s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[null!=e.getSelectedItem()?s("techniques-detail",{ref:"detailComponent",attrs:{technique:e.getSelectedItem(),allTechniques:e.doc.techniques,selectedPlatforms:e.doc.platform,navigateItem:e.navigateItem}}):e._e()],1)],1)]):e._e()])},Rt=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-zoom-split"}),e._v(" Techniques")])])}],Mt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return null!=e.technique?s("div",{staticClass:"card"},[s("auto-suggest-title",{attrs:{item:e.technique,allItems:e.allTechniques,itemIdName:"technique_id",title:"Technique",itemTitle:{id:"technique_id",name:"technique_name"},suggestionList:e.techniquesSuggestionList,valueAttr:"technique_id",displayAttr:"autosuggest",isAttackEntity:!0,platforms:e.selectedPlatforms,notifyText:"'ID' is an invalid technique, please comply with the naming scheme: TXXXX - [optional name].",navigateItem:e.navigateItem}}),s("applicable-to-collapse",{ref:"collapseDetectionComponent",attrs:{title:"Detection",applicable_to:e.technique.detection,helpText:e.detectionHelpText,helptextScore:e.detectionScoreHelpText,scores:e.detectionScores,scoresTooltip:e.detectionScoresTooltip,defaultScore:e.detectionScoreDefault,showAutoGenerated:!1,emptyScoreEntry:e.emptyScoreEntryDetection,emptyObject:e.emptyDetectionObject}}),s("applicable-to-collapse",{ref:"collapseVisibilityComponent",attrs:{title:"Visibility",applicable_to:e.technique.visibility,showLocation:!1,helpText:e.visibilityHelpText,helptextScore:e.visibilityScoreHelpText,scores:e.visibilityScores,scoresTooltip:e.visibilityScoresTooltip,defaultScore:e.visibilityScoreDefault,showAutoGenerated:!0,emptyScoreEntry:e.emptyScoreEntryVisibility,emptyObject:e.emptyVisibilityObject}})],1):e._e()},Nt=[],jt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row mt-md-3"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title mb-md-3"},[e._v(e._s(e.title))])]),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.showHelpText=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.showHelpText,id:"Modal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.showHelpText=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v(e._s(e.title))]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.helpText}})],1)])],1),s("div",{staticClass:"mb-3"},e._l(e.applicable_to,(function(t,a){return s("div",{key:a,attrs:{row:t}},[s("div",{staticClass:"collapseHeader"},[s("div",{staticClass:"row"},[s("div",{directives:[{name:"b-toggle",rawName:"v-b-toggle",value:"collapse-"+e.title.toLowerCase()+"-"+a,expression:"'collapse-' + title.toLowerCase() + '-' + i"}],staticClass:"col-md-10 cursor-pointer"},[s("i",{staticClass:"when-opened tim-icons icon-minimal-up"}),s("i",{staticClass:"when-closed tim-icons icon-minimal-down"}),e._v(" "+e._s(t.applicable_to.join(", "))+" ")]),s("div",{staticClass:"col collapse-trash-icon mr-md-2"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color cursor-pointer",on:{click:function(t){return e.deleteApplicableTo(a)}}})])])]),s("b-collapse",{ref:"collapseComponent",refInFor:!0,attrs:{id:"collapse-"+e.title.toLowerCase()+"-"+a}},[s("b-card",{staticClass:"collapseContent"},[s("list-editor",{staticClass:"mt-md-2 no-bottom-margin",attrs:{list:t.applicable_to,name:e.title+" is applicable to",placeholder:"applicable to",externalListToValidate:e.getApplicableToList(),helpText:"Specifies to which type of system this "+e.title.toLowerCase()+" applies to. The value 'all' can be used to let it apply to every type of system.",notifyText:"The value 'KEYNAME' is already part of the applicable_to for this technique. Duplicate entries are not allowed."}}),0==t.applicable_to.length?s("div",{staticClass:"row mt-md-0 mb-md-2"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("i",{staticClass:"tim-icons icon-alert-circle-exc icon-color-warning"})]),s("div",{staticClass:"col-md-auto pl-md-2"},[s("label",{staticClass:"label-warning",attrs:{id:"warningText"}},[e._v("The applicable_to field should be filled in order for DeTT&CT to work properly.")])])]):e._e(),e.showLocation?s("list-editor",{staticClass:"mt-md-2",attrs:{list:t.location,name:"Location of the "+e.title.toLowerCase(),placeholder:"location"}}):e._e(),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("label",{staticClass:"card"},[e._v("Comment")])])]),s("div",{staticClass:"row mt-md-0"},[s("div",{staticClass:"col-md-11"},[s("extended-textarea",{attrs:{data_object:t,data_field:"comment",id:e.title+a,rows:"4",cb_function:e.editCommentCallback}})],1)]),s("div",{staticClass:"row mt-md-3"},[s("div",{staticClass:"col-md-4"},[s("score-slider",{attrs:{name:"Score date: "+e.getLatestScoreDate(t.score_logbook),score:e.getLatestScore(t.score_logbook),markData:e.scores,markDataTooltip:e.scoresTooltip,showLabel:!0},on:{scoreUpdated:function(s){e.setLatestScore(t.score_logbook,e.getLatestScoreDate(t.score_logbook),s)}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-auto"},[s("b-button",{directives:[{name:"b-modal",rawName:"v-b-modal",value:e.title+"-score-logbook-modal-"+a,expression:"title + '-score-logbook-modal-' + i"}],staticClass:"btn-custom btn btn-secondary button-30",on:{click:function(t){e.currentModal=e.title+"-score-logbook-modal-"+a}}},[e._v("Score logbook")]),s("b-modal",{attrs:{id:e.title+"-score-logbook-modal-"+a,"dialog-class":"modal-edit-wide","content-class":"modal-dark-mode","hide-footer":"","hide-header":"","no-close-on-esc":""}},[s("score-logbook",{attrs:{item:t.score_logbook,scores:e.scores,scoresTooltip:e.scoresTooltip,defaultScore:e.defaultScore,showAutoGenerated:e.showAutoGenerated,modalId:e.title+"-score-logbook-modal-"+a,emptyScoreEntry:e.emptyScoreEntry,cb_function:e.editCommentCallback},on:{showHelptextScoreNow:function(t){e.showHelptextScore=!0}}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.showHelptextScore,centered:!1,"show-close":!0},on:{"update:show":function(t){e.showHelptextScore=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v(e._s(e.title)+" scoring")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.helptextScore}})],1)])],1),s("div",{staticClass:"col-md-auto"},[s("b-button",{directives:[{name:"b-modal",rawName:"v-b-modal",value:e.title+"-custom-kvpairs-modal-"+a,expression:"title + '-custom-kvpairs-modal-' + i"}],staticClass:"btn-custom btn btn-secondary button-30"},[e._v("Custom key value pairs")]),s("b-modal",{attrs:{id:e.title+"-custom-kvpairs-modal-"+a,"dialog-class":"modal-edit-small","content-class":"modal-dark-mode","hide-footer":"","hide-header":""}},[s("custom-key-value-editor",{attrs:{item:t,defaultKeys:e.defaultKVKeys,useInModal:!0,modalId:e.title+"-custom-kvpairs-modal-"+a}})],1)],1)])],1)],1)],1)})),0),s("div",{staticClass:"row mb-3"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-30",on:{click:e.addApplicableTo}},[e._v("Add "+e._s(e.title.toLowerCase()))])])])])},Bt=[],Ht=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[e._m(0),s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:"Keep track of changes within the score by adding score objects."}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){return e.$bvModal.hide(e.modalId)}}},[e._v("×")])])]),s("div",{staticClass:"row"},[e._m(1),s("div",{staticClass:"col-md-3"},[s("div",{staticClass:"row"},[e._m(2),s("div",{staticClass:"col-md-auto",on:{click:e.showHelptextScore}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1)])]),e._m(3),e.showAutoGenerated?s("div",{staticClass:"col-md-auto"},[s("div",{staticClass:"row"},[e._m(4),s("div",{staticClass:"col-md-auto pl-md-1"},[s("icons",{attrs:{icon:"help",tooltip:"Indicates if the score was auto-generated based on the number of data sources within the data source administration file (using the option -y, --yaml from the datasource mode in dettect.py) . When manually scoring your visibility you can set it to False. The purpose of having this property is to allow an easy update of your visibility scores based on changes in your data sources. Or modification within MITRE\\'s semi-annual update of ATT&CK (possible new techniques, data sources or changes in the data source listed for a particular technique). For more info see the wiki pages on Github."}})],1)])]):e._e(),s("div",{staticClass:"col-md-0"})]),e._l(e.item,(function(t,a){return s("div",{key:e.componentKey},[s("div",{staticClass:"row score-logbook"},[s("div",{staticClass:"col-md-2 pr-md-0"},[s("date-picker",{attrs:{showLabel:!1,date:t.date,name:"Date"},on:{dateUpdated:function(t){return e.updateDate(a,t)}}})],1),s("div",{staticClass:"col-md-3"},[s("score-slider",{attrs:{name:"score",score:t.score,markData:e.scores,markDataTooltip:e.scoresTooltip,showLabel:!1},on:{scoreUpdated:function(s){t.score=s,e.showAutoGenerated&&(t.auto_generated=!1)}}})],1),s("div",{staticClass:"col-md-5"},[s("extended-textarea",{attrs:{data_object:t,data_field:"comment",id:"modal"+a,cb_function:e.cb_function,rows:"4"}})],1),e.showAutoGenerated?s("div",{staticClass:"col-md-auto"},[s("toggle-button",{attrs:{state:t.auto_generated,name:"auto_generated",showLabel:!1},on:{toggleButtonUpdated:function(e){t.auto_generated=e}}})],1):e._e(),s("div",{staticClass:"col-md-0"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",on:{click:function(t){return e.deleteProperty(a)}}})])])])})),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addNewItem}},[e._v(" Add new score ")])])])],2)},Ft=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:" col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Score logbook")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-2"},[s("label",{staticClass:"card"},[e._v("Date")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v("Score")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-5"},[s("label",{staticClass:"card"},[e._v("Comment")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col pr-md-0"},[s("label",{staticClass:"card"},[e._v("Auto generated")])])}],Gt={data(){return{newScore:this.defaultScore,componentKey:0}},mixins:[se],props:{item:{type:Array,required:!0},scores:{type:Array,required:!0},scoresTooltip:{type:Object,required:!0},defaultScore:{type:Number,required:!0},showAutoGenerated:{type:Boolean,required:!1,default:!1},modalId:{type:String,required:!0},emptyScoreEntry:{type:Object,required:!0},cb_function:{type:Function,required:!1}},components:{DatePicker:ge,ScoreSlider:xe,ToggleButton:ve,Icons:V,ExtendedTextarea:Qe},mounted(){this.sortOnDates()},methods:{forceRerender(){this.componentKey+=1},addNewItem(){for(let t=0;t0)this.item.pop();for(let t=0;t{this.$root.$emit("bv::toggle::collapse","collapse-"+this.title.toLowerCase()+"-"+(this.applicable_to.length-1))},10)},getApplicableToList(){let e=[];for(let t=0;t=1&&(s=t[t.length-1].date),null!=s&&""!=s||(s="[set date in score logbook]"),s},getLatestScore(e){let t=rt.a.sortBy(e,"date");return t.length>=1?t[t.length-1].score:-1},setLatestScore(e,t,s){if(0==e.length){let t=rt.a.cloneDeep(this.emptyScoreEntry);t.date=this.getCurrentDate(),t.score=s,e.push(t)}else for(let a=0;a{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.detectionHelpText=t,this.detectionHelpText=this.detectionHelpText.match(/^## Detection object((.*|\n)*)/gim,"$1")[0],this.detectionHelpText=this.detectionHelpText.replace(/^## Visibility object((.*|\n)*)/gim,""),this.detectionHelpText=this.detectionHelpText.replace(/^## Detection object/gim,""),this.visibilityHelpText=t,this.visibilityHelpText=this.visibilityHelpText.match(/^## Visibility object((.*|\n)*)/gim,"$1")[0],this.visibilityHelpText=this.visibilityHelpText.replace(/^## Score object((.*|\n)*)/gim,""),this.visibilityHelpText=this.visibilityHelpText.replace(/^## Visibility object/gim,"")},e=>{this.detectionHelpText="An error occurred while loading the help content.",this.visibilityHelpText="An error occurred while loading the help content."}),this.detectionScoreHelpText="Loading the help content...",this.$http.get(this.detectionScoreHelpUrl).then(e=>{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.detectionScoreHelpText=t},e=>{this.detectionScoreHelpText="An error occurred while loading the help content."}),this.visibilityScoreHelpText="Loading the help content...",this.$http.get(this.visibilityScoreHelpUrl).then(e=>{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.visibilityScoreHelpText=t},e=>{this.visibilityScoreHelpText="An error occurred while loading the help content."})},closeAllCollapses(){this.$refs.collapseDetectionComponent.closeAllCollapses(),this.$refs.collapseVisibilityComponent.closeAllCollapses()}}},Zt=Xt,es=Object(c["a"])(Zt,Mt,Nt,!1,null,null,null),ts=es.exports,ss={name:"techniques-page",data(){return{filters:{filter:{value:"",keys:["technique_id","technique_name"]}},data_columns:["technique_id","technique_name"],emptyTechObject:Je.YAML_OBJ_TECHNIQUE}},mixins:[Ot,xt,se],components:{TechniquesDetail:ts,Icons:V},methods:{readFile(e){try{let t=ft.a.safeLoad(e.result);if("technique-administration"==t["file_type"])if(t["version"]!=Je.YAML_TECHNIQUES_VERSION)this.notifyDanger("Invalid file version","The version of the YAML file is not supported by this version of the Editor.");else{void 0!=t.platform&&null!=t.platform||(t.platform=[]),"string"==typeof t.platform&&(t.platform=[t.platform]);let e=[];for(let s=0;s=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s1&&!a.includes(e[n])&&(a.push(e[n]),this.notifyOverlappingApplicableTo("detection",t.techniques[s].technique_id,e[n]))}let i=[],o=[];for(let n=0;n1&&!o.includes(i[n])&&(o.push(i[n]),this.notifyOverlappingApplicableTo("visibility",t.techniques[s].technique_id,i[n]))}}this.doc=t,this.filename=this.selected_filename,this.filters.filter.value="";while(null!=this.selectedRow&&this.selectedRow.length>0)this.selectedRow.pop();this.fileChanged=!1,null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0}),document.getElementById("techniqueFileReader").value=null}else this.notifyInvalidFileType(this.selected_filename)}catch(t){alert(t),this.notifyInvalidFileType(this.selected_filename)}},newFile(){this.filename="techniques-administration-new.yaml",this.selected_filename="techniques-administration-new.yaml",this.doc=rt.a.cloneDeep(Je.YAML_OBJ_NEW_TECHNIQUES_FILE),this.selectedRow.pop(),this.deletedRows=[],this.fileChanged=!1,this.setWatch()},fixSDetectionScore(e){return void 0==e||e<-1?-1:e>5?5:"number"==typeof e?e:-1},fixVisibilityScore(e){return void 0==e||e<0?0:e>4?4:"number"==typeof e?e:0},cleanupBeforeDownload(){for(let e=0;e=0&&this.doc.techniques[e].detection[t].score_logbook.splice(s,1)}for(let e=0;e=0&&this.doc.techniques[e].visibility[t].score_logbook.splice(s,1)}},convertBeforeDownload(e){for(let t=0;t0?s("div",{staticClass:"row form-group"},e._l(e.group[e.itemIdName],(function(t){return s("span",{key:t,staticClass:"attack-span"},[s("p",{staticClass:"attack-id"},[e._v(e._s(t))]),s("i",{staticClass:"tim-icons icon-trash-simple icon-color mx-md-2 cursor-pointer",attrs:{id:t},on:{click:function(t){return e.deleteItem(t)}}})])})),0):e._e(),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-7 pr-md-0 form-group"},[s("vue-simple-suggest",{ref:"suggestInputTxt",attrs:{placeholder:e.formattedTitle,list:e.filteredSuggestionList,"max-suggestions":0,"filter-by-query":!0,"display-attribute":"autosuggest","value-attribute":e.valueAttr,styles:e.autoCompleteStyle},on:{select:function(t){e.newID=t[e.itemIdName]},input:function(t){e.newID=t}}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addItem}},[e._v(" Add ")])])])])},ds=[],ms={data(){return{newID:""}},mixins:[Be,se],props:{group:{type:Object,required:!0},valueAttr:{type:String,required:!0},platforms:{type:Array,required:!0}},methods:{deleteItem(e){let t=e.target.getAttribute("id");if(t.startsWith("T")){let e=this.group.technique_id.indexOf(t);this.group.technique_id.splice(e,1)}else if(t.startsWith("S")){let e=this.group.software_id.indexOf(t);this.group.software_id.splice(e,1)}},addItem(){if(!this.newID.length>0)return;if(!this.newID.match(/\b(S\d{4}|T\d{4}(\.\d{3}|))\b/i))return void this.notifyInvalid(this.newID);let e=this.newID.match(/\b((S\d{4}|T\d{4}(\.\d{3}|)))\b/i)[0].toUpperCase();if("technique_id"==this.itemIdName&&!e.startsWith("T")||"software_id"==this.itemIdName&&!e.startsWith("S"))this.notifyInvalid(e);else if(this.group[this.itemIdName].includes(e)){let t="Duplicate "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is already part of the YAML file. Duplicate entries are not allowed.";this.notifyWarning(t,s)}else{if(this.listKnownIDs.includes(e)){if(!this.listKnownIDsForPlatform.includes(e)){let t="Non-applicable "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is not applicable to any of the selected platform(s).";this.notifyWarning(t,s)}}else{let t="Unknown "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is not part of ATT&CK.";this.notifyWarning(t,s)}this.$refs.suggestInputTxt.setText(""),this.group[this.itemIdName].push(e)}},notifyInvalid(e){let t="Invalid "+this.formattedTitle,s="'"+e+"' is an invalid "+this.formattedTitle+".";this.notifyWarning(t,s)}},computed:{filteredSuggestionList(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e))&&!this.group[this.itemIdName].includes(this.suggestionList[t][this.itemIdName]))&&e.push(this.suggestionList[t]);return e},formattedTitle(){return this.itemIdName.replace("_"," ").replace("id","ID")}}},fs=ms,ps=Object(c["a"])(fs,cs,ds,!1,null,null,null),gs=ps.exports,hs=s("bba2"),_s={data(){return{techniques:Jt,software:hs,groupDefaultKeys:Object.keys(Je.YAML_OBJ_GROUP),editGroupName:!1,helptextGroupKVPairs:!1}},mixins:[ot],props:{group:{type:Object,required:!0},allGroups:{type:Array,required:!0},selectedPlatforms:{type:Array,required:!0},groupHelpText:{type:String}},watch:{group(){this.editGroupName=!1}},methods:{escapeKeyListener:function(e){27===e.keyCode&&this.helptextGroupKVPairs&&(this.helptextGroupKVPairs=!1)},getGroupIDs(){let e=[];for(let t=0;t1)}},components:{AutoSuggestGroup:gs,ToggleButton:ve,CustomKeyValueEditor:Re,Modal:it,Icons:V}},ws=_s,Ss=Object(c["a"])(ws,ls,us,!1,null,null,null),Ts=Ss.exports,ys={name:"groups-page",data(){return{filters:{filter:{value:"",keys:["group_name","campaign","enabled"]}},data_columns:["group_name","campaign","enabled"],groupFileToRender:"https://raw.githubusercontent.com/wiki/rabobank-cdc/DeTTECT/YAML-administration-groups.md",groupHelpText:null,emptyGroupObject:Je.YAML_OBJ_GROUP}},mixins:[Ot,se],components:{GroupsDetail:Ts,Icons:V},created:function(){this.preloadMarkDown()},methods:{readFile(e){try{let t=ft.a.safeLoad(e.result);if("group-administration"==t["file_type"])if(t["version"]!=Je.YAML_DATASOURCES_VERSION)this.notifyDanger("Invalid file version","The version of the YAML file is not supported by this version of the Editor.");else{void 0!=t.platform&&null!=t.platform||(t.platform=[]),"string"==typeof t.platform&&(t.platform=[t.platform]);let e=[];for(let s=0;s=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s0)this.selectedRow.pop();this.fileChanged=!1,null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0}),document.getElementById("groupFileReader").value=null}else this.notifyInvalidFileType(this.selected_filename)}catch(t){this.notifyInvalidFileType(this.selected_filename)}},newFile(){this.filename="groups-new.yaml",this.selected_filename="groups-new.yaml",this.doc=rt.a.cloneDeep(Je.YAML_OBJ_NEW_GROUPS_FILE),this.selectedRow.pop(),this.deletedRows=[],this.fileChanged=!1,this.setWatch()},cleanupBeforeDownload(){},convertBeforeDownload(){},deleteGroup(e){this.deleteItem(e,"groups","group_name","Group",this.recoverDeletedGroup)},recoverDeletedGroup(e){this.recoverDeletedItem("groups",e)},preloadMarkDown(){this.groupHelpText="Loading the help content...",this.$http.get(this.groupFileToRender).then(e=>{this.groupHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1"),this.groupHelpText=this.groupHelpText.match(/## Group object((.*|\n)*)/gim,"$1")[0],this.groupHelpText=this.groupHelpText.replace(/^## Group object/gim,"")},e=>{this.groupHelpText="An error occurred while loading the help content."})},notifyInvalidFileType(e){this.notifyDanger("Invalid YAML file type","The file '"+e+"' is not a valid group administration file.")}},filters:{listToString:function(e){return Array.isArray(e)?e.join(", "):e}}},vs=ys,qs=Object(c["a"])(vs,ns,rs,!1,null,null,null),bs=qs.exports;a["default"].use(i["a"]);var Cs=new i["a"]({routes:[{path:"/",component:L,redirect:"/home",children:[{path:"home",name:"home",component:M},{path:"datasources",name:"datasources",component:Pt},{path:"techniques",name:"techniques",component:os},{path:"groups",name:"groups",component:bs}]}]}),Ws=s("b7cd"),ks=s("28dd"),As=s("866c"),Os=s.n(As),xs=s("3222"),Ls=s.n(xs),Ds=s("5f5b"),Es=s("b1e0"),Ps=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"sidebar",attrs:{data:e.backgroundColor}},[s("div",{staticClass:"sidebar-wrapper",attrs:{id:"style-3"}},[s("div",{staticClass:"logo"},[s("a",{staticClass:"simple-text logo-mini",attrs:{href:"https://github.com/rabobank-cdc/DeTTECT",target:"blank","aria-label":"sidebar mini logo"}},[s("div",{staticClass:"logo-img",class:{"logo-img-rtl":e.$rtl.isRTL}},[s("img",{attrs:{src:"img/logo.png",alt:""}})])]),s("span",{staticClass:"simple-text logo-normal custom-title custom-title1"},[e._v("DeTT&CT")]),s("span",{staticClass:"simple-text logo-normal custom-title"},[e._v("Editor")])]),e._t("default"),s("ul",{staticClass:"nav"},[e._t("links",e._l(e.sidebarLinks,(function(e,t){return s("sidebar-link",{key:t,attrs:{to:e.path,name:e.name,icon:e.icon}})})))],2)],2)])},Is=[],Rs=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s(e.tag,e._b({tag:"component",staticClass:"nav-item",attrs:{tag:"li"},nativeOn:{click:function(t){return e.hideSidebar(t)}}},"component",e.$attrs,!1),[s("a",{staticClass:"nav-link"},[e._t("default",[e.icon?s("i",{class:e.icon}):e._e(),s("p",[e._v(e._s(e.name))])])],2)])},Ms=[],Ns={name:"sidebar-link",inheritAttrs:!1,inject:{autoClose:{default:!0},addLink:{default:()=>{}},removeLink:{default:()=>{}}},props:{name:String,icon:String,tag:{type:String,default:"router-link"}},methods:{hideSidebar(){this.autoClose&&this.$sidebar.displaySidebar(!1)},isActive(){return this.$el.classList.contains("active")}},mounted(){this.addLink&&this.addLink(this)},beforeDestroy(){this.$el&&this.$el.parentNode&&this.$el.parentNode.removeChild(this.$el),this.removeLink&&this.removeLink(this)}},js=Ns,Bs=Object(c["a"])(js,Rs,Ms,!1,null,null,null),Hs=Bs.exports,Fs={props:{title:{type:String,default:"DeTT&CT Editor"},backgroundColor:{type:String,default:"blue"},activeColor:{type:String,default:"success",validator:e=>{let t=["primary","info","success","warning","danger"];return-1!==t.indexOf(e)}},sidebarLinks:{type:Array,default:()=>[]},autoClose:{type:Boolean,default:!0}},provide(){return{autoClose:this.autoClose,addLink:this.addLink,removeLink:this.removeLink}},components:{SidebarLink:Hs},computed:{arrowMovePx(){return this.linkHeight*this.activeLinkIndex},shortTitle(){return this.title.split(" ").map(e=>e.charAt(0)).join("").toUpperCase()}},data(){return{linkHeight:65,activeLinkIndex:0,windowWidth:0,isWindows:!1,hasAutoHeight:!1,links:[]}},methods:{findActiveLink(){this.links.forEach((e,t)=>{e.isActive()&&(this.activeLinkIndex=t)})},addLink(e){const t=this.$slots.links.indexOf(e.$vnode);this.links.splice(t,0,e)},removeLink(e){const t=this.links.indexOf(e);t>-1&&this.links.splice(t,1)}},mounted(){this.$watch("$route",this.findActiveLink,{immediate:!0})}},Gs=Fs,zs=Object(c["a"])(Gs,Ps,Is,!1,null,null,null),$s=zs.exports;const Ks={showSidebar:!1,sidebarLinks:[],displaySidebar(e){this.showSidebar=e}},Us={install(e){let t=new e({data:{sidebarStore:Ks}});e.prototype.$sidebar=t.sidebarStore,e.component("side-bar",$s),e.component("sidebar-link",Hs)}};var Ys=Us,Vs=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"notifications"},[s("transition-group",{attrs:{name:e.transitionName,mode:e.transitionMode}},e._l(e.notifications,(function(t){return s("notification",e._b({key:t.timestamp.getTime(),attrs:{clickHandler:t.onClick},on:{close:e.removeNotification}},"notification",t,!1))})),1)],1)},Qs=[],Js=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"alert open",class:[{"alert-with-icon":e.icon},e.verticalAlign,e.horizontalAlign,e.alertType],style:e.customPosition,attrs:{"data-notify":"container",role:"alert","data-notify-position":"top-center"},on:{click:e.tryClose}},[e.showClose?s("button",{staticClass:"close col-xs-1 pl-md-3",attrs:{type:"button","aria-hidden":"true","data-notify":"dismiss"},on:{click:e.close}},[s("i",{staticClass:"tim-icons icon-simple-remove"})]):e._e(),e.icon?s("span",{class:["alert-icon",e.icon],attrs:{"data-notify":"icon"}}):e._e(),s("div",{attrs:{"data-notify":"message"}},[e.title?s("div",{staticClass:"title"},[s("b",[e._v(e._s(e.title)),s("br")])]):e._e(),e.message?s("div",{domProps:{innerHTML:e._s(e.message)}}):e._e(),!e.message&&e.component?s("content-render",{attrs:{component:e.component}}):e._e(),null!=e.cb_function?s("div",[s("a",{attrs:{href:"#"},on:{click:function(t){return e.cb_function(e.cb_function_key)}}},[e._v(e._s(e.cb_function_text))])]):e._e()],1)])},Xs=[],Zs={name:"notification",components:{contentRender:{props:["component"],render(e){return e(this.component)}}},props:{message:String,title:String,icon:String,cb_function:Function,cb_function_text:String,cb_function_key:String,verticalAlign:{type:String,default:"top",validator:e=>{let t=["top","bottom"];return-1!==t.indexOf(e)}},horizontalAlign:{type:String,default:"right",validator:e=>{let t=["left","center","right"];return-1!==t.indexOf(e)}},type:{type:String,default:"info",validator:e=>{let t=["info","primary","danger","warning","success"];return-1!==t.indexOf(e)}},timeout:{type:Number,default:5e3,validator:e=>e>=0},timestamp:{type:Date,default:()=>new Date},component:{type:[Object,Function]},showClose:{type:Boolean,default:!0},closeOnClick:{type:Boolean,default:!0},clickHandler:Function},data(){return{elmHeight:0}},computed:{hasIcon(){return this.icon&&this.icon.length>0},alertType(){return"alert-"+this.type},customPosition(){let e=20,t=this.elmHeight+10,s=this.$notifications.state.filter(e=>e.horizontalAlign===this.horizontalAlign&&e.verticalAlign===this.verticalAlign&&e.timestamp<=this.timestamp).length;this.$notifications.settings.overlap&&(s=1);let a=(s-1)*t+e,i={};return"top"===this.verticalAlign?i.top=a+"px":i.bottom=a+"px",i}},methods:{close(){this.$emit("close",this.timestamp)},tryClose(e){this.clickHandler&&this.clickHandler(e,this),this.closeOnClick&&this.close()}},mounted(){this.elmHeight=this.$el.clientHeight,this.timeout&&setTimeout(this.close,this.timeout)}},ea=Zs,ta=(s("f0fa"),Object(c["a"])(ea,Js,Xs,!1,null,null,null)),sa=ta.exports,aa={components:{Notification:sa},props:{transitionName:{type:String,default:"list"},transitionMode:{type:String,default:"in-out"},overlap:{type:Boolean,default:!1}},data(){return{notifications:this.$notifications.state}},methods:{removeNotification(e){this.$notifications.removeNotification(e)}},created(){this.$notifications.settings.overlap=this.overlap},watch:{overlap:function(e){this.$notifications.settings.overlap=e}}},ia=aa,oa=(s("6ae5"),Object(c["a"])(ia,Vs,Qs,!1,null,null,null)),na=oa.exports;const ra={state:[],settings:{overlap:!1,verticalAlign:"top",horizontalAlign:"right",type:"info",timeout:5e3,closeOnClick:!0,showClose:!0},setOptions(e){this.settings=Object.assign(this.settings,e)},removeNotification(e){const t=this.state.findIndex(t=>t.timestamp===e);-1!==t&&this.state.splice(t,1)},addNotification(e){("string"===typeof e||e instanceof String)&&(e={message:e}),e.timestamp=new Date,e.timestamp.setMilliseconds(e.timestamp.getMilliseconds()+this.state.length),e=Object.assign({},this.settings,e),this.state.push(e)},notify(e){Array.isArray(e)?e.forEach(e=>{this.addNotification(e)}):this.addNotification(e)}},la={install(e,t){let s=new e({data:{notificationStore:ra},methods:{notify(e){this.notificationStore.notify(e)}}});e.prototype.$notify=s.notify,e.prototype.$notifications=s.notificationStore,e.component("Notifications",na),t&&ra.setOptions(t)}};var ua=la,ca=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group",class:{"input-group":e.hasIcon,"input-group-focus":e.focused}},[e._t("label",[e.label?s("label",{staticClass:"control-label"},[e._v(" "+e._s(e.label)+" ")]):e._e()]),e._t("addonLeft",[e.addonLeftIcon?s("span",{staticClass:"input-group-prepend"},[s("div",{staticClass:"input-group-text"},[s("i",{class:e.addonLeftIcon})])]):e._e()]),e._t("default",[s("input",e._g(e._b({staticClass:"form-control",attrs:{"aria-describedby":"addon-right addon-left"},domProps:{value:e.value}},"input",e.$attrs,!1),e.listeners))]),e._t("addonRight",[e.addonRightIcon?s("span",{staticClass:"input-group-append"},[s("div",{staticClass:"input-group-text"},[s("i",{class:e.addonRightIcon})])]):e._e()]),e._t("helperText")],2)},da=[],ma={inheritAttrs:!1,name:"base-input",props:{label:{type:String,description:"Input label"},value:{type:[String,Number],description:"Input value"},addonRightIcon:{type:String,description:"Input icon on the right"},addonLeftIcon:{type:String,description:"Input icon on the left"}},model:{prop:"value",event:"input"},data(){return{focused:!1}},computed:{hasIcon(){const{addonRight:e,addonLeft:t}=this.$slots;return void 0!==e||void 0!==t||void 0!==this.addonRightIcon||void 0!==this.addonLeftIcon},listeners(){return{...this.$listeners,input:this.onInput,blur:this.onBlur,focus:this.onFocus}}},methods:{onInput(e){this.$emit("input",e.target.value)},onFocus(e){this.focused=!0,this.$emit("focus",e.target.value)},onBlur(e){this.focused=!1,this.$emit("blur",e.target.value)}}},fa=ma,pa=Object(c["a"])(fa,ca,da,!1,null,null,null),ga=pa.exports,ha=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-check",class:[{disabled:e.disabled},e.inlineClass]},[s("label",{staticClass:"form-check-label",attrs:{for:e.cbId}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"form-check-input",attrs:{id:e.cbId,type:"checkbox",disabled:e.disabled},domProps:{checked:Array.isArray(e.model)?e._i(e.model,null)>-1:e.model},on:{change:function(t){var s=e.model,a=t.target,i=!!a.checked;if(Array.isArray(s)){var o=null,n=e._i(s,o);a.checked?n<0&&(e.model=s.concat([o])):n>-1&&(e.model=s.slice(0,n).concat(s.slice(n+1)))}else e.model=i}}}),s("span",{staticClass:"form-check-sign"}),e._t("default",[e.inline?s("span"):e._e()])],2)])},_a=[],wa={name:"base-checkbox",model:{prop:"checked"},props:{checked:{type:[Array,Boolean],description:"Whether checkbox is checked"},disabled:{type:Boolean,description:"Whether checkbox is disabled"},inline:{type:Boolean,description:"Whether checkbox should be inline with other checkboxes"}},data(){return{cbId:"",touched:!1}},computed:{model:{get(){return this.checked},set(e){this.touched||(this.touched=!0),this.$emit("input",e)}},inlineClass(){if(this.inline)return"form-check-inline"}},created(){this.cbId=Math.random().toString(16).slice(2)}},Sa=wa,Ta=Object(c["a"])(Sa,ha,_a,!1,null,null,null),ya=Ta.exports,va=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-check form-check-radio",class:[e.inlineClass,{disabled:e.disabled}]},[s("label",{staticClass:"form-check-label",attrs:{for:e.cbId}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"form-check-input",attrs:{id:e.cbId,type:"radio",disabled:e.disabled},domProps:{value:e.name,checked:e._q(e.model,e.name)},on:{change:function(t){e.model=e.name}}}),e._t("default"),s("span",{staticClass:"form-check-sign"})],2)])},qa=[],ba={name:"base-radio",props:{name:{type:[String,Number],description:"Radio label"},disabled:{type:Boolean,description:"Whether radio is disabled"},value:{type:[String,Boolean],description:"Radio value"},inline:{type:Boolean,description:"Whether radio is inline"}},data(){return{cbId:""}},computed:{model:{get(){return this.value},set(e){this.$emit("input",e)}},inlineClass(){return this.inline?"form-check-inline":""}},created(){this.cbId=Math.random().toString(16).slice(2)}},Ca=ba,Wa=Object(c["a"])(Ca,va,qa,!1,null,null,null),ka=(Wa.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s(e.tag,{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeDropDown,expression:"closeDropDown"}],tag:"component",staticClass:"dropdown",class:{show:e.isOpen},on:{click:e.toggleDropDown}},[e._t("title-container",[s(e.titleTag,{tag:"component",staticClass:"dropdown-toggle btn-rotate",class:e.titleClasses,attrs:{"aria-expanded":e.isOpen,"aria-label":e.title||e.ariaLabel,"data-toggle":"dropdown"}},[e._t("title",[s("i",{class:e.icon}),e._v(" "+e._s(e.title)+" ")],{isOpen:e.isOpen})],2)],{isOpen:e.isOpen}),s("ul",{staticClass:"dropdown-menu",class:[{show:e.isOpen},{"dropdown-menu-right":e.menuOnRight},e.menuClasses]},[e._t("default")],2)],2)}),Aa=[],Oa={name:"base-dropdown",props:{tag:{type:String,default:"div",description:"Dropdown html tag (e.g div, ul etc)"},titleTag:{type:String,default:"button",description:"Dropdown title (toggle) html tag"},title:{type:String,description:"Dropdown title"},icon:{type:String,description:"Dropdown icon"},titleClasses:{type:[String,Object,Array],description:"Title css classes"},menuClasses:{type:[String,Object],description:"Menu css classes"},menuOnRight:{type:Boolean,description:"Whether menu should appear on the right"},ariaLabel:String},data(){return{isOpen:!1}},methods:{toggleDropDown(){this.isOpen=!this.isOpen,this.$emit("change",this.isOpen)},closeDropDown(){this.isOpen=!1,this.$emit("change",!1)}}},xa=Oa,La=Object(c["a"])(xa,ka,Aa,!1,null,null,null),Da=La.exports,Ea=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("table",{staticClass:"table tablesorter",class:e.tableClass},[s("thead",{class:e.theadClasses},[s("tr",[e._t("columns",e._l(e.columns,(function(t){return s("th",{key:t},[e._v(e._s(t))])})))],2)]),s("tbody",{class:e.tbodyClasses},e._l(e.data,(function(t,a){return s("tr",{key:a},[e._t("default",[e._l(e.columns,(function(a,i){return e.hasValue(t,a)?s("td",{key:i},[e._v(" "+e._s(e.itemValue(t,a))+" ")]):e._e()})),e.deleteButton?s("td",[s("i",{staticClass:"tim-icons icon-trash-simple"})]):e._e()],{row:t})],2)})),0)])},Pa=[],Ia={name:"base-table",props:{deleteButton:Boolean,columns:{type:Array,default:()=>[],description:"Table columns"},data:{type:Array,default:()=>[],description:"Table data"},type:{type:String,default:"",description:"Whether table is striped or hover type"},theadClasses:{type:String,default:"",description:" css classes"},tbodyClasses:{type:String,default:"",description:" css classes"}},computed:{tableClass(){return this.type&&"table-"+this.type}},methods:{hasValue(e,t){return"undefined"!==e[t.toLowerCase()]},itemValue(e,t){let s=e[t.toLowerCase()];if(t.indexOf(".")>=0){let a=t.split(".");s=e,a.forEach((function(e){s=s[e]}))}return Array.isArray(s)?s=s.join(", "):s instanceof Date&&(s=de()(s,"DD/MM/YYYY").format("YYYY-MM-DD")),"None"==s&&(s=""),s}}},Ra=Ia,Ma=Object(c["a"])(Ra,Ea,Pa,!1,null,null,null),Na=(Ma.exports,function(){var e,t,s=this,a=s.$createElement,i=s._self._c||a;return i(s.tag,{tag:"component",staticClass:"btn",class:[{"btn-round":s.round},{"btn-block":s.block},{"btn-icon btn-fab":s.icon},(e={},e["btn-"+s.type]=s.type,e),(t={},t["btn-"+s.size]=s.size,t),{"btn-simple":s.simple},{"btn-link":s.link},{disabled:s.disabled&&"button"!==s.tag}],attrs:{type:"button"===s.tag?s.nativeType:"",disabled:s.disabled||s.loading},on:{click:s.handleClick}},[s._t("loading",[s.loading?i("i",{staticClass:"fas fa-spinner fa-spin"}):s._e()]),s._t("default")],2)}),ja=[],Ba={name:"base-button",props:{tag:{type:String,default:"button",description:"Button html tag"},round:Boolean,icon:Boolean,block:Boolean,loading:Boolean,disabled:Boolean,type:{type:String,default:"default",description:"Button type (primary|secondary|danger etc)"},nativeType:{type:String,default:"button",description:"Button native type (e.g button, input etc)"},size:{type:String,default:"",description:"Button size (sm|lg)"},simple:{type:Boolean,description:"Whether button is simple (outlined)"},link:{type:Boolean,description:"Whether button is a link (no borders or background)"}},methods:{handleClick(e){this.$emit("click",e)}}},Ha=Ba,Fa=Object(c["a"])(Ha,Na,ja,!1,null,null,null),Ga=Fa.exports,za=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("fade-transition",[e.visible?s("div",{staticClass:"alert",class:["alert-"+e.type,{"alert-with-icon":e.withIcon}],attrs:{role:"alert"}},[e.dismissible?s("div",{staticClass:"container"},[e._t("default"),e._t("dismiss-icon",[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:e.dismissAlert}},[s("span",{attrs:{"aria-hidden":"true"}},[s("i",{staticClass:"tim-icons icon-simple-remove"})])])])],2):e._t("default")],2):e._e()])},$a=[],Ka={name:"base-alert",components:{FadeTransition:q["a"]},props:{type:{type:String,default:"default",description:"Alert type"},dismissible:{type:Boolean,default:!1,description:"Whether alert is dismissible (closeable)"},withIcon:{type:Boolean,default:!1,description:"Whether alert contains icon"}},data(){return{visible:!0}},methods:{dismissAlert(){this.visible=!1}}},Ua=Ka,Ya=Object(c["a"])(Ua,za,$a,!1,null,null,null),Va=(Ya.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("button",{staticClass:"navbar-toggler",attrs:{type:"button","data-toggle":"collapse","data-target":"#"+e.target,"aria-controls":e.target,"aria-expanded":e.expanded,"aria-label":"Toggle navigation"},on:{click:e.handleClick}},[s("span"),s("span")])}),Qa=[],Ja={name:"close-button",props:{target:{type:[String,Number],description:"Close button target element"},expanded:{type:Boolean,description:"Whether button is expanded (aria-expanded attribute)"}},methods:{handleClick(e){this.$emit("click",e)}}},Xa=Ja,Za=Object(c["a"])(Xa,Va,Qa,!1,null,null,null),ei=(Za.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card",class:[e.type&&"card-"+e.type]},[e.$slots.image?s("div",{staticClass:"card-image"},[e._t("image")],2):e._e(),e.$slots.header||e.title?s("div",{staticClass:"card-header",class:e.headerClasses},[e._t("header",[s("h4",{staticClass:"card-title"},[e._v(e._s(e.title))]),e.subTitle?s("p",{staticClass:"card-category"},[e._v(e._s(e.subTitle))]):e._e()])],2):e._e(),e.$slots.default?s("div",{staticClass:"card-body"},[e._t("default")],2):e._e(),e.$slots["image-bottom"]?s("div",{staticClass:"card-image"},[e._t("image-bottom")],2):e._e(),e._t("raw-content"),e.$slots.footer?s("div",{staticClass:"card-footer",class:e.footerClasses},[e._t("footer")],2):e._e()],2)}),ti=[],si={name:"card",props:{title:{type:String,description:"Card title"},subTitle:{type:String,description:"Card subtitle"},type:{type:String,description:"Card type (e.g primary/danger etc)"},headerClasses:{type:[String,Object,Array],description:"Card header css classes"},bodyClasses:{type:[String,Object,Array],description:"Card body css classes"},footerClasses:{type:[String,Object,Array],description:"Card footer css classes"}}},ai=si,ii=Object(c["a"])(ai,ei,ti,!1,null,null,null),oi=ii.exports;const ni={install(e){e.component(ga.name,ga),e.component(oi.name,oi),e.component(Da.name,Da),e.component(Ga.name,Ga),e.component(ya.name,ya)}};var ri=ni,li={bind:function(e,t,s){e.clickOutsideEvent=function(a){e==a.target||e.contains(a.target)||s.context[t.expression](a)},document.body.addEventListener("click",e.clickOutsideEvent)},unbind:function(e){document.body.removeEventListener("click",e.clickOutsideEvent)}};const ui={install(e){e.directive("click-outside",li)}};var ci=ui,di={install(e){let t=new e({data(){return{isRTL:!1}},methods:{getDocClasses(){return document.body.classList},enableRTL(){this.isRTL=!0,this.getDocClasses().add("rtl"),this.getDocClasses().add("menu-on-right"),this.toggleBootstrapRTL(!0)},disableRTL(){this.isRTL=!1,this.getDocClasses().remove("rtl"),this.getDocClasses().remove("menu-on-right"),this.toggleBootstrapRTL(!1)},toggleBootstrapRTL(e){for(let t=0;te(m)}).$mount("#app")},"6a5d":function(e,t,s){},"6ae5":function(e,t,s){"use strict";var a=s("b5b2"),i=s.n(a);i.a},"874c":function(e){e.exports=JSON.parse('[{"technique_id":"T1001","technique_name":"Data Obfuscation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001 - Data Obfuscation"},{"technique_id":"T1001.001","technique_name":"Junk Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.001 - Junk Data"},{"technique_id":"T1001.002","technique_name":"Steganography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.002 - Steganography"},{"technique_id":"T1001.003","technique_name":"Protocol Impersonation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.003 - Protocol Impersonation"},{"technique_id":"T1003","technique_name":"OS Credential Dumping","platforms":["Linux","Windows","macOS"],"autosuggest":"T1003 - OS Credential Dumping"},{"technique_id":"T1003.001","technique_name":"LSASS Memory","platforms":["Windows"],"autosuggest":"T1003.001 - LSASS Memory"},{"technique_id":"T1003.002","technique_name":"Security Account Manager","platforms":["Windows"],"autosuggest":"T1003.002 - Security Account Manager"},{"technique_id":"T1003.003","technique_name":"NTDS","platforms":["Windows"],"autosuggest":"T1003.003 - NTDS"},{"technique_id":"T1003.004","technique_name":"LSA Secrets","platforms":["Windows"],"autosuggest":"T1003.004 - LSA Secrets"},{"technique_id":"T1003.005","technique_name":"Cached Domain Credentials","platforms":["Windows"],"autosuggest":"T1003.005 - Cached Domain Credentials"},{"technique_id":"T1003.006","technique_name":"DCSync","platforms":["Windows"],"autosuggest":"T1003.006 - DCSync"},{"technique_id":"T1003.007","technique_name":"Proc Filesystem","platforms":["Linux"],"autosuggest":"T1003.007 - Proc Filesystem"},{"technique_id":"T1003.008","technique_name":"/etc/passwd and /etc/shadow","platforms":["Linux"],"autosuggest":"T1003.008 - /etc/passwd and /etc/shadow"},{"technique_id":"T1005","technique_name":"Data from Local System","platforms":["Linux","Windows","macOS"],"autosuggest":"T1005 - Data from Local System"},{"technique_id":"T1006","technique_name":"Direct Volume Access","platforms":["Windows"],"autosuggest":"T1006 - Direct Volume Access"},{"technique_id":"T1007","technique_name":"System Service Discovery","platforms":["Windows"],"autosuggest":"T1007 - System Service Discovery"},{"technique_id":"T1008","technique_name":"Fallback Channels","platforms":["Linux","Windows","macOS"],"autosuggest":"T1008 - Fallback Channels"},{"technique_id":"T1010","technique_name":"Application Window Discovery","platforms":["Windows","macOS"],"autosuggest":"T1010 - Application Window Discovery"},{"technique_id":"T1011","technique_name":"Exfiltration Over Other Network Medium","platforms":["Linux","Windows","macOS"],"autosuggest":"T1011 - Exfiltration Over Other Network Medium"},{"technique_id":"T1011.001","technique_name":"Exfiltration Over Bluetooth","platforms":["Linux","Windows","macOS"],"autosuggest":"T1011.001 - Exfiltration Over Bluetooth"},{"technique_id":"T1012","technique_name":"Query Registry","platforms":["Windows"],"autosuggest":"T1012 - Query Registry"},{"technique_id":"T1014","technique_name":"Rootkit","platforms":["Linux","Windows","macOS"],"autosuggest":"T1014 - Rootkit"},{"technique_id":"T1016","technique_name":"System Network Configuration Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1016 - System Network Configuration Discovery"},{"technique_id":"T1018","technique_name":"Remote System Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1018 - Remote System Discovery"},{"technique_id":"T1020","technique_name":"Automated Exfiltration","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1020 - Automated Exfiltration"},{"technique_id":"T1020.001","technique_name":"Traffic Duplication","platforms":["Network"],"autosuggest":"T1020.001 - Traffic Duplication"},{"technique_id":"T1021","technique_name":"Remote Services","platforms":["Linux","Windows","macOS"],"autosuggest":"T1021 - Remote Services"},{"technique_id":"T1021.001","technique_name":"Remote Desktop Protocol","platforms":["Windows"],"autosuggest":"T1021.001 - Remote Desktop Protocol"},{"technique_id":"T1021.002","technique_name":"SMB/Windows Admin Shares","platforms":["Windows"],"autosuggest":"T1021.002 - SMB/Windows Admin Shares"},{"technique_id":"T1021.003","technique_name":"Distributed Component Object Model","platforms":["Windows"],"autosuggest":"T1021.003 - Distributed Component Object Model"},{"technique_id":"T1021.004","technique_name":"SSH","platforms":["Linux","macOS"],"autosuggest":"T1021.004 - SSH"},{"technique_id":"T1021.005","technique_name":"VNC","platforms":["Linux","Windows","macOS"],"autosuggest":"T1021.005 - VNC"},{"technique_id":"T1021.006","technique_name":"Windows Remote Management","platforms":["Windows"],"autosuggest":"T1021.006 - Windows Remote Management"},{"technique_id":"T1025","technique_name":"Data from Removable Media","platforms":["Linux","Windows","macOS"],"autosuggest":"T1025 - Data from Removable Media"},{"technique_id":"T1027","technique_name":"Obfuscated Files or Information","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027 - Obfuscated Files or Information"},{"technique_id":"T1027.001","technique_name":"Binary Padding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.001 - Binary Padding"},{"technique_id":"T1027.002","technique_name":"Software Packing","platforms":["Windows","macOS"],"autosuggest":"T1027.002 - Software Packing"},{"technique_id":"T1027.003","technique_name":"Steganography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.003 - Steganography"},{"technique_id":"T1027.004","technique_name":"Compile After Delivery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.004 - Compile After Delivery"},{"technique_id":"T1027.005","technique_name":"Indicator Removal from Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.005 - Indicator Removal from Tools"},{"technique_id":"T1029","technique_name":"Scheduled Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1029 - Scheduled Transfer"},{"technique_id":"T1030","technique_name":"Data Transfer Size Limits","platforms":["Linux","Windows","macOS"],"autosuggest":"T1030 - Data Transfer Size Limits"},{"technique_id":"T1033","technique_name":"System Owner/User Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1033 - System Owner/User Discovery"},{"technique_id":"T1036","technique_name":"Masquerading","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036 - Masquerading"},{"technique_id":"T1036.001","technique_name":"Invalid Code Signature","platforms":["Windows","macOS"],"autosuggest":"T1036.001 - Invalid Code Signature"},{"technique_id":"T1036.002","technique_name":"Right-to-Left Override","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.002 - Right-to-Left Override"},{"technique_id":"T1036.003","technique_name":"Rename System Utilities","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.003 - Rename System Utilities"},{"technique_id":"T1036.004","technique_name":"Masquerade Task or Service","platforms":["Linux","Windows"],"autosuggest":"T1036.004 - Masquerade Task or Service"},{"technique_id":"T1036.005","technique_name":"Match Legitimate Name or Location","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.005 - Match Legitimate Name or Location"},{"technique_id":"T1036.006","technique_name":"Space after Filename","platforms":["Linux","macOS"],"autosuggest":"T1036.006 - Space after Filename"},{"technique_id":"T1037","technique_name":"Boot or Logon Initialization Scripts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1037 - Boot or Logon Initialization Scripts"},{"technique_id":"T1037.001","technique_name":"Logon Script (Windows)","platforms":["Windows"],"autosuggest":"T1037.001 - Logon Script (Windows)"},{"technique_id":"T1037.002","technique_name":"Logon Script (Mac)","platforms":["macOS"],"autosuggest":"T1037.002 - Logon Script (Mac)"},{"technique_id":"T1037.003","technique_name":"Network Logon Script","platforms":["Windows"],"autosuggest":"T1037.003 - Network Logon Script"},{"technique_id":"T1037.004","technique_name":"Rc.common","platforms":["macOS"],"autosuggest":"T1037.004 - Rc.common"},{"technique_id":"T1037.005","technique_name":"Startup Items","platforms":["macOS"],"autosuggest":"T1037.005 - Startup Items"},{"technique_id":"T1039","technique_name":"Data from Network Shared Drive","platforms":["Linux","Windows","macOS"],"autosuggest":"T1039 - Data from Network Shared Drive"},{"technique_id":"T1040","technique_name":"Network Sniffing","platforms":["Linux","Windows","macOS"],"autosuggest":"T1040 - Network Sniffing"},{"technique_id":"T1041","technique_name":"Exfiltration Over C2 Channel","platforms":["Linux","Windows","macOS"],"autosuggest":"T1041 - Exfiltration Over C2 Channel"},{"technique_id":"T1046","technique_name":"Network Service Scanning","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1046 - Network Service Scanning"},{"technique_id":"T1047","technique_name":"Windows Management Instrumentation","platforms":["Windows"],"autosuggest":"T1047 - Windows Management Instrumentation"},{"technique_id":"T1048","technique_name":"Exfiltration Over Alternative Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048 - Exfiltration Over Alternative Protocol"},{"technique_id":"T1048.001","technique_name":"Exfiltration Over Symmetric Encrypted Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.001 - Exfiltration Over Symmetric Encrypted Non-C2 Protocol"},{"technique_id":"T1048.002","technique_name":"Exfiltration Over Asymmetric Encrypted Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.002 - Exfiltration Over Asymmetric Encrypted Non-C2 Protocol"},{"technique_id":"T1048.003","technique_name":"Exfiltration Over Unencrypted/Obfuscated Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.003 - Exfiltration Over Unencrypted/Obfuscated Non-C2 Protocol"},{"technique_id":"T1049","technique_name":"System Network Connections Discovery","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1049 - System Network Connections Discovery"},{"technique_id":"T1052","technique_name":"Exfiltration Over Physical Medium","platforms":["Linux","Windows","macOS"],"autosuggest":"T1052 - Exfiltration Over Physical Medium"},{"technique_id":"T1052.001","technique_name":"Exfiltration over USB","platforms":["Linux","Windows","macOS"],"autosuggest":"T1052.001 - Exfiltration over USB"},{"technique_id":"T1053","technique_name":"Scheduled Task/Job","platforms":["Linux","Windows","macOS"],"autosuggest":"T1053 - Scheduled Task/Job"},{"technique_id":"T1053.001","technique_name":"At (Linux)","platforms":["Linux"],"autosuggest":"T1053.001 - At (Linux)"},{"technique_id":"T1053.002","technique_name":"At (Windows)","platforms":["Windows"],"autosuggest":"T1053.002 - At (Windows)"},{"technique_id":"T1053.003","technique_name":"Cron","platforms":["Linux","macOS"],"autosuggest":"T1053.003 - Cron"},{"technique_id":"T1053.004","technique_name":"Launchd","platforms":["macOS"],"autosuggest":"T1053.004 - Launchd"},{"technique_id":"T1053.005","technique_name":"Scheduled Task","platforms":["Windows"],"autosuggest":"T1053.005 - Scheduled Task"},{"technique_id":"T1053.006","technique_name":"Systemd Timers","platforms":["Linux"],"autosuggest":"T1053.006 - Systemd Timers"},{"technique_id":"T1055","technique_name":"Process Injection","platforms":["Linux","Windows","macOS"],"autosuggest":"T1055 - Process Injection"},{"technique_id":"T1055.001","technique_name":"Dynamic-link Library Injection","platforms":["Windows"],"autosuggest":"T1055.001 - Dynamic-link Library Injection"},{"technique_id":"T1055.002","technique_name":"Portable Executable Injection","platforms":["Windows"],"autosuggest":"T1055.002 - Portable Executable Injection"},{"technique_id":"T1055.003","technique_name":"Thread Execution Hijacking","platforms":["Windows"],"autosuggest":"T1055.003 - Thread Execution Hijacking"},{"technique_id":"T1055.004","technique_name":"Asynchronous Procedure Call","platforms":["Windows"],"autosuggest":"T1055.004 - Asynchronous Procedure Call"},{"technique_id":"T1055.005","technique_name":"Thread Local Storage","platforms":["Windows"],"autosuggest":"T1055.005 - Thread Local Storage"},{"technique_id":"T1055.008","technique_name":"Ptrace System Calls","platforms":["Linux"],"autosuggest":"T1055.008 - Ptrace System Calls"},{"technique_id":"T1055.009","technique_name":"Proc Memory","platforms":["Linux"],"autosuggest":"T1055.009 - Proc Memory"},{"technique_id":"T1055.011","technique_name":"Extra Window Memory Injection","platforms":["Windows"],"autosuggest":"T1055.011 - Extra Window Memory Injection"},{"technique_id":"T1055.012","technique_name":"Process Hollowing","platforms":["Windows"],"autosuggest":"T1055.012 - Process Hollowing"},{"technique_id":"T1055.013","technique_name":"Process Doppelgänging","platforms":["Windows"],"autosuggest":"T1055.013 - Process Doppelgänging"},{"technique_id":"T1055.014","technique_name":"VDSO Hijacking","platforms":["Linux"],"autosuggest":"T1055.014 - VDSO Hijacking"},{"technique_id":"T1056","technique_name":"Input Capture","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1056 - Input Capture"},{"technique_id":"T1056.001","technique_name":"Keylogging","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1056.001 - Keylogging"},{"technique_id":"T1056.002","technique_name":"GUI Input Capture","platforms":["Windows","macOS"],"autosuggest":"T1056.002 - GUI Input Capture"},{"technique_id":"T1056.003","technique_name":"Web Portal Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1056.003 - Web Portal Capture"},{"technique_id":"T1056.004","technique_name":"Credential API Hooking","platforms":["Windows"],"autosuggest":"T1056.004 - Credential API Hooking"},{"technique_id":"T1057","technique_name":"Process Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1057 - Process Discovery"},{"technique_id":"T1059","technique_name":"Command and Scripting Interpreter","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1059 - Command and Scripting Interpreter"},{"technique_id":"T1059.001","technique_name":"PowerShell","platforms":["Windows"],"autosuggest":"T1059.001 - PowerShell"},{"technique_id":"T1059.002","technique_name":"AppleScript","platforms":["macOS"],"autosuggest":"T1059.002 - AppleScript"},{"technique_id":"T1059.003","technique_name":"Windows Command Shell","platforms":["Windows"],"autosuggest":"T1059.003 - Windows Command Shell"},{"technique_id":"T1059.004","technique_name":"Unix Shell","platforms":["Linux","macOS"],"autosuggest":"T1059.004 - Unix Shell"},{"technique_id":"T1059.005","technique_name":"Visual Basic","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.005 - Visual Basic"},{"technique_id":"T1059.006","technique_name":"Python","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.006 - Python"},{"technique_id":"T1059.007","technique_name":"JavaScript/JScript","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.007 - JavaScript/JScript"},{"technique_id":"T1059.008","technique_name":"Network Device CLI","platforms":["Network"],"autosuggest":"T1059.008 - Network Device CLI"},{"technique_id":"T1068","technique_name":"Exploitation for Privilege Escalation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1068 - Exploitation for Privilege Escalation"},{"technique_id":"T1069","technique_name":"Permission Groups Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1069 - Permission Groups Discovery"},{"technique_id":"T1069.001","technique_name":"Local Groups","platforms":["Linux","Windows","macOS"],"autosuggest":"T1069.001 - Local Groups"},{"technique_id":"T1069.002","technique_name":"Domain Groups","platforms":["Linux","Windows","macOS"],"autosuggest":"T1069.002 - Domain Groups"},{"technique_id":"T1069.003","technique_name":"Cloud Groups","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1069.003 - Cloud Groups"},{"technique_id":"T1070","technique_name":"Indicator Removal on Host","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070 - Indicator Removal on Host"},{"technique_id":"T1070.001","technique_name":"Clear Windows Event Logs","platforms":["Windows"],"autosuggest":"T1070.001 - Clear Windows Event Logs"},{"technique_id":"T1070.002","technique_name":"Clear Linux or Mac System Logs","platforms":["Linux","macOS"],"autosuggest":"T1070.002 - Clear Linux or Mac System Logs"},{"technique_id":"T1070.003","technique_name":"Clear Command History","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.003 - Clear Command History"},{"technique_id":"T1070.004","technique_name":"File Deletion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.004 - File Deletion"},{"technique_id":"T1070.005","technique_name":"Network Share Connection Removal","platforms":["Windows"],"autosuggest":"T1070.005 - Network Share Connection Removal"},{"technique_id":"T1070.006","technique_name":"Timestomp","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.006 - Timestomp"},{"technique_id":"T1071","technique_name":"Application Layer Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071 - Application Layer Protocol"},{"technique_id":"T1071.001","technique_name":"Web Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.001 - Web Protocols"},{"technique_id":"T1071.002","technique_name":"File Transfer Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.002 - File Transfer Protocols"},{"technique_id":"T1071.003","technique_name":"Mail Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.003 - Mail Protocols"},{"technique_id":"T1071.004","technique_name":"DNS","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.004 - DNS"},{"technique_id":"T1072","technique_name":"Software Deployment Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1072 - Software Deployment Tools"},{"technique_id":"T1074","technique_name":"Data Staged","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1074 - Data Staged"},{"technique_id":"T1074.001","technique_name":"Local Data Staging","platforms":["Linux","Windows","macOS"],"autosuggest":"T1074.001 - Local Data Staging"},{"technique_id":"T1074.002","technique_name":"Remote Data Staging","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1074.002 - Remote Data Staging"},{"technique_id":"T1078","technique_name":"Valid Accounts","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1078 - Valid Accounts"},{"technique_id":"T1078.001","technique_name":"Default Accounts","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1078.001 - Default Accounts"},{"technique_id":"T1078.002","technique_name":"Domain Accounts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1078.002 - Domain Accounts"},{"technique_id":"T1078.003","technique_name":"Local Accounts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1078.003 - Local Accounts"},{"technique_id":"T1078.004","technique_name":"Cloud Accounts","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1078.004 - Cloud Accounts"},{"technique_id":"T1080","technique_name":"Taint Shared Content","platforms":["Windows"],"autosuggest":"T1080 - Taint Shared Content"},{"technique_id":"T1082","technique_name":"System Information Discovery","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1082 - System Information Discovery"},{"technique_id":"T1083","technique_name":"File and Directory Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1083 - File and Directory Discovery"},{"technique_id":"T1087","technique_name":"Account Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1087 - Account Discovery"},{"technique_id":"T1087.001","technique_name":"Local Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1087.001 - Local Account"},{"technique_id":"T1087.002","technique_name":"Domain Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1087.002 - Domain Account"},{"technique_id":"T1087.003","technique_name":"Email Account","platforms":["Office 365","Windows"],"autosuggest":"T1087.003 - Email Account"},{"technique_id":"T1087.004","technique_name":"Cloud Account","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1087.004 - Cloud Account"},{"technique_id":"T1090","technique_name":"Proxy","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1090 - Proxy"},{"technique_id":"T1090.001","technique_name":"Internal Proxy","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.001 - Internal Proxy"},{"technique_id":"T1090.002","technique_name":"External Proxy","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.002 - External Proxy"},{"technique_id":"T1090.003","technique_name":"Multi-hop Proxy","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1090.003 - Multi-hop Proxy"},{"technique_id":"T1090.004","technique_name":"Domain Fronting","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.004 - Domain Fronting"},{"technique_id":"T1091","technique_name":"Replication Through Removable Media","platforms":["Windows"],"autosuggest":"T1091 - Replication Through Removable Media"},{"technique_id":"T1092","technique_name":"Communication Through Removable Media","platforms":["Linux","Windows","macOS"],"autosuggest":"T1092 - Communication Through Removable Media"},{"technique_id":"T1095","technique_name":"Non-Application Layer Protocol","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1095 - Non-Application Layer Protocol"},{"technique_id":"T1098","technique_name":"Account Manipulation","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","Windows","macOS"],"autosuggest":"T1098 - Account Manipulation"},{"technique_id":"T1098.001","technique_name":"Additional Cloud Credentials","platforms":["AWS","Azure","Azure AD","GCP"],"autosuggest":"T1098.001 - Additional Cloud Credentials"},{"technique_id":"T1098.002","technique_name":"Exchange Email Delegate Permissions","platforms":["Office 365","Windows"],"autosuggest":"T1098.002 - Exchange Email Delegate Permissions"},{"technique_id":"T1098.003","technique_name":"Add Office 365 Global Administrator Role","platforms":["Office 365"],"autosuggest":"T1098.003 - Add Office 365 Global Administrator Role"},{"technique_id":"T1098.004","technique_name":"SSH Authorized Keys","platforms":["Linux","macOS"],"autosuggest":"T1098.004 - SSH Authorized Keys"},{"technique_id":"T1102","technique_name":"Web Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102 - Web Service"},{"technique_id":"T1102.001","technique_name":"Dead Drop Resolver","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.001 - Dead Drop Resolver"},{"technique_id":"T1102.002","technique_name":"Bidirectional Communication","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.002 - Bidirectional Communication"},{"technique_id":"T1102.003","technique_name":"One-Way Communication","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.003 - One-Way Communication"},{"technique_id":"T1104","technique_name":"Multi-Stage Channels","platforms":["Linux","Windows","macOS"],"autosuggest":"T1104 - Multi-Stage Channels"},{"technique_id":"T1105","technique_name":"Ingress Tool Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1105 - Ingress Tool Transfer"},{"technique_id":"T1106","technique_name":"Native API","platforms":["Linux","Windows","macOS"],"autosuggest":"T1106 - Native API"},{"technique_id":"T1110","technique_name":"Brute Force","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110 - Brute Force"},{"technique_id":"T1110.001","technique_name":"Password Guessing","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.001 - Password Guessing"},{"technique_id":"T1110.002","technique_name":"Password Cracking","platforms":["Azure AD","Linux","Office 365","Windows","macOS"],"autosuggest":"T1110.002 - Password Cracking"},{"technique_id":"T1110.003","technique_name":"Password Spraying","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.003 - Password Spraying"},{"technique_id":"T1110.004","technique_name":"Credential Stuffing","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.004 - Credential Stuffing"},{"technique_id":"T1111","technique_name":"Two-Factor Authentication Interception","platforms":["Linux","Windows","macOS"],"autosuggest":"T1111 - Two-Factor Authentication Interception"},{"technique_id":"T1112","technique_name":"Modify Registry","platforms":["Windows"],"autosuggest":"T1112 - Modify Registry"},{"technique_id":"T1113","technique_name":"Screen Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1113 - Screen Capture"},{"technique_id":"T1114","technique_name":"Email Collection","platforms":["Office 365","Windows"],"autosuggest":"T1114 - Email Collection"},{"technique_id":"T1114.001","technique_name":"Local Email Collection","platforms":["Windows"],"autosuggest":"T1114.001 - Local Email Collection"},{"technique_id":"T1114.002","technique_name":"Remote Email Collection","platforms":["Office 365","Windows"],"autosuggest":"T1114.002 - Remote Email Collection"},{"technique_id":"T1114.003","technique_name":"Email Forwarding Rule","platforms":["Office 365","Windows"],"autosuggest":"T1114.003 - Email Forwarding Rule"},{"technique_id":"T1115","technique_name":"Clipboard Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1115 - Clipboard Data"},{"technique_id":"T1119","technique_name":"Automated Collection","platforms":["Linux","Windows","macOS"],"autosuggest":"T1119 - Automated Collection"},{"technique_id":"T1120","technique_name":"Peripheral Device Discovery","platforms":["Windows","macOS"],"autosuggest":"T1120 - Peripheral Device Discovery"},{"technique_id":"T1123","technique_name":"Audio Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1123 - Audio Capture"},{"technique_id":"T1124","technique_name":"System Time Discovery","platforms":["Windows"],"autosuggest":"T1124 - System Time Discovery"},{"technique_id":"T1125","technique_name":"Video Capture","platforms":["Windows","macOS"],"autosuggest":"T1125 - Video Capture"},{"technique_id":"T1127","technique_name":"Trusted Developer Utilities Proxy Execution","platforms":["Windows"],"autosuggest":"T1127 - Trusted Developer Utilities Proxy Execution"},{"technique_id":"T1127.001","technique_name":"MSBuild","platforms":["Windows"],"autosuggest":"T1127.001 - MSBuild"},{"technique_id":"T1129","technique_name":"Shared Modules","platforms":["Windows"],"autosuggest":"T1129 - Shared Modules"},{"technique_id":"T1132","technique_name":"Data Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132 - Data Encoding"},{"technique_id":"T1132.001","technique_name":"Standard Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132.001 - Standard Encoding"},{"technique_id":"T1132.002","technique_name":"Non-Standard Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132.002 - Non-Standard Encoding"},{"technique_id":"T1133","technique_name":"External Remote Services","platforms":["Linux","Windows"],"autosuggest":"T1133 - External Remote Services"},{"technique_id":"T1134","technique_name":"Access Token Manipulation","platforms":["Windows"],"autosuggest":"T1134 - Access Token Manipulation"},{"technique_id":"T1134.001","technique_name":"Token Impersonation/Theft","platforms":["Windows"],"autosuggest":"T1134.001 - Token Impersonation/Theft"},{"technique_id":"T1134.002","technique_name":"Create Process with Token","platforms":["Windows"],"autosuggest":"T1134.002 - Create Process with Token"},{"technique_id":"T1134.003","technique_name":"Make and Impersonate Token","platforms":["Windows"],"autosuggest":"T1134.003 - Make and Impersonate Token"},{"technique_id":"T1134.004","technique_name":"Parent PID Spoofing","platforms":["Windows"],"autosuggest":"T1134.004 - Parent PID Spoofing"},{"technique_id":"T1134.005","technique_name":"SID-History Injection","platforms":["Windows"],"autosuggest":"T1134.005 - SID-History Injection"},{"technique_id":"T1135","technique_name":"Network Share Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1135 - Network Share Discovery"},{"technique_id":"T1136","technique_name":"Create Account","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","Windows","macOS"],"autosuggest":"T1136 - Create Account"},{"technique_id":"T1136.001","technique_name":"Local Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1136.001 - Local Account"},{"technique_id":"T1136.002","technique_name":"Domain Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1136.002 - Domain Account"},{"technique_id":"T1136.003","technique_name":"Cloud Account","platforms":["AWS","Azure","Azure AD","GCP","Office 365"],"autosuggest":"T1136.003 - Cloud Account"},{"technique_id":"T1137","technique_name":"Office Application Startup","platforms":["Office 365","Windows"],"autosuggest":"T1137 - Office Application Startup"},{"technique_id":"T1137.001","technique_name":"Office Template Macros","platforms":["Office 365","Windows"],"autosuggest":"T1137.001 - Office Template Macros"},{"technique_id":"T1137.002","technique_name":"Office Test","platforms":["Office 365","Windows"],"autosuggest":"T1137.002 - Office Test"},{"technique_id":"T1137.003","technique_name":"Outlook Forms","platforms":["Office 365","Windows"],"autosuggest":"T1137.003 - Outlook Forms"},{"technique_id":"T1137.004","technique_name":"Outlook Home Page","platforms":["Office 365","Windows"],"autosuggest":"T1137.004 - Outlook Home Page"},{"technique_id":"T1137.005","technique_name":"Outlook Rules","platforms":["Office 365","Windows"],"autosuggest":"T1137.005 - Outlook Rules"},{"technique_id":"T1137.006","technique_name":"Add-ins","platforms":["Office 365","Windows"],"autosuggest":"T1137.006 - Add-ins"},{"technique_id":"T1140","technique_name":"Deobfuscate/Decode Files or Information","platforms":["Linux","Windows","macOS"],"autosuggest":"T1140 - Deobfuscate/Decode Files or Information"},{"technique_id":"T1176","technique_name":"Browser Extensions","platforms":["Linux","Windows","macOS"],"autosuggest":"T1176 - Browser Extensions"},{"technique_id":"T1185","technique_name":"Man in the Browser","platforms":["Windows"],"autosuggest":"T1185 - Man in the Browser"},{"technique_id":"T1187","technique_name":"Forced Authentication","platforms":["Windows"],"autosuggest":"T1187 - Forced Authentication"},{"technique_id":"T1189","technique_name":"Drive-by Compromise","platforms":["Linux","SaaS","Windows","macOS"],"autosuggest":"T1189 - Drive-by Compromise"},{"technique_id":"T1190","technique_name":"Exploit Public-Facing Application","platforms":["AWS","Azure","GCP","Linux","Network","Windows","macOS"],"autosuggest":"T1190 - Exploit Public-Facing Application"},{"technique_id":"T1195","technique_name":"Supply Chain Compromise","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195 - Supply Chain Compromise"},{"technique_id":"T1195.001","technique_name":"Compromise Software Dependencies and Development Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.001 - Compromise Software Dependencies and Development Tools"},{"technique_id":"T1195.002","technique_name":"Compromise Software Supply Chain","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.002 - Compromise Software Supply Chain"},{"technique_id":"T1195.003","technique_name":"Compromise Hardware Supply Chain","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.003 - Compromise Hardware Supply Chain"},{"technique_id":"T1197","technique_name":"BITS Jobs","platforms":["Windows"],"autosuggest":"T1197 - BITS Jobs"},{"technique_id":"T1199","technique_name":"Trusted Relationship","platforms":["AWS","Azure","GCP","Linux","SaaS","Windows","macOS"],"autosuggest":"T1199 - Trusted Relationship"},{"technique_id":"T1200","technique_name":"Hardware Additions","platforms":["Linux","Windows","macOS"],"autosuggest":"T1200 - Hardware Additions"},{"technique_id":"T1201","technique_name":"Password Policy Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1201 - Password Policy Discovery"},{"technique_id":"T1202","technique_name":"Indirect Command Execution","platforms":["Windows"],"autosuggest":"T1202 - Indirect Command Execution"},{"technique_id":"T1203","technique_name":"Exploitation for Client Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1203 - Exploitation for Client Execution"},{"technique_id":"T1204","technique_name":"User Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204 - User Execution"},{"technique_id":"T1204.001","technique_name":"Malicious Link","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204.001 - Malicious Link"},{"technique_id":"T1204.002","technique_name":"Malicious File","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204.002 - Malicious File"},{"technique_id":"T1205","technique_name":"Traffic Signaling","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1205 - Traffic Signaling"},{"technique_id":"T1205.001","technique_name":"Port Knocking","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1205.001 - Port Knocking"},{"technique_id":"T1207","technique_name":"Rogue Domain Controller","platforms":["Windows"],"autosuggest":"T1207 - Rogue Domain Controller"},{"technique_id":"T1210","technique_name":"Exploitation of Remote Services","platforms":["Linux","Windows","macOS"],"autosuggest":"T1210 - Exploitation of Remote Services"},{"technique_id":"T1211","technique_name":"Exploitation for Defense Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1211 - Exploitation for Defense Evasion"},{"technique_id":"T1212","technique_name":"Exploitation for Credential Access","platforms":["Linux","Windows","macOS"],"autosuggest":"T1212 - Exploitation for Credential Access"},{"technique_id":"T1213","technique_name":"Data from Information Repositories","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1213 - Data from Information Repositories"},{"technique_id":"T1213.001","technique_name":"Confluence","platforms":["SaaS"],"autosuggest":"T1213.001 - Confluence"},{"technique_id":"T1213.002","technique_name":"Sharepoint","platforms":["Office 365","Windows"],"autosuggest":"T1213.002 - Sharepoint"},{"technique_id":"T1216","technique_name":"Signed Script Proxy Execution","platforms":["Windows"],"autosuggest":"T1216 - Signed Script Proxy Execution"},{"technique_id":"T1216.001","technique_name":"PubPrn","platforms":["Windows"],"autosuggest":"T1216.001 - PubPrn"},{"technique_id":"T1217","technique_name":"Browser Bookmark Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1217 - Browser Bookmark Discovery"},{"technique_id":"T1218","technique_name":"Signed Binary Proxy Execution","platforms":["Windows"],"autosuggest":"T1218 - Signed Binary Proxy Execution"},{"technique_id":"T1218.001","technique_name":"Compiled HTML File","platforms":["Windows"],"autosuggest":"T1218.001 - Compiled HTML File"},{"technique_id":"T1218.002","technique_name":"Control Panel","platforms":["Windows"],"autosuggest":"T1218.002 - Control Panel"},{"technique_id":"T1218.003","technique_name":"CMSTP","platforms":["Windows"],"autosuggest":"T1218.003 - CMSTP"},{"technique_id":"T1218.004","technique_name":"InstallUtil","platforms":["Windows"],"autosuggest":"T1218.004 - InstallUtil"},{"technique_id":"T1218.005","technique_name":"Mshta","platforms":["Windows"],"autosuggest":"T1218.005 - Mshta"},{"technique_id":"T1218.007","technique_name":"Msiexec","platforms":["Windows"],"autosuggest":"T1218.007 - Msiexec"},{"technique_id":"T1218.008","technique_name":"Odbcconf","platforms":["Windows"],"autosuggest":"T1218.008 - Odbcconf"},{"technique_id":"T1218.009","technique_name":"Regsvcs/Regasm","platforms":["Windows"],"autosuggest":"T1218.009 - Regsvcs/Regasm"},{"technique_id":"T1218.010","technique_name":"Regsvr32","platforms":["Windows"],"autosuggest":"T1218.010 - Regsvr32"},{"technique_id":"T1218.011","technique_name":"Rundll32","platforms":["Windows"],"autosuggest":"T1218.011 - Rundll32"},{"technique_id":"T1218.012","technique_name":"Verclsid","platforms":["Windows"],"autosuggest":"T1218.012 - Verclsid"},{"technique_id":"T1219","technique_name":"Remote Access Software","platforms":["Linux","Windows","macOS"],"autosuggest":"T1219 - Remote Access Software"},{"technique_id":"T1220","technique_name":"XSL Script Processing","platforms":["Windows"],"autosuggest":"T1220 - XSL Script Processing"},{"technique_id":"T1221","technique_name":"Template Injection","platforms":["Windows"],"autosuggest":"T1221 - Template Injection"},{"technique_id":"T1222","technique_name":"File and Directory Permissions Modification","platforms":["Linux","Windows","macOS"],"autosuggest":"T1222 - File and Directory Permissions Modification"},{"technique_id":"T1222.001","technique_name":"Windows File and Directory Permissions Modification","platforms":["Windows"],"autosuggest":"T1222.001 - Windows File and Directory Permissions Modification"},{"technique_id":"T1222.002","technique_name":"Linux and Mac File and Directory Permissions Modification","platforms":["Linux","macOS"],"autosuggest":"T1222.002 - Linux and Mac File and Directory Permissions Modification"},{"technique_id":"T1480","technique_name":"Execution Guardrails","platforms":["Linux","Windows","macOS"],"autosuggest":"T1480 - Execution Guardrails"},{"technique_id":"T1480.001","technique_name":"Environmental Keying","platforms":["Linux","Windows","macOS"],"autosuggest":"T1480.001 - Environmental Keying"},{"technique_id":"T1482","technique_name":"Domain Trust Discovery","platforms":["Windows"],"autosuggest":"T1482 - Domain Trust Discovery"},{"technique_id":"T1484","technique_name":"Group Policy Modification","platforms":["Windows"],"autosuggest":"T1484 - Group Policy Modification"},{"technique_id":"T1485","technique_name":"Data Destruction","platforms":["Linux","Windows","macOS"],"autosuggest":"T1485 - Data Destruction"},{"technique_id":"T1486","technique_name":"Data Encrypted for Impact","platforms":["Linux","Windows","macOS"],"autosuggest":"T1486 - Data Encrypted for Impact"},{"technique_id":"T1489","technique_name":"Service Stop","platforms":["Linux","Windows","macOS"],"autosuggest":"T1489 - Service Stop"},{"technique_id":"T1490","technique_name":"Inhibit System Recovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1490 - Inhibit System Recovery"},{"technique_id":"T1491","technique_name":"Defacement","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1491 - Defacement"},{"technique_id":"T1491.001","technique_name":"Internal Defacement","platforms":["Linux","Windows","macOS"],"autosuggest":"T1491.001 - Internal Defacement"},{"technique_id":"T1491.002","technique_name":"External Defacement","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1491.002 - External Defacement"},{"technique_id":"T1495","technique_name":"Firmware Corruption","platforms":["Linux","Windows","macOS"],"autosuggest":"T1495 - Firmware Corruption"},{"technique_id":"T1496","technique_name":"Resource Hijacking","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1496 - Resource Hijacking"},{"technique_id":"T1497","technique_name":"Virtualization/Sandbox Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497 - Virtualization/Sandbox Evasion"},{"technique_id":"T1497.001","technique_name":"System Checks","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.001 - System Checks"},{"technique_id":"T1497.002","technique_name":"User Activity Based Checks","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.002 - User Activity Based Checks"},{"technique_id":"T1497.003","technique_name":"Time Based Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.003 - Time Based Evasion"},{"technique_id":"T1498","technique_name":"Network Denial of Service","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498 - Network Denial of Service"},{"technique_id":"T1498.001","technique_name":"Direct Network Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498.001 - Direct Network Flood"},{"technique_id":"T1498.002","technique_name":"Reflection Amplification","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498.002 - Reflection Amplification"},{"technique_id":"T1499","technique_name":"Endpoint Denial of Service","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499 - Endpoint Denial of Service"},{"technique_id":"T1499.001","technique_name":"OS Exhaustion Flood","platforms":["Linux","Windows","macOS"],"autosuggest":"T1499.001 - OS Exhaustion Flood"},{"technique_id":"T1499.002","technique_name":"Service Exhaustion Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.002 - Service Exhaustion Flood"},{"technique_id":"T1499.003","technique_name":"Application Exhaustion Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.003 - Application Exhaustion Flood"},{"technique_id":"T1499.004","technique_name":"Application or System Exploitation","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.004 - Application or System Exploitation"},{"technique_id":"T1505","technique_name":"Server Software Component","platforms":["Linux","Windows","macOS"],"autosuggest":"T1505 - Server Software Component"},{"technique_id":"T1505.001","technique_name":"SQL Stored Procedures","platforms":["Linux","Windows"],"autosuggest":"T1505.001 - SQL Stored Procedures"},{"technique_id":"T1505.002","technique_name":"Transport Agent","platforms":["Linux","Windows"],"autosuggest":"T1505.002 - Transport Agent"},{"technique_id":"T1505.003","technique_name":"Web Shell","platforms":["Linux","Windows","macOS"],"autosuggest":"T1505.003 - Web Shell"},{"technique_id":"T1518","technique_name":"Software Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1518 - Software Discovery"},{"technique_id":"T1518.001","technique_name":"Security Software Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1518.001 - Security Software Discovery"},{"technique_id":"T1525","technique_name":"Implant Container Image","platforms":["AWS","Azure","GCP"],"autosuggest":"T1525 - Implant Container Image"},{"technique_id":"T1526","technique_name":"Cloud Service Discovery","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1526 - Cloud Service Discovery"},{"technique_id":"T1528","technique_name":"Steal Application Access Token","platforms":["Azure AD","Office 365","SaaS"],"autosuggest":"T1528 - Steal Application Access Token"},{"technique_id":"T1529","technique_name":"System Shutdown/Reboot","platforms":["Linux","Windows","macOS"],"autosuggest":"T1529 - System Shutdown/Reboot"},{"technique_id":"T1530","technique_name":"Data from Cloud Storage Object","platforms":["AWS","Azure","GCP"],"autosuggest":"T1530 - Data from Cloud Storage Object"},{"technique_id":"T1531","technique_name":"Account Access Removal","platforms":["Linux","Windows","macOS"],"autosuggest":"T1531 - Account Access Removal"},{"technique_id":"T1534","technique_name":"Internal Spearphishing","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1534 - Internal Spearphishing"},{"technique_id":"T1535","technique_name":"Unused/Unsupported Cloud Regions","platforms":["AWS","Azure","GCP"],"autosuggest":"T1535 - Unused/Unsupported Cloud Regions"},{"technique_id":"T1537","technique_name":"Transfer Data to Cloud Account","platforms":["AWS","Azure","GCP"],"autosuggest":"T1537 - Transfer Data to Cloud Account"},{"technique_id":"T1538","technique_name":"Cloud Service Dashboard","platforms":["AWS","Azure","Azure AD","GCP","Office 365"],"autosuggest":"T1538 - Cloud Service Dashboard"},{"technique_id":"T1539","technique_name":"Steal Web Session Cookie","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1539 - Steal Web Session Cookie"},{"technique_id":"T1542","technique_name":"Pre-OS Boot","platforms":["Linux","Network","Windows"],"autosuggest":"T1542 - Pre-OS Boot"},{"technique_id":"T1542.001","technique_name":"System Firmware","platforms":["Windows"],"autosuggest":"T1542.001 - System Firmware"},{"technique_id":"T1542.002","technique_name":"Component Firmware","platforms":["Windows"],"autosuggest":"T1542.002 - Component Firmware"},{"technique_id":"T1542.003","technique_name":"Bootkit","platforms":["Linux","Windows"],"autosuggest":"T1542.003 - Bootkit"},{"technique_id":"T1542.004","technique_name":"ROMMONkit","platforms":["Network"],"autosuggest":"T1542.004 - ROMMONkit"},{"technique_id":"T1542.005","technique_name":"TFTP Boot","platforms":["Network"],"autosuggest":"T1542.005 - TFTP Boot"},{"technique_id":"T1543","technique_name":"Create or Modify System Process","platforms":["Linux","Windows","macOS"],"autosuggest":"T1543 - Create or Modify System Process"},{"technique_id":"T1543.001","technique_name":"Launch Agent","platforms":["macOS"],"autosuggest":"T1543.001 - Launch Agent"},{"technique_id":"T1543.002","technique_name":"Systemd Service","platforms":["Linux"],"autosuggest":"T1543.002 - Systemd Service"},{"technique_id":"T1543.003","technique_name":"Windows Service","platforms":["Windows"],"autosuggest":"T1543.003 - Windows Service"},{"technique_id":"T1543.004","technique_name":"Launch Daemon","platforms":["macOS"],"autosuggest":"T1543.004 - Launch Daemon"},{"technique_id":"T1546","technique_name":"Event Triggered Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1546 - Event Triggered Execution"},{"technique_id":"T1546.001","technique_name":"Change Default File Association","platforms":["Windows"],"autosuggest":"T1546.001 - Change Default File Association"},{"technique_id":"T1546.002","technique_name":"Screensaver","platforms":["Windows"],"autosuggest":"T1546.002 - Screensaver"},{"technique_id":"T1546.003","technique_name":"Windows Management Instrumentation Event Subscription","platforms":["Windows"],"autosuggest":"T1546.003 - Windows Management Instrumentation Event Subscription"},{"technique_id":"T1546.004","technique_name":".bash_profile and .bashrc","platforms":["Linux","macOS"],"autosuggest":"T1546.004 - .bash_profile and .bashrc"},{"technique_id":"T1546.005","technique_name":"Trap","platforms":["Linux","macOS"],"autosuggest":"T1546.005 - Trap"},{"technique_id":"T1546.006","technique_name":"LC_LOAD_DYLIB Addition","platforms":["macOS"],"autosuggest":"T1546.006 - LC_LOAD_DYLIB Addition"},{"technique_id":"T1546.007","technique_name":"Netsh Helper DLL","platforms":["Windows"],"autosuggest":"T1546.007 - Netsh Helper DLL"},{"technique_id":"T1546.008","technique_name":"Accessibility Features","platforms":["Windows"],"autosuggest":"T1546.008 - Accessibility Features"},{"technique_id":"T1546.009","technique_name":"AppCert DLLs","platforms":["Windows"],"autosuggest":"T1546.009 - AppCert DLLs"},{"technique_id":"T1546.010","technique_name":"AppInit DLLs","platforms":["Windows"],"autosuggest":"T1546.010 - AppInit DLLs"},{"technique_id":"T1546.011","technique_name":"Application Shimming","platforms":["Windows"],"autosuggest":"T1546.011 - Application Shimming"},{"technique_id":"T1546.012","technique_name":"Image File Execution Options Injection","platforms":["Windows"],"autosuggest":"T1546.012 - Image File Execution Options Injection"},{"technique_id":"T1546.013","technique_name":"PowerShell Profile","platforms":["Windows"],"autosuggest":"T1546.013 - PowerShell Profile"},{"technique_id":"T1546.014","technique_name":"Emond","platforms":["macOS"],"autosuggest":"T1546.014 - Emond"},{"technique_id":"T1546.015","technique_name":"Component Object Model Hijacking","platforms":["Windows"],"autosuggest":"T1546.015 - Component Object Model Hijacking"},{"technique_id":"T1547","technique_name":"Boot or Logon Autostart Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1547 - Boot or Logon Autostart Execution"},{"technique_id":"T1547.001","technique_name":"Registry Run Keys / Startup Folder","platforms":["Windows"],"autosuggest":"T1547.001 - Registry Run Keys / Startup Folder"},{"technique_id":"T1547.002","technique_name":"Authentication Package","platforms":["Windows"],"autosuggest":"T1547.002 - Authentication Package"},{"technique_id":"T1547.003","technique_name":"Time Providers","platforms":["Windows"],"autosuggest":"T1547.003 - Time Providers"},{"technique_id":"T1547.004","technique_name":"Winlogon Helper DLL","platforms":["Windows"],"autosuggest":"T1547.004 - Winlogon Helper DLL"},{"technique_id":"T1547.005","technique_name":"Security Support Provider","platforms":["Windows"],"autosuggest":"T1547.005 - Security Support Provider"},{"technique_id":"T1547.006","technique_name":"Kernel Modules and Extensions","platforms":["Linux","macOS"],"autosuggest":"T1547.006 - Kernel Modules and Extensions"},{"technique_id":"T1547.007","technique_name":"Re-opened Applications","platforms":["macOS"],"autosuggest":"T1547.007 - Re-opened Applications"},{"technique_id":"T1547.008","technique_name":"LSASS Driver","platforms":["Windows"],"autosuggest":"T1547.008 - LSASS Driver"},{"technique_id":"T1547.009","technique_name":"Shortcut Modification","platforms":["Windows"],"autosuggest":"T1547.009 - Shortcut Modification"},{"technique_id":"T1547.010","technique_name":"Port Monitors","platforms":["Windows"],"autosuggest":"T1547.010 - Port Monitors"},{"technique_id":"T1547.011","technique_name":"Plist Modification","platforms":["macOS"],"autosuggest":"T1547.011 - Plist Modification"},{"technique_id":"T1547.012","technique_name":"Print Processors","platforms":["Windows"],"autosuggest":"T1547.012 - Print Processors"},{"technique_id":"T1548","technique_name":"Abuse Elevation Control Mechanism","platforms":["Linux","Windows","macOS"],"autosuggest":"T1548 - Abuse Elevation Control Mechanism"},{"technique_id":"T1548.001","technique_name":"Setuid and Setgid","platforms":["Linux","macOS"],"autosuggest":"T1548.001 - Setuid and Setgid"},{"technique_id":"T1548.002","technique_name":"Bypass User Account Control","platforms":["Windows"],"autosuggest":"T1548.002 - Bypass User Account Control"},{"technique_id":"T1548.003","technique_name":"Sudo and Sudo Caching","platforms":["Linux","macOS"],"autosuggest":"T1548.003 - Sudo and Sudo Caching"},{"technique_id":"T1548.004","technique_name":"Elevated Execution with Prompt","platforms":["macOS"],"autosuggest":"T1548.004 - Elevated Execution with Prompt"},{"technique_id":"T1550","technique_name":"Use Alternate Authentication Material","platforms":["Office 365","SaaS","Windows"],"autosuggest":"T1550 - Use Alternate Authentication Material"},{"technique_id":"T1550.001","technique_name":"Application Access Token","platforms":["Office 365","SaaS"],"autosuggest":"T1550.001 - Application Access Token"},{"technique_id":"T1550.002","technique_name":"Pass the Hash","platforms":["Windows"],"autosuggest":"T1550.002 - Pass the Hash"},{"technique_id":"T1550.003","technique_name":"Pass the Ticket","platforms":["Windows"],"autosuggest":"T1550.003 - Pass the Ticket"},{"technique_id":"T1550.004","technique_name":"Web Session Cookie","platforms":["Office 365","SaaS"],"autosuggest":"T1550.004 - Web Session Cookie"},{"technique_id":"T1552","technique_name":"Unsecured Credentials","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1552 - Unsecured Credentials"},{"technique_id":"T1552.001","technique_name":"Credentials In Files","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1552.001 - Credentials In Files"},{"technique_id":"T1552.002","technique_name":"Credentials in Registry","platforms":["Windows"],"autosuggest":"T1552.002 - Credentials in Registry"},{"technique_id":"T1552.003","technique_name":"Bash History","platforms":["Linux","macOS"],"autosuggest":"T1552.003 - Bash History"},{"technique_id":"T1552.004","technique_name":"Private Keys","platforms":["Linux","Windows","macOS"],"autosuggest":"T1552.004 - Private Keys"},{"technique_id":"T1552.005","technique_name":"Cloud Instance Metadata API","platforms":["AWS","Azure","GCP"],"autosuggest":"T1552.005 - Cloud Instance Metadata API"},{"technique_id":"T1552.006","technique_name":"Group Policy Preferences","platforms":["Windows"],"autosuggest":"T1552.006 - Group Policy Preferences"},{"technique_id":"T1553","technique_name":"Subvert Trust Controls","platforms":["Linux","Windows","macOS"],"autosuggest":"T1553 - Subvert Trust Controls"},{"technique_id":"T1553.001","technique_name":"Gatekeeper Bypass","platforms":["macOS"],"autosuggest":"T1553.001 - Gatekeeper Bypass"},{"technique_id":"T1553.002","technique_name":"Code Signing","platforms":["Windows","macOS"],"autosuggest":"T1553.002 - Code Signing"},{"technique_id":"T1553.003","technique_name":"SIP and Trust Provider Hijacking","platforms":["Windows"],"autosuggest":"T1553.003 - SIP and Trust Provider Hijacking"},{"technique_id":"T1553.004","technique_name":"Install Root Certificate","platforms":["Linux","Windows","macOS"],"autosuggest":"T1553.004 - Install Root Certificate"},{"technique_id":"T1554","technique_name":"Compromise Client Software Binary","platforms":["Linux","Windows","macOS"],"autosuggest":"T1554 - Compromise Client Software Binary"},{"technique_id":"T1555","technique_name":"Credentials from Password Stores","platforms":["Linux","Windows","macOS"],"autosuggest":"T1555 - Credentials from Password Stores"},{"technique_id":"T1555.001","technique_name":"Keychain","platforms":["macOS"],"autosuggest":"T1555.001 - Keychain"},{"technique_id":"T1555.002","technique_name":"Securityd Memory","platforms":["Linux","macOS"],"autosuggest":"T1555.002 - Securityd Memory"},{"technique_id":"T1555.003","technique_name":"Credentials from Web Browsers","platforms":["Linux","Windows","macOS"],"autosuggest":"T1555.003 - Credentials from Web Browsers"},{"technique_id":"T1556","technique_name":"Modify Authentication Process","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1556 - Modify Authentication Process"},{"technique_id":"T1556.001","technique_name":"Domain Controller Authentication","platforms":["Windows"],"autosuggest":"T1556.001 - Domain Controller Authentication"},{"technique_id":"T1556.002","technique_name":"Password Filter DLL","platforms":["Windows"],"autosuggest":"T1556.002 - Password Filter DLL"},{"technique_id":"T1556.003","technique_name":"Pluggable Authentication Modules","platforms":["Linux","macOS"],"autosuggest":"T1556.003 - Pluggable Authentication Modules"},{"technique_id":"T1556.004","technique_name":"Network Device Authentication","platforms":["Network"],"autosuggest":"T1556.004 - Network Device Authentication"},{"technique_id":"T1557","technique_name":"Man-in-the-Middle","platforms":["Linux","Windows","macOS"],"autosuggest":"T1557 - Man-in-the-Middle"},{"technique_id":"T1557.001","technique_name":"LLMNR/NBT-NS Poisoning and SMB Relay","platforms":["Windows"],"autosuggest":"T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay"},{"technique_id":"T1557.002","technique_name":"ARP Cache Poisoning","platforms":["Linux","Windows","macOS"],"autosuggest":"T1557.002 - ARP Cache Poisoning"},{"technique_id":"T1558","technique_name":"Steal or Forge Kerberos Tickets","platforms":["Windows"],"autosuggest":"T1558 - Steal or Forge Kerberos Tickets"},{"technique_id":"T1558.001","technique_name":"Golden Ticket","platforms":["Windows"],"autosuggest":"T1558.001 - Golden Ticket"},{"technique_id":"T1558.002","technique_name":"Silver Ticket","platforms":["Windows"],"autosuggest":"T1558.002 - Silver Ticket"},{"technique_id":"T1558.003","technique_name":"Kerberoasting","platforms":["Windows"],"autosuggest":"T1558.003 - Kerberoasting"},{"technique_id":"T1558.004","technique_name":"AS-REP Roasting","platforms":["Windows"],"autosuggest":"T1558.004 - AS-REP Roasting"},{"technique_id":"T1559","technique_name":"Inter-Process Communication","platforms":["Windows"],"autosuggest":"T1559 - Inter-Process Communication"},{"technique_id":"T1559.001","technique_name":"Component Object Model","platforms":["Windows"],"autosuggest":"T1559.001 - Component Object Model"},{"technique_id":"T1559.002","technique_name":"Dynamic Data Exchange","platforms":["Windows"],"autosuggest":"T1559.002 - Dynamic Data Exchange"},{"technique_id":"T1560","technique_name":"Archive Collected Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560 - Archive Collected Data"},{"technique_id":"T1560.001","technique_name":"Archive via Utility","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.001 - Archive via Utility"},{"technique_id":"T1560.002","technique_name":"Archive via Library","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.002 - Archive via Library"},{"technique_id":"T1560.003","technique_name":"Archive via Custom Method","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.003 - Archive via Custom Method"},{"technique_id":"T1561","technique_name":"Disk Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561 - Disk Wipe"},{"technique_id":"T1561.001","technique_name":"Disk Content Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561.001 - Disk Content Wipe"},{"technique_id":"T1561.002","technique_name":"Disk Structure Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561.002 - Disk Structure Wipe"},{"technique_id":"T1562","technique_name":"Impair Defenses","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1562 - Impair Defenses"},{"technique_id":"T1562.001","technique_name":"Disable or Modify Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.001 - Disable or Modify Tools"},{"technique_id":"T1562.002","technique_name":"Disable Windows Event Logging","platforms":["Windows"],"autosuggest":"T1562.002 - Disable Windows Event Logging"},{"technique_id":"T1562.003","technique_name":"Impair Command History Logging","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.003 - Impair Command History Logging"},{"technique_id":"T1562.004","technique_name":"Disable or Modify System Firewall","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.004 - Disable or Modify System Firewall"},{"technique_id":"T1562.006","technique_name":"Indicator Blocking","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.006 - Indicator Blocking"},{"technique_id":"T1562.007","technique_name":"Disable or Modify Cloud Firewall","platforms":["AWS","Azure","GCP"],"autosuggest":"T1562.007 - Disable or Modify Cloud Firewall"},{"technique_id":"T1562.008","technique_name":"Disable Cloud Logs","platforms":["AWS","Azure","GCP"],"autosuggest":"T1562.008 - Disable Cloud Logs"},{"technique_id":"T1563","technique_name":"Remote Service Session Hijacking","platforms":["Linux","Windows","macOS"],"autosuggest":"T1563 - Remote Service Session Hijacking"},{"technique_id":"T1563.001","technique_name":"SSH Hijacking","platforms":["Linux","macOS"],"autosuggest":"T1563.001 - SSH Hijacking"},{"technique_id":"T1563.002","technique_name":"RDP Hijacking","platforms":["Windows"],"autosuggest":"T1563.002 - RDP Hijacking"},{"technique_id":"T1564","technique_name":"Hide Artifacts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564 - Hide Artifacts"},{"technique_id":"T1564.001","technique_name":"Hidden Files and Directories","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.001 - Hidden Files and Directories"},{"technique_id":"T1564.002","technique_name":"Hidden Users","platforms":["macOS"],"autosuggest":"T1564.002 - Hidden Users"},{"technique_id":"T1564.003","technique_name":"Hidden Window","platforms":["Windows","macOS"],"autosuggest":"T1564.003 - Hidden Window"},{"technique_id":"T1564.004","technique_name":"NTFS File Attributes","platforms":["Windows"],"autosuggest":"T1564.004 - NTFS File Attributes"},{"technique_id":"T1564.005","technique_name":"Hidden File System","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.005 - Hidden File System"},{"technique_id":"T1564.006","technique_name":"Run Virtual Instance","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.006 - Run Virtual Instance"},{"technique_id":"T1564.007","technique_name":"VBA Stomping","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.007 - VBA Stomping"},{"technique_id":"T1565","technique_name":"Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565 - Data Manipulation"},{"technique_id":"T1565.001","technique_name":"Stored Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.001 - Stored Data Manipulation"},{"technique_id":"T1565.002","technique_name":"Transmitted Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.002 - Transmitted Data Manipulation"},{"technique_id":"T1565.003","technique_name":"Runtime Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.003 - Runtime Data Manipulation"},{"technique_id":"T1566","technique_name":"Phishing","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1566 - Phishing"},{"technique_id":"T1566.001","technique_name":"Spearphishing Attachment","platforms":["Linux","Windows","macOS"],"autosuggest":"T1566.001 - Spearphishing Attachment"},{"technique_id":"T1566.002","technique_name":"Spearphishing Link","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1566.002 - Spearphishing Link"},{"technique_id":"T1566.003","technique_name":"Spearphishing via Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1566.003 - Spearphishing via Service"},{"technique_id":"T1567","technique_name":"Exfiltration Over Web Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567 - Exfiltration Over Web Service"},{"technique_id":"T1567.001","technique_name":"Exfiltration to Code Repository","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567.001 - Exfiltration to Code Repository"},{"technique_id":"T1567.002","technique_name":"Exfiltration to Cloud Storage","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567.002 - Exfiltration to Cloud Storage"},{"technique_id":"T1568","technique_name":"Dynamic Resolution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568 - Dynamic Resolution"},{"technique_id":"T1568.001","technique_name":"Fast Flux DNS","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.001 - Fast Flux DNS"},{"technique_id":"T1568.002","technique_name":"Domain Generation Algorithms","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.002 - Domain Generation Algorithms"},{"technique_id":"T1568.003","technique_name":"DNS Calculation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.003 - DNS Calculation"},{"technique_id":"T1569","technique_name":"System Services","platforms":["Windows","macOS"],"autosuggest":"T1569 - System Services"},{"technique_id":"T1569.001","technique_name":"Launchctl","platforms":["macOS"],"autosuggest":"T1569.001 - Launchctl"},{"technique_id":"T1569.002","technique_name":"Service Execution","platforms":["Windows"],"autosuggest":"T1569.002 - Service Execution"},{"technique_id":"T1570","technique_name":"Lateral Tool Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1570 - Lateral Tool Transfer"},{"technique_id":"T1571","technique_name":"Non-Standard Port","platforms":["Linux","Windows","macOS"],"autosuggest":"T1571 - Non-Standard Port"},{"technique_id":"T1572","technique_name":"Protocol Tunneling","platforms":["Linux","Windows","macOS"],"autosuggest":"T1572 - Protocol Tunneling"},{"technique_id":"T1573","technique_name":"Encrypted Channel","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573 - Encrypted Channel"},{"technique_id":"T1573.001","technique_name":"Symmetric Cryptography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573.001 - Symmetric Cryptography"},{"technique_id":"T1573.002","technique_name":"Asymmetric Cryptography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573.002 - Asymmetric Cryptography"},{"technique_id":"T1574","technique_name":"Hijack Execution Flow","platforms":["Linux","Windows","macOS"],"autosuggest":"T1574 - Hijack Execution Flow"},{"technique_id":"T1574.001","technique_name":"DLL Search Order Hijacking","platforms":["Windows"],"autosuggest":"T1574.001 - DLL Search Order Hijacking"},{"technique_id":"T1574.002","technique_name":"DLL Side-Loading","platforms":["Windows"],"autosuggest":"T1574.002 - DLL Side-Loading"},{"technique_id":"T1574.004","technique_name":"Dylib Hijacking","platforms":["macOS"],"autosuggest":"T1574.004 - Dylib Hijacking"},{"technique_id":"T1574.005","technique_name":"Executable Installer File Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.005 - Executable Installer File Permissions Weakness"},{"technique_id":"T1574.006","technique_name":"LD_PRELOAD","platforms":["Linux"],"autosuggest":"T1574.006 - LD_PRELOAD"},{"technique_id":"T1574.007","technique_name":"Path Interception by PATH Environment Variable","platforms":["Windows"],"autosuggest":"T1574.007 - Path Interception by PATH Environment Variable"},{"technique_id":"T1574.008","technique_name":"Path Interception by Search Order Hijacking","platforms":["Windows"],"autosuggest":"T1574.008 - Path Interception by Search Order Hijacking"},{"technique_id":"T1574.009","technique_name":"Path Interception by Unquoted Path","platforms":["Windows"],"autosuggest":"T1574.009 - Path Interception by Unquoted Path"},{"technique_id":"T1574.010","technique_name":"Services File Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.010 - Services File Permissions Weakness"},{"technique_id":"T1574.011","technique_name":"Services Registry Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.011 - Services Registry Permissions Weakness"},{"technique_id":"T1574.012","technique_name":"COR_PROFILER","platforms":["Windows"],"autosuggest":"T1574.012 - COR_PROFILER"},{"technique_id":"T1578","technique_name":"Modify Cloud Compute Infrastructure","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578 - Modify Cloud Compute Infrastructure"},{"technique_id":"T1578.001","technique_name":"Create Snapshot","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.001 - Create Snapshot"},{"technique_id":"T1578.002","technique_name":"Create Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.002 - Create Cloud Instance"},{"technique_id":"T1578.003","technique_name":"Delete Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.003 - Delete Cloud Instance"},{"technique_id":"T1578.004","technique_name":"Revert Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.004 - Revert Cloud Instance"},{"technique_id":"T1580","technique_name":"Cloud Infrastructure Discovery","platforms":["AWS","Azure","GCP"],"autosuggest":"T1580 - Cloud Infrastructure Discovery"},{"technique_id":"T1583","technique_name":"Acquire Infrastructure","platforms":["PRE"],"autosuggest":"T1583 - Acquire Infrastructure"},{"technique_id":"T1583.001","technique_name":"Domains","platforms":["PRE"],"autosuggest":"T1583.001 - Domains"},{"technique_id":"T1583.002","technique_name":"DNS Server","platforms":["PRE"],"autosuggest":"T1583.002 - DNS Server"},{"technique_id":"T1583.003","technique_name":"Virtual Private Server","platforms":["PRE"],"autosuggest":"T1583.003 - Virtual Private Server"},{"technique_id":"T1583.004","technique_name":"Server","platforms":["PRE"],"autosuggest":"T1583.004 - Server"},{"technique_id":"T1583.005","technique_name":"Botnet","platforms":["PRE"],"autosuggest":"T1583.005 - Botnet"},{"technique_id":"T1583.006","technique_name":"Web Services","platforms":["PRE"],"autosuggest":"T1583.006 - Web Services"},{"technique_id":"T1584","technique_name":"Compromise Infrastructure","platforms":["PRE"],"autosuggest":"T1584 - Compromise Infrastructure"},{"technique_id":"T1584.001","technique_name":"Domains","platforms":["PRE"],"autosuggest":"T1584.001 - Domains"},{"technique_id":"T1584.002","technique_name":"DNS Server","platforms":["PRE"],"autosuggest":"T1584.002 - DNS Server"},{"technique_id":"T1584.003","technique_name":"Virtual Private Server","platforms":["PRE"],"autosuggest":"T1584.003 - Virtual Private Server"},{"technique_id":"T1584.004","technique_name":"Server","platforms":["PRE"],"autosuggest":"T1584.004 - Server"},{"technique_id":"T1584.005","technique_name":"Botnet","platforms":["PRE"],"autosuggest":"T1584.005 - Botnet"},{"technique_id":"T1584.006","technique_name":"Web Services","platforms":["PRE"],"autosuggest":"T1584.006 - Web Services"},{"technique_id":"T1585","technique_name":"Establish Accounts","platforms":["PRE"],"autosuggest":"T1585 - Establish Accounts"},{"technique_id":"T1585.001","technique_name":"Social Media Accounts","platforms":["PRE"],"autosuggest":"T1585.001 - Social Media Accounts"},{"technique_id":"T1585.002","technique_name":"Email Accounts","platforms":["PRE"],"autosuggest":"T1585.002 - Email Accounts"},{"technique_id":"T1586","technique_name":"Compromise Accounts","platforms":["PRE"],"autosuggest":"T1586 - Compromise Accounts"},{"technique_id":"T1586.001","technique_name":"Social Media Accounts","platforms":["PRE"],"autosuggest":"T1586.001 - Social Media Accounts"},{"technique_id":"T1586.002","technique_name":"Email Accounts","platforms":["PRE"],"autosuggest":"T1586.002 - Email Accounts"},{"technique_id":"T1587","technique_name":"Develop Capabilities","platforms":["PRE"],"autosuggest":"T1587 - Develop Capabilities"},{"technique_id":"T1587.001","technique_name":"Malware","platforms":["PRE"],"autosuggest":"T1587.001 - Malware"},{"technique_id":"T1587.002","technique_name":"Code Signing Certificates","platforms":["PRE"],"autosuggest":"T1587.002 - Code Signing Certificates"},{"technique_id":"T1587.003","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1587.003 - Digital Certificates"},{"technique_id":"T1587.004","technique_name":"Exploits","platforms":["PRE"],"autosuggest":"T1587.004 - Exploits"},{"technique_id":"T1588","technique_name":"Obtain Capabilities","platforms":["PRE"],"autosuggest":"T1588 - Obtain Capabilities"},{"technique_id":"T1588.001","technique_name":"Malware","platforms":["PRE"],"autosuggest":"T1588.001 - Malware"},{"technique_id":"T1588.002","technique_name":"Tool","platforms":["PRE"],"autosuggest":"T1588.002 - Tool"},{"technique_id":"T1588.003","technique_name":"Code Signing Certificates","platforms":["PRE"],"autosuggest":"T1588.003 - Code Signing Certificates"},{"technique_id":"T1588.004","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1588.004 - Digital Certificates"},{"technique_id":"T1588.005","technique_name":"Exploits","platforms":["PRE"],"autosuggest":"T1588.005 - Exploits"},{"technique_id":"T1588.006","technique_name":"Vulnerabilities","platforms":["PRE"],"autosuggest":"T1588.006 - Vulnerabilities"},{"technique_id":"T1589","technique_name":"Gather Victim Identity Information","platforms":["PRE"],"autosuggest":"T1589 - Gather Victim Identity Information"},{"technique_id":"T1589.001","technique_name":"Credentials","platforms":["PRE"],"autosuggest":"T1589.001 - Credentials"},{"technique_id":"T1589.002","technique_name":"Email Addresses","platforms":["PRE"],"autosuggest":"T1589.002 - Email Addresses"},{"technique_id":"T1589.003","technique_name":"Employee Names","platforms":["PRE"],"autosuggest":"T1589.003 - Employee Names"},{"technique_id":"T1590","technique_name":"Gather Victim Network Information","platforms":["PRE"],"autosuggest":"T1590 - Gather Victim Network Information"},{"technique_id":"T1590.001","technique_name":"Domain Properties","platforms":["PRE"],"autosuggest":"T1590.001 - Domain Properties"},{"technique_id":"T1590.002","technique_name":"DNS","platforms":["PRE"],"autosuggest":"T1590.002 - DNS"},{"technique_id":"T1590.003","technique_name":"Network Trust Dependencies","platforms":["PRE"],"autosuggest":"T1590.003 - Network Trust Dependencies"},{"technique_id":"T1590.004","technique_name":"Network Topology","platforms":["PRE"],"autosuggest":"T1590.004 - Network Topology"},{"technique_id":"T1590.005","technique_name":"IP Addresses","platforms":["PRE"],"autosuggest":"T1590.005 - IP Addresses"},{"technique_id":"T1590.006","technique_name":"Network Security Appliances","platforms":["PRE"],"autosuggest":"T1590.006 - Network Security Appliances"},{"technique_id":"T1591","technique_name":"Gather Victim Org Information","platforms":["PRE"],"autosuggest":"T1591 - Gather Victim Org Information"},{"technique_id":"T1591.001","technique_name":"Determine Physical Locations","platforms":["PRE"],"autosuggest":"T1591.001 - Determine Physical Locations"},{"technique_id":"T1591.002","technique_name":"Business Relationships","platforms":["PRE"],"autosuggest":"T1591.002 - Business Relationships"},{"technique_id":"T1591.003","technique_name":"Identify Business Tempo","platforms":["PRE"],"autosuggest":"T1591.003 - Identify Business Tempo"},{"technique_id":"T1591.004","technique_name":"Identify Roles","platforms":["PRE"],"autosuggest":"T1591.004 - Identify Roles"},{"technique_id":"T1592","technique_name":"Gather Victim Host Information","platforms":["PRE"],"autosuggest":"T1592 - Gather Victim Host Information"},{"technique_id":"T1592.001","technique_name":"Hardware","platforms":["PRE"],"autosuggest":"T1592.001 - Hardware"},{"technique_id":"T1592.002","technique_name":"Software","platforms":["PRE"],"autosuggest":"T1592.002 - Software"},{"technique_id":"T1592.003","technique_name":"Firmware","platforms":["PRE"],"autosuggest":"T1592.003 - Firmware"},{"technique_id":"T1592.004","technique_name":"Client Configurations","platforms":["PRE"],"autosuggest":"T1592.004 - Client Configurations"},{"technique_id":"T1593","technique_name":"Search Open Websites/Domains","platforms":["PRE"],"autosuggest":"T1593 - Search Open Websites/Domains"},{"technique_id":"T1593.001","technique_name":"Social Media","platforms":["PRE"],"autosuggest":"T1593.001 - Social Media"},{"technique_id":"T1593.002","technique_name":"Search Engines","platforms":["PRE"],"autosuggest":"T1593.002 - Search Engines"},{"technique_id":"T1594","technique_name":"Search Victim-Owned Websites","platforms":["PRE"],"autosuggest":"T1594 - Search Victim-Owned Websites"},{"technique_id":"T1595","technique_name":"Active Scanning","platforms":["PRE"],"autosuggest":"T1595 - Active Scanning"},{"technique_id":"T1595.001","technique_name":"Scanning IP Blocks","platforms":["PRE"],"autosuggest":"T1595.001 - Scanning IP Blocks"},{"technique_id":"T1595.002","technique_name":"Vulnerability Scanning","platforms":["PRE"],"autosuggest":"T1595.002 - Vulnerability Scanning"},{"technique_id":"T1596","technique_name":"Search Open Technical Databases","platforms":["PRE"],"autosuggest":"T1596 - Search Open Technical Databases"},{"technique_id":"T1596.001","technique_name":"DNS/Passive DNS","platforms":["PRE"],"autosuggest":"T1596.001 - DNS/Passive DNS"},{"technique_id":"T1596.002","technique_name":"WHOIS","platforms":["PRE"],"autosuggest":"T1596.002 - WHOIS"},{"technique_id":"T1596.003","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1596.003 - Digital Certificates"},{"technique_id":"T1596.004","technique_name":"CDNs","platforms":["PRE"],"autosuggest":"T1596.004 - CDNs"},{"technique_id":"T1596.005","technique_name":"Scan Databases","platforms":["PRE"],"autosuggest":"T1596.005 - Scan Databases"},{"technique_id":"T1597","technique_name":"Search Closed Sources","platforms":["PRE"],"autosuggest":"T1597 - Search Closed Sources"},{"technique_id":"T1597.001","technique_name":"Threat Intel Vendors","platforms":["PRE"],"autosuggest":"T1597.001 - Threat Intel Vendors"},{"technique_id":"T1597.002","technique_name":"Purchase Technical Data","platforms":["PRE"],"autosuggest":"T1597.002 - Purchase Technical Data"},{"technique_id":"T1598","technique_name":"Phishing for Information","platforms":["PRE"],"autosuggest":"T1598 - Phishing for Information"},{"technique_id":"T1598.001","technique_name":"Spearphishing Service","platforms":["PRE"],"autosuggest":"T1598.001 - Spearphishing Service"},{"technique_id":"T1598.002","technique_name":"Spearphishing Attachment","platforms":["PRE"],"autosuggest":"T1598.002 - Spearphishing Attachment"},{"technique_id":"T1598.003","technique_name":"Spearphishing Link","platforms":["PRE"],"autosuggest":"T1598.003 - Spearphishing Link"},{"technique_id":"T1599","technique_name":"Network Boundary Bridging","platforms":["Network"],"autosuggest":"T1599 - Network Boundary Bridging"},{"technique_id":"T1599.001","technique_name":"Network Address Translation Traversal","platforms":["Network"],"autosuggest":"T1599.001 - Network Address Translation Traversal"},{"technique_id":"T1600","technique_name":"Weaken Encryption","platforms":["Network"],"autosuggest":"T1600 - Weaken Encryption"},{"technique_id":"T1600.001","technique_name":"Reduce Key Space","platforms":["Network"],"autosuggest":"T1600.001 - Reduce Key Space"},{"technique_id":"T1600.002","technique_name":"Disable Crypto Hardware","platforms":["Network"],"autosuggest":"T1600.002 - Disable Crypto Hardware"},{"technique_id":"T1601","technique_name":"Modify System Image","platforms":["Network"],"autosuggest":"T1601 - Modify System Image"},{"technique_id":"T1601.001","technique_name":"Patch System Image","platforms":["Network"],"autosuggest":"T1601.001 - Patch System Image"},{"technique_id":"T1601.002","technique_name":"Downgrade System Image","platforms":["Network"],"autosuggest":"T1601.002 - Downgrade System Image"},{"technique_id":"T1602","technique_name":"Data from Configuration Repository","platforms":["Network"],"autosuggest":"T1602 - Data from Configuration Repository"},{"technique_id":"T1602.001","technique_name":"SNMP (MIB Dump)","platforms":["Network"],"autosuggest":"T1602.001 - SNMP (MIB Dump)"},{"technique_id":"T1602.002","technique_name":"Network Device Configuration Dump","platforms":["Network"],"autosuggest":"T1602.002 - Network Device Configuration Dump"}]')},b5b2:function(e,t,s){},bba2:function(e){e.exports=JSON.parse('[{"software_id":"S0001","software_name":"Trojan.Mebromi","platforms":["Windows"],"autosuggest":"S0001 - Trojan.Mebromi"},{"software_id":"S0002","software_name":"Mimikatz","platforms":["Windows"],"autosuggest":"S0002 - Mimikatz"},{"software_id":"S0003","software_name":"RIPTIDE","platforms":["Windows"],"autosuggest":"S0003 - RIPTIDE"},{"software_id":"S0004","software_name":"TinyZBot","platforms":["Windows"],"autosuggest":"S0004 - TinyZBot"},{"software_id":"S0005","software_name":"Windows Credential Editor","platforms":["Windows"],"autosuggest":"S0005 - Windows Credential Editor"},{"software_id":"S0006","software_name":"pwdump","platforms":["Windows"],"autosuggest":"S0006 - pwdump"},{"software_id":"S0007","software_name":"Skeleton Key","platforms":["Windows"],"autosuggest":"S0007 - Skeleton Key"},{"software_id":"S0008","software_name":"gsecdump","platforms":["Windows"],"autosuggest":"S0008 - gsecdump"},{"software_id":"S0009","software_name":"Hikit","platforms":["Windows"],"autosuggest":"S0009 - Hikit"},{"software_id":"S0010","software_name":"Lurid","platforms":["Windows"],"autosuggest":"S0010 - Lurid"},{"software_id":"S0011","software_name":"Taidoor","platforms":["Windows"],"autosuggest":"S0011 - Taidoor"},{"software_id":"S0012","software_name":"PoisonIvy","platforms":["Windows"],"autosuggest":"S0012 - PoisonIvy"},{"software_id":"S0013","software_name":"PlugX","platforms":["Windows"],"autosuggest":"S0013 - PlugX"},{"software_id":"S0014","software_name":"BS2005","platforms":["Windows"],"autosuggest":"S0014 - BS2005"},{"software_id":"S0015","software_name":"Ixeshe","platforms":["Windows"],"autosuggest":"S0015 - Ixeshe"},{"software_id":"S0016","software_name":"P2P ZeuS","platforms":["Windows"],"autosuggest":"S0016 - P2P ZeuS"},{"software_id":"S0017","software_name":"BISCUIT","platforms":["Windows"],"autosuggest":"S0017 - BISCUIT"},{"software_id":"S0018","software_name":"Sykipot","platforms":["Windows"],"autosuggest":"S0018 - Sykipot"},{"software_id":"S0019","software_name":"Regin","platforms":["Windows"],"autosuggest":"S0019 - Regin"},{"software_id":"S0020","software_name":"China Chopper","platforms":["Windows"],"autosuggest":"S0020 - China Chopper"},{"software_id":"S0021","software_name":"Derusbi","platforms":["Linux","Windows"],"autosuggest":"S0021 - Derusbi"},{"software_id":"S0022","software_name":"Uroburos","platforms":["Windows"],"autosuggest":"S0022 - Uroburos"},{"software_id":"S0023","software_name":"CHOPSTICK","platforms":["Linux","Windows"],"autosuggest":"S0023 - CHOPSTICK"},{"software_id":"S0024","software_name":"Dyre","platforms":["Windows"],"autosuggest":"S0024 - Dyre"},{"software_id":"S0025","software_name":"CALENDAR","platforms":["Windows"],"autosuggest":"S0025 - CALENDAR"},{"software_id":"S0026","software_name":"GLOOXMAIL","platforms":["Windows"],"autosuggest":"S0026 - GLOOXMAIL"},{"software_id":"S0027","software_name":"Zeroaccess","platforms":["Windows"],"autosuggest":"S0027 - Zeroaccess"},{"software_id":"S0028","software_name":"SHIPSHAPE","platforms":["Windows"],"autosuggest":"S0028 - SHIPSHAPE"},{"software_id":"S0029","software_name":"PsExec","platforms":["Windows"],"autosuggest":"S0029 - PsExec"},{"software_id":"S0030","software_name":"Carbanak","platforms":["Windows"],"autosuggest":"S0030 - Carbanak"},{"software_id":"S0031","software_name":"BACKSPACE","platforms":["Windows"],"autosuggest":"S0031 - BACKSPACE"},{"software_id":"S0032","software_name":"gh0st RAT","platforms":["Windows","macOS"],"autosuggest":"S0032 - gh0st RAT"},{"software_id":"S0033","software_name":"NetTraveler","platforms":["Windows"],"autosuggest":"S0033 - NetTraveler"},{"software_id":"S0034","software_name":"NETEAGLE","platforms":["Windows"],"autosuggest":"S0034 - NETEAGLE"},{"software_id":"S0035","software_name":"SPACESHIP","platforms":["Windows"],"autosuggest":"S0035 - SPACESHIP"},{"software_id":"S0036","software_name":"FLASHFLOOD","platforms":["Windows"],"autosuggest":"S0036 - FLASHFLOOD"},{"software_id":"S0037","software_name":"HAMMERTOSS","platforms":["Windows"],"autosuggest":"S0037 - HAMMERTOSS"},{"software_id":"S0038","software_name":"Duqu","platforms":["Windows"],"autosuggest":"S0038 - Duqu"},{"software_id":"S0039","software_name":"Net","platforms":["Windows"],"autosuggest":"S0039 - Net"},{"software_id":"S0040","software_name":"HTRAN","platforms":["Linux","Windows"],"autosuggest":"S0040 - HTRAN"},{"software_id":"S0041","software_name":"Wiper","platforms":["Windows"],"autosuggest":"S0041 - Wiper"},{"software_id":"S0042","software_name":"LOWBALL","platforms":["Windows"],"autosuggest":"S0042 - LOWBALL"},{"software_id":"S0043","software_name":"BUBBLEWRAP","platforms":["Windows"],"autosuggest":"S0043 - BUBBLEWRAP"},{"software_id":"S0044","software_name":"JHUHUGIT","platforms":["Windows"],"autosuggest":"S0044 - JHUHUGIT"},{"software_id":"S0045","software_name":"ADVSTORESHELL","platforms":["Windows"],"autosuggest":"S0045 - ADVSTORESHELL"},{"software_id":"S0046","software_name":"CozyCar","platforms":["Windows"],"autosuggest":"S0046 - CozyCar"},{"software_id":"S0047","software_name":"Hacking Team UEFI Rootkit","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0047 - Hacking Team UEFI Rootkit"},{"software_id":"S0048","software_name":"PinchDuke","platforms":["Windows"],"autosuggest":"S0048 - PinchDuke"},{"software_id":"S0049","software_name":"GeminiDuke","platforms":["Windows"],"autosuggest":"S0049 - GeminiDuke"},{"software_id":"S0050","software_name":"CosmicDuke","platforms":["Windows"],"autosuggest":"S0050 - CosmicDuke"},{"software_id":"S0051","software_name":"MiniDuke","platforms":["Windows"],"autosuggest":"S0051 - MiniDuke"},{"software_id":"S0052","software_name":"OnionDuke","platforms":["Windows"],"autosuggest":"S0052 - OnionDuke"},{"software_id":"S0053","software_name":"SeaDuke","platforms":["Windows"],"autosuggest":"S0053 - SeaDuke"},{"software_id":"S0054","software_name":"CloudDuke","platforms":["Windows"],"autosuggest":"S0054 - CloudDuke"},{"software_id":"S0055","software_name":"RARSTONE","platforms":["Windows"],"autosuggest":"S0055 - RARSTONE"},{"software_id":"S0056","software_name":"Net Crawler","platforms":["Windows"],"autosuggest":"S0056 - Net Crawler"},{"software_id":"S0057","software_name":"Tasklist","platforms":["Windows"],"autosuggest":"S0057 - Tasklist"},{"software_id":"S0058","software_name":"SslMM","platforms":["Windows"],"autosuggest":"S0058 - SslMM"},{"software_id":"S0059","software_name":"WinMM","platforms":["Windows"],"autosuggest":"S0059 - WinMM"},{"software_id":"S0060","software_name":"Sys10","platforms":["Windows"],"autosuggest":"S0060 - Sys10"},{"software_id":"S0061","software_name":"HDoor","platforms":["Windows"],"autosuggest":"S0061 - HDoor"},{"software_id":"S0062","software_name":"DustySky","platforms":["Windows"],"autosuggest":"S0062 - DustySky"},{"software_id":"S0063","software_name":"SHOTPUT","platforms":["Windows"],"autosuggest":"S0063 - SHOTPUT"},{"software_id":"S0064","software_name":"ELMER","platforms":["Windows"],"autosuggest":"S0064 - ELMER"},{"software_id":"S0065","software_name":"4H RAT","platforms":["Windows"],"autosuggest":"S0065 - 4H RAT"},{"software_id":"S0066","software_name":"3PARA RAT","platforms":["Windows"],"autosuggest":"S0066 - 3PARA RAT"},{"software_id":"S0067","software_name":"pngdowner","platforms":["Windows"],"autosuggest":"S0067 - pngdowner"},{"software_id":"S0068","software_name":"httpclient","platforms":["Windows"],"autosuggest":"S0068 - httpclient"},{"software_id":"S0069","software_name":"BLACKCOFFEE","platforms":["Windows"],"autosuggest":"S0069 - BLACKCOFFEE"},{"software_id":"S0070","software_name":"HTTPBrowser","platforms":["Windows"],"autosuggest":"S0070 - HTTPBrowser"},{"software_id":"S0071","software_name":"hcdLoader","platforms":["Windows"],"autosuggest":"S0071 - hcdLoader"},{"software_id":"S0072","software_name":"OwaAuth","platforms":["Windows"],"autosuggest":"S0072 - OwaAuth"},{"software_id":"S0073","software_name":"ASPXSpy","platforms":["Windows"],"autosuggest":"S0073 - ASPXSpy"},{"software_id":"S0074","software_name":"Sakula","platforms":["Windows"],"autosuggest":"S0074 - Sakula"},{"software_id":"S0075","software_name":"Reg","platforms":["Windows"],"autosuggest":"S0075 - Reg"},{"software_id":"S0076","software_name":"FakeM","platforms":["Windows"],"autosuggest":"S0076 - FakeM"},{"software_id":"S0077","software_name":"CallMe","platforms":["macOS"],"autosuggest":"S0077 - CallMe"},{"software_id":"S0078","software_name":"Psylo","platforms":["Windows"],"autosuggest":"S0078 - Psylo"},{"software_id":"S0079","software_name":"MobileOrder","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0079 - MobileOrder"},{"software_id":"S0080","software_name":"Mivast","platforms":["Windows"],"autosuggest":"S0080 - Mivast"},{"software_id":"S0081","software_name":"Elise","platforms":["Windows"],"autosuggest":"S0081 - Elise"},{"software_id":"S0082","software_name":"Emissary","platforms":["Windows"],"autosuggest":"S0082 - Emissary"},{"software_id":"S0083","software_name":"Misdat","platforms":["Windows"],"autosuggest":"S0083 - Misdat"},{"software_id":"S0084","software_name":"Mis-Type","platforms":["Windows"],"autosuggest":"S0084 - Mis-Type"},{"software_id":"S0085","software_name":"S-Type","platforms":["Windows"],"autosuggest":"S0085 - S-Type"},{"software_id":"S0086","software_name":"ZLib","platforms":["Windows"],"autosuggest":"S0086 - ZLib"},{"software_id":"S0087","software_name":"Hi-Zor","platforms":["Windows"],"autosuggest":"S0087 - Hi-Zor"},{"software_id":"S0088","software_name":"Kasidet","platforms":["Windows"],"autosuggest":"S0088 - Kasidet"},{"software_id":"S0089","software_name":"BlackEnergy","platforms":["Windows"],"autosuggest":"S0089 - BlackEnergy"},{"software_id":"S0090","software_name":"Rover","platforms":["Windows"],"autosuggest":"S0090 - Rover"},{"software_id":"S0091","software_name":"Epic","platforms":["Windows"],"autosuggest":"S0091 - Epic"},{"software_id":"S0092","software_name":"Agent.btz","platforms":["Windows"],"autosuggest":"S0092 - Agent.btz"},{"software_id":"S0093","software_name":"Backdoor.Oldrea","platforms":["Windows"],"autosuggest":"S0093 - Backdoor.Oldrea"},{"software_id":"S0094","software_name":"Trojan.Karagany","platforms":["Windows"],"autosuggest":"S0094 - Trojan.Karagany"},{"software_id":"S0095","software_name":"FTP","platforms":["Linux","Windows","macOS"],"autosuggest":"S0095 - FTP"},{"software_id":"S0096","software_name":"Systeminfo","platforms":["Windows"],"autosuggest":"S0096 - Systeminfo"},{"software_id":"S0097","software_name":"Ping","platforms":["Linux","Windows","macOS"],"autosuggest":"S0097 - Ping"},{"software_id":"S0098","software_name":"T9000","platforms":["Windows"],"autosuggest":"S0098 - T9000"},{"software_id":"S0099","software_name":"Arp","platforms":["Linux","Windows","macOS"],"autosuggest":"S0099 - Arp"},{"software_id":"S0100","software_name":"ipconfig","platforms":["Windows"],"autosuggest":"S0100 - ipconfig"},{"software_id":"S0101","software_name":"ifconfig","platforms":["Linux"],"autosuggest":"S0101 - ifconfig"},{"software_id":"S0102","software_name":"nbtstat","platforms":["Windows"],"autosuggest":"S0102 - nbtstat"},{"software_id":"S0103","software_name":"route","platforms":["Linux","Windows","macOS"],"autosuggest":"S0103 - route"},{"software_id":"S0104","software_name":"netstat","platforms":["Linux","Windows","macOS"],"autosuggest":"S0104 - netstat"},{"software_id":"S0105","software_name":"dsquery","platforms":["Windows"],"autosuggest":"S0105 - dsquery"},{"software_id":"S0106","software_name":"cmd","platforms":["Windows"],"autosuggest":"S0106 - cmd"},{"software_id":"S0107","software_name":"Cherry Picker","platforms":["Windows"],"autosuggest":"S0107 - Cherry Picker"},{"software_id":"S0108","software_name":"netsh","platforms":["Windows"],"autosuggest":"S0108 - netsh"},{"software_id":"S0109","software_name":"WEBC2","platforms":["Windows"],"autosuggest":"S0109 - WEBC2"},{"software_id":"S0110","software_name":"at","platforms":["Linux","Windows","macOS"],"autosuggest":"S0110 - at"},{"software_id":"S0111","software_name":"schtasks","platforms":["Windows"],"autosuggest":"S0111 - schtasks"},{"software_id":"S0112","software_name":"ROCKBOOT","platforms":["Windows"],"autosuggest":"S0112 - ROCKBOOT"},{"software_id":"S0113","software_name":"Prikormka","platforms":["Windows"],"autosuggest":"S0113 - Prikormka"},{"software_id":"S0114","software_name":"BOOTRASH","platforms":["Windows"],"autosuggest":"S0114 - BOOTRASH"},{"software_id":"S0115","software_name":"Crimson","platforms":["Windows"],"autosuggest":"S0115 - Crimson"},{"software_id":"S0116","software_name":"UACMe","platforms":["Windows"],"autosuggest":"S0116 - UACMe"},{"software_id":"S0117","software_name":"XTunnel","platforms":["Windows"],"autosuggest":"S0117 - XTunnel"},{"software_id":"S0118","software_name":"Nidiran","platforms":["Windows"],"autosuggest":"S0118 - Nidiran"},{"software_id":"S0119","software_name":"Cachedump","platforms":["Windows"],"autosuggest":"S0119 - Cachedump"},{"software_id":"S0120","software_name":"Fgdump","platforms":["Windows"],"autosuggest":"S0120 - Fgdump"},{"software_id":"S0121","software_name":"Lslsass","platforms":["Windows"],"autosuggest":"S0121 - Lslsass"},{"software_id":"S0122","software_name":"Pass-The-Hash Toolkit","platforms":["Linux","Windows","macOS"],"autosuggest":"S0122 - Pass-The-Hash Toolkit"},{"software_id":"S0123","software_name":"xCmd","platforms":["Windows"],"autosuggest":"S0123 - xCmd"},{"software_id":"S0124","software_name":"Pisloader","platforms":["Windows"],"autosuggest":"S0124 - Pisloader"},{"software_id":"S0125","software_name":"Remsec","platforms":["Windows"],"autosuggest":"S0125 - Remsec"},{"software_id":"S0126","software_name":"ComRAT","platforms":["Windows"],"autosuggest":"S0126 - ComRAT"},{"software_id":"S0127","software_name":"BBSRAT","platforms":["Windows"],"autosuggest":"S0127 - BBSRAT"},{"software_id":"S0128","software_name":"BADNEWS","platforms":["Windows"],"autosuggest":"S0128 - BADNEWS"},{"software_id":"S0129","software_name":"AutoIt backdoor","platforms":["Windows"],"autosuggest":"S0129 - AutoIt backdoor"},{"software_id":"S0130","software_name":"Unknown Logger","platforms":["Windows"],"autosuggest":"S0130 - Unknown Logger"},{"software_id":"S0131","software_name":"TINYTYPHON","platforms":["Windows"],"autosuggest":"S0131 - TINYTYPHON"},{"software_id":"S0132","software_name":"H1N1","platforms":["Windows"],"autosuggest":"S0132 - H1N1"},{"software_id":"S0133","software_name":"Miner-C","platforms":["Windows"],"autosuggest":"S0133 - Miner-C"},{"software_id":"S0134","software_name":"Downdelph","platforms":["Windows"],"autosuggest":"S0134 - Downdelph"},{"software_id":"S0135","software_name":"HIDEDRV","platforms":["Windows"],"autosuggest":"S0135 - HIDEDRV"},{"software_id":"S0136","software_name":"USBStealer","platforms":["Windows"],"autosuggest":"S0136 - USBStealer"},{"software_id":"S0137","software_name":"CORESHELL","platforms":["Windows"],"autosuggest":"S0137 - CORESHELL"},{"software_id":"S0138","software_name":"OLDBAIT","platforms":["Windows"],"autosuggest":"S0138 - OLDBAIT"},{"software_id":"S0139","software_name":"PowerDuke","platforms":["Windows"],"autosuggest":"S0139 - PowerDuke"},{"software_id":"S0140","software_name":"Shamoon","platforms":["Windows"],"autosuggest":"S0140 - Shamoon"},{"software_id":"S0141","software_name":"Winnti for Windows","platforms":["Windows"],"autosuggest":"S0141 - Winnti for Windows"},{"software_id":"S0142","software_name":"StreamEx","platforms":["Windows"],"autosuggest":"S0142 - StreamEx"},{"software_id":"S0143","software_name":"Flame","platforms":["Windows"],"autosuggest":"S0143 - Flame"},{"software_id":"S0144","software_name":"ChChes","platforms":["Windows"],"autosuggest":"S0144 - ChChes"},{"software_id":"S0145","software_name":"POWERSOURCE","platforms":["Windows"],"autosuggest":"S0145 - POWERSOURCE"},{"software_id":"S0146","software_name":"TEXTMATE","platforms":["Windows"],"autosuggest":"S0146 - TEXTMATE"},{"software_id":"S0147","software_name":"Pteranodon","platforms":["Windows"],"autosuggest":"S0147 - Pteranodon"},{"software_id":"S0148","software_name":"RTM","platforms":["Windows"],"autosuggest":"S0148 - RTM"},{"software_id":"S0149","software_name":"MoonWind","platforms":["Windows"],"autosuggest":"S0149 - MoonWind"},{"software_id":"S0150","software_name":"POSHSPY","platforms":["Windows"],"autosuggest":"S0150 - POSHSPY"},{"software_id":"S0151","software_name":"HALFBAKED","platforms":["Windows"],"autosuggest":"S0151 - HALFBAKED"},{"software_id":"S0152","software_name":"EvilGrab","platforms":["Windows"],"autosuggest":"S0152 - EvilGrab"},{"software_id":"S0153","software_name":"RedLeaves","platforms":["Windows"],"autosuggest":"S0153 - RedLeaves"},{"software_id":"S0154","software_name":"Cobalt Strike","platforms":["Windows"],"autosuggest":"S0154 - Cobalt Strike"},{"software_id":"S0155","software_name":"WINDSHIELD","platforms":["Windows"],"autosuggest":"S0155 - WINDSHIELD"},{"software_id":"S0156","software_name":"KOMPROGO","platforms":["Windows"],"autosuggest":"S0156 - KOMPROGO"},{"software_id":"S0157","software_name":"SOUNDBITE","platforms":["Windows"],"autosuggest":"S0157 - SOUNDBITE"},{"software_id":"S0158","software_name":"PHOREAL","platforms":["Windows"],"autosuggest":"S0158 - PHOREAL"},{"software_id":"S0159","software_name":"SNUGRIDE","platforms":["Windows"],"autosuggest":"S0159 - SNUGRIDE"},{"software_id":"S0160","software_name":"certutil","platforms":["Windows"],"autosuggest":"S0160 - certutil"},{"software_id":"S0161","software_name":"XAgentOSX","platforms":["macOS"],"autosuggest":"S0161 - XAgentOSX"},{"software_id":"S0162","software_name":"Komplex","platforms":["macOS"],"autosuggest":"S0162 - Komplex"},{"software_id":"S0163","software_name":"Janicab","platforms":["macOS"],"autosuggest":"S0163 - Janicab"},{"software_id":"S0164","software_name":"TDTESS","platforms":["Windows"],"autosuggest":"S0164 - TDTESS"},{"software_id":"S0165","software_name":"OSInfo","platforms":["Windows"],"autosuggest":"S0165 - OSInfo"},{"software_id":"S0166","software_name":"RemoteCMD","platforms":["Windows"],"autosuggest":"S0166 - RemoteCMD"},{"software_id":"S0167","software_name":"Matroyshka","platforms":["Windows"],"autosuggest":"S0167 - Matroyshka"},{"software_id":"S0168","software_name":"Gazer","platforms":["Windows"],"autosuggest":"S0168 - Gazer"},{"software_id":"S0169","software_name":"RawPOS","platforms":["Windows"],"autosuggest":"S0169 - RawPOS"},{"software_id":"S0170","software_name":"Helminth","platforms":["Windows"],"autosuggest":"S0170 - Helminth"},{"software_id":"S0171","software_name":"Felismus","platforms":["Windows"],"autosuggest":"S0171 - Felismus"},{"software_id":"S0172","software_name":"Reaver","platforms":["Windows"],"autosuggest":"S0172 - Reaver"},{"software_id":"S0173","software_name":"FLIPSIDE","platforms":["Windows"],"autosuggest":"S0173 - FLIPSIDE"},{"software_id":"S0174","software_name":"Responder","platforms":["Windows"],"autosuggest":"S0174 - Responder"},{"software_id":"S0175","software_name":"meek","platforms":["Linux","Windows","macOS"],"autosuggest":"S0175 - meek"},{"software_id":"S0176","software_name":"Wingbird","platforms":["Windows"],"autosuggest":"S0176 - Wingbird"},{"software_id":"S0177","software_name":"Power Loader","platforms":["Windows"],"autosuggest":"S0177 - Power Loader"},{"software_id":"S0178","software_name":"Truvasys","platforms":["Windows"],"autosuggest":"S0178 - Truvasys"},{"software_id":"S0179","software_name":"MimiPenguin","platforms":["Linux"],"autosuggest":"S0179 - MimiPenguin"},{"software_id":"S0180","software_name":"Volgmer","platforms":["Windows"],"autosuggest":"S0180 - Volgmer"},{"software_id":"S0181","software_name":"FALLCHILL","platforms":["Windows"],"autosuggest":"S0181 - FALLCHILL"},{"software_id":"S0182","software_name":"FinFisher","platforms":["Android","Windows"],"autosuggest":"S0182 - FinFisher"},{"software_id":"S0183","software_name":"Tor","platforms":["Linux","Windows","macOS"],"autosuggest":"S0183 - Tor"},{"software_id":"S0184","software_name":"POWRUNER","platforms":["Windows"],"autosuggest":"S0184 - POWRUNER"},{"software_id":"S0185","software_name":"SEASHARPEE","platforms":["Windows"],"autosuggest":"S0185 - SEASHARPEE"},{"software_id":"S0186","software_name":"DownPaper","platforms":["Windows"],"autosuggest":"S0186 - DownPaper"},{"software_id":"S0187","software_name":"Daserf","platforms":["Windows"],"autosuggest":"S0187 - Daserf"},{"software_id":"S0188","software_name":"Starloader","platforms":["Windows"],"autosuggest":"S0188 - Starloader"},{"software_id":"S0189","software_name":"ISMInjector","platforms":["Windows"],"autosuggest":"S0189 - ISMInjector"},{"software_id":"S0190","software_name":"BITSAdmin","platforms":["Windows"],"autosuggest":"S0190 - BITSAdmin"},{"software_id":"S0191","software_name":"Winexe","platforms":["Windows"],"autosuggest":"S0191 - Winexe"},{"software_id":"S0192","software_name":"Pupy","platforms":["Android","Linux","Windows","macOS"],"autosuggest":"S0192 - Pupy"},{"software_id":"S0193","software_name":"Forfiles","platforms":["Windows"],"autosuggest":"S0193 - Forfiles"},{"software_id":"S0194","software_name":"PowerSploit","platforms":["Windows"],"autosuggest":"S0194 - PowerSploit"},{"software_id":"S0195","software_name":"SDelete","platforms":["Windows"],"autosuggest":"S0195 - SDelete"},{"software_id":"S0196","software_name":"PUNCHBUGGY","platforms":["Windows"],"autosuggest":"S0196 - PUNCHBUGGY"},{"software_id":"S0197","software_name":"PUNCHTRACK","platforms":["Windows"],"autosuggest":"S0197 - PUNCHTRACK"},{"software_id":"S0198","software_name":"NETWIRE","platforms":["Windows"],"autosuggest":"S0198 - NETWIRE"},{"software_id":"S0199","software_name":"TURNEDUP","platforms":["Windows"],"autosuggest":"S0199 - TURNEDUP"},{"software_id":"S0200","software_name":"Dipsind","platforms":["Windows"],"autosuggest":"S0200 - Dipsind"},{"software_id":"S0201","software_name":"JPIN","platforms":["Windows"],"autosuggest":"S0201 - JPIN"},{"software_id":"S0202","software_name":"adbupd","platforms":["Windows"],"autosuggest":"S0202 - adbupd"},{"software_id":"S0203","software_name":"Hydraq","platforms":["Windows"],"autosuggest":"S0203 - Hydraq"},{"software_id":"S0204","software_name":"Briba","platforms":["Windows"],"autosuggest":"S0204 - Briba"},{"software_id":"S0205","software_name":"Naid","platforms":["Windows"],"autosuggest":"S0205 - Naid"},{"software_id":"S0206","software_name":"Wiarp","platforms":["Windows"],"autosuggest":"S0206 - Wiarp"},{"software_id":"S0207","software_name":"Vasport","platforms":["Windows"],"autosuggest":"S0207 - Vasport"},{"software_id":"S0208","software_name":"Pasam","platforms":["Windows"],"autosuggest":"S0208 - Pasam"},{"software_id":"S0209","software_name":"Darkmoon","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0209 - Darkmoon"},{"software_id":"S0210","software_name":"Nerex","platforms":["Windows"],"autosuggest":"S0210 - Nerex"},{"software_id":"S0211","software_name":"Linfo","platforms":["Windows"],"autosuggest":"S0211 - Linfo"},{"software_id":"S0212","software_name":"CORALDECK","platforms":["Windows"],"autosuggest":"S0212 - CORALDECK"},{"software_id":"S0213","software_name":"DOGCALL","platforms":["Windows"],"autosuggest":"S0213 - DOGCALL"},{"software_id":"S0214","software_name":"HAPPYWORK","platforms":["Windows"],"autosuggest":"S0214 - HAPPYWORK"},{"software_id":"S0215","software_name":"KARAE","platforms":["Windows"],"autosuggest":"S0215 - KARAE"},{"software_id":"S0216","software_name":"POORAIM","platforms":["Windows"],"autosuggest":"S0216 - POORAIM"},{"software_id":"S0217","software_name":"SHUTTERSPEED","platforms":["Windows"],"autosuggest":"S0217 - SHUTTERSPEED"},{"software_id":"S0218","software_name":"SLOWDRIFT","platforms":["Windows"],"autosuggest":"S0218 - SLOWDRIFT"},{"software_id":"S0219","software_name":"WINERACK","platforms":["Windows"],"autosuggest":"S0219 - WINERACK"},{"software_id":"S0220","software_name":"Chaos","platforms":["Linux"],"autosuggest":"S0220 - Chaos"},{"software_id":"S0221","software_name":"Umbreon","platforms":["Linux"],"autosuggest":"S0221 - Umbreon"},{"software_id":"S0222","software_name":"CCBkdr","platforms":["Windows"],"autosuggest":"S0222 - CCBkdr"},{"software_id":"S0223","software_name":"POWERSTATS","platforms":["Windows"],"autosuggest":"S0223 - POWERSTATS"},{"software_id":"S0224","software_name":"Havij","platforms":["Linux","Windows","macOS"],"autosuggest":"S0224 - Havij"},{"software_id":"S0225","software_name":"sqlmap","platforms":["Linux","Windows","macOS"],"autosuggest":"S0225 - sqlmap"},{"software_id":"S0226","software_name":"Smoke Loader","platforms":["Windows"],"autosuggest":"S0226 - Smoke Loader"},{"software_id":"S0227","software_name":"spwebmember","platforms":["Windows"],"autosuggest":"S0227 - spwebmember"},{"software_id":"S0228","software_name":"NanHaiShu","platforms":["Windows"],"autosuggest":"S0228 - NanHaiShu"},{"software_id":"S0229","software_name":"Orz","platforms":["Windows"],"autosuggest":"S0229 - Orz"},{"software_id":"S0230","software_name":"ZeroT","platforms":["Windows"],"autosuggest":"S0230 - ZeroT"},{"software_id":"S0231","software_name":"Invoke-PSImage","platforms":["Windows"],"autosuggest":"S0231 - Invoke-PSImage"},{"software_id":"S0232","software_name":"HOMEFRY","platforms":["Windows"],"autosuggest":"S0232 - HOMEFRY"},{"software_id":"S0233","software_name":"MURKYTOP","platforms":["Windows"],"autosuggest":"S0233 - MURKYTOP"},{"software_id":"S0234","software_name":"Bandook","platforms":["Windows"],"autosuggest":"S0234 - Bandook"},{"software_id":"S0235","software_name":"CrossRAT","platforms":["Linux","Windows","macOS"],"autosuggest":"S0235 - CrossRAT"},{"software_id":"S0236","software_name":"Kwampirs","platforms":["Windows"],"autosuggest":"S0236 - Kwampirs"},{"software_id":"S0237","software_name":"GravityRAT","platforms":["Windows"],"autosuggest":"S0237 - GravityRAT"},{"software_id":"S0238","software_name":"Proxysvc","platforms":["Windows"],"autosuggest":"S0238 - Proxysvc"},{"software_id":"S0239","software_name":"Bankshot","platforms":["Windows"],"autosuggest":"S0239 - Bankshot"},{"software_id":"S0240","software_name":"ROKRAT","platforms":["Windows"],"autosuggest":"S0240 - ROKRAT"},{"software_id":"S0241","software_name":"RATANKBA","platforms":["Windows"],"autosuggest":"S0241 - RATANKBA"},{"software_id":"S0242","software_name":"SynAck","platforms":["Windows"],"autosuggest":"S0242 - SynAck"},{"software_id":"S0243","software_name":"DealersChoice","platforms":["Windows"],"autosuggest":"S0243 - DealersChoice"},{"software_id":"S0244","software_name":"Comnie","platforms":["Windows"],"autosuggest":"S0244 - Comnie"},{"software_id":"S0245","software_name":"BADCALL","platforms":["Windows"],"autosuggest":"S0245 - BADCALL"},{"software_id":"S0246","software_name":"HARDRAIN","platforms":["Windows"],"autosuggest":"S0246 - HARDRAIN"},{"software_id":"S0247","software_name":"NavRAT","platforms":["Windows"],"autosuggest":"S0247 - NavRAT"},{"software_id":"S0248","software_name":"yty","platforms":["Windows"],"autosuggest":"S0248 - yty"},{"software_id":"S0249","software_name":"Gold Dragon","platforms":["Windows"],"autosuggest":"S0249 - Gold Dragon"},{"software_id":"S0250","software_name":"Koadic","platforms":["Windows"],"autosuggest":"S0250 - Koadic"},{"software_id":"S0251","software_name":"Zebrocy","platforms":["Windows"],"autosuggest":"S0251 - Zebrocy"},{"software_id":"S0252","software_name":"Brave Prince","platforms":["Windows"],"autosuggest":"S0252 - Brave Prince"},{"software_id":"S0253","software_name":"RunningRAT","platforms":["Windows"],"autosuggest":"S0253 - RunningRAT"},{"software_id":"S0254","software_name":"PLAINTEE","platforms":["Windows"],"autosuggest":"S0254 - PLAINTEE"},{"software_id":"S0255","software_name":"DDKONG","platforms":["Windows"],"autosuggest":"S0255 - DDKONG"},{"software_id":"S0256","software_name":"Mosquito","platforms":["Windows"],"autosuggest":"S0256 - Mosquito"},{"software_id":"S0257","software_name":"VERMIN","platforms":["Windows"],"autosuggest":"S0257 - VERMIN"},{"software_id":"S0258","software_name":"RGDoor","platforms":["Windows"],"autosuggest":"S0258 - RGDoor"},{"software_id":"S0259","software_name":"InnaputRAT","platforms":["Windows"],"autosuggest":"S0259 - InnaputRAT"},{"software_id":"S0260","software_name":"InvisiMole","platforms":["Windows"],"autosuggest":"S0260 - InvisiMole"},{"software_id":"S0261","software_name":"Catchamas","platforms":["Windows"],"autosuggest":"S0261 - Catchamas"},{"software_id":"S0262","software_name":"QuasarRAT","platforms":["Windows"],"autosuggest":"S0262 - QuasarRAT"},{"software_id":"S0263","software_name":"TYPEFRAME","platforms":["Windows"],"autosuggest":"S0263 - TYPEFRAME"},{"software_id":"S0264","software_name":"OopsIE","platforms":["Windows"],"autosuggest":"S0264 - OopsIE"},{"software_id":"S0265","software_name":"Kazuar","platforms":["Windows","macOS"],"autosuggest":"S0265 - Kazuar"},{"software_id":"S0266","software_name":"TrickBot","platforms":["Windows"],"autosuggest":"S0266 - TrickBot"},{"software_id":"S0267","software_name":"FELIXROOT","platforms":["Windows"],"autosuggest":"S0267 - FELIXROOT"},{"software_id":"S0268","software_name":"Bisonal","platforms":["Windows"],"autosuggest":"S0268 - Bisonal"},{"software_id":"S0269","software_name":"QUADAGENT","platforms":["Windows"],"autosuggest":"S0269 - QUADAGENT"},{"software_id":"S0270","software_name":"RogueRobin","platforms":["Windows"],"autosuggest":"S0270 - RogueRobin"},{"software_id":"S0271","software_name":"KEYMARBLE","platforms":["Windows"],"autosuggest":"S0271 - KEYMARBLE"},{"software_id":"S0272","software_name":"NDiskMonitor","platforms":["Windows"],"autosuggest":"S0272 - NDiskMonitor"},{"software_id":"S0273","software_name":"Socksbot","platforms":["Windows"],"autosuggest":"S0273 - Socksbot"},{"software_id":"S0274","software_name":"Calisto","platforms":["macOS"],"autosuggest":"S0274 - Calisto"},{"software_id":"S0275","software_name":"UPPERCUT","platforms":["Windows"],"autosuggest":"S0275 - UPPERCUT"},{"software_id":"S0276","software_name":"Keydnap","platforms":["macOS"],"autosuggest":"S0276 - Keydnap"},{"software_id":"S0277","software_name":"FruitFly","platforms":["macOS"],"autosuggest":"S0277 - FruitFly"},{"software_id":"S0278","software_name":"iKitten","platforms":["macOS"],"autosuggest":"S0278 - iKitten"},{"software_id":"S0279","software_name":"Proton","platforms":["macOS"],"autosuggest":"S0279 - Proton"},{"software_id":"S0280","software_name":"MirageFox","platforms":["Windows"],"autosuggest":"S0280 - MirageFox"},{"software_id":"S0281","software_name":"Dok","platforms":["macOS"],"autosuggest":"S0281 - Dok"},{"software_id":"S0282","software_name":"MacSpy","platforms":["macOS"],"autosuggest":"S0282 - MacSpy"},{"software_id":"S0283","software_name":"jRAT","platforms":["Android","Linux","Windows","macOS"],"autosuggest":"S0283 - jRAT"},{"software_id":"S0284","software_name":"More_eggs","platforms":["Windows"],"autosuggest":"S0284 - More_eggs"},{"software_id":"S0330","software_name":"Zeus Panda","platforms":["Windows"],"autosuggest":"S0330 - Zeus Panda"},{"software_id":"S0331","software_name":"Agent Tesla","platforms":["Windows"],"autosuggest":"S0331 - Agent Tesla"},{"software_id":"S0332","software_name":"Remcos","platforms":["Windows"],"autosuggest":"S0332 - Remcos"},{"software_id":"S0333","software_name":"UBoatRAT","platforms":["Windows"],"autosuggest":"S0333 - UBoatRAT"},{"software_id":"S0334","software_name":"DarkComet","platforms":["Windows"],"autosuggest":"S0334 - DarkComet"},{"software_id":"S0335","software_name":"Carbon","platforms":["Windows"],"autosuggest":"S0335 - Carbon"},{"software_id":"S0336","software_name":"NanoCore","platforms":["Windows"],"autosuggest":"S0336 - NanoCore"},{"software_id":"S0337","software_name":"BadPatch","platforms":["Windows"],"autosuggest":"S0337 - BadPatch"},{"software_id":"S0338","software_name":"Cobian RAT","platforms":["Windows"],"autosuggest":"S0338 - Cobian RAT"},{"software_id":"S0339","software_name":"Micropsia","platforms":["Windows"],"autosuggest":"S0339 - Micropsia"},{"software_id":"S0340","software_name":"Octopus","platforms":["Windows"],"autosuggest":"S0340 - Octopus"},{"software_id":"S0341","software_name":"Xbash","platforms":["Linux","Windows"],"autosuggest":"S0341 - Xbash"},{"software_id":"S0342","software_name":"GreyEnergy","platforms":["Windows"],"autosuggest":"S0342 - GreyEnergy"},{"software_id":"S0343","software_name":"Exaramel for Windows","platforms":["Windows"],"autosuggest":"S0343 - Exaramel for Windows"},{"software_id":"S0344","software_name":"Azorult","platforms":["Windows"],"autosuggest":"S0344 - Azorult"},{"software_id":"S0345","software_name":"Seasalt","platforms":["Windows"],"autosuggest":"S0345 - Seasalt"},{"software_id":"S0346","software_name":"OceanSalt","platforms":["Windows"],"autosuggest":"S0346 - OceanSalt"},{"software_id":"S0347","software_name":"AuditCred","platforms":["Windows"],"autosuggest":"S0347 - AuditCred"},{"software_id":"S0348","software_name":"Cardinal RAT","platforms":["Windows"],"autosuggest":"S0348 - Cardinal RAT"},{"software_id":"S0349","software_name":"LaZagne","platforms":["Linux","Windows","macOS"],"autosuggest":"S0349 - LaZagne"},{"software_id":"S0350","software_name":"zwShell","platforms":["Windows"],"autosuggest":"S0350 - zwShell"},{"software_id":"S0351","software_name":"Cannon","platforms":["Windows"],"autosuggest":"S0351 - Cannon"},{"software_id":"S0352","software_name":"OSX_OCEANLOTUS.D","platforms":["macOS"],"autosuggest":"S0352 - OSX_OCEANLOTUS.D"},{"software_id":"S0353","software_name":"NOKKI","platforms":["Windows"],"autosuggest":"S0353 - NOKKI"},{"software_id":"S0354","software_name":"Denis","platforms":["Windows"],"autosuggest":"S0354 - Denis"},{"software_id":"S0355","software_name":"Final1stspy","platforms":["Windows"],"autosuggest":"S0355 - Final1stspy"},{"software_id":"S0356","software_name":"KONNI","platforms":["Windows"],"autosuggest":"S0356 - KONNI"},{"software_id":"S0357","software_name":"Impacket","platforms":["Linux","Windows","macOS"],"autosuggest":"S0357 - Impacket"},{"software_id":"S0358","software_name":"Ruler","platforms":["Office 365","Windows"],"autosuggest":"S0358 - Ruler"},{"software_id":"S0359","software_name":"Nltest","platforms":["Windows"],"autosuggest":"S0359 - Nltest"},{"software_id":"S0360","software_name":"BONDUPDATER","platforms":["Windows"],"autosuggest":"S0360 - BONDUPDATER"},{"software_id":"S0361","software_name":"Expand","platforms":["Windows"],"autosuggest":"S0361 - Expand"},{"software_id":"S0362","software_name":"Linux Rabbit","platforms":["Linux"],"autosuggest":"S0362 - Linux Rabbit"},{"software_id":"S0363","software_name":"Empire","platforms":["Linux","Windows","macOS"],"autosuggest":"S0363 - Empire"},{"software_id":"S0364","software_name":"RawDisk","platforms":["Windows"],"autosuggest":"S0364 - RawDisk"},{"software_id":"S0365","software_name":"Olympic Destroyer","platforms":["Windows"],"autosuggest":"S0365 - Olympic Destroyer"},{"software_id":"S0366","software_name":"WannaCry","platforms":["Windows"],"autosuggest":"S0366 - WannaCry"},{"software_id":"S0367","software_name":"Emotet","platforms":["Windows"],"autosuggest":"S0367 - Emotet"},{"software_id":"S0368","software_name":"NotPetya","platforms":["Windows"],"autosuggest":"S0368 - NotPetya"},{"software_id":"S0369","software_name":"CoinTicker","platforms":["macOS"],"autosuggest":"S0369 - CoinTicker"},{"software_id":"S0370","software_name":"SamSam","platforms":["Windows"],"autosuggest":"S0370 - SamSam"},{"software_id":"S0371","software_name":"POWERTON","platforms":["Windows"],"autosuggest":"S0371 - POWERTON"},{"software_id":"S0372","software_name":"LockerGoga","platforms":["Windows"],"autosuggest":"S0372 - LockerGoga"},{"software_id":"S0373","software_name":"Astaroth","platforms":["Windows"],"autosuggest":"S0373 - Astaroth"},{"software_id":"S0374","software_name":"SpeakUp","platforms":["Linux","macOS"],"autosuggest":"S0374 - SpeakUp"},{"software_id":"S0375","software_name":"Remexi","platforms":["Windows"],"autosuggest":"S0375 - Remexi"},{"software_id":"S0376","software_name":"HOPLIGHT","platforms":["Windows"],"autosuggest":"S0376 - HOPLIGHT"},{"software_id":"S0377","software_name":"Ebury","platforms":["Linux"],"autosuggest":"S0377 - Ebury"},{"software_id":"S0378","software_name":"PoshC2","platforms":["Linux","Windows","macOS"],"autosuggest":"S0378 - PoshC2"},{"software_id":"S0379","software_name":"Revenge RAT","platforms":["Windows"],"autosuggest":"S0379 - Revenge RAT"},{"software_id":"S0380","software_name":"StoneDrill","platforms":["Windows"],"autosuggest":"S0380 - StoneDrill"},{"software_id":"S0381","software_name":"FlawedAmmyy","platforms":["Windows"],"autosuggest":"S0381 - FlawedAmmyy"},{"software_id":"S0382","software_name":"ServHelper","platforms":["Windows"],"autosuggest":"S0382 - ServHelper"},{"software_id":"S0383","software_name":"FlawedGrace","platforms":["Windows"],"autosuggest":"S0383 - FlawedGrace"},{"software_id":"S0384","software_name":"Dridex","platforms":["Windows"],"autosuggest":"S0384 - Dridex"},{"software_id":"S0385","software_name":"njRAT","platforms":["Windows"],"autosuggest":"S0385 - njRAT"},{"software_id":"S0386","software_name":"Ursnif","platforms":["Windows"],"autosuggest":"S0386 - Ursnif"},{"software_id":"S0387","software_name":"KeyBoy","platforms":["Windows"],"autosuggest":"S0387 - KeyBoy"},{"software_id":"S0388","software_name":"YAHOYAH","platforms":["Windows"],"autosuggest":"S0388 - YAHOYAH"},{"software_id":"S0389","software_name":"JCry","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0389 - JCry"},{"software_id":"S0390","software_name":"SQLRat","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0390 - SQLRat"},{"software_id":"S0391","software_name":"HAWKBALL","platforms":["Windows"],"autosuggest":"S0391 - HAWKBALL"},{"software_id":"S0393","software_name":"PowerStallion","platforms":["Windows"],"autosuggest":"S0393 - PowerStallion"},{"software_id":"S0394","software_name":"HiddenWasp","platforms":["Linux"],"autosuggest":"S0394 - HiddenWasp"},{"software_id":"S0395","software_name":"LightNeuron","platforms":["Linux","Windows"],"autosuggest":"S0395 - LightNeuron"},{"software_id":"S0396","software_name":"EvilBunny","platforms":["Windows"],"autosuggest":"S0396 - EvilBunny"},{"software_id":"S0397","software_name":"LoJax","platforms":["Windows"],"autosuggest":"S0397 - LoJax"},{"software_id":"S0398","software_name":"HyperBro","platforms":["Windows"],"autosuggest":"S0398 - HyperBro"},{"software_id":"S0400","software_name":"RobbinHood","platforms":["Windows"],"autosuggest":"S0400 - RobbinHood"},{"software_id":"S0401","software_name":"Exaramel for Linux","platforms":["Linux"],"autosuggest":"S0401 - Exaramel for Linux"},{"software_id":"S0402","software_name":"OSX/Shlayer","platforms":["macOS"],"autosuggest":"S0402 - OSX/Shlayer"},{"software_id":"S0404","software_name":"esentutl","platforms":["Windows"],"autosuggest":"S0404 - esentutl"},{"software_id":"S0409","software_name":"Machete","platforms":["Windows"],"autosuggest":"S0409 - Machete"},{"software_id":"S0410","software_name":"Fysbis","platforms":["Linux"],"autosuggest":"S0410 - Fysbis"},{"software_id":"S0412","software_name":"ZxShell","platforms":["Windows"],"autosuggest":"S0412 - ZxShell"},{"software_id":"S0413","software_name":"MailSniper","platforms":["Azure AD","Office 365","Windows"],"autosuggest":"S0413 - MailSniper"},{"software_id":"S0414","software_name":"BabyShark","platforms":["Windows"],"autosuggest":"S0414 - BabyShark"},{"software_id":"S0415","software_name":"BOOSTWRITE","platforms":["Windows"],"autosuggest":"S0415 - BOOSTWRITE"},{"software_id":"S0416","software_name":"RDFSNIFFER","platforms":["Windows"],"autosuggest":"S0416 - RDFSNIFFER"},{"software_id":"S0417","software_name":"GRIFFON","platforms":["Windows"],"autosuggest":"S0417 - GRIFFON"},{"software_id":"S0428","software_name":"PoetRAT","platforms":["Windows"],"autosuggest":"S0428 - PoetRAT"},{"software_id":"S0430","software_name":"Winnti for Linux","platforms":["Linux"],"autosuggest":"S0430 - Winnti for Linux"},{"software_id":"S0431","software_name":"HotCroissant","platforms":["Windows"],"autosuggest":"S0431 - HotCroissant"},{"software_id":"S0433","software_name":"Rifdoor","platforms":["Windows"],"autosuggest":"S0433 - Rifdoor"},{"software_id":"S0434","software_name":"Imminent Monitor","platforms":["Windows"],"autosuggest":"S0434 - Imminent Monitor"},{"software_id":"S0435","software_name":"PLEAD","platforms":["Windows"],"autosuggest":"S0435 - PLEAD"},{"software_id":"S0436","software_name":"TSCookie","platforms":["Windows"],"autosuggest":"S0436 - TSCookie"},{"software_id":"S0437","software_name":"Kivars","platforms":["Windows"],"autosuggest":"S0437 - Kivars"},{"software_id":"S0438","software_name":"Attor","platforms":["Windows"],"autosuggest":"S0438 - Attor"},{"software_id":"S0439","software_name":"Okrum","platforms":["Windows"],"autosuggest":"S0439 - Okrum"},{"software_id":"S0441","software_name":"PowerShower","platforms":["Windows"],"autosuggest":"S0441 - PowerShower"},{"software_id":"S0442","software_name":"VBShower","platforms":["Windows"],"autosuggest":"S0442 - VBShower"},{"software_id":"S0443","software_name":"MESSAGETAP","platforms":["Linux"],"autosuggest":"S0443 - MESSAGETAP"},{"software_id":"S0444","software_name":"ShimRat","platforms":["Windows"],"autosuggest":"S0444 - ShimRat"},{"software_id":"S0445","software_name":"ShimRatReporter","platforms":["Windows"],"autosuggest":"S0445 - ShimRatReporter"},{"software_id":"S0446","software_name":"Ryuk","platforms":["Windows"],"autosuggest":"S0446 - Ryuk"},{"software_id":"S0447","software_name":"Lokibot","platforms":["Windows"],"autosuggest":"S0447 - Lokibot"},{"software_id":"S0448","software_name":"Rising Sun","platforms":["Windows"],"autosuggest":"S0448 - Rising Sun"},{"software_id":"S0449","software_name":"Maze","platforms":["Windows"],"autosuggest":"S0449 - Maze"},{"software_id":"S0450","software_name":"SHARPSTATS","platforms":["Windows"],"autosuggest":"S0450 - SHARPSTATS"},{"software_id":"S0451","software_name":"LoudMiner","platforms":["Windows","macOS"],"autosuggest":"S0451 - LoudMiner"},{"software_id":"S0452","software_name":"USBferry","platforms":["Windows"],"autosuggest":"S0452 - USBferry"},{"software_id":"S0453","software_name":"Pony","platforms":["Windows"],"autosuggest":"S0453 - Pony"},{"software_id":"S0454","software_name":"Cadelspy","platforms":["Windows"],"autosuggest":"S0454 - Cadelspy"},{"software_id":"S0455","software_name":"Metamorfo","platforms":["Windows"],"autosuggest":"S0455 - Metamorfo"},{"software_id":"S0456","software_name":"Aria-body","platforms":["Windows"],"autosuggest":"S0456 - Aria-body"},{"software_id":"S0457","software_name":"Netwalker","platforms":["Windows"],"autosuggest":"S0457 - Netwalker"},{"software_id":"S0458","software_name":"Ramsay","platforms":["Windows"],"autosuggest":"S0458 - Ramsay"},{"software_id":"S0459","software_name":"MechaFlounder","platforms":["Windows"],"autosuggest":"S0459 - MechaFlounder"},{"software_id":"S0460","software_name":"Get2","platforms":["Windows"],"autosuggest":"S0460 - Get2"},{"software_id":"S0461","software_name":"SDBot","platforms":["Windows"],"autosuggest":"S0461 - SDBot"},{"software_id":"S0462","software_name":"CARROTBAT","platforms":["Windows"],"autosuggest":"S0462 - CARROTBAT"},{"software_id":"S0464","software_name":"SYSCON","platforms":["Windows"],"autosuggest":"S0464 - SYSCON"},{"software_id":"S0465","software_name":"CARROTBALL","platforms":["Windows"],"autosuggest":"S0465 - CARROTBALL"},{"software_id":"S0466","software_name":"WindTail","platforms":["macOS"],"autosuggest":"S0466 - WindTail"},{"software_id":"S0467","software_name":"TajMahal","platforms":["Windows"],"autosuggest":"S0467 - TajMahal"},{"software_id":"S0468","software_name":"Skidmap","platforms":["Linux"],"autosuggest":"S0468 - Skidmap"},{"software_id":"S0469","software_name":"ABK","platforms":["Windows"],"autosuggest":"S0469 - ABK"},{"software_id":"S0470","software_name":"BBK","platforms":["Windows"],"autosuggest":"S0470 - BBK"},{"software_id":"S0471","software_name":"build_downer","platforms":["Windows"],"autosuggest":"S0471 - build_downer"},{"software_id":"S0472","software_name":"down_new","platforms":["Windows"],"autosuggest":"S0472 - down_new"},{"software_id":"S0473","software_name":"Avenger","platforms":["Windows"],"autosuggest":"S0473 - Avenger"},{"software_id":"S0475","software_name":"BackConfig","platforms":["Windows"],"autosuggest":"S0475 - BackConfig"},{"software_id":"S0476","software_name":"Valak","platforms":["Windows"],"autosuggest":"S0476 - Valak"},{"software_id":"S0477","software_name":"Goopy","platforms":["Windows"],"autosuggest":"S0477 - Goopy"},{"software_id":"S0481","software_name":"Ragnar Locker","platforms":["Windows"],"autosuggest":"S0481 - Ragnar Locker"},{"software_id":"S0482","software_name":"Bundlore","platforms":["macOS"],"autosuggest":"S0482 - Bundlore"},{"software_id":"S0483","software_name":"IcedID","platforms":["Windows"],"autosuggest":"S0483 - IcedID"},{"software_id":"S0484","software_name":"Carberp","platforms":["Windows"],"autosuggest":"S0484 - Carberp"},{"software_id":"S0486","software_name":"Bonadan","platforms":["Linux"],"autosuggest":"S0486 - Bonadan"},{"software_id":"S0487","software_name":"Kessel","platforms":["Linux"],"autosuggest":"S0487 - Kessel"},{"software_id":"S0488","software_name":"CrackMapExec","platforms":["Windows"],"autosuggest":"S0488 - CrackMapExec"},{"software_id":"S0491","software_name":"StrongPity","platforms":["Windows"],"autosuggest":"S0491 - StrongPity"},{"software_id":"S0492","software_name":"CookieMiner","platforms":["macOS"],"autosuggest":"S0492 - CookieMiner"},{"software_id":"S0493","software_name":"GoldenSpy","platforms":["Windows"],"autosuggest":"S0493 - GoldenSpy"},{"software_id":"S0495","software_name":"RDAT","platforms":["Windows"],"autosuggest":"S0495 - RDAT"},{"software_id":"S0496","software_name":"REvil","platforms":["Windows"],"autosuggest":"S0496 - REvil"},{"software_id":"S0497","software_name":"Dacls","platforms":["Linux","Windows","macOS"],"autosuggest":"S0497 - Dacls"},{"software_id":"S0498","software_name":"Cryptoistic","platforms":["macOS"],"autosuggest":"S0498 - Cryptoistic"},{"software_id":"S0499","software_name":"Hancitor","platforms":["Windows"],"autosuggest":"S0499 - Hancitor"},{"software_id":"S0500","software_name":"MCMD","platforms":["Windows"],"autosuggest":"S0500 - MCMD"},{"software_id":"S0501","software_name":"PipeMon","platforms":["Windows"],"autosuggest":"S0501 - PipeMon"},{"software_id":"S0502","software_name":"Drovorub","platforms":["Linux"],"autosuggest":"S0502 - Drovorub"},{"software_id":"S0503","software_name":"FrameworkPOS","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0503 - FrameworkPOS"},{"software_id":"S0504","software_name":"Anchor","platforms":["Linux","Windows"],"autosuggest":"S0504 - Anchor"},{"software_id":"S0508","software_name":"Ngrok","platforms":["Windows"],"autosuggest":"S0508 - Ngrok"},{"software_id":"S0511","software_name":"RegDuke","platforms":["Windows"],"autosuggest":"S0511 - RegDuke"},{"software_id":"S0512","software_name":"FatDuke","platforms":["Windows"],"autosuggest":"S0512 - FatDuke"},{"software_id":"S0514","software_name":"WellMess","platforms":["Windows"],"autosuggest":"S0514 - WellMess"},{"software_id":"S0515","software_name":"WellMail","platforms":["Windows"],"autosuggest":"S0515 - WellMail"},{"software_id":"S0516","software_name":"SoreFang","platforms":["Windows"],"autosuggest":"S0516 - SoreFang"},{"software_id":"S0517","software_name":"Pillowmint","platforms":["Windows"],"autosuggest":"S0517 - Pillowmint"},{"software_id":"S0518","software_name":"PolyglotDuke","platforms":["Windows"],"autosuggest":"S0518 - PolyglotDuke"},{"software_id":"S0519","software_name":"SYNful Knock","platforms":["Network"],"autosuggest":"S0519 - SYNful Knock"}]')},be87:function(e,t,s){},f0fa:function(e,t,s){"use strict";var a=s("18f9"),i=s.n(a);i.a}}); -//# sourceMappingURL=app.6dd397e3.js.map \ No newline at end of file +(function(e){function t(t){for(var a,n,r=t[0],l=t[1],u=t[2],d=0,m=[];d{e.preventDefault(),e.returnValue=""})}},u=l,c=s("2877"),d=Object(c["a"])(u,n,r,!1,null,null,null),m=d.exports,f=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"wrapper"},[s("side-bar",[s("template",{slot:"links"},[s("sidebar-link",{attrs:{to:"/home",name:"Home",icon:"tim-icons icon-bank"}}),s("sidebar-link",{attrs:{to:"/datasources",name:"Data sources",icon:"tim-icons icon-coins"}}),s("sidebar-link",{attrs:{to:"/techniques",name:"Techniques",icon:"tim-icons icon-zoom-split"}}),s("sidebar-link",{attrs:{to:"/groups",name:"Groups",icon:"tim-icons icon-single-02"}})],1)],2),s("div",{staticClass:"main-panel"},[s("dashboard-content",{nativeOn:{click:function(t){return e.toggleSidebar(t)}}}),s("content-footer")],1)],1)},p=[],g=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("footer",{staticClass:"footer"},[s("div",{staticClass:"container-fluid"},[s("div",{staticClass:"copyright"},[e._v(" © "+e._s(e.year)+" made with "),s("i",{staticClass:"tim-icons icon-heart-2"}),e._v(" by "),s("a",{attrs:{href:"https://www.binarcode.com",target:"_blank",rel:"noopener"}},[e._v("Binar Code")]),e._v(" & "),s("a",{attrs:{href:"https://www.creative-tim.com",target:"_blank",rel:"noopener"}},[e._v("Creative Tim")]),e._v(" for a better web. ")])])])},h=[],_={data(){return{year:(new Date).getFullYear()}}},w=_,S=Object(c["a"])(w,g,h,!1,null,null,null),T=S.exports,y=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"content",attrs:{id:"customcontent"}},[s("fade-transition",{attrs:{duration:100,mode:"out-in"}},[s("router-view")],1)],1)},v=[],q=s("7c76"),b={components:{FadeTransition:q["a"]}},C=b,W=Object(c["a"])(C,y,v,!1,null,null,null),k=W.exports,A={components:{ContentFooter:T,DashboardContent:k},methods:{toggleSidebar(){this.$sidebar.showSidebar&&this.$sidebar.displaySidebar(!1)}}},O=A,x=Object(c["a"])(O,f,p,!1,null,null,null),L=x.exports,D=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},E=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-bank pb-md-2"}),e._v(" Home")])]),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Introduction")]),s("p",[e._v(" The DeTT&CT data source, technique and group YAML files can be edited using this editor. ")]),s("p",{staticClass:"mt-md-3"},[e._v(" Usefull links on the Wiki: "),s("ul",[s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Getting-started",target:"_blank"}},[e._v("Getting started with DeTT&CT")])]),s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/dettect-editor",target:"_blank"}},[e._v("DeTT&CT Editor")])]),s("li",[s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor",target:"_blank"}},[e._v("Future developments")])])])])]),s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Client-side and saving results")]),s("p",[e._v(" The DeTT&CT Editor is entirely client-side. Therefore, the content of your YAML file is not send to a server. ")]),s("p",{staticClass:"mt-md-2"},[e._v("It is important to take into account that modifed YAML files should be download using the button "),s("strong",[e._v("Save YAML file")]),e._v(", to save the results.")])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Keyboard shortcuts")]),s("p",[s("ul",[s("li",[e._v("Ctrl+Shift+Up/Down: go to the next or previous item when editing a data source or technique administration YAML file.")])])]),s("h4",[e._v("Limitations")]),s("p",[e._v(" With a few exceptions, all key-value pairs within a data source, techniques or group YAML file can be edited. More info can be found "),s("a",{attrs:{href:"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor",target:"_blank"}},[e._v("here")]),e._v(". ")]),s("p",{staticClass:"mt-md-2"},[e._v(" Please note that comments ("),s("code",[e._v("#")]),e._v(") within your YAML files are not preserved due to lack of support in the YAML JavaScript library. Put your comments within a key-value pair to keep them. For example: "),s("code",[e._v("my-comment-1: your comment goes here")]),e._v(". ")])]),s("div",{staticClass:"col-md-5"},[s("h4",[e._v("Authors and contributions")]),s("p",[e._v("DeTT&CT is developed and maintained by "),s("a",{attrs:{href:"https://github.com/marcusbakker",target:"_blank"}},[e._v("Marcus Bakker")]),e._v(" (Twitter: "),s("a",{attrs:{href:"https://twitter.com/Bakk3rM",target:"_blank"}},[e._v("@Bakk3rM")]),e._v(") and "),s("a",{attrs:{href:"https://github.com/rubinatorz",target:"_blank"}},[e._v("Ruben Bouman")]),e._v(" (Twitter: "),s("a",{attrs:{href:"https://twitter.com/rubenb_2/",target:"_blank"}},[e._v("@rubenb_2")]),e._v("). Feel free to contact, DMs are open.")]),s("p",{staticClass:"mt-md-2"},[e._v(" We welcome contributions! Contributions can be both in code, as well as in ideas you might have for further development, usability improvements, etc.")])])])])])])])}],P={name:"groups-page",data(){return{}}},I=P,R=Object(c["a"])(I,D,E,!1,null,null,null),M=R.exports,N=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[null!=e.doc?s("div",{staticClass:"back-to-top"},[s("label",{staticClass:"cursor-pointer",attrs:{title:"Back to top"},on:{click:e.navigateToTop}},[s("icons",{attrs:{icon:"arrow-up"}})],1)]):e._e(),s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[e._m(0),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn mr-md-3",attrs:{type:"button"},on:{click:e.askNewFile}},[s("icons",{attrs:{icon:"file-empty"}}),e._v(" New file ")],1),s("label",{staticClass:"custom-file-upload"},[s("icons",{attrs:{icon:"file"}}),e._v(" Select YAML file "),s("file-reader",{attrs:{setFileNameFn:e.setFileName,id:"dsFileReader"},on:{load:function(t){return e.readFile(t)}}})],1),e.fileChanged?s("label",{staticClass:"pl-2"},[s("icons",{attrs:{icon:"text-balloon"}}),e._v(" You have unsaved changes. You may want to save the file to preserve your changes.")],1):e._e()])]),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col"},[s("file-details",{attrs:{filename:e.filename,doc:e.doc,platforms:e.platforms}})],1)]):e._e(),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col card-text"},[s("button",{staticClass:"btn",attrs:{type:"button"},on:{click:function(t){return e.downloadYaml("data_sources","data_source_name")}}},[s("icons",{attrs:{icon:"save"}}),e._v(" Save YAML file ")],1)])]):e._e()])])])]),null!=e.doc?s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("p",[s("button",{staticClass:"btn btn-secondary",attrs:{type:"button"},on:{click:function(t){return e.addItem("data_sources","data_source_name",e.emptyDataSourceObject)}}},[s("icons",{attrs:{icon:"plus"}}),e._v(" Add data source ")],1)])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("base-input",{attrs:{placeholder:"filter"},model:{value:e.filters.filter.value,callback:function(t){e.$set(e.filters.filter,"value",t)},expression:"filters.filter.value"}}),s("v-table",{ref:"data_table",staticClass:"table-custom",attrs:{data:e.doc.data_sources,selectedClass:"table-selected-custom",filters:e.filters},on:{selectionChanged:function(t){return e.selectItem(t)}},scopedSlots:e._u([{key:"body",fn:function(t){var a=t.displayData;return s("tbody",{},e._l(a,(function(t,a){return s("v-tr",{key:t.data_source_name,ref:"data_table_rows",refInFor:!0,attrs:{row:t}},[s("td",[e._v(e._s(t.data_source_name))]),s("td",[e._v(e._s(t.date_registered))]),s("td",[e._v(e._s(e._f("listToString")(t.products)))]),s("td",[s("i",{staticClass:"tim-icons icon-trash-simple cursor-pointer",attrs:{idx:a,data_source_name:t.data_source_name},on:{click:function(t){return e.deleteDataSource(t)}}})])])})),1)}}],null,!1,2659452512)},[s("thead",{attrs:{slot:"head"},slot:"head"},[s("v-th",{attrs:{sortKey:"data_source_name",defaultSort:"asc",width:"350"}},[e._v("Name")]),s("v-th",{attrs:{sortKey:"date_registered",width:"200"}},[e._v("Date registered")]),s("v-th",{attrs:{sortKey:"products",width:"350"}},[e._v("Products")]),s("th")],1)])],1)])])],1),s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[null!=e.getSelectedItem()?s("data-source-detail",{attrs:{dataSource:e.getSelectedItem(),allDataSources:e.doc.data_sources,dqHelpText:e.dqHelpText,dsHelpText:e.dsHelpText,prevDataSourceQuality:e.prevDataSourceQuality,navigateItem:e.navigateItem}}):e._e()],1)],1)]):e._e()])},j=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-coins"}),e._v(" Data Sources")])])}],B=function(){var e=this,t=e.$createElement,s=e._self._c||t;return null!=e.dataSource?s("div",{staticClass:"card"},[s("auto-suggest-title",{attrs:{title:"Data source",item:e.dataSource,itemIdName:"data_source_name",allItems:e.allDataSources,suggestionList:e.dataSourceSuggestionList,navigateItem:e.navigateItem}}),s("div",{staticClass:"row mt-md-3"},[e._m(0),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.helptextDataSourceKVPairs=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.helptextDataSourceKVPairs,id:"dsModal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.helptextDataSourceKVPairs=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v("Data source key-value pairs")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.dsHelpText}})],1)])],1),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-1"},[s("date-picker",{attrs:{date:e.dataSource.date_registered,name:"Date registered"},on:{dateUpdated:function(t){e.dataSource.date_registered=t}}})],1),s("div",{staticClass:"col-md-4 pr-md-1"},[s("date-picker",{attrs:{date:e.dataSource.date_connected,name:"Date connected"},on:{dateUpdated:function(t){e.dataSource.date_connected=t}}})],1)]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col-md-4 pr-md-1"},[s("toggle-button",{attrs:{state:e.dataSource.available_for_data_analytics,name:"Available for data analytics"},on:{toggleButtonUpdated:function(t){e.dataSource.available_for_data_analytics=t}}})],1),s("div",{staticClass:"col-md-5 pr-md-1"},[s("toggle-button",{attrs:{state:e.dsEnabled,name:"Data source enabled",helpText:"Enables a data source by setting all data quality scores to 1, or restore to the previous value. Disables a data source by setting al data quality scores to 0."},on:{toggleButtonUpdated:e.toggleEnabled}})],1)]),s("list-editor",{staticClass:"mt-md-2",attrs:{list:e.dataSource.products,name:"Products",placeholder:"Products"}}),s("div",{staticClass:"row mt-md-0"},[s("div",{staticClass:"col-md-11 form-group pr-md-2"},[s("label",{staticClass:"card"},[e._v("Comment")]),s("extended-textarea",{attrs:{data_object:e.dataSource,data_field:"comment",id:"datasource",rows:"4",cb_function:e.editCommentCallback}})],1)]),s("div",{staticClass:"row mt-md-3 col-md-5"},[e._m(1),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.helptextDataQuality=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.helptextDataQuality,id:"dqModal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.helptextDataQuality=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v("Scoring data quality")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.dqHelpText}})],1)])],1),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Device completeness",score:e.dataSource.data_quality.device_completeness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.device_completeness=t}}})],1),s("div",{staticClass:"col-md-5 ml-md-3"},[s("score-slider",{attrs:{name:"Data field completeness",score:e.dataSource.data_quality.data_field_completeness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.data_field_completeness=t}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Timeliness",score:e.dataSource.data_quality.timeliness,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.timeliness=t}}})],1),s("div",{staticClass:"col-md-5 ml-md-3"},[s("score-slider",{attrs:{name:"Consistency",score:e.dataSource.data_quality.consistency,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.consistency=t}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-5"},[s("score-slider",{attrs:{name:"Retention",score:e.dataSource.data_quality.retention,markData:e.dataQualityScores,markDataTooltip:e.dataQualityTooltip},on:{scoreUpdated:function(t){e.dataSource.data_quality.retention=t}}})],1)]),s("custom-key-value-editor",{staticClass:"mt-md-5",attrs:{item:e.dataSource,defaultKeys:e.dataSourceDefaultKeys}})],1):e._e()},H=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title mb-md-3"},[e._v("Data source key-value pairs")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("h5",{staticClass:"title mb-md-3"},[e._v("Data quality")])])}],F=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v(e._s(e.name))])]),""!=e.helpText?s("div",{staticClass:"col ml-md-0 pb-md-2"},[s("icons",{attrs:{icon:"help",tooltip:e.helpText}})],1):e._e()]),e._l(e.list,(function(t,a){return s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-8 pr-md-0"},[s("base-input",{attrs:{value:t,idx:a},on:{change:function(t){return e.updateItem(t)}}})],1),s("div",{staticClass:"col mt-md-1"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",attrs:{idx:a},on:{click:function(t){return e.deleteItem(t)}}})])])})),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-8 pr-md-0 form-group"},[s("base-input",{attrs:{placeholder:e.placeholder},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addItem(t)}},model:{value:e.newItem,callback:function(t){e.newItem=t},expression:"newItem"}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addItem}},[e._v(" Add ")])])])],2)},G=[],z=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticStyle:{display:"inline-block"}},["arrow-up"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("line",{attrs:{x1:"12",y1:"19",x2:"12",y2:"5"}}),s("polyline",{attrs:{points:"5 12 12 5 19 12"}})]):e._e(),"arrow-down"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("line",{attrs:{x1:"12",y1:"5",x2:"12",y2:"19"}}),s("polyline",{attrs:{points:"19 12 12 19 5 12"}})]):e._e(),"file"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}}),s("polyline",{attrs:{points:"14 2 14 8 20 8"}}),s("line",{attrs:{x1:"16",y1:"13",x2:"8",y2:"13"}}),s("line",{attrs:{x1:"16",y1:"17",x2:"8",y2:"17"}}),s("polyline",{attrs:{points:"10 9 9 9 8 9"}})]):e._e(),"file-empty"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"}}),s("polyline",{attrs:{points:"13 2 13 9 20 9"}})]):e._e(),"text-balloon"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}}),s("line",{attrs:{x1:"12",y1:"9",x2:"12",y2:"13"}}),s("line",{attrs:{x1:"12",y1:"17",x2:"12.01",y2:"17"}})]):e._e(),"save"==e.icon?s("svg",{staticClass:"css-i6dzq1",staticStyle:{"margin-top":"-3px"},attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("path",{attrs:{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"}}),s("polyline",{attrs:{points:"17 21 17 13 7 13 7 21"}}),s("polyline",{attrs:{points:"7 3 7 8 15 8"}})]):e._e(),"plus"==e.icon?s("svg",{staticClass:"css-i6dzq1",attrs:{viewBox:"0 0 24 24",width:"24",height:"24",stroke:"currentColor","stroke-width":"2",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[s("circle",{attrs:{cx:"12",cy:"12",r:"10"}}),s("line",{attrs:{x1:"12",y1:"8",x2:"12",y2:"16"}}),s("line",{attrs:{x1:"8",y1:"12",x2:"16",y2:"12"}})]):e._e(),"help"==e.icon?s("svg",{directives:[{name:"tooltip",rawName:"v-tooltip.top",value:e.tooltip,expression:"tooltip",modifiers:{top:!0}}],staticClass:"cursor-pointer",staticStyle:{"margin-top":"-4px",fill:"#fff"},attrs:{viewBox:"0 0 512 512",width:"24",height:"24","stroke-width":"1px"},on:{click:function(t){e.showHelpText=!0}}},[s("path",{attrs:{d:"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z"}}),s("path",{attrs:{d:"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z"}})]):e._e()])},$=[],K={props:{icon:{type:String,required:!0},tooltip:{type:String,required:!1,default:""}},methods:{}},U=K,Y=Object(c["a"])(U,z,$,!1,null,null,null),V=Y.exports,Q=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},J=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[e._v("Welcome to "),s("b",[e._v("Black Dashboard")]),e._v(" - a beautiful freebie for every web developer.")])}],X={name:"notification-template"},Z=X,ee=Object(c["a"])(Z,Q,J,!1,null,null,null),te=ee.exports;const se={data(){return{}},methods:{notifyInfo(e,t){this.$notify({component:te,icon:"tim-icons icon-zoom-split",horizontalAlign:"right",verticalAlign:"top",type:"info",timeout:1e4,title:e,message:t})},notifyInfoWithCallback(e,t,s,a,i){this.$notify({component:te,icon:"tim-icons icon-trash-simple",horizontalAlign:"right",verticalAlign:"top",type:"info",timeout:1e4,title:e,message:t,cb_function:s,cb_function_text:a,cb_function_key:i})},notifyDanger(e,t){this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"danger",timeout:1e4,title:e,message:t})},notifyDangerWithCallback(e,t,s,a,i,o){let n=1e4;o&&(n=0),this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"danger",timeout:n,title:e,message:t,cb_function:s,cb_function_text:a,cb_function_key:i})},notifyWarning(e,t){this.$notify({component:te,icon:"tim-icons icon-alert-circle-exc",horizontalAlign:"right",verticalAlign:"top",type:"warning",timeout:1e4,title:e,message:t})}}};var ae={data(){return{caseInsensitive:s("7232"),newItem:""}},mixins:[se],components:{Icons:V},props:{list:{type:Array,required:!0},name:{type:String,required:!0},placeholder:{type:String,required:!0},helpText:{type:String,default:""},externalListToValidate:{type:Array,default:()=>[]},notifyText:{type:String,required:!1,default:"The value 'KEYNAME' is already part of the list. Duplicate entries are not allowed."}},methods:{addItem(){this.caseInsensitive(this.list).includes(this.newItem)||this.caseInsensitive(this.externalListToValidate).includes(this.newItem)?this.notifyDuplicate(this.newItem):""!=this.newItem&&(this.list.push(this.newItem),this.newItem="")},updateItem(e){let t=e.target.value;this.caseInsensitive(this.list).includes(t)||this.caseInsensitive(this.externalListToValidate).includes(t)?this.notifyDuplicate(t):""!=t&&this.$set(this.list,e.target.getAttribute("idx"),t)},deleteItem(e){let t=e.target.getAttribute("idx");this.list.splice(t,1)},notifyDuplicate(e){let t="Duplicate value",s=this.notifyText.replace("KEYNAME",e);this.notifyWarning(t,s)}}},ie=ae,oe=Object(c["a"])(ie,F,G,!1,null,null,null),ne=oe.exports,re=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("label",{staticClass:"card"},[e._v(e._s(e.name))]):e._e(),s("datepicker",{attrs:{value:e.date,format:"yyyy-MM-dd","monday-first":!0,typeable:!0,"input-class":"form-control"},on:{selected:e.updateDate}})],1)},le=[],ue=s("fa33"),ce=s("c1df"),de=s.n(ce),me={props:{date:{type:[String,Date],default:""},name:{type:String,required:!0},showLabel:{type:Boolean,required:!1,default:!0}},methods:{updateDate(e){let t=de()(e,"DD/MM/YYYY").format("YYYY-MM-DD");"Invalid date"!=t&&this.$emit("dateUpdated",t)}},components:{Datepicker:ue["a"]}},fe=me,pe=Object(c["a"])(fe,re,le,!1,null,null,null),ge=pe.exports,he=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("div",{class:e.getDivStyleClass()},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v(e._s(e.name))])]),""!=e.helpText?s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:e.helpText}})],1):e._e()]):e._e(),s("div",{staticClass:"row toggle-button"},[s("div",{staticClass:"col-md-auto"},[s("toggle-button",{attrs:{value:e.state,sync:!0,labels:{checked:"Yes",unchecked:"No"},"font-size":14,height:30,width:95,color:{checked:"#00bf9a",unchecked:"#ff8d72",disabled:"#CCCCCC"}},on:{change:e.switchButton}})],1)])])},_e=[],we=s("f206"),Se={props:{state:{type:Boolean,default:!1},name:{type:String,required:!0},helpText:{type:String,default:""},showLabel:{type:Boolean,required:!1,default:!0},extraPaddingBottom:{type:Boolean,required:!1,default:!0}},methods:{switchButton(e){this.$emit("toggleButtonUpdated",e.value)},getDivStyleClass(){return this.extraPaddingBottom?"row pb-md-2":"row"}},components:{ToggleButton:we["ToggleButton"],Icons:V}},Te=Se,ye=Object(c["a"])(Te,he,_e,!1,null,null,null),ve=ye.exports,qe=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group"},[e.showLabel?s("label",{staticClass:"card"},[e._v(e._s(e.name))]):e._e(),s("vue-slider",{attrs:{value:e.score,dotSize:"18",data:e.markData,"tooltip-formatter":function(t){return e.markDataTooltip[t]},marks:!0,useKeyboard:!0,tooltypeStyle:{"background-color":"#419EF9","border-color":"#419EF9"},processStyle:{"background-color":"#419EF9"},labelStyle:{color:"rgb(255, 255, 255, 0.8)"}},on:{change:e.updateScore}})],1)},be=[],Ce=s("4971"),We=s.n(Ce),ke=(s("24df"),{props:{score:{type:Number,required:!0},markData:{type:Array,required:!0},markDataTooltip:{type:Object,required:!0},name:{type:String,required:!0},showLabel:{type:Boolean,required:!1,default:!0}},methods:{updateScore(e){this.$emit("scoreUpdated",e)}},components:{VueSlider:We.a}}),Ae=ke,Oe=Object(c["a"])(Ae,qe,be,!1,null,null,null),xe=Oe.exports,Le=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[e._m(0),s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:"It's possible to have custom key-value pairs in your YAML file. The Editor supports numbers and string for the value."}})],1),e.useInModal?s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){return e.$bvModal.hide(e.modalId)}}},[e._v("×")])]):e._e()]),e._m(1),e._l(e.item,(function(t,a,i){return s("div",{key:i},[e.defaultKeys.includes(a)?e._e():s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-0"},[s("base-input",{attrs:{value:a},on:{change:function(t){return e.updateKey(a,t)}}})],1),s("div",{staticClass:"col-md-6"},[s("base-input",{attrs:{value:e.item[a]},on:{change:function(t){return e.updateValue(a,t)}}})],1),s("div",{staticClass:"col-md-0 mt-md-1"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",on:{click:function(t){return e.deleteProperty(a)}}})])])])})),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4 pr-md-0"},[s("base-input",{attrs:{placeholder:"key"},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addProperty(t)}},model:{value:e.newKey,callback:function(t){e.newKey=t},expression:"newKey"}})],1),s("div",{staticClass:"col-md-5 pr-md-0"},[s("base-input",{attrs:{placeholder:"value"},on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.addProperty(t)},keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:e.addProperty(t)}},model:{value:e.newValue,callback:function(t){e.newValue=t},expression:"newValue"}})],1),s("div",{staticClass:"col-md-2"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addProperty}},[e._v(" Add ")])])])],2)},De=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Custom key-value pairs")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-4"},[s("label",{staticClass:"card"},[e._v("Key")])]),s("div",{staticClass:"col-md-5"},[s("label",{staticClass:"card"},[e._v("Value")])])])}],Ee={data(){return{newKey:"",newValue:"",caseInsensitive:s("7232")}},mixins:[se],components:{Icons:V},props:{item:{type:Object,required:!0},defaultKeys:{type:Array,required:!0},useInModal:{type:Boolean,required:!1,default:!1},modalId:{type:String,required:!1,default:""}},methods:{updateKey(e,t){let s=t.target.value;this.isKeyAllowed(s)&&(this.$set(this.item,s,this.item[e]),this.$delete(this.item,e))},updateValue(e,t){this.item[e]=t.target.value},deleteProperty(e){this.$delete(this.item,e)},addProperty(){""!=this.newKey&&this.isKeyAllowed(this.newKey)&&(this.$set(this.item,this.newKey,this.newValue),this.newKey="",this.newValue="")},isKeyAllowed(e){if(this.caseInsensitive(this.defaultKeys).includes(e)){let t="Reserved key",s="The key '"+e+"' is not allowed for a custom key-value pair.";return this.notifyWarning(t,s),!1}if(this.caseInsensitive(Object.keys(this.item)).includes(e)){let t="Duplicate key",s="The key '"+e+"' is already part of the YAML file. Duplicate entries are not allowed.";return this.notifyWarning(t,s),!1}return!0}}},Pe=Ee,Ie=Object(c["a"])(Pe,Le,De,!1,null,null,null),Re=Ie.exports,Me=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"container-fluid d-flex flex-column"},[e.isNewItem||e.editItem?s("div",[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0 pl-md-0 margin-top-8"},[s("label",[e._v(e._s(e.title))])]),s("vue-simple-suggest",{staticClass:"col-md-7 pl-md-2 pr-md-0",attrs:{value:e.item[e.itemIdName],list:e.filteredSuggestionList,"max-suggestions":0,"filter-by-query":!0,"display-attribute":e.displayAttr,"value-attribute":e.valueAttr,styles:e.autoCompleteStyle},on:{input:function(t){e.tmpItemId=t},blur:e.setItemIdValue}}),s("i",{staticClass:"tim-icons icon-check-2 icon-color icon-padding cursor-pointer",attrs:{id:"checkmark"},on:{click:e.setItemIdValue}})],1)]):s("div",{staticClass:"row flex-fill"},[s("div",{staticClass:"col-md pr-md-0 pl-md-0"},[e.itemTitle?s("span",{staticClass:"card-title",attrs:{id:"detailCard"}},[e._v(e._s(e.item[e.itemTitle.id]+" - "+e.item[e.itemTitle.name]))]):s("span",{staticClass:"card-title",attrs:{id:"detailCard"}},[e._v(e._s(e.item[e.itemIdName]))]),s("i",{staticClass:"tim-icons icon-pencil icon-color icon-padding cursor-pointer",on:{click:function(t){e.editItem=!0}}})]),s("div",[s("label",{staticClass:"cursor-pointer",attrs:{title:"Previous "+e.title.toLowerCase()},on:{click:function(t){return e.navigateItem(!1)}}},[s("icons",{attrs:{icon:"arrow-up"}})],1),s("label",{staticClass:"cursor-pointer",attrs:{title:"Next "+e.title.toLowerCase()},on:{click:function(t){return e.navigateItem(!0)}}},[s("icons",{attrs:{icon:"arrow-down"}})],1)])])])])},Ne=[],je=s("5111");s("c4c9");const Be={data(){return{autoCompleteStyle:{defaultInput:"autocomplete-input",suggestions:"autocomplete-result",suggestItem:"autocomplete-suggest"}}},props:{title:{type:String,required:!0},itemIdName:{type:String,required:!0},suggestionList:{type:Array,required:!0}},computed:{listKnownIDs(){return this.suggestionList.map(e=>e[this.itemIdName])},listKnownIDsForPlatform(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e)))&&e.push(this.suggestionList[t]);return e.map(e=>e[this.itemIdName])}},components:{VueSimpleSuggest:je["a"]}};var He={data(){return{caseInsensitive:s("7232"),tmpItemId:null,checkBoxClicked:!1,editItem:!1}},components:{Icons:V},mixins:[Be,se],props:{item:{type:Object,required:!0},allItems:{type:Array,required:!0},itemTitle:{type:Object,default:null},valueAttr:{type:String,default:""},displayAttr:{type:String,default:""},isAttackEntity:{type:Boolean,default:!1},platforms:{type:Array,default:null},notifyText:{type:String,required:!1,default:"'ID' is an invalid TITLE."},navigateItem:{type:Function,required:!0}},watch:{item(){this.editItem=!1}},methods:{getAttackEntityName(e,t,s){for(let a=0;a0)return;if(!this.tmpItemId.match(/\bT\d{4}(\.\d{3}|)\b/i))return void("checkmark"!=e.target.id&&this.notifyInvalid(this.tmpItemId));let t=this.tmpItemId.match(/\b(T\d{4}(\.\d{3}|))\b/i)[0].toUpperCase();if(!t.startsWith("T"))return void("checkmark"!=e.target.id&&this.notifyInvalid(t));if(this.isDuplicateItem(t)){if("checkmark"!=e.target.id){let e="Duplicate "+this.title.toLowerCase(),s="The "+this.title.toLowerCase()+" '"+t+"' is already part of the YAML administration file. Duplicate entries are not allowed.";this.notifyWarning(e,s)}return}if(this.listKnownIDs.includes(t)){if(!this.listKnownIDsForPlatform.includes(t)&&"checkmark"!=e.target.id){let e="Non-applicable "+this.title.toLowerCase(),s="The "+this.title.toLowerCase()+" "+t+" is not applicable to any of the selected platform(s).";this.notifyWarning(e,s)}}else if("checkmark"!=e.target.id){let e="Unknown "+this.title,s="The "+this.title+" "+t+" is not part of ATT&CK.";this.notifyWarning(e,s)}this.item[this.itemIdName]=t;let s=this.getAttackEntityName(t,"technique_id","technique_name");this.item["technique_name"]=s,this.tmpItemId=null,this.editItem=!1}else if(null!=this.tmpItemId&&""!=this.tmpItemId){if(this.isDuplicateItem(this.tmpItemId)){if("checkmark"!=e.target.id){let e="Duplicate "+this.title.toLowerCase(),t="The "+this.title.toLowerCase()+" '"+this.tmpItemId+"' is already part of the YAML administration file. Duplicate entries are not allowed.";this.notifyWarning(e,t)}return}if(!this.suggestionList.includes(this.tmpItemId)&&"checkmark"!=e.target.id){let e="Non-ATT&CK "+this.title.toLowerCase(),t="The "+this.title.toLowerCase()+" '"+this.tmpItemId+"' is not part of ATT&CK.";this.notifyWarning(e,t)}this.item[this.itemIdName]=this.tmpItemId,this.tmpItemId=null,this.editItem=!1}},notifyInvalid(e){let t="Invalid "+this.title.toLowerCase(),s=this.notifyText.replace("ID",e).replace("TITLE",this.title.toLowerCase());this.notifyWarning(t,s)},isDuplicateItem(e){return!(!this.caseInsensitive(this.allItemsIdValues).includes(e)||this.editItem&&this.caseInsensitive(this.item[this.itemIdName]).equals(e))}},computed:{isNewItem(){return""==this.item[this.itemIdName]},allItemsIdValues(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e))&&!this.allItemsIdValues.includes(this.suggestionList[t][this.valueAttr]))&&e.push(this.suggestionList[t]);return e}return this.suggestionList}}},Fe=He,Ge=Object(c["a"])(Fe,Me,Ne,!1,null,null,null),ze=Ge.exports,$e=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("textarea",{directives:[{name:"model",rawName:"v-model",value:e.data_object[e.data_field],expression:"data_object[data_field]"}],staticClass:"form-control textarea-border pl-md-3 textarea-customstyle",attrs:{rows:e.rows,placeholder:". . ."},domProps:{value:e.data_object[e.data_field]},on:{input:function(t){t.target.composing||e.$set(e.data_object,e.data_field,t.target.value)}}}),s("div",{directives:[{name:"b-modal",rawName:"v-b-modal",value:"comment-modal-"+e.id,expression:"'comment-modal-' + id"}],staticClass:"icon-example",on:{click:function(t){return e.callCbFunction("comment-modal-"+e.id)}}}),s("b-modal",{attrs:{id:"comment-modal-"+e.id,"dialog-class":"modal-edit-small","content-class":"modal-dark-mode","hide-footer":"","hide-header":"","no-close-on-esc":""}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Comment")])]),s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){e.$bvModal.hide("comment-modal-"+e.id),e.callCbFunction("comment-modal-"+e.id)}}},[e._v(" × ")])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-12"},[s("textarea",{directives:[{name:"model",rawName:"v-model",value:e.data_object[e.data_field],expression:"data_object[data_field]"}],staticClass:"form-control textarea-border textarea-modal pl-md-3",attrs:{rows:"50",placeholder:". . ."},domProps:{value:e.data_object[e.data_field]},on:{input:function(t){t.target.composing||e.$set(e.data_object,e.data_field,t.target.value)}}})])])])],1)},Ke=[],Ue={data(){return{}},components:{},props:{data_object:{type:Object,required:!0},data_field:{type:String,required:!0},id:{type:String,required:!0},cb_function:{type:Function,required:!1},rows:{type:String,required:!0}},methods:{callCbFunction(e){void 0!=this.cb_function&&this.cb_function(e)}}},Ye=Ue,Ve=Object(c["a"])(Ye,$e,Ke,!1,null,null,null),Qe=Ve.exports,Je={YAML_DATASOURCES_VERSION:1,YAML_TECHNIQUES_VERSION:1.2,YAML_GROUPS_VERSION:1,YAML_OBJ_NEW_DATA_SOURCES_FILE:{version:1,file_type:"data-source-administration",name:"example",platform:["all"],data_sources:[]},YAML_OBJ_DATA_SOURCES:{data_source_name:"",date_registered:null,date_connected:null,products:[],available_for_data_analytics:!1,comment:"",data_quality:{device_completeness:0,data_field_completeness:0,timeliness:0,consistency:0,retention:0}},YAML_OBJ_NEW_GROUPS_FILE:{version:1,file_type:"group-administration",platform:["all"],groups:[]},YAML_OBJ_GROUP:{group_name:"",campaign:"",technique_id:[],software_id:[],enabled:!0},YAML_OBJ_NEW_TECHNIQUES_FILE:{version:1.2,file_type:"technique-administration",name:"example",platform:["all"],techniques:[]},YAML_OBJ_TECHNIQUE:{technique_id:"",technique_name:"",detection:[{applicable_to:["all"],location:[],comment:"",score_logbook:[{date:null,score:-1,comment:""}]}],visibility:[{applicable_to:["all"],comment:"",score_logbook:[{date:null,score:0,comment:"",auto_generated:!1}]}]},YAML_OBJ_TECHNIQUE_DETECTION:{applicable_to:["all"],location:[],comment:"",score_logbook:[{date:null,score:-1,comment:""}]},YAML_OBJ_TECHNIQUE_VISIBILITY:{applicable_to:["all"],comment:"",score_logbook:[{date:null,score:0,comment:"",auto_generated:!1}]},YAML_OBJ_SCORE_DETECTION_LOGBOOK:{date:null,score:-1,comment:""},YAML_OBJ_SCORE_VISIBILITY_LOGBOOK:{date:null,score:0,comment:"",auto_generated:!1},PLATFORMS:["all","Windows","Linux","PRE","macOS","AWS","GCP","Azure","Azure AD","Office 365","SaaS","Network"],PLATFORM_CONVERSION:{windows:"Windows",linux:"Linux",pre:"PRE",macos:"macOS",aws:"AWS",gcp:"GCP",azure:"Azure","azure ad":"Azure AD","office 365":"Office 365",saas:"SaaS",network:"Network"}},Xe=s("1a5e"),Ze=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("SlideYUpTransition",{attrs:{duration:e.animationDuration}},[s("div",{directives:[{name:"show",rawName:"v-show",value:e.show,expression:"show"}],staticClass:"modal fade",class:[{"show d-block":e.show},{"d-none":!e.show},{"modal-mini":"mini"===e.type}],attrs:{tabindex:"-1",role:"dialog","aria-hidden":!e.show},on:{click:function(t){return t.target!==t.currentTarget?null:e.closeModal(t)}}},[s("div",{staticClass:"modal-dialog",class:[{"modal-notice":"notice"===e.type},{"modal-dialog-centered":e.centered},e.modalClasses]},[s("div",{staticClass:"modal-content",class:[e.gradient?"bg-gradient-"+e.gradient:"",e.modalContentClasses]},[e.$slots.header?s("div",{staticClass:"modal-header",class:[e.headerClasses]},[e._t("header"),e._t("close-button",[e.showClose?s("button",{staticClass:"close",attrs:{type:"button","data-dismiss":"modal","aria-label":"Close"},on:{click:e.closeModal}},[s("i",{staticClass:"tim-icons icon-simple-remove"})]):e._e()])],2):e._e(),e.$slots.default?s("div",{staticClass:"modal-body",class:e.bodyClasses},[e._t("default")],2):e._e(),e.$slots.footer?s("div",{staticClass:"modal-footer",class:e.footerClasses},[e._t("footer")],2):e._e()])])])])},et=[],tt={name:"modal",components:{SlideYUpTransition:q["b"]},props:{show:Boolean,showClose:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},type:{type:String,default:"",validator(e){let t=["","notice","mini"];return-1!==t.indexOf(e)},description:'Modal type (notice|mini|"") '},modalClasses:{type:[Object,String],description:"Modal dialog css classes"},modalContentClasses:{type:[Object,String],description:"Modal dialog content css classes"},gradient:{type:String,description:"Modal gradient type (danger, primary etc)"},headerClasses:{type:[Object,String],description:"Modal Header css classes"},bodyClasses:{type:[Object,String],description:"Modal Body css classes"},footerClasses:{type:[Object,String],description:"Modal Footer css classes"},animationDuration:{type:Number,default:500,description:"Modal transition duration"}},methods:{closeModal(){this.$emit("update:show",!1),this.$emit("close")}},watch:{show(e){let t=document.body.classList;e?t.add("modal-open"):t.remove("modal-open")}}},st=tt,at=(s("22d7"),Object(c["a"])(st,Ze,et,!1,null,null,null)),it=at.exports;s("a04c");const ot={data(){return{}},created:function(){document.addEventListener("keyup",this.escapeKeyListener)},destroyed:function(){document.removeEventListener("keyup",this.escapeKeyListener)},components:{},methods:{}};var nt=s("2ef0"),rt=s.n(nt),lt={data(){return{dataQualityScores:[0,1,2,3,4,5],dataQualityTooltip:{0:"None",1:"Poor",2:"Fair",3:"Good",4:"Very good",5:"Excellent"},dataSourceDefaultKeys:Object.keys(Je.YAML_OBJ_DATA_SOURCES),dataSourceSuggestionList:Xe,helptextDataQuality:!1,helptextDataSourceKVPairs:!1,commentModal:!1}},mixins:[ot],props:{dataSource:{type:Object,required:!0},allDataSources:{type:Array,required:!0},dqHelpText:{type:String,required:!0},dsHelpText:{type:String,required:!0},prevDataSourceQuality:{type:Array,required:!0},navigateItem:{type:Function,required:!0}},methods:{escapeKeyListener:function(e){27===e.keyCode&&this.helptextDataQuality?this.helptextDataQuality=!1:27===e.keyCode&&this.helptextDataSourceKVPairs?this.helptextDataSourceKVPairs=!1:27===e.keyCode&&""!=this.commentModal&&(this.$bvModal.hide(this.commentModal),this.commentModal="")},toggleEnabled(){let e=this.dataSource["data_source_name"];if(this.dsEnabled){this.prevDataSourceQuality[e]=rt.a.cloneDeep(this.dataSource.data_quality);for(let e in this.dataSource.data_quality)this.dataSource.data_quality[e]=0}else if(e in this.prevDataSourceQuality)this.dataSource.data_quality=rt.a.cloneDeep(this.prevDataSourceQuality[e]);else for(let t in this.dataSource.data_quality)this.dataSource.data_quality[t]=1},editCommentCallback(e){this.commentModal=e}},computed:{dsEnabled(){for(const e of Object.values(this.dataSource.data_quality))if(e>0)return!0;return!1}},components:{DatePicker:ge,ListEditor:ne,ToggleButton:ve,ScoreSlider:xe,CustomKeyValueEditor:Re,AutoSuggestTitle:ze,Modal:it,Icons:V,ExtendedTextarea:Qe}},ut=lt,ct=Object(c["a"])(ut,B,H,!1,null,null,null),dt=ct.exports,mt=s("651e"),ft=s.n(mt),pt=s("f13c"),gt=s.n(pt),ht=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("label",{staticClass:"text-reader"},[s("input",{attrs:{type:"file",id:e.id},on:{change:e.loadTextFromFile}})])},_t=[],wt={props:{setFileNameFn:Function,id:String},methods:{loadTextFromFile(e){const t=e.target.files[0],s=new FileReader;this.setFileNameFn(e.target.files[0].name),s.onload=e=>this.$emit("load",e.target),s.readAsText(t)}}},St=wt,Tt=Object(c["a"])(St,ht,_t,!1,null,null,null),yt=Tt.exports,vt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("table",{staticClass:"table-file-details"},[e._m(0),s("tr",[s("td",{attrs:{width:"100"}},[e._v("Filename:")]),s("td",[e._v(e._s(e.filename))])]),s("tr",[s("td",[e._v("File type:")]),s("td",[e._v(e._s(e.doc["file_type"]))])]),s("tr",[s("td",[e._v("Version:")]),s("td",[e._v(e._s(e.doc["version"].toFixed(1)))])]),s("tr",{directives:[{name:"show",rawName:"v-show",value:e.showName,expression:"showName"}]},[s("td",[e._v("Name:")]),s("td",[s("base-input",{staticClass:"file-detail-edit",model:{value:e.doc["name"],callback:function(t){e.$set(e.doc,"name",t)},expression:"doc['name']"}})],1)]),s("tr",[s("td",[e._v("Notes:")]),s("td",[s("div",{staticClass:"textareaFileDetails"},[s("extended-textarea",{attrs:{data_object:e.doc,data_field:"notes",rows:"2",id:"notes"}})],1)])]),s("tr",[s("td",[e._v("Platform:")]),s("td",e._l(e.platforms,(function(t){return s("label",{staticClass:"custom-checkbox",attrs:{for:t}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.doc.platform,expression:"doc.platform"}],attrs:{type:"checkbox",id:t},domProps:{value:t,checked:Array.isArray(e.doc.platform)?e._i(e.doc.platform,t)>-1:e.doc.platform},on:{click:function(s){return e.platformEventHandler(t)},change:[function(s){var a=e.doc.platform,i=s.target,o=!!i.checked;if(Array.isArray(a)){var n=t,r=e._i(a,n);i.checked?r<0&&e.$set(e.doc,"platform",a.concat([n])):r>-1&&e.$set(e.doc,"platform",a.slice(0,r).concat(a.slice(r+1)))}else e.$set(e.doc,"platform",o)},e.checkPlatform]}}),e._v(" "+e._s(t)+" ")])})),0)])])},qt=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("tr",[s("td",{attrs:{width:"100",colspan:"2"}},[s("b",[e._v("File details")])])])}],bt={mixins:[se],props:{filename:{type:String,required:!0},doc:{type:Object,required:!0},platforms:{type:Array,required:!0},showName:{type:Boolean,required:!1,default:!0}},methods:{platformEventHandler(e){if("all"==e)this.doc.platform=["all"];else{let e=-1;for(let t=0;t=0&&this.doc.platform.splice(e,1)}},checkPlatform(){0==this.doc.platform.length&&this.notifyDanger("Missing value","No value for platform selected. Please select one or more platforms.")}},components:{ExtendedTextarea:Qe}},Ct=bt,Wt=Object(c["a"])(Ct,vt,qt,!1,null,null,null),kt=Wt.exports,At={container:"body",easing:"ease-in",offset:-35,duration:0,force:!1,cancelable:!0,onStart:function(e){},onDone:function(e){},onCancel:function(){},x:!1,y:!0};const Ot={data(){return{filename:"",selected_filename:"",doc:null,selectedRow:[],fileChanged:!1,unwatchFunction:null,deletedRows:[],platforms:Je.PLATFORMS}},components:{FileReader:yt,FileDetails:kt},methods:{navigateToTop(){gt.a.scrollTo("#pageTop",300,At)},navigateToDetail(){gt.a.scrollTo("#detailCard",300,At)},setFileName(e){this.selected_filename=e},selectItem(e){this.selectedRow!=e&&(this.selectedRow=e,e.length>0&&this.navigateToDetail())},addItem(e,t,s){this.filters.filter.value="";let a=null;for(let i=0;i0?this.selectedRow[0]:null},deleteItem(e,t,s,a,i){let o=e.target.getAttribute(s),n=-1;for(let l=0;l0&&(""==o||o==this.selectedRow[0][s])&&this.selectedRow.pop(),this.doc[t].splice(n,1);let r="";r=""==o?"The empty "+a.toLowerCase()+" is removed.":a+" '"+o+"' is removed.",this.notifyInfoWithCallback("Removal status",r,i,"Undo this action",o)},recoverDeletedItem(e,t){let s=null;for(let a=0;a=0&&(this.doc[e].splice(a,1),this.selectedRow.pop()),this.cleanupBeforeDownload(),0==this.doc.platform.length)return void this.notifyDanger("Missing value","No value for platform selected. Please select one or more platforms.");let i=rt.a.cloneDeep(this.doc);this.convertBeforeDownload(i);var o=new Blob([ft.a.safeDump(i,{lineWidth:2e3})],{type:"text/plain;charset=utf-8"}),n=s("21a6");n.saveAs(o,this.filename),this.fileChanged=!1,this.setWatch()},setWatch(){null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0})},askNewFile(){this.fileChanged?this.$bvModal.msgBoxConfirm("You have unsaved changes that will be lost if you choose to continue.",{title:"Unsaved changes",size:"sm",cancelVariant:"warning",okVariant:"info",okTitle:"Continue",modalClass:"confirmMessage"}).then(e=>{e&&this.newFile()}):this.newFile()},navigateItem(e){let t=1;e||(t=-1);let s=this.$refs.data_table.$el.rows,a=0;for(let i=0;i=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s0)this.selectedRow.pop();for(let t=0;t5?5:"number"==typeof e?e:0},cleanupBeforeDownload(){},convertBeforeDownload(e){for(let t=0;t{this.dqHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1")},e=>{this.dqHelpText="An error occurred while loading the help content."}),this.dsHelpText="Loading the help content...",this.$http.get(this.dsFileToRender).then(e=>{this.dsHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1"),this.dsHelpText=this.dsHelpText.match(/## Data source object((.*|\n)*)/gim,"$1")[0],this.dsHelpText=this.dsHelpText.replace(/^## Data source object/gim,""),this.dsHelpText=this.dsHelpText.replace(/^## .+((.*|\n)*)/gim,"")},e=>{this.dsHelpText="An error occurred while loading the help content."})},notifyInvalidFileType(e){this.notifyDanger("Invalid YAML file type","The file '"+e+"' is not a valid data source administration file.")}},filters:{listToString:function(e){return Array.isArray(e)?e.join(", "):e}}},Dt=Lt,Et=Object(c["a"])(Dt,N,j,!1,null,null,null),Pt=Et.exports,It=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[null!=e.doc?s("div",{staticClass:"back-to-top"},[s("label",{staticClass:"cursor-pointer",attrs:{title:"Back to top"},on:{click:e.navigateToTop}},[s("icons",{attrs:{icon:"arrow-up"}})],1)]):e._e(),s("div",{staticClass:"row",attrs:{id:"pageTop"}},[s("div",{staticClass:"col"},[s("div",{staticClass:"card card-card"},[e._m(0),s("div",{staticClass:"card-body"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn mr-md-3",attrs:{type:"button"},on:{click:e.askNewFile}},[s("icons",{attrs:{icon:"file-empty"}}),e._v(" New file ")],1),s("label",{staticClass:"custom-file-upload"},[s("icons",{attrs:{icon:"file"}}),e._v(" Select YAML file "),s("file-reader",{attrs:{setFileNameFn:e.setFileName,id:"techniqueFileReader"},on:{load:function(t){return e.readFile(t)}}})],1),e.fileChanged?s("label",{staticClass:"pl-2"},[s("icons",{attrs:{icon:"text-balloon"}}),e._v(" You have unsaved changes. You may want to save the file to preserve your changes.")],1):e._e()])]),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col"},[s("file-details",{attrs:{filename:e.filename,doc:e.doc,platforms:e.platforms}})],1)]):e._e(),null!=e.doc?s("div",{staticClass:"row pt-md-2"},[s("div",{staticClass:"col card-text"},[s("button",{staticClass:"btn",attrs:{type:"button"},on:{click:function(t){return e.downloadYaml("techniques","technique_id")}}},[s("icons",{attrs:{icon:"save"}}),e._v(" Save YAML file ")],1)])]):e._e()])])])]),null!=e.doc?s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col"},[s("p",[s("button",{staticClass:"btn btn-secondary",attrs:{type:"button"},on:{click:function(t){return e.addItem("techniques","technique_id",e.emptyTechObject)}}},[s("icons",{attrs:{icon:"plus"}}),e._v(" Add technique ")],1)])])]),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("base-input",{attrs:{placeholder:"filter"},model:{value:e.filters.filter.value,callback:function(t){e.$set(e.filters.filter,"value",t)},expression:"filters.filter.value"}}),s("v-table",{ref:"data_table",staticClass:"table-custom",attrs:{data:e.doc.techniques,selectedClass:"table-selected-custom",filters:e.filters},on:{selectionChanged:function(t){return e.selectTechnique(t)}},scopedSlots:e._u([{key:"body",fn:function(t){var a=t.displayData;return s("tbody",{},e._l(a,(function(t,a){return s("v-tr",{key:t.technique_id,ref:"data_table_rows",refInFor:!0,attrs:{row:t}},[s("td",[e._v(e._s(t.technique_id))]),s("td",[e._v(e._s(t.technique_name))]),s("td",[s("i",{staticClass:"tim-icons icon-trash-simple cursor-pointer",attrs:{idx:a,technique_id:t.technique_id},on:{click:function(t){return e.deleteTechnique(t)}}})])])})),1)}}],null,!1,2895191889)},[s("thead",{attrs:{slot:"head"},slot:"head"},[s("v-th",{attrs:{sortKey:"technique_id",defaultSort:"asc",width:"200"}},[e._v("Technique ID")]),s("v-th",{attrs:{sortKey:"technique_name",width:"400"}},[e._v("Name")]),s("th")],1)])],1)])])],1),s("div",{staticClass:"col"},[s("card",{attrs:{type:"card"}},[null!=e.getSelectedItem()?s("techniques-detail",{ref:"detailComponent",attrs:{technique:e.getSelectedItem(),allTechniques:e.doc.techniques,selectedPlatforms:e.doc.platform,navigateItem:e.navigateItem}}):e._e()],1)],1)]):e._e()])},Rt=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card-header"},[s("h2",{staticClass:"card-title"},[s("i",{staticClass:"tim-icons icon-zoom-split"}),e._v(" Techniques")])])}],Mt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return null!=e.technique?s("div",{staticClass:"card"},[s("auto-suggest-title",{attrs:{item:e.technique,allItems:e.allTechniques,itemIdName:"technique_id",title:"Technique",itemTitle:{id:"technique_id",name:"technique_name"},suggestionList:e.techniquesSuggestionList,valueAttr:"technique_id",displayAttr:"autosuggest",isAttackEntity:!0,platforms:e.selectedPlatforms,notifyText:"'ID' is an invalid technique, please comply with the naming scheme: TXXXX - [optional name].",navigateItem:e.navigateItem}}),s("applicable-to-collapse",{ref:"collapseDetectionComponent",attrs:{title:"Detection",applicable_to:e.technique.detection,helpText:e.detectionHelpText,helptextScore:e.detectionScoreHelpText,scores:e.detectionScores,scoresTooltip:e.detectionScoresTooltip,defaultScore:e.detectionScoreDefault,showAutoGenerated:!1,emptyScoreEntry:e.emptyScoreEntryDetection,emptyObject:e.emptyDetectionObject}}),s("applicable-to-collapse",{ref:"collapseVisibilityComponent",attrs:{title:"Visibility",applicable_to:e.technique.visibility,showLocation:!1,helpText:e.visibilityHelpText,helptextScore:e.visibilityScoreHelpText,scores:e.visibilityScores,scoresTooltip:e.visibilityScoresTooltip,defaultScore:e.visibilityScoreDefault,showAutoGenerated:!0,emptyScoreEntry:e.emptyScoreEntryVisibility,emptyObject:e.emptyVisibilityObject}})],1):e._e()},Nt=[],jt=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row mt-md-3"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("h5",{staticClass:"title mb-md-3"},[e._v(e._s(e.title))])]),s("div",{staticClass:"col ml-md-0",on:{click:function(t){e.showHelpText=!0}}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.showHelpText,id:"Modal",centered:!1,"show-close":!0},on:{"update:show":function(t){e.showHelpText=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v(e._s(e.title))]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.helpText}})],1)])],1),s("div",{staticClass:"mb-3"},e._l(e.applicable_to,(function(t,a){return s("div",{key:a,attrs:{row:t}},[s("div",{staticClass:"collapseHeader"},[s("div",{staticClass:"row"},[s("div",{directives:[{name:"b-toggle",rawName:"v-b-toggle",value:"collapse-"+e.title.toLowerCase()+"-"+a,expression:"'collapse-' + title.toLowerCase() + '-' + i"}],staticClass:"col-md-10 cursor-pointer"},[s("i",{staticClass:"when-opened tim-icons icon-minimal-up"}),s("i",{staticClass:"when-closed tim-icons icon-minimal-down"}),e._v(" "+e._s(t.applicable_to.join(", "))+" ")]),s("div",{staticClass:"col collapse-trash-icon mr-md-2"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color cursor-pointer",on:{click:function(t){return e.deleteApplicableTo(a)}}})])])]),s("b-collapse",{ref:"collapseComponent",refInFor:!0,attrs:{id:"collapse-"+e.title.toLowerCase()+"-"+a}},[s("b-card",{staticClass:"collapseContent"},[s("list-editor",{staticClass:"mt-md-2 no-bottom-margin",attrs:{list:t.applicable_to,name:e.title+" is applicable to",placeholder:"applicable to",externalListToValidate:e.getApplicableToList(),helpText:"Specifies to which type of system this "+e.title.toLowerCase()+" applies to. The value 'all' can be used to let it apply to every type of system.",notifyText:"The value 'KEYNAME' is already part of the applicable_to for this technique. Duplicate entries are not allowed."}}),0==t.applicable_to.length?s("div",{staticClass:"row mt-md-0 mb-md-2"},[s("div",{staticClass:"col-md-auto pr-md-0"},[s("i",{staticClass:"tim-icons icon-alert-circle-exc icon-color-warning"})]),s("div",{staticClass:"col-md-auto pl-md-2"},[s("label",{staticClass:"label-warning",attrs:{id:"warningText"}},[e._v("The applicable_to field should be filled in order for DeTT&CT to work properly.")])])]):e._e(),e.showLocation?s("list-editor",{staticClass:"mt-md-2",attrs:{list:t.location,name:"Location of the "+e.title.toLowerCase(),placeholder:"location"}}):e._e(),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("label",{staticClass:"card"},[e._v("Comment")])])]),s("div",{staticClass:"row mt-md-0"},[s("div",{staticClass:"col-md-11"},[s("extended-textarea",{attrs:{data_object:t,data_field:"comment",id:e.title+a,rows:"4",cb_function:e.editCommentCallback}})],1)]),s("div",{staticClass:"row mt-md-3"},[s("div",{staticClass:"col-md-4"},[s("score-slider",{attrs:{name:"Score date: "+e.getLatestScoreDate(t.score_logbook),score:e.getLatestScore(t.score_logbook),markData:e.scores,markDataTooltip:e.scoresTooltip,showLabel:!0},on:{scoreUpdated:function(s){e.setLatestScore(t.score_logbook,e.getLatestScoreDate(t.score_logbook),s)}}})],1)]),s("div",{staticClass:"row mt-md-4"},[s("div",{staticClass:"col-md-auto"},[s("b-button",{directives:[{name:"b-modal",rawName:"v-b-modal",value:e.title+"-score-logbook-modal-"+a,expression:"title + '-score-logbook-modal-' + i"}],staticClass:"btn-custom btn btn-secondary button-30",on:{click:function(t){e.currentModal=e.title+"-score-logbook-modal-"+a}}},[e._v("Score logbook")]),s("b-modal",{attrs:{id:e.title+"-score-logbook-modal-"+a,"dialog-class":"modal-edit-wide","content-class":"modal-dark-mode","hide-footer":"","hide-header":"","no-close-on-esc":""}},[s("score-logbook",{attrs:{item:t.score_logbook,scores:e.scores,scoresTooltip:e.scoresTooltip,defaultScore:e.defaultScore,showAutoGenerated:e.showAutoGenerated,modalId:e.title+"-score-logbook-modal-"+a,emptyScoreEntry:e.emptyScoreEntry,cb_function:e.editCommentCallback},on:{showHelptextScoreNow:function(t){e.showHelptextScore=!0}}})],1),s("modal",{staticClass:"modal-help",attrs:{show:e.showHelptextScore,centered:!1,"show-close":!0},on:{"update:show":function(t){e.showHelptextScore=t}}},[s("h1",{attrs:{slot:"header"},slot:"header"},[e._v(e._s(e.title)+" scoring")]),s("div",{staticClass:"markdown-popup"},[s("VueShowdown",{attrs:{markdown:e.helptextScore}})],1)])],1),s("div",{staticClass:"col-md-auto"},[s("b-button",{directives:[{name:"b-modal",rawName:"v-b-modal",value:e.title+"-custom-kvpairs-modal-"+a,expression:"title + '-custom-kvpairs-modal-' + i"}],staticClass:"btn-custom btn btn-secondary button-30"},[e._v("Custom key value pairs")]),s("b-modal",{attrs:{id:e.title+"-custom-kvpairs-modal-"+a,"dialog-class":"modal-edit-small","content-class":"modal-dark-mode","hide-footer":"","hide-header":""}},[s("custom-key-value-editor",{attrs:{item:t,defaultKeys:e.defaultKVKeys,useInModal:!0,modalId:e.title+"-custom-kvpairs-modal-"+a}})],1)],1)])],1)],1)],1)})),0),s("div",{staticClass:"row mb-3"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-30",on:{click:e.addApplicableTo}},[e._v("Add "+e._s(e.title.toLowerCase()))])])])])},Bt=[],Ht=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",[s("div",{staticClass:"row"},[e._m(0),s("div",{staticClass:"col ml-md-0"},[s("icons",{attrs:{icon:"help",tooltip:"Keep track of changes within the score by adding score objects."}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:function(t){return e.$bvModal.hide(e.modalId)}}},[e._v("×")])])]),s("div",{staticClass:"row"},[e._m(1),s("div",{staticClass:"col-md-3"},[s("div",{staticClass:"row"},[e._m(2),s("div",{staticClass:"col-md-auto",on:{click:e.showHelptextScore}},[s("icons",{attrs:{icon:"help",tooltip:"Click to open more information."}})],1)])]),e._m(3),e.showAutoGenerated?s("div",{staticClass:"col-md-auto"},[s("div",{staticClass:"row"},[e._m(4),s("div",{staticClass:"col-md-auto pl-md-1"},[s("icons",{attrs:{icon:"help",tooltip:"Indicates if the score was auto-generated based on the number of data sources within the data source administration file (using the option -y, --yaml from the datasource mode in dettect.py) . When manually scoring your visibility you can set it to False. The purpose of having this property is to allow an easy update of your visibility scores based on changes in your data sources. Or modification within MITRE\\'s semi-annual update of ATT&CK (possible new techniques, data sources or changes in the data source listed for a particular technique). For more info see the wiki pages on Github."}})],1)])]):e._e(),s("div",{staticClass:"col-md-0"})]),e._l(e.item,(function(t,a){return s("div",{key:e.componentKey},[s("div",{staticClass:"row score-logbook"},[s("div",{staticClass:"col-md-2 pr-md-0"},[s("date-picker",{attrs:{showLabel:!1,date:t.date,name:"Date"},on:{dateUpdated:function(t){return e.updateDate(a,t)}}})],1),s("div",{staticClass:"col-md-3"},[s("score-slider",{attrs:{name:"score",score:t.score,markData:e.scores,markDataTooltip:e.scoresTooltip,showLabel:!1},on:{scoreUpdated:function(s){t.score=s,e.showAutoGenerated&&(t.auto_generated=!1)}}})],1),s("div",{staticClass:"col-md-5"},[s("extended-textarea",{attrs:{data_object:t,data_field:"comment",id:"modal"+a,cb_function:e.cb_function,rows:"4"}})],1),e.showAutoGenerated?s("div",{staticClass:"col-md-auto"},[s("toggle-button",{attrs:{state:t.auto_generated,name:"auto_generated",showLabel:!1},on:{toggleButtonUpdated:function(e){t.auto_generated=e}}})],1):e._e(),s("div",{staticClass:"col-md-0"},[s("i",{staticClass:"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer",on:{click:function(t){return e.deleteProperty(a)}}})])])])})),s("div",{staticClass:"row mt-md-2"},[s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addNewItem}},[e._v(" Add new score ")])])])],2)},Ft=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:" col-md-auto pr-md-0"},[s("h5",{staticClass:"title"},[e._v("Score logbook")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-2"},[s("label",{staticClass:"card"},[e._v("Date")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-auto pr-md-0"},[s("label",{staticClass:"card"},[e._v("Score")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col-md-5"},[s("label",{staticClass:"card"},[e._v("Comment")])])},function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"col pr-md-0"},[s("label",{staticClass:"card"},[e._v("Auto generated")])])}],Gt={data(){return{newScore:this.defaultScore,componentKey:0}},mixins:[se],props:{item:{type:Array,required:!0},scores:{type:Array,required:!0},scoresTooltip:{type:Object,required:!0},defaultScore:{type:Number,required:!0},showAutoGenerated:{type:Boolean,required:!1,default:!1},modalId:{type:String,required:!0},emptyScoreEntry:{type:Object,required:!0},cb_function:{type:Function,required:!1}},components:{DatePicker:ge,ScoreSlider:xe,ToggleButton:ve,Icons:V,ExtendedTextarea:Qe},mounted(){this.sortOnDates()},methods:{forceRerender(){this.componentKey+=1},addNewItem(){for(let t=0;t0)this.item.pop();for(let t=0;t{this.$root.$emit("bv::toggle::collapse","collapse-"+this.title.toLowerCase()+"-"+(this.applicable_to.length-1))},10)},getApplicableToList(){let e=[];for(let t=0;t=1&&(s=t[t.length-1].date),null!=s&&""!=s||(s="[set date in score logbook]"),s},getLatestScore(e){let t=rt.a.sortBy(e,"date");return t.length>=1?t[t.length-1].score:-1},setLatestScore(e,t,s){if(0==e.length){let t=rt.a.cloneDeep(this.emptyScoreEntry);t.date=this.getCurrentDate(),t.score=s,e.push(t)}else for(let a=0;a{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.detectionHelpText=t,this.detectionHelpText=this.detectionHelpText.match(/^## Detection object((.*|\n)*)/gim,"$1")[0],this.detectionHelpText=this.detectionHelpText.replace(/^## Visibility object((.*|\n)*)/gim,""),this.detectionHelpText=this.detectionHelpText.replace(/^## Detection object/gim,""),this.visibilityHelpText=t,this.visibilityHelpText=this.visibilityHelpText.match(/^## Visibility object((.*|\n)*)/gim,"$1")[0],this.visibilityHelpText=this.visibilityHelpText.replace(/^## Score object((.*|\n)*)/gim,""),this.visibilityHelpText=this.visibilityHelpText.replace(/^## Visibility object/gim,"")},e=>{this.detectionHelpText="An error occurred while loading the help content.",this.visibilityHelpText="An error occurred while loading the help content."}),this.detectionScoreHelpText="Loading the help content...",this.$http.get(this.detectionScoreHelpUrl).then(e=>{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.detectionScoreHelpText=t},e=>{this.detectionScoreHelpText="An error occurred while loading the help content."}),this.visibilityScoreHelpText="Loading the help content...",this.$http.get(this.visibilityScoreHelpUrl).then(e=>{let t=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1");this.visibilityScoreHelpText=t},e=>{this.visibilityScoreHelpText="An error occurred while loading the help content."})},closeAllCollapses(){this.$refs.collapseDetectionComponent.closeAllCollapses(),this.$refs.collapseVisibilityComponent.closeAllCollapses()}}},Zt=Xt,es=Object(c["a"])(Zt,Mt,Nt,!1,null,null,null),ts=es.exports,ss={name:"techniques-page",data(){return{filters:{filter:{value:"",keys:["technique_id","technique_name"]}},data_columns:["technique_id","technique_name"],emptyTechObject:Je.YAML_OBJ_TECHNIQUE}},mixins:[Ot,xt,se],components:{TechniquesDetail:ts,Icons:V},methods:{readFile(e){try{let t=ft.a.safeLoad(e.result);if("technique-administration"==t["file_type"])if(t["version"]!=Je.YAML_TECHNIQUES_VERSION)this.notifyDanger("Invalid file version","The version of the YAML file is not supported by this version of the Editor.");else{void 0!=t.platform&&null!=t.platform||(t.platform=[]),"string"==typeof t.platform&&(t.platform=[t.platform]);let e=[];for(let s=0;s=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s1&&!a.includes(e[n])&&(a.push(e[n]),this.notifyOverlappingApplicableTo("detection",t.techniques[s].technique_id,e[n]))}let i=[],o=[];for(let n=0;n1&&!o.includes(i[n])&&(o.push(i[n]),this.notifyOverlappingApplicableTo("visibility",t.techniques[s].technique_id,i[n]))}}this.doc=t,this.filename=this.selected_filename,this.filters.filter.value="";while(null!=this.selectedRow&&this.selectedRow.length>0)this.selectedRow.pop();this.fileChanged=!1,null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0}),document.getElementById("techniqueFileReader").value=null}else this.notifyInvalidFileType(this.selected_filename)}catch(t){alert(t),this.notifyInvalidFileType(this.selected_filename)}},newFile(){this.filename="techniques-administration-new.yaml",this.selected_filename="techniques-administration-new.yaml",this.doc=rt.a.cloneDeep(Je.YAML_OBJ_NEW_TECHNIQUES_FILE),this.selectedRow.pop(),this.deletedRows=[],this.fileChanged=!1,this.setWatch()},fixSDetectionScore(e){return void 0==e||e<-1?-1:e>5?5:"number"==typeof e?e:-1},fixVisibilityScore(e){return void 0==e||e<0?0:e>4?4:"number"==typeof e?e:0},cleanupBeforeDownload(){for(let e=0;e=0&&this.doc.techniques[e].detection[t].score_logbook.splice(s,1)}for(let e=0;e=0&&this.doc.techniques[e].visibility[t].score_logbook.splice(s,1)}},convertBeforeDownload(e){for(let t=0;t0?s("div",{staticClass:"row form-group"},e._l(e.group[e.itemIdName],(function(t){return s("span",{key:t,staticClass:"attack-span"},[s("p",{staticClass:"attack-id"},[e._v(e._s(t))]),s("i",{staticClass:"tim-icons icon-trash-simple icon-color mx-md-2 cursor-pointer",attrs:{id:t},on:{click:function(t){return e.deleteItem(t)}}})])})),0):e._e(),s("div",{staticClass:"row"},[s("div",{staticClass:"col-md-7 pr-md-0 form-group"},[s("vue-simple-suggest",{ref:"suggestInputTxt",attrs:{placeholder:e.formattedTitle,list:e.filteredSuggestionList,"max-suggestions":0,"filter-by-query":!0,"display-attribute":"autosuggest","value-attribute":e.valueAttr,styles:e.autoCompleteStyle},on:{select:function(t){e.newID=t[e.itemIdName]},input:function(t){e.newID=t}}})],1),s("div",{staticClass:"col"},[s("button",{staticClass:"btn-custom btn btn-secondary button-add",on:{click:e.addItem}},[e._v(" Add ")])])])])},ds=[],ms={data(){return{newID:""}},mixins:[Be,se],props:{group:{type:Object,required:!0},valueAttr:{type:String,required:!0},platforms:{type:Array,required:!0}},methods:{deleteItem(e){let t=e.target.getAttribute("id");if(t.startsWith("T")){let e=this.group.technique_id.indexOf(t);this.group.technique_id.splice(e,1)}else if(t.startsWith("S")){let e=this.group.software_id.indexOf(t);this.group.software_id.splice(e,1)}},addItem(){if(!this.newID.length>0)return;if(!this.newID.match(/\b(S\d{4}|T\d{4}(\.\d{3}|))\b/i))return void this.notifyInvalid(this.newID);let e=this.newID.match(/\b((S\d{4}|T\d{4}(\.\d{3}|)))\b/i)[0].toUpperCase();if("technique_id"==this.itemIdName&&!e.startsWith("T")||"software_id"==this.itemIdName&&!e.startsWith("S"))this.notifyInvalid(e);else if(this.group[this.itemIdName].includes(e)){let t="Duplicate "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is already part of the YAML file. Duplicate entries are not allowed.";this.notifyWarning(t,s)}else{if(this.listKnownIDs.includes(e)){if(!this.listKnownIDsForPlatform.includes(e)){let t="Non-applicable "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is not applicable to any of the selected platform(s).";this.notifyWarning(t,s)}}else{let t="Unknown "+this.formattedTitle,s="The "+this.formattedTitle+" "+e+" is not part of ATT&CK.";this.notifyWarning(t,s)}this.$refs.suggestInputTxt.setText(""),this.group[this.itemIdName].push(e)}},notifyInvalid(e){let t="Invalid "+this.formattedTitle,s="'"+e+"' is an invalid "+this.formattedTitle+".";this.notifyWarning(t,s)}},computed:{filteredSuggestionList(){let e=[];for(let t=0;tthis.suggestionList[t]["platforms"].includes(e))&&!this.group[this.itemIdName].includes(this.suggestionList[t][this.itemIdName]))&&e.push(this.suggestionList[t]);return e},formattedTitle(){return this.itemIdName.replace("_"," ").replace("id","ID")}}},fs=ms,ps=Object(c["a"])(fs,cs,ds,!1,null,null,null),gs=ps.exports,hs=s("bba2"),_s={data(){return{techniques:Jt,software:hs,groupDefaultKeys:Object.keys(Je.YAML_OBJ_GROUP),editGroupName:!1,helptextGroupKVPairs:!1}},mixins:[ot],props:{group:{type:Object,required:!0},allGroups:{type:Array,required:!0},selectedPlatforms:{type:Array,required:!0},groupHelpText:{type:String}},watch:{group(){this.editGroupName=!1}},methods:{escapeKeyListener:function(e){27===e.keyCode&&this.helptextGroupKVPairs&&(this.helptextGroupKVPairs=!1)},getGroupIDs(){let e=[];for(let t=0;t1)}},components:{AutoSuggestGroup:gs,ToggleButton:ve,CustomKeyValueEditor:Re,Modal:it,Icons:V}},ws=_s,Ss=Object(c["a"])(ws,ls,us,!1,null,null,null),Ts=Ss.exports,ys={name:"groups-page",data(){return{filters:{filter:{value:"",keys:["group_name","campaign","enabled"]}},data_columns:["group_name","campaign","enabled"],groupFileToRender:"https://raw.githubusercontent.com/wiki/rabobank-cdc/DeTTECT/YAML-administration-groups.md",groupHelpText:null,emptyGroupObject:Je.YAML_OBJ_GROUP}},mixins:[Ot,se],components:{GroupsDetail:Ts,Icons:V},created:function(){this.preloadMarkDown()},methods:{readFile(e){try{let t=ft.a.safeLoad(e.result);if("group-administration"==t["file_type"])if(t["version"]!=Je.YAML_DATASOURCES_VERSION)this.notifyDanger("Invalid file version","The version of the YAML file is not supported by this version of the Editor.");else{void 0!=t.platform&&null!=t.platform||(t.platform=[]),"string"==typeof t.platform&&(t.platform=[t.platform]);let e=[];for(let s=0;s=0?e.push(Je.PLATFORM_CONVERSION[a]):this.notifyDanger("Invalid value","Invalid value for platform was found in the YAML file and was removed.")}else e.push(t.platform[s]);t.platform=e;for(let s=0;s0)this.selectedRow.pop();this.fileChanged=!1,null!=this.unwatchFunction&&this.unwatchFunction(),this.unwatchFunction=this.$watch("doc",(function(e,t){this.fileChanged=!0}),{deep:!0}),document.getElementById("groupFileReader").value=null}else this.notifyInvalidFileType(this.selected_filename)}catch(t){this.notifyInvalidFileType(this.selected_filename)}},newFile(){this.filename="groups-new.yaml",this.selected_filename="groups-new.yaml",this.doc=rt.a.cloneDeep(Je.YAML_OBJ_NEW_GROUPS_FILE),this.selectedRow.pop(),this.deletedRows=[],this.fileChanged=!1,this.setWatch()},cleanupBeforeDownload(){},convertBeforeDownload(){},deleteGroup(e){this.deleteItem(e,"groups","group_name","Group",this.recoverDeletedGroup)},recoverDeletedGroup(e){this.recoverDeletedItem("groups",e)},preloadMarkDown(){this.groupHelpText="Loading the help content...",this.$http.get(this.groupFileToRender).then(e=>{this.groupHelpText=e.body.replace(/\[(.+)\](\([#\w-]+\))/gm,"$1"),this.groupHelpText=this.groupHelpText.match(/## Group object((.*|\n)*)/gim,"$1")[0],this.groupHelpText=this.groupHelpText.replace(/^## Group object/gim,"")},e=>{this.groupHelpText="An error occurred while loading the help content."})},notifyInvalidFileType(e){this.notifyDanger("Invalid YAML file type","The file '"+e+"' is not a valid group administration file.")}},filters:{listToString:function(e){return Array.isArray(e)?e.join(", "):e}}},vs=ys,qs=Object(c["a"])(vs,ns,rs,!1,null,null,null),bs=qs.exports;a["default"].use(i["a"]);var Cs=new i["a"]({routes:[{path:"/",component:L,redirect:"/home",children:[{path:"home",name:"home",component:M},{path:"datasources",name:"datasources",component:Pt},{path:"techniques",name:"techniques",component:os},{path:"groups",name:"groups",component:bs}]}]}),Ws=s("b7cd"),ks=s("28dd"),As=s("866c"),Os=s.n(As),xs=s("3222"),Ls=s.n(xs),Ds=s("5f5b"),Es=s("b1e0"),Ps=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"sidebar",attrs:{data:e.backgroundColor}},[s("div",{staticClass:"sidebar-wrapper",attrs:{id:"style-3"}},[s("div",{staticClass:"logo"},[s("a",{staticClass:"simple-text logo-mini",attrs:{href:"https://github.com/rabobank-cdc/DeTTECT",target:"blank","aria-label":"sidebar mini logo"}},[s("div",{staticClass:"logo-img",class:{"logo-img-rtl":e.$rtl.isRTL}},[s("img",{attrs:{src:"img/logo.png",alt:""}})])]),s("span",{staticClass:"simple-text logo-normal custom-title custom-title1"},[e._v("DeTT&CT")]),s("span",{staticClass:"simple-text logo-normal custom-title"},[e._v("Editor")])]),e._t("default"),s("ul",{staticClass:"nav"},[e._t("links",e._l(e.sidebarLinks,(function(e,t){return s("sidebar-link",{key:t,attrs:{to:e.path,name:e.name,icon:e.icon}})})))],2)],2)])},Is=[],Rs=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s(e.tag,e._b({tag:"component",staticClass:"nav-item",attrs:{tag:"li"},nativeOn:{click:function(t){return e.hideSidebar(t)}}},"component",e.$attrs,!1),[s("a",{staticClass:"nav-link"},[e._t("default",[e.icon?s("i",{class:e.icon}):e._e(),s("p",[e._v(e._s(e.name))])])],2)])},Ms=[],Ns={name:"sidebar-link",inheritAttrs:!1,inject:{autoClose:{default:!0},addLink:{default:()=>{}},removeLink:{default:()=>{}}},props:{name:String,icon:String,tag:{type:String,default:"router-link"}},methods:{hideSidebar(){this.autoClose&&this.$sidebar.displaySidebar(!1)},isActive(){return this.$el.classList.contains("active")}},mounted(){this.addLink&&this.addLink(this)},beforeDestroy(){this.$el&&this.$el.parentNode&&this.$el.parentNode.removeChild(this.$el),this.removeLink&&this.removeLink(this)}},js=Ns,Bs=Object(c["a"])(js,Rs,Ms,!1,null,null,null),Hs=Bs.exports,Fs={props:{title:{type:String,default:"DeTT&CT Editor"},backgroundColor:{type:String,default:"blue"},activeColor:{type:String,default:"success",validator:e=>{let t=["primary","info","success","warning","danger"];return-1!==t.indexOf(e)}},sidebarLinks:{type:Array,default:()=>[]},autoClose:{type:Boolean,default:!0}},provide(){return{autoClose:this.autoClose,addLink:this.addLink,removeLink:this.removeLink}},components:{SidebarLink:Hs},computed:{arrowMovePx(){return this.linkHeight*this.activeLinkIndex},shortTitle(){return this.title.split(" ").map(e=>e.charAt(0)).join("").toUpperCase()}},data(){return{linkHeight:65,activeLinkIndex:0,windowWidth:0,isWindows:!1,hasAutoHeight:!1,links:[]}},methods:{findActiveLink(){this.links.forEach((e,t)=>{e.isActive()&&(this.activeLinkIndex=t)})},addLink(e){const t=this.$slots.links.indexOf(e.$vnode);this.links.splice(t,0,e)},removeLink(e){const t=this.links.indexOf(e);t>-1&&this.links.splice(t,1)}},mounted(){this.$watch("$route",this.findActiveLink,{immediate:!0})}},Gs=Fs,zs=Object(c["a"])(Gs,Ps,Is,!1,null,null,null),$s=zs.exports;const Ks={showSidebar:!1,sidebarLinks:[],displaySidebar(e){this.showSidebar=e}},Us={install(e){let t=new e({data:{sidebarStore:Ks}});e.prototype.$sidebar=t.sidebarStore,e.component("side-bar",$s),e.component("sidebar-link",Hs)}};var Ys=Us,Vs=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"notifications"},[s("transition-group",{attrs:{name:e.transitionName,mode:e.transitionMode}},e._l(e.notifications,(function(t){return s("notification",e._b({key:t.timestamp.getTime(),attrs:{clickHandler:t.onClick},on:{close:e.removeNotification}},"notification",t,!1))})),1)],1)},Qs=[],Js=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"alert open",class:[{"alert-with-icon":e.icon},e.verticalAlign,e.horizontalAlign,e.alertType],style:e.customPosition,attrs:{"data-notify":"container",role:"alert","data-notify-position":"top-center"},on:{click:e.tryClose}},[e.showClose?s("button",{staticClass:"close col-xs-1 pl-md-3",attrs:{type:"button","aria-hidden":"true","data-notify":"dismiss"},on:{click:e.close}},[s("i",{staticClass:"tim-icons icon-simple-remove"})]):e._e(),e.icon?s("span",{class:["alert-icon",e.icon],attrs:{"data-notify":"icon"}}):e._e(),s("div",{attrs:{"data-notify":"message"}},[e.title?s("div",{staticClass:"title"},[s("b",[e._v(e._s(e.title)),s("br")])]):e._e(),e.message?s("div",{domProps:{innerHTML:e._s(e.message)}}):e._e(),!e.message&&e.component?s("content-render",{attrs:{component:e.component}}):e._e(),null!=e.cb_function?s("div",[s("a",{attrs:{href:"#"},on:{click:function(t){return e.cb_function(e.cb_function_key)}}},[e._v(e._s(e.cb_function_text))])]):e._e()],1)])},Xs=[],Zs={name:"notification",components:{contentRender:{props:["component"],render(e){return e(this.component)}}},props:{message:String,title:String,icon:String,cb_function:Function,cb_function_text:String,cb_function_key:String,verticalAlign:{type:String,default:"top",validator:e=>{let t=["top","bottom"];return-1!==t.indexOf(e)}},horizontalAlign:{type:String,default:"right",validator:e=>{let t=["left","center","right"];return-1!==t.indexOf(e)}},type:{type:String,default:"info",validator:e=>{let t=["info","primary","danger","warning","success"];return-1!==t.indexOf(e)}},timeout:{type:Number,default:5e3,validator:e=>e>=0},timestamp:{type:Date,default:()=>new Date},component:{type:[Object,Function]},showClose:{type:Boolean,default:!0},closeOnClick:{type:Boolean,default:!0},clickHandler:Function},data(){return{elmHeight:0}},computed:{hasIcon(){return this.icon&&this.icon.length>0},alertType(){return"alert-"+this.type},customPosition(){let e=20,t=this.elmHeight+10,s=this.$notifications.state.filter(e=>e.horizontalAlign===this.horizontalAlign&&e.verticalAlign===this.verticalAlign&&e.timestamp<=this.timestamp).length;this.$notifications.settings.overlap&&(s=1);let a=(s-1)*t+e,i={};return"top"===this.verticalAlign?i.top=a+"px":i.bottom=a+"px",i}},methods:{close(){this.$emit("close",this.timestamp)},tryClose(e){this.clickHandler&&this.clickHandler(e,this),this.closeOnClick&&this.close()}},mounted(){this.elmHeight=this.$el.clientHeight,this.timeout&&setTimeout(this.close,this.timeout)}},ea=Zs,ta=(s("f0fa"),Object(c["a"])(ea,Js,Xs,!1,null,null,null)),sa=ta.exports,aa={components:{Notification:sa},props:{transitionName:{type:String,default:"list"},transitionMode:{type:String,default:"in-out"},overlap:{type:Boolean,default:!1}},data(){return{notifications:this.$notifications.state}},methods:{removeNotification(e){this.$notifications.removeNotification(e)}},created(){this.$notifications.settings.overlap=this.overlap},watch:{overlap:function(e){this.$notifications.settings.overlap=e}}},ia=aa,oa=(s("6ae5"),Object(c["a"])(ia,Vs,Qs,!1,null,null,null)),na=oa.exports;const ra={state:[],settings:{overlap:!1,verticalAlign:"top",horizontalAlign:"right",type:"info",timeout:5e3,closeOnClick:!0,showClose:!0},setOptions(e){this.settings=Object.assign(this.settings,e)},removeNotification(e){const t=this.state.findIndex(t=>t.timestamp===e);-1!==t&&this.state.splice(t,1)},addNotification(e){("string"===typeof e||e instanceof String)&&(e={message:e}),e.timestamp=new Date,e.timestamp.setMilliseconds(e.timestamp.getMilliseconds()+this.state.length),e=Object.assign({},this.settings,e),this.state.push(e)},notify(e){Array.isArray(e)?e.forEach(e=>{this.addNotification(e)}):this.addNotification(e)}},la={install(e,t){let s=new e({data:{notificationStore:ra},methods:{notify(e){this.notificationStore.notify(e)}}});e.prototype.$notify=s.notify,e.prototype.$notifications=s.notificationStore,e.component("Notifications",na),t&&ra.setOptions(t)}};var ua=la,ca=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-group",class:{"input-group":e.hasIcon,"input-group-focus":e.focused}},[e._t("label",[e.label?s("label",{staticClass:"control-label"},[e._v(" "+e._s(e.label)+" ")]):e._e()]),e._t("addonLeft",[e.addonLeftIcon?s("span",{staticClass:"input-group-prepend"},[s("div",{staticClass:"input-group-text"},[s("i",{class:e.addonLeftIcon})])]):e._e()]),e._t("default",[s("input",e._g(e._b({staticClass:"form-control",attrs:{"aria-describedby":"addon-right addon-left"},domProps:{value:e.value}},"input",e.$attrs,!1),e.listeners))]),e._t("addonRight",[e.addonRightIcon?s("span",{staticClass:"input-group-append"},[s("div",{staticClass:"input-group-text"},[s("i",{class:e.addonRightIcon})])]):e._e()]),e._t("helperText")],2)},da=[],ma={inheritAttrs:!1,name:"base-input",props:{label:{type:String,description:"Input label"},value:{type:[String,Number],description:"Input value"},addonRightIcon:{type:String,description:"Input icon on the right"},addonLeftIcon:{type:String,description:"Input icon on the left"}},model:{prop:"value",event:"input"},data(){return{focused:!1}},computed:{hasIcon(){const{addonRight:e,addonLeft:t}=this.$slots;return void 0!==e||void 0!==t||void 0!==this.addonRightIcon||void 0!==this.addonLeftIcon},listeners(){return{...this.$listeners,input:this.onInput,blur:this.onBlur,focus:this.onFocus}}},methods:{onInput(e){this.$emit("input",e.target.value)},onFocus(e){this.focused=!0,this.$emit("focus",e.target.value)},onBlur(e){this.focused=!1,this.$emit("blur",e.target.value)}}},fa=ma,pa=Object(c["a"])(fa,ca,da,!1,null,null,null),ga=pa.exports,ha=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-check",class:[{disabled:e.disabled},e.inlineClass]},[s("label",{staticClass:"form-check-label",attrs:{for:e.cbId}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"form-check-input",attrs:{id:e.cbId,type:"checkbox",disabled:e.disabled},domProps:{checked:Array.isArray(e.model)?e._i(e.model,null)>-1:e.model},on:{change:function(t){var s=e.model,a=t.target,i=!!a.checked;if(Array.isArray(s)){var o=null,n=e._i(s,o);a.checked?n<0&&(e.model=s.concat([o])):n>-1&&(e.model=s.slice(0,n).concat(s.slice(n+1)))}else e.model=i}}}),s("span",{staticClass:"form-check-sign"}),e._t("default",[e.inline?s("span"):e._e()])],2)])},_a=[],wa={name:"base-checkbox",model:{prop:"checked"},props:{checked:{type:[Array,Boolean],description:"Whether checkbox is checked"},disabled:{type:Boolean,description:"Whether checkbox is disabled"},inline:{type:Boolean,description:"Whether checkbox should be inline with other checkboxes"}},data(){return{cbId:"",touched:!1}},computed:{model:{get(){return this.checked},set(e){this.touched||(this.touched=!0),this.$emit("input",e)}},inlineClass(){if(this.inline)return"form-check-inline"}},created(){this.cbId=Math.random().toString(16).slice(2)}},Sa=wa,Ta=Object(c["a"])(Sa,ha,_a,!1,null,null,null),ya=Ta.exports,va=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"form-check form-check-radio",class:[e.inlineClass,{disabled:e.disabled}]},[s("label",{staticClass:"form-check-label",attrs:{for:e.cbId}},[s("input",{directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"form-check-input",attrs:{id:e.cbId,type:"radio",disabled:e.disabled},domProps:{value:e.name,checked:e._q(e.model,e.name)},on:{change:function(t){e.model=e.name}}}),e._t("default"),s("span",{staticClass:"form-check-sign"})],2)])},qa=[],ba={name:"base-radio",props:{name:{type:[String,Number],description:"Radio label"},disabled:{type:Boolean,description:"Whether radio is disabled"},value:{type:[String,Boolean],description:"Radio value"},inline:{type:Boolean,description:"Whether radio is inline"}},data(){return{cbId:""}},computed:{model:{get(){return this.value},set(e){this.$emit("input",e)}},inlineClass(){return this.inline?"form-check-inline":""}},created(){this.cbId=Math.random().toString(16).slice(2)}},Ca=ba,Wa=Object(c["a"])(Ca,va,qa,!1,null,null,null),ka=(Wa.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s(e.tag,{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeDropDown,expression:"closeDropDown"}],tag:"component",staticClass:"dropdown",class:{show:e.isOpen},on:{click:e.toggleDropDown}},[e._t("title-container",[s(e.titleTag,{tag:"component",staticClass:"dropdown-toggle btn-rotate",class:e.titleClasses,attrs:{"aria-expanded":e.isOpen,"aria-label":e.title||e.ariaLabel,"data-toggle":"dropdown"}},[e._t("title",[s("i",{class:e.icon}),e._v(" "+e._s(e.title)+" ")],{isOpen:e.isOpen})],2)],{isOpen:e.isOpen}),s("ul",{staticClass:"dropdown-menu",class:[{show:e.isOpen},{"dropdown-menu-right":e.menuOnRight},e.menuClasses]},[e._t("default")],2)],2)}),Aa=[],Oa={name:"base-dropdown",props:{tag:{type:String,default:"div",description:"Dropdown html tag (e.g div, ul etc)"},titleTag:{type:String,default:"button",description:"Dropdown title (toggle) html tag"},title:{type:String,description:"Dropdown title"},icon:{type:String,description:"Dropdown icon"},titleClasses:{type:[String,Object,Array],description:"Title css classes"},menuClasses:{type:[String,Object],description:"Menu css classes"},menuOnRight:{type:Boolean,description:"Whether menu should appear on the right"},ariaLabel:String},data(){return{isOpen:!1}},methods:{toggleDropDown(){this.isOpen=!this.isOpen,this.$emit("change",this.isOpen)},closeDropDown(){this.isOpen=!1,this.$emit("change",!1)}}},xa=Oa,La=Object(c["a"])(xa,ka,Aa,!1,null,null,null),Da=La.exports,Ea=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("table",{staticClass:"table tablesorter",class:e.tableClass},[s("thead",{class:e.theadClasses},[s("tr",[e._t("columns",e._l(e.columns,(function(t){return s("th",{key:t},[e._v(e._s(t))])})))],2)]),s("tbody",{class:e.tbodyClasses},e._l(e.data,(function(t,a){return s("tr",{key:a},[e._t("default",[e._l(e.columns,(function(a,i){return e.hasValue(t,a)?s("td",{key:i},[e._v(" "+e._s(e.itemValue(t,a))+" ")]):e._e()})),e.deleteButton?s("td",[s("i",{staticClass:"tim-icons icon-trash-simple"})]):e._e()],{row:t})],2)})),0)])},Pa=[],Ia={name:"base-table",props:{deleteButton:Boolean,columns:{type:Array,default:()=>[],description:"Table columns"},data:{type:Array,default:()=>[],description:"Table data"},type:{type:String,default:"",description:"Whether table is striped or hover type"},theadClasses:{type:String,default:"",description:" css classes"},tbodyClasses:{type:String,default:"",description:" css classes"}},computed:{tableClass(){return this.type&&"table-"+this.type}},methods:{hasValue(e,t){return"undefined"!==e[t.toLowerCase()]},itemValue(e,t){let s=e[t.toLowerCase()];if(t.indexOf(".")>=0){let a=t.split(".");s=e,a.forEach((function(e){s=s[e]}))}return Array.isArray(s)?s=s.join(", "):s instanceof Date&&(s=de()(s,"DD/MM/YYYY").format("YYYY-MM-DD")),"None"==s&&(s=""),s}}},Ra=Ia,Ma=Object(c["a"])(Ra,Ea,Pa,!1,null,null,null),Na=(Ma.exports,function(){var e,t,s=this,a=s.$createElement,i=s._self._c||a;return i(s.tag,{tag:"component",staticClass:"btn",class:[{"btn-round":s.round},{"btn-block":s.block},{"btn-icon btn-fab":s.icon},(e={},e["btn-"+s.type]=s.type,e),(t={},t["btn-"+s.size]=s.size,t),{"btn-simple":s.simple},{"btn-link":s.link},{disabled:s.disabled&&"button"!==s.tag}],attrs:{type:"button"===s.tag?s.nativeType:"",disabled:s.disabled||s.loading},on:{click:s.handleClick}},[s._t("loading",[s.loading?i("i",{staticClass:"fas fa-spinner fa-spin"}):s._e()]),s._t("default")],2)}),ja=[],Ba={name:"base-button",props:{tag:{type:String,default:"button",description:"Button html tag"},round:Boolean,icon:Boolean,block:Boolean,loading:Boolean,disabled:Boolean,type:{type:String,default:"default",description:"Button type (primary|secondary|danger etc)"},nativeType:{type:String,default:"button",description:"Button native type (e.g button, input etc)"},size:{type:String,default:"",description:"Button size (sm|lg)"},simple:{type:Boolean,description:"Whether button is simple (outlined)"},link:{type:Boolean,description:"Whether button is a link (no borders or background)"}},methods:{handleClick(e){this.$emit("click",e)}}},Ha=Ba,Fa=Object(c["a"])(Ha,Na,ja,!1,null,null,null),Ga=Fa.exports,za=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("fade-transition",[e.visible?s("div",{staticClass:"alert",class:["alert-"+e.type,{"alert-with-icon":e.withIcon}],attrs:{role:"alert"}},[e.dismissible?s("div",{staticClass:"container"},[e._t("default"),e._t("dismiss-icon",[s("button",{staticClass:"close",attrs:{type:"button","aria-label":"Close"},on:{click:e.dismissAlert}},[s("span",{attrs:{"aria-hidden":"true"}},[s("i",{staticClass:"tim-icons icon-simple-remove"})])])])],2):e._t("default")],2):e._e()])},$a=[],Ka={name:"base-alert",components:{FadeTransition:q["a"]},props:{type:{type:String,default:"default",description:"Alert type"},dismissible:{type:Boolean,default:!1,description:"Whether alert is dismissible (closeable)"},withIcon:{type:Boolean,default:!1,description:"Whether alert contains icon"}},data(){return{visible:!0}},methods:{dismissAlert(){this.visible=!1}}},Ua=Ka,Ya=Object(c["a"])(Ua,za,$a,!1,null,null,null),Va=(Ya.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("button",{staticClass:"navbar-toggler",attrs:{type:"button","data-toggle":"collapse","data-target":"#"+e.target,"aria-controls":e.target,"aria-expanded":e.expanded,"aria-label":"Toggle navigation"},on:{click:e.handleClick}},[s("span"),s("span")])}),Qa=[],Ja={name:"close-button",props:{target:{type:[String,Number],description:"Close button target element"},expanded:{type:Boolean,description:"Whether button is expanded (aria-expanded attribute)"}},methods:{handleClick(e){this.$emit("click",e)}}},Xa=Ja,Za=Object(c["a"])(Xa,Va,Qa,!1,null,null,null),ei=(Za.exports,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"card",class:[e.type&&"card-"+e.type]},[e.$slots.image?s("div",{staticClass:"card-image"},[e._t("image")],2):e._e(),e.$slots.header||e.title?s("div",{staticClass:"card-header",class:e.headerClasses},[e._t("header",[s("h4",{staticClass:"card-title"},[e._v(e._s(e.title))]),e.subTitle?s("p",{staticClass:"card-category"},[e._v(e._s(e.subTitle))]):e._e()])],2):e._e(),e.$slots.default?s("div",{staticClass:"card-body"},[e._t("default")],2):e._e(),e.$slots["image-bottom"]?s("div",{staticClass:"card-image"},[e._t("image-bottom")],2):e._e(),e._t("raw-content"),e.$slots.footer?s("div",{staticClass:"card-footer",class:e.footerClasses},[e._t("footer")],2):e._e()],2)}),ti=[],si={name:"card",props:{title:{type:String,description:"Card title"},subTitle:{type:String,description:"Card subtitle"},type:{type:String,description:"Card type (e.g primary/danger etc)"},headerClasses:{type:[String,Object,Array],description:"Card header css classes"},bodyClasses:{type:[String,Object,Array],description:"Card body css classes"},footerClasses:{type:[String,Object,Array],description:"Card footer css classes"}}},ai=si,ii=Object(c["a"])(ai,ei,ti,!1,null,null,null),oi=ii.exports;const ni={install(e){e.component(ga.name,ga),e.component(oi.name,oi),e.component(Da.name,Da),e.component(Ga.name,Ga),e.component(ya.name,ya)}};var ri=ni,li={bind:function(e,t,s){e.clickOutsideEvent=function(a){e==a.target||e.contains(a.target)||s.context[t.expression](a)},document.body.addEventListener("click",e.clickOutsideEvent)},unbind:function(e){document.body.removeEventListener("click",e.clickOutsideEvent)}};const ui={install(e){e.directive("click-outside",li)}};var ci=ui,di={install(e){let t=new e({data(){return{isRTL:!1}},methods:{getDocClasses(){return document.body.classList},enableRTL(){this.isRTL=!0,this.getDocClasses().add("rtl"),this.getDocClasses().add("menu-on-right"),this.toggleBootstrapRTL(!0)},disableRTL(){this.isRTL=!1,this.getDocClasses().remove("rtl"),this.getDocClasses().remove("menu-on-right"),this.toggleBootstrapRTL(!1)},toggleBootstrapRTL(e){for(let t=0;te(m)}).$mount("#app")},"6a5d":function(e,t,s){},"6ae5":function(e,t,s){"use strict";var a=s("b5b2"),i=s.n(a);i.a},"874c":function(e){e.exports=JSON.parse('[{"technique_id":"T1001","technique_name":"Data Obfuscation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001 - Data Obfuscation"},{"technique_id":"T1001.001","technique_name":"Junk Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.001 - Junk Data"},{"technique_id":"T1001.002","technique_name":"Steganography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.002 - Steganography"},{"technique_id":"T1001.003","technique_name":"Protocol Impersonation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1001.003 - Protocol Impersonation"},{"technique_id":"T1003","technique_name":"OS Credential Dumping","platforms":["Linux","Windows","macOS"],"autosuggest":"T1003 - OS Credential Dumping"},{"technique_id":"T1003.001","technique_name":"LSASS Memory","platforms":["Windows"],"autosuggest":"T1003.001 - LSASS Memory"},{"technique_id":"T1003.002","technique_name":"Security Account Manager","platforms":["Windows"],"autosuggest":"T1003.002 - Security Account Manager"},{"technique_id":"T1003.003","technique_name":"NTDS","platforms":["Windows"],"autosuggest":"T1003.003 - NTDS"},{"technique_id":"T1003.004","technique_name":"LSA Secrets","platforms":["Windows"],"autosuggest":"T1003.004 - LSA Secrets"},{"technique_id":"T1003.005","technique_name":"Cached Domain Credentials","platforms":["Windows"],"autosuggest":"T1003.005 - Cached Domain Credentials"},{"technique_id":"T1003.006","technique_name":"DCSync","platforms":["Windows"],"autosuggest":"T1003.006 - DCSync"},{"technique_id":"T1003.007","technique_name":"Proc Filesystem","platforms":["Linux"],"autosuggest":"T1003.007 - Proc Filesystem"},{"technique_id":"T1003.008","technique_name":"/etc/passwd and /etc/shadow","platforms":["Linux"],"autosuggest":"T1003.008 - /etc/passwd and /etc/shadow"},{"technique_id":"T1005","technique_name":"Data from Local System","platforms":["Linux","Windows","macOS"],"autosuggest":"T1005 - Data from Local System"},{"technique_id":"T1006","technique_name":"Direct Volume Access","platforms":["Windows"],"autosuggest":"T1006 - Direct Volume Access"},{"technique_id":"T1007","technique_name":"System Service Discovery","platforms":["Windows"],"autosuggest":"T1007 - System Service Discovery"},{"technique_id":"T1008","technique_name":"Fallback Channels","platforms":["Linux","Windows","macOS"],"autosuggest":"T1008 - Fallback Channels"},{"technique_id":"T1010","technique_name":"Application Window Discovery","platforms":["Windows","macOS"],"autosuggest":"T1010 - Application Window Discovery"},{"technique_id":"T1011","technique_name":"Exfiltration Over Other Network Medium","platforms":["Linux","Windows","macOS"],"autosuggest":"T1011 - Exfiltration Over Other Network Medium"},{"technique_id":"T1011.001","technique_name":"Exfiltration Over Bluetooth","platforms":["Linux","Windows","macOS"],"autosuggest":"T1011.001 - Exfiltration Over Bluetooth"},{"technique_id":"T1012","technique_name":"Query Registry","platforms":["Windows"],"autosuggest":"T1012 - Query Registry"},{"technique_id":"T1014","technique_name":"Rootkit","platforms":["Linux","Windows","macOS"],"autosuggest":"T1014 - Rootkit"},{"technique_id":"T1016","technique_name":"System Network Configuration Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1016 - System Network Configuration Discovery"},{"technique_id":"T1018","technique_name":"Remote System Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1018 - Remote System Discovery"},{"technique_id":"T1020","technique_name":"Automated Exfiltration","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1020 - Automated Exfiltration"},{"technique_id":"T1020.001","technique_name":"Traffic Duplication","platforms":["Network"],"autosuggest":"T1020.001 - Traffic Duplication"},{"technique_id":"T1021","technique_name":"Remote Services","platforms":["Linux","Windows","macOS"],"autosuggest":"T1021 - Remote Services"},{"technique_id":"T1021.001","technique_name":"Remote Desktop Protocol","platforms":["Windows"],"autosuggest":"T1021.001 - Remote Desktop Protocol"},{"technique_id":"T1021.002","technique_name":"SMB/Windows Admin Shares","platforms":["Windows"],"autosuggest":"T1021.002 - SMB/Windows Admin Shares"},{"technique_id":"T1021.003","technique_name":"Distributed Component Object Model","platforms":["Windows"],"autosuggest":"T1021.003 - Distributed Component Object Model"},{"technique_id":"T1021.004","technique_name":"SSH","platforms":["Linux","macOS"],"autosuggest":"T1021.004 - SSH"},{"technique_id":"T1021.005","technique_name":"VNC","platforms":["Linux","Windows","macOS"],"autosuggest":"T1021.005 - VNC"},{"technique_id":"T1021.006","technique_name":"Windows Remote Management","platforms":["Windows"],"autosuggest":"T1021.006 - Windows Remote Management"},{"technique_id":"T1025","technique_name":"Data from Removable Media","platforms":["Linux","Windows","macOS"],"autosuggest":"T1025 - Data from Removable Media"},{"technique_id":"T1027","technique_name":"Obfuscated Files or Information","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027 - Obfuscated Files or Information"},{"technique_id":"T1027.001","technique_name":"Binary Padding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.001 - Binary Padding"},{"technique_id":"T1027.002","technique_name":"Software Packing","platforms":["Windows","macOS"],"autosuggest":"T1027.002 - Software Packing"},{"technique_id":"T1027.003","technique_name":"Steganography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.003 - Steganography"},{"technique_id":"T1027.004","technique_name":"Compile After Delivery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.004 - Compile After Delivery"},{"technique_id":"T1027.005","technique_name":"Indicator Removal from Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1027.005 - Indicator Removal from Tools"},{"technique_id":"T1029","technique_name":"Scheduled Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1029 - Scheduled Transfer"},{"technique_id":"T1030","technique_name":"Data Transfer Size Limits","platforms":["Linux","Windows","macOS"],"autosuggest":"T1030 - Data Transfer Size Limits"},{"technique_id":"T1033","technique_name":"System Owner/User Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1033 - System Owner/User Discovery"},{"technique_id":"T1036","technique_name":"Masquerading","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036 - Masquerading"},{"technique_id":"T1036.001","technique_name":"Invalid Code Signature","platforms":["Windows","macOS"],"autosuggest":"T1036.001 - Invalid Code Signature"},{"technique_id":"T1036.002","technique_name":"Right-to-Left Override","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.002 - Right-to-Left Override"},{"technique_id":"T1036.003","technique_name":"Rename System Utilities","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.003 - Rename System Utilities"},{"technique_id":"T1036.004","technique_name":"Masquerade Task or Service","platforms":["Linux","Windows"],"autosuggest":"T1036.004 - Masquerade Task or Service"},{"technique_id":"T1036.005","technique_name":"Match Legitimate Name or Location","platforms":["Linux","Windows","macOS"],"autosuggest":"T1036.005 - Match Legitimate Name or Location"},{"technique_id":"T1036.006","technique_name":"Space after Filename","platforms":["Linux","macOS"],"autosuggest":"T1036.006 - Space after Filename"},{"technique_id":"T1037","technique_name":"Boot or Logon Initialization Scripts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1037 - Boot or Logon Initialization Scripts"},{"technique_id":"T1037.001","technique_name":"Logon Script (Windows)","platforms":["Windows"],"autosuggest":"T1037.001 - Logon Script (Windows)"},{"technique_id":"T1037.002","technique_name":"Logon Script (Mac)","platforms":["macOS"],"autosuggest":"T1037.002 - Logon Script (Mac)"},{"technique_id":"T1037.003","technique_name":"Network Logon Script","platforms":["Windows"],"autosuggest":"T1037.003 - Network Logon Script"},{"technique_id":"T1037.004","technique_name":"Rc.common","platforms":["macOS"],"autosuggest":"T1037.004 - Rc.common"},{"technique_id":"T1037.005","technique_name":"Startup Items","platforms":["macOS"],"autosuggest":"T1037.005 - Startup Items"},{"technique_id":"T1039","technique_name":"Data from Network Shared Drive","platforms":["Linux","Windows","macOS"],"autosuggest":"T1039 - Data from Network Shared Drive"},{"technique_id":"T1040","technique_name":"Network Sniffing","platforms":["Linux","Windows","macOS"],"autosuggest":"T1040 - Network Sniffing"},{"technique_id":"T1041","technique_name":"Exfiltration Over C2 Channel","platforms":["Linux","Windows","macOS"],"autosuggest":"T1041 - Exfiltration Over C2 Channel"},{"technique_id":"T1046","technique_name":"Network Service Scanning","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1046 - Network Service Scanning"},{"technique_id":"T1047","technique_name":"Windows Management Instrumentation","platforms":["Windows"],"autosuggest":"T1047 - Windows Management Instrumentation"},{"technique_id":"T1048","technique_name":"Exfiltration Over Alternative Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048 - Exfiltration Over Alternative Protocol"},{"technique_id":"T1048.001","technique_name":"Exfiltration Over Symmetric Encrypted Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.001 - Exfiltration Over Symmetric Encrypted Non-C2 Protocol"},{"technique_id":"T1048.002","technique_name":"Exfiltration Over Asymmetric Encrypted Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.002 - Exfiltration Over Asymmetric Encrypted Non-C2 Protocol"},{"technique_id":"T1048.003","technique_name":"Exfiltration Over Unencrypted/Obfuscated Non-C2 Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1048.003 - Exfiltration Over Unencrypted/Obfuscated Non-C2 Protocol"},{"technique_id":"T1049","technique_name":"System Network Connections Discovery","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1049 - System Network Connections Discovery"},{"technique_id":"T1052","technique_name":"Exfiltration Over Physical Medium","platforms":["Linux","Windows","macOS"],"autosuggest":"T1052 - Exfiltration Over Physical Medium"},{"technique_id":"T1052.001","technique_name":"Exfiltration over USB","platforms":["Linux","Windows","macOS"],"autosuggest":"T1052.001 - Exfiltration over USB"},{"technique_id":"T1053","technique_name":"Scheduled Task/Job","platforms":["Linux","Windows","macOS"],"autosuggest":"T1053 - Scheduled Task/Job"},{"technique_id":"T1053.001","technique_name":"At (Linux)","platforms":["Linux"],"autosuggest":"T1053.001 - At (Linux)"},{"technique_id":"T1053.002","technique_name":"At (Windows)","platforms":["Windows"],"autosuggest":"T1053.002 - At (Windows)"},{"technique_id":"T1053.003","technique_name":"Cron","platforms":["Linux","macOS"],"autosuggest":"T1053.003 - Cron"},{"technique_id":"T1053.004","technique_name":"Launchd","platforms":["macOS"],"autosuggest":"T1053.004 - Launchd"},{"technique_id":"T1053.005","technique_name":"Scheduled Task","platforms":["Windows"],"autosuggest":"T1053.005 - Scheduled Task"},{"technique_id":"T1053.006","technique_name":"Systemd Timers","platforms":["Linux"],"autosuggest":"T1053.006 - Systemd Timers"},{"technique_id":"T1055","technique_name":"Process Injection","platforms":["Linux","Windows","macOS"],"autosuggest":"T1055 - Process Injection"},{"technique_id":"T1055.001","technique_name":"Dynamic-link Library Injection","platforms":["Windows"],"autosuggest":"T1055.001 - Dynamic-link Library Injection"},{"technique_id":"T1055.002","technique_name":"Portable Executable Injection","platforms":["Windows"],"autosuggest":"T1055.002 - Portable Executable Injection"},{"technique_id":"T1055.003","technique_name":"Thread Execution Hijacking","platforms":["Windows"],"autosuggest":"T1055.003 - Thread Execution Hijacking"},{"technique_id":"T1055.004","technique_name":"Asynchronous Procedure Call","platforms":["Windows"],"autosuggest":"T1055.004 - Asynchronous Procedure Call"},{"technique_id":"T1055.005","technique_name":"Thread Local Storage","platforms":["Windows"],"autosuggest":"T1055.005 - Thread Local Storage"},{"technique_id":"T1055.008","technique_name":"Ptrace System Calls","platforms":["Linux"],"autosuggest":"T1055.008 - Ptrace System Calls"},{"technique_id":"T1055.009","technique_name":"Proc Memory","platforms":["Linux"],"autosuggest":"T1055.009 - Proc Memory"},{"technique_id":"T1055.011","technique_name":"Extra Window Memory Injection","platforms":["Windows"],"autosuggest":"T1055.011 - Extra Window Memory Injection"},{"technique_id":"T1055.012","technique_name":"Process Hollowing","platforms":["Windows"],"autosuggest":"T1055.012 - Process Hollowing"},{"technique_id":"T1055.013","technique_name":"Process Doppelgänging","platforms":["Windows"],"autosuggest":"T1055.013 - Process Doppelgänging"},{"technique_id":"T1055.014","technique_name":"VDSO Hijacking","platforms":["Linux"],"autosuggest":"T1055.014 - VDSO Hijacking"},{"technique_id":"T1056","technique_name":"Input Capture","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1056 - Input Capture"},{"technique_id":"T1056.001","technique_name":"Keylogging","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1056.001 - Keylogging"},{"technique_id":"T1056.002","technique_name":"GUI Input Capture","platforms":["Windows","macOS"],"autosuggest":"T1056.002 - GUI Input Capture"},{"technique_id":"T1056.003","technique_name":"Web Portal Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1056.003 - Web Portal Capture"},{"technique_id":"T1056.004","technique_name":"Credential API Hooking","platforms":["Windows"],"autosuggest":"T1056.004 - Credential API Hooking"},{"technique_id":"T1057","technique_name":"Process Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1057 - Process Discovery"},{"technique_id":"T1059","technique_name":"Command and Scripting Interpreter","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1059 - Command and Scripting Interpreter"},{"technique_id":"T1059.001","technique_name":"PowerShell","platforms":["Windows"],"autosuggest":"T1059.001 - PowerShell"},{"technique_id":"T1059.002","technique_name":"AppleScript","platforms":["macOS"],"autosuggest":"T1059.002 - AppleScript"},{"technique_id":"T1059.003","technique_name":"Windows Command Shell","platforms":["Windows"],"autosuggest":"T1059.003 - Windows Command Shell"},{"technique_id":"T1059.004","technique_name":"Unix Shell","platforms":["Linux","macOS"],"autosuggest":"T1059.004 - Unix Shell"},{"technique_id":"T1059.005","technique_name":"Visual Basic","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.005 - Visual Basic"},{"technique_id":"T1059.006","technique_name":"Python","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.006 - Python"},{"technique_id":"T1059.007","technique_name":"JavaScript/JScript","platforms":["Linux","Windows","macOS"],"autosuggest":"T1059.007 - JavaScript/JScript"},{"technique_id":"T1059.008","technique_name":"Network Device CLI","platforms":["Network"],"autosuggest":"T1059.008 - Network Device CLI"},{"technique_id":"T1068","technique_name":"Exploitation for Privilege Escalation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1068 - Exploitation for Privilege Escalation"},{"technique_id":"T1069","technique_name":"Permission Groups Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1069 - Permission Groups Discovery"},{"technique_id":"T1069.001","technique_name":"Local Groups","platforms":["Linux","Windows","macOS"],"autosuggest":"T1069.001 - Local Groups"},{"technique_id":"T1069.002","technique_name":"Domain Groups","platforms":["Linux","Windows","macOS"],"autosuggest":"T1069.002 - Domain Groups"},{"technique_id":"T1069.003","technique_name":"Cloud Groups","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1069.003 - Cloud Groups"},{"technique_id":"T1070","technique_name":"Indicator Removal on Host","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070 - Indicator Removal on Host"},{"technique_id":"T1070.001","technique_name":"Clear Windows Event Logs","platforms":["Windows"],"autosuggest":"T1070.001 - Clear Windows Event Logs"},{"technique_id":"T1070.002","technique_name":"Clear Linux or Mac System Logs","platforms":["Linux","macOS"],"autosuggest":"T1070.002 - Clear Linux or Mac System Logs"},{"technique_id":"T1070.003","technique_name":"Clear Command History","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.003 - Clear Command History"},{"technique_id":"T1070.004","technique_name":"File Deletion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.004 - File Deletion"},{"technique_id":"T1070.005","technique_name":"Network Share Connection Removal","platforms":["Windows"],"autosuggest":"T1070.005 - Network Share Connection Removal"},{"technique_id":"T1070.006","technique_name":"Timestomp","platforms":["Linux","Windows","macOS"],"autosuggest":"T1070.006 - Timestomp"},{"technique_id":"T1071","technique_name":"Application Layer Protocol","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071 - Application Layer Protocol"},{"technique_id":"T1071.001","technique_name":"Web Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.001 - Web Protocols"},{"technique_id":"T1071.002","technique_name":"File Transfer Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.002 - File Transfer Protocols"},{"technique_id":"T1071.003","technique_name":"Mail Protocols","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.003 - Mail Protocols"},{"technique_id":"T1071.004","technique_name":"DNS","platforms":["Linux","Windows","macOS"],"autosuggest":"T1071.004 - DNS"},{"technique_id":"T1072","technique_name":"Software Deployment Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1072 - Software Deployment Tools"},{"technique_id":"T1074","technique_name":"Data Staged","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1074 - Data Staged"},{"technique_id":"T1074.001","technique_name":"Local Data Staging","platforms":["Linux","Windows","macOS"],"autosuggest":"T1074.001 - Local Data Staging"},{"technique_id":"T1074.002","technique_name":"Remote Data Staging","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1074.002 - Remote Data Staging"},{"technique_id":"T1078","technique_name":"Valid Accounts","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1078 - Valid Accounts"},{"technique_id":"T1078.001","technique_name":"Default Accounts","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1078.001 - Default Accounts"},{"technique_id":"T1078.002","technique_name":"Domain Accounts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1078.002 - Domain Accounts"},{"technique_id":"T1078.003","technique_name":"Local Accounts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1078.003 - Local Accounts"},{"technique_id":"T1078.004","technique_name":"Cloud Accounts","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1078.004 - Cloud Accounts"},{"technique_id":"T1080","technique_name":"Taint Shared Content","platforms":["Windows"],"autosuggest":"T1080 - Taint Shared Content"},{"technique_id":"T1082","technique_name":"System Information Discovery","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1082 - System Information Discovery"},{"technique_id":"T1083","technique_name":"File and Directory Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1083 - File and Directory Discovery"},{"technique_id":"T1087","technique_name":"Account Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1087 - Account Discovery"},{"technique_id":"T1087.001","technique_name":"Local Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1087.001 - Local Account"},{"technique_id":"T1087.002","technique_name":"Domain Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1087.002 - Domain Account"},{"technique_id":"T1087.003","technique_name":"Email Account","platforms":["Office 365","Windows"],"autosuggest":"T1087.003 - Email Account"},{"technique_id":"T1087.004","technique_name":"Cloud Account","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1087.004 - Cloud Account"},{"technique_id":"T1090","technique_name":"Proxy","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1090 - Proxy"},{"technique_id":"T1090.001","technique_name":"Internal Proxy","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.001 - Internal Proxy"},{"technique_id":"T1090.002","technique_name":"External Proxy","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.002 - External Proxy"},{"technique_id":"T1090.003","technique_name":"Multi-hop Proxy","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1090.003 - Multi-hop Proxy"},{"technique_id":"T1090.004","technique_name":"Domain Fronting","platforms":["Linux","Windows","macOS"],"autosuggest":"T1090.004 - Domain Fronting"},{"technique_id":"T1091","technique_name":"Replication Through Removable Media","platforms":["Windows"],"autosuggest":"T1091 - Replication Through Removable Media"},{"technique_id":"T1092","technique_name":"Communication Through Removable Media","platforms":["Linux","Windows","macOS"],"autosuggest":"T1092 - Communication Through Removable Media"},{"technique_id":"T1095","technique_name":"Non-Application Layer Protocol","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1095 - Non-Application Layer Protocol"},{"technique_id":"T1098","technique_name":"Account Manipulation","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","Windows","macOS"],"autosuggest":"T1098 - Account Manipulation"},{"technique_id":"T1098.001","technique_name":"Additional Cloud Credentials","platforms":["AWS","Azure","Azure AD","GCP"],"autosuggest":"T1098.001 - Additional Cloud Credentials"},{"technique_id":"T1098.002","technique_name":"Exchange Email Delegate Permissions","platforms":["Office 365","Windows"],"autosuggest":"T1098.002 - Exchange Email Delegate Permissions"},{"technique_id":"T1098.003","technique_name":"Add Office 365 Global Administrator Role","platforms":["Office 365"],"autosuggest":"T1098.003 - Add Office 365 Global Administrator Role"},{"technique_id":"T1098.004","technique_name":"SSH Authorized Keys","platforms":["Linux","macOS"],"autosuggest":"T1098.004 - SSH Authorized Keys"},{"technique_id":"T1102","technique_name":"Web Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102 - Web Service"},{"technique_id":"T1102.001","technique_name":"Dead Drop Resolver","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.001 - Dead Drop Resolver"},{"technique_id":"T1102.002","technique_name":"Bidirectional Communication","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.002 - Bidirectional Communication"},{"technique_id":"T1102.003","technique_name":"One-Way Communication","platforms":["Linux","Windows","macOS"],"autosuggest":"T1102.003 - One-Way Communication"},{"technique_id":"T1104","technique_name":"Multi-Stage Channels","platforms":["Linux","Windows","macOS"],"autosuggest":"T1104 - Multi-Stage Channels"},{"technique_id":"T1105","technique_name":"Ingress Tool Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1105 - Ingress Tool Transfer"},{"technique_id":"T1106","technique_name":"Native API","platforms":["Linux","Windows","macOS"],"autosuggest":"T1106 - Native API"},{"technique_id":"T1110","technique_name":"Brute Force","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110 - Brute Force"},{"technique_id":"T1110.001","technique_name":"Password Guessing","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.001 - Password Guessing"},{"technique_id":"T1110.002","technique_name":"Password Cracking","platforms":["Azure AD","Linux","Office 365","Windows","macOS"],"autosuggest":"T1110.002 - Password Cracking"},{"technique_id":"T1110.003","technique_name":"Password Spraying","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.003 - Password Spraying"},{"technique_id":"T1110.004","technique_name":"Credential Stuffing","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1110.004 - Credential Stuffing"},{"technique_id":"T1111","technique_name":"Two-Factor Authentication Interception","platforms":["Linux","Windows","macOS"],"autosuggest":"T1111 - Two-Factor Authentication Interception"},{"technique_id":"T1112","technique_name":"Modify Registry","platforms":["Windows"],"autosuggest":"T1112 - Modify Registry"},{"technique_id":"T1113","technique_name":"Screen Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1113 - Screen Capture"},{"technique_id":"T1114","technique_name":"Email Collection","platforms":["Office 365","Windows"],"autosuggest":"T1114 - Email Collection"},{"technique_id":"T1114.001","technique_name":"Local Email Collection","platforms":["Windows"],"autosuggest":"T1114.001 - Local Email Collection"},{"technique_id":"T1114.002","technique_name":"Remote Email Collection","platforms":["Office 365","Windows"],"autosuggest":"T1114.002 - Remote Email Collection"},{"technique_id":"T1114.003","technique_name":"Email Forwarding Rule","platforms":["Office 365","Windows"],"autosuggest":"T1114.003 - Email Forwarding Rule"},{"technique_id":"T1115","technique_name":"Clipboard Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1115 - Clipboard Data"},{"technique_id":"T1119","technique_name":"Automated Collection","platforms":["Linux","Windows","macOS"],"autosuggest":"T1119 - Automated Collection"},{"technique_id":"T1120","technique_name":"Peripheral Device Discovery","platforms":["Windows","macOS"],"autosuggest":"T1120 - Peripheral Device Discovery"},{"technique_id":"T1123","technique_name":"Audio Capture","platforms":["Linux","Windows","macOS"],"autosuggest":"T1123 - Audio Capture"},{"technique_id":"T1124","technique_name":"System Time Discovery","platforms":["Windows"],"autosuggest":"T1124 - System Time Discovery"},{"technique_id":"T1125","technique_name":"Video Capture","platforms":["Windows","macOS"],"autosuggest":"T1125 - Video Capture"},{"technique_id":"T1127","technique_name":"Trusted Developer Utilities Proxy Execution","platforms":["Windows"],"autosuggest":"T1127 - Trusted Developer Utilities Proxy Execution"},{"technique_id":"T1127.001","technique_name":"MSBuild","platforms":["Windows"],"autosuggest":"T1127.001 - MSBuild"},{"technique_id":"T1129","technique_name":"Shared Modules","platforms":["Windows"],"autosuggest":"T1129 - Shared Modules"},{"technique_id":"T1132","technique_name":"Data Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132 - Data Encoding"},{"technique_id":"T1132.001","technique_name":"Standard Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132.001 - Standard Encoding"},{"technique_id":"T1132.002","technique_name":"Non-Standard Encoding","platforms":["Linux","Windows","macOS"],"autosuggest":"T1132.002 - Non-Standard Encoding"},{"technique_id":"T1133","technique_name":"External Remote Services","platforms":["Linux","Windows"],"autosuggest":"T1133 - External Remote Services"},{"technique_id":"T1134","technique_name":"Access Token Manipulation","platforms":["Windows"],"autosuggest":"T1134 - Access Token Manipulation"},{"technique_id":"T1134.001","technique_name":"Token Impersonation/Theft","platforms":["Windows"],"autosuggest":"T1134.001 - Token Impersonation/Theft"},{"technique_id":"T1134.002","technique_name":"Create Process with Token","platforms":["Windows"],"autosuggest":"T1134.002 - Create Process with Token"},{"technique_id":"T1134.003","technique_name":"Make and Impersonate Token","platforms":["Windows"],"autosuggest":"T1134.003 - Make and Impersonate Token"},{"technique_id":"T1134.004","technique_name":"Parent PID Spoofing","platforms":["Windows"],"autosuggest":"T1134.004 - Parent PID Spoofing"},{"technique_id":"T1134.005","technique_name":"SID-History Injection","platforms":["Windows"],"autosuggest":"T1134.005 - SID-History Injection"},{"technique_id":"T1135","technique_name":"Network Share Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1135 - Network Share Discovery"},{"technique_id":"T1136","technique_name":"Create Account","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","Windows","macOS"],"autosuggest":"T1136 - Create Account"},{"technique_id":"T1136.001","technique_name":"Local Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1136.001 - Local Account"},{"technique_id":"T1136.002","technique_name":"Domain Account","platforms":["Linux","Windows","macOS"],"autosuggest":"T1136.002 - Domain Account"},{"technique_id":"T1136.003","technique_name":"Cloud Account","platforms":["AWS","Azure","Azure AD","GCP","Office 365"],"autosuggest":"T1136.003 - Cloud Account"},{"technique_id":"T1137","technique_name":"Office Application Startup","platforms":["Office 365","Windows"],"autosuggest":"T1137 - Office Application Startup"},{"technique_id":"T1137.001","technique_name":"Office Template Macros","platforms":["Office 365","Windows"],"autosuggest":"T1137.001 - Office Template Macros"},{"technique_id":"T1137.002","technique_name":"Office Test","platforms":["Office 365","Windows"],"autosuggest":"T1137.002 - Office Test"},{"technique_id":"T1137.003","technique_name":"Outlook Forms","platforms":["Office 365","Windows"],"autosuggest":"T1137.003 - Outlook Forms"},{"technique_id":"T1137.004","technique_name":"Outlook Home Page","platforms":["Office 365","Windows"],"autosuggest":"T1137.004 - Outlook Home Page"},{"technique_id":"T1137.005","technique_name":"Outlook Rules","platforms":["Office 365","Windows"],"autosuggest":"T1137.005 - Outlook Rules"},{"technique_id":"T1137.006","technique_name":"Add-ins","platforms":["Office 365","Windows"],"autosuggest":"T1137.006 - Add-ins"},{"technique_id":"T1140","technique_name":"Deobfuscate/Decode Files or Information","platforms":["Linux","Windows","macOS"],"autosuggest":"T1140 - Deobfuscate/Decode Files or Information"},{"technique_id":"T1176","technique_name":"Browser Extensions","platforms":["Linux","Windows","macOS"],"autosuggest":"T1176 - Browser Extensions"},{"technique_id":"T1185","technique_name":"Man in the Browser","platforms":["Windows"],"autosuggest":"T1185 - Man in the Browser"},{"technique_id":"T1187","technique_name":"Forced Authentication","platforms":["Windows"],"autosuggest":"T1187 - Forced Authentication"},{"technique_id":"T1189","technique_name":"Drive-by Compromise","platforms":["Linux","SaaS","Windows","macOS"],"autosuggest":"T1189 - Drive-by Compromise"},{"technique_id":"T1190","technique_name":"Exploit Public-Facing Application","platforms":["AWS","Azure","GCP","Linux","Network","Windows","macOS"],"autosuggest":"T1190 - Exploit Public-Facing Application"},{"technique_id":"T1195","technique_name":"Supply Chain Compromise","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195 - Supply Chain Compromise"},{"technique_id":"T1195.001","technique_name":"Compromise Software Dependencies and Development Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.001 - Compromise Software Dependencies and Development Tools"},{"technique_id":"T1195.002","technique_name":"Compromise Software Supply Chain","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.002 - Compromise Software Supply Chain"},{"technique_id":"T1195.003","technique_name":"Compromise Hardware Supply Chain","platforms":["Linux","Windows","macOS"],"autosuggest":"T1195.003 - Compromise Hardware Supply Chain"},{"technique_id":"T1197","technique_name":"BITS Jobs","platforms":["Windows"],"autosuggest":"T1197 - BITS Jobs"},{"technique_id":"T1199","technique_name":"Trusted Relationship","platforms":["AWS","Azure","GCP","Linux","SaaS","Windows","macOS"],"autosuggest":"T1199 - Trusted Relationship"},{"technique_id":"T1200","technique_name":"Hardware Additions","platforms":["Linux","Windows","macOS"],"autosuggest":"T1200 - Hardware Additions"},{"technique_id":"T1201","technique_name":"Password Policy Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1201 - Password Policy Discovery"},{"technique_id":"T1202","technique_name":"Indirect Command Execution","platforms":["Windows"],"autosuggest":"T1202 - Indirect Command Execution"},{"technique_id":"T1203","technique_name":"Exploitation for Client Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1203 - Exploitation for Client Execution"},{"technique_id":"T1204","technique_name":"User Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204 - User Execution"},{"technique_id":"T1204.001","technique_name":"Malicious Link","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204.001 - Malicious Link"},{"technique_id":"T1204.002","technique_name":"Malicious File","platforms":["Linux","Windows","macOS"],"autosuggest":"T1204.002 - Malicious File"},{"technique_id":"T1205","technique_name":"Traffic Signaling","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1205 - Traffic Signaling"},{"technique_id":"T1205.001","technique_name":"Port Knocking","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1205.001 - Port Knocking"},{"technique_id":"T1207","technique_name":"Rogue Domain Controller","platforms":["Windows"],"autosuggest":"T1207 - Rogue Domain Controller"},{"technique_id":"T1210","technique_name":"Exploitation of Remote Services","platforms":["Linux","Windows","macOS"],"autosuggest":"T1210 - Exploitation of Remote Services"},{"technique_id":"T1211","technique_name":"Exploitation for Defense Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1211 - Exploitation for Defense Evasion"},{"technique_id":"T1212","technique_name":"Exploitation for Credential Access","platforms":["Linux","Windows","macOS"],"autosuggest":"T1212 - Exploitation for Credential Access"},{"technique_id":"T1213","technique_name":"Data from Information Repositories","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1213 - Data from Information Repositories"},{"technique_id":"T1213.001","technique_name":"Confluence","platforms":["SaaS"],"autosuggest":"T1213.001 - Confluence"},{"technique_id":"T1213.002","technique_name":"Sharepoint","platforms":["Office 365","Windows"],"autosuggest":"T1213.002 - Sharepoint"},{"technique_id":"T1216","technique_name":"Signed Script Proxy Execution","platforms":["Windows"],"autosuggest":"T1216 - Signed Script Proxy Execution"},{"technique_id":"T1216.001","technique_name":"PubPrn","platforms":["Windows"],"autosuggest":"T1216.001 - PubPrn"},{"technique_id":"T1217","technique_name":"Browser Bookmark Discovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1217 - Browser Bookmark Discovery"},{"technique_id":"T1218","technique_name":"Signed Binary Proxy Execution","platforms":["Windows"],"autosuggest":"T1218 - Signed Binary Proxy Execution"},{"technique_id":"T1218.001","technique_name":"Compiled HTML File","platforms":["Windows"],"autosuggest":"T1218.001 - Compiled HTML File"},{"technique_id":"T1218.002","technique_name":"Control Panel","platforms":["Windows"],"autosuggest":"T1218.002 - Control Panel"},{"technique_id":"T1218.003","technique_name":"CMSTP","platforms":["Windows"],"autosuggest":"T1218.003 - CMSTP"},{"technique_id":"T1218.004","technique_name":"InstallUtil","platforms":["Windows"],"autosuggest":"T1218.004 - InstallUtil"},{"technique_id":"T1218.005","technique_name":"Mshta","platforms":["Windows"],"autosuggest":"T1218.005 - Mshta"},{"technique_id":"T1218.007","technique_name":"Msiexec","platforms":["Windows"],"autosuggest":"T1218.007 - Msiexec"},{"technique_id":"T1218.008","technique_name":"Odbcconf","platforms":["Windows"],"autosuggest":"T1218.008 - Odbcconf"},{"technique_id":"T1218.009","technique_name":"Regsvcs/Regasm","platforms":["Windows"],"autosuggest":"T1218.009 - Regsvcs/Regasm"},{"technique_id":"T1218.010","technique_name":"Regsvr32","platforms":["Windows"],"autosuggest":"T1218.010 - Regsvr32"},{"technique_id":"T1218.011","technique_name":"Rundll32","platforms":["Windows"],"autosuggest":"T1218.011 - Rundll32"},{"technique_id":"T1218.012","technique_name":"Verclsid","platforms":["Windows"],"autosuggest":"T1218.012 - Verclsid"},{"technique_id":"T1219","technique_name":"Remote Access Software","platforms":["Linux","Windows","macOS"],"autosuggest":"T1219 - Remote Access Software"},{"technique_id":"T1220","technique_name":"XSL Script Processing","platforms":["Windows"],"autosuggest":"T1220 - XSL Script Processing"},{"technique_id":"T1221","technique_name":"Template Injection","platforms":["Windows"],"autosuggest":"T1221 - Template Injection"},{"technique_id":"T1222","technique_name":"File and Directory Permissions Modification","platforms":["Linux","Windows","macOS"],"autosuggest":"T1222 - File and Directory Permissions Modification"},{"technique_id":"T1222.001","technique_name":"Windows File and Directory Permissions Modification","platforms":["Windows"],"autosuggest":"T1222.001 - Windows File and Directory Permissions Modification"},{"technique_id":"T1222.002","technique_name":"Linux and Mac File and Directory Permissions Modification","platforms":["Linux","macOS"],"autosuggest":"T1222.002 - Linux and Mac File and Directory Permissions Modification"},{"technique_id":"T1480","technique_name":"Execution Guardrails","platforms":["Linux","Windows","macOS"],"autosuggest":"T1480 - Execution Guardrails"},{"technique_id":"T1480.001","technique_name":"Environmental Keying","platforms":["Linux","Windows","macOS"],"autosuggest":"T1480.001 - Environmental Keying"},{"technique_id":"T1482","technique_name":"Domain Trust Discovery","platforms":["Windows"],"autosuggest":"T1482 - Domain Trust Discovery"},{"technique_id":"T1484","technique_name":"Group Policy Modification","platforms":["Windows"],"autosuggest":"T1484 - Group Policy Modification"},{"technique_id":"T1484.001","technique_name":"Group Policy Modification","platforms":["Windows"],"autosuggest":"T1484.001 - Group Policy Modification"},{"technique_id":"T1484.002","technique_name":"Domain Trust Modification","platforms":["Azure AD","Windows"],"autosuggest":"T1484.002 - Domain Trust Modification"},{"technique_id":"T1485","technique_name":"Data Destruction","platforms":["Linux","Windows","macOS"],"autosuggest":"T1485 - Data Destruction"},{"technique_id":"T1486","technique_name":"Data Encrypted for Impact","platforms":["Linux","Windows","macOS"],"autosuggest":"T1486 - Data Encrypted for Impact"},{"technique_id":"T1489","technique_name":"Service Stop","platforms":["Linux","Windows","macOS"],"autosuggest":"T1489 - Service Stop"},{"technique_id":"T1490","technique_name":"Inhibit System Recovery","platforms":["Linux","Windows","macOS"],"autosuggest":"T1490 - Inhibit System Recovery"},{"technique_id":"T1491","technique_name":"Defacement","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1491 - Defacement"},{"technique_id":"T1491.001","technique_name":"Internal Defacement","platforms":["Linux","Windows","macOS"],"autosuggest":"T1491.001 - Internal Defacement"},{"technique_id":"T1491.002","technique_name":"External Defacement","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1491.002 - External Defacement"},{"technique_id":"T1495","technique_name":"Firmware Corruption","platforms":["Linux","Windows","macOS"],"autosuggest":"T1495 - Firmware Corruption"},{"technique_id":"T1496","technique_name":"Resource Hijacking","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1496 - Resource Hijacking"},{"technique_id":"T1497","technique_name":"Virtualization/Sandbox Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497 - Virtualization/Sandbox Evasion"},{"technique_id":"T1497.001","technique_name":"System Checks","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.001 - System Checks"},{"technique_id":"T1497.002","technique_name":"User Activity Based Checks","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.002 - User Activity Based Checks"},{"technique_id":"T1497.003","technique_name":"Time Based Evasion","platforms":["Linux","Windows","macOS"],"autosuggest":"T1497.003 - Time Based Evasion"},{"technique_id":"T1498","technique_name":"Network Denial of Service","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498 - Network Denial of Service"},{"technique_id":"T1498.001","technique_name":"Direct Network Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498.001 - Direct Network Flood"},{"technique_id":"T1498.002","technique_name":"Reflection Amplification","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1498.002 - Reflection Amplification"},{"technique_id":"T1499","technique_name":"Endpoint Denial of Service","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499 - Endpoint Denial of Service"},{"technique_id":"T1499.001","technique_name":"OS Exhaustion Flood","platforms":["Linux","Windows","macOS"],"autosuggest":"T1499.001 - OS Exhaustion Flood"},{"technique_id":"T1499.002","technique_name":"Service Exhaustion Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.002 - Service Exhaustion Flood"},{"technique_id":"T1499.003","technique_name":"Application Exhaustion Flood","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.003 - Application Exhaustion Flood"},{"technique_id":"T1499.004","technique_name":"Application or System Exploitation","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1499.004 - Application or System Exploitation"},{"technique_id":"T1505","technique_name":"Server Software Component","platforms":["Linux","Windows","macOS"],"autosuggest":"T1505 - Server Software Component"},{"technique_id":"T1505.001","technique_name":"SQL Stored Procedures","platforms":["Linux","Windows"],"autosuggest":"T1505.001 - SQL Stored Procedures"},{"technique_id":"T1505.002","technique_name":"Transport Agent","platforms":["Linux","Windows"],"autosuggest":"T1505.002 - Transport Agent"},{"technique_id":"T1505.003","technique_name":"Web Shell","platforms":["Linux","Windows","macOS"],"autosuggest":"T1505.003 - Web Shell"},{"technique_id":"T1518","technique_name":"Software Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1518 - Software Discovery"},{"technique_id":"T1518.001","technique_name":"Security Software Discovery","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1518.001 - Security Software Discovery"},{"technique_id":"T1525","technique_name":"Implant Container Image","platforms":["AWS","Azure","GCP"],"autosuggest":"T1525 - Implant Container Image"},{"technique_id":"T1526","technique_name":"Cloud Service Discovery","platforms":["AWS","Azure","Azure AD","GCP","Office 365","SaaS"],"autosuggest":"T1526 - Cloud Service Discovery"},{"technique_id":"T1528","technique_name":"Steal Application Access Token","platforms":["Azure AD","Office 365","SaaS"],"autosuggest":"T1528 - Steal Application Access Token"},{"technique_id":"T1529","technique_name":"System Shutdown/Reboot","platforms":["Linux","Windows","macOS"],"autosuggest":"T1529 - System Shutdown/Reboot"},{"technique_id":"T1530","technique_name":"Data from Cloud Storage Object","platforms":["AWS","Azure","GCP"],"autosuggest":"T1530 - Data from Cloud Storage Object"},{"technique_id":"T1531","technique_name":"Account Access Removal","platforms":["Linux","Windows","macOS"],"autosuggest":"T1531 - Account Access Removal"},{"technique_id":"T1534","technique_name":"Internal Spearphishing","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1534 - Internal Spearphishing"},{"technique_id":"T1535","technique_name":"Unused/Unsupported Cloud Regions","platforms":["AWS","Azure","GCP"],"autosuggest":"T1535 - Unused/Unsupported Cloud Regions"},{"technique_id":"T1537","technique_name":"Transfer Data to Cloud Account","platforms":["AWS","Azure","GCP"],"autosuggest":"T1537 - Transfer Data to Cloud Account"},{"technique_id":"T1538","technique_name":"Cloud Service Dashboard","platforms":["AWS","Azure","Azure AD","GCP","Office 365"],"autosuggest":"T1538 - Cloud Service Dashboard"},{"technique_id":"T1539","technique_name":"Steal Web Session Cookie","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1539 - Steal Web Session Cookie"},{"technique_id":"T1542","technique_name":"Pre-OS Boot","platforms":["Linux","Network","Windows"],"autosuggest":"T1542 - Pre-OS Boot"},{"technique_id":"T1542.001","technique_name":"System Firmware","platforms":["Windows"],"autosuggest":"T1542.001 - System Firmware"},{"technique_id":"T1542.002","technique_name":"Component Firmware","platforms":["Windows"],"autosuggest":"T1542.002 - Component Firmware"},{"technique_id":"T1542.003","technique_name":"Bootkit","platforms":["Linux","Windows"],"autosuggest":"T1542.003 - Bootkit"},{"technique_id":"T1542.004","technique_name":"ROMMONkit","platforms":["Network"],"autosuggest":"T1542.004 - ROMMONkit"},{"technique_id":"T1542.005","technique_name":"TFTP Boot","platforms":["Network"],"autosuggest":"T1542.005 - TFTP Boot"},{"technique_id":"T1543","technique_name":"Create or Modify System Process","platforms":["Linux","Windows","macOS"],"autosuggest":"T1543 - Create or Modify System Process"},{"technique_id":"T1543.001","technique_name":"Launch Agent","platforms":["macOS"],"autosuggest":"T1543.001 - Launch Agent"},{"technique_id":"T1543.002","technique_name":"Systemd Service","platforms":["Linux"],"autosuggest":"T1543.002 - Systemd Service"},{"technique_id":"T1543.003","technique_name":"Windows Service","platforms":["Windows"],"autosuggest":"T1543.003 - Windows Service"},{"technique_id":"T1543.004","technique_name":"Launch Daemon","platforms":["macOS"],"autosuggest":"T1543.004 - Launch Daemon"},{"technique_id":"T1546","technique_name":"Event Triggered Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1546 - Event Triggered Execution"},{"technique_id":"T1546.001","technique_name":"Change Default File Association","platforms":["Windows"],"autosuggest":"T1546.001 - Change Default File Association"},{"technique_id":"T1546.002","technique_name":"Screensaver","platforms":["Windows"],"autosuggest":"T1546.002 - Screensaver"},{"technique_id":"T1546.003","technique_name":"Windows Management Instrumentation Event Subscription","platforms":["Windows"],"autosuggest":"T1546.003 - Windows Management Instrumentation Event Subscription"},{"technique_id":"T1546.004","technique_name":".bash_profile and .bashrc","platforms":["Linux","macOS"],"autosuggest":"T1546.004 - .bash_profile and .bashrc"},{"technique_id":"T1546.005","technique_name":"Trap","platforms":["Linux","macOS"],"autosuggest":"T1546.005 - Trap"},{"technique_id":"T1546.006","technique_name":"LC_LOAD_DYLIB Addition","platforms":["macOS"],"autosuggest":"T1546.006 - LC_LOAD_DYLIB Addition"},{"technique_id":"T1546.007","technique_name":"Netsh Helper DLL","platforms":["Windows"],"autosuggest":"T1546.007 - Netsh Helper DLL"},{"technique_id":"T1546.008","technique_name":"Accessibility Features","platforms":["Windows"],"autosuggest":"T1546.008 - Accessibility Features"},{"technique_id":"T1546.009","technique_name":"AppCert DLLs","platforms":["Windows"],"autosuggest":"T1546.009 - AppCert DLLs"},{"technique_id":"T1546.010","technique_name":"AppInit DLLs","platforms":["Windows"],"autosuggest":"T1546.010 - AppInit DLLs"},{"technique_id":"T1546.011","technique_name":"Application Shimming","platforms":["Windows"],"autosuggest":"T1546.011 - Application Shimming"},{"technique_id":"T1546.012","technique_name":"Image File Execution Options Injection","platforms":["Windows"],"autosuggest":"T1546.012 - Image File Execution Options Injection"},{"technique_id":"T1546.013","technique_name":"PowerShell Profile","platforms":["Windows"],"autosuggest":"T1546.013 - PowerShell Profile"},{"technique_id":"T1546.014","technique_name":"Emond","platforms":["macOS"],"autosuggest":"T1546.014 - Emond"},{"technique_id":"T1546.015","technique_name":"Component Object Model Hijacking","platforms":["Windows"],"autosuggest":"T1546.015 - Component Object Model Hijacking"},{"technique_id":"T1547","technique_name":"Boot or Logon Autostart Execution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1547 - Boot or Logon Autostart Execution"},{"technique_id":"T1547.001","technique_name":"Registry Run Keys / Startup Folder","platforms":["Windows"],"autosuggest":"T1547.001 - Registry Run Keys / Startup Folder"},{"technique_id":"T1547.002","technique_name":"Authentication Package","platforms":["Windows"],"autosuggest":"T1547.002 - Authentication Package"},{"technique_id":"T1547.003","technique_name":"Time Providers","platforms":["Windows"],"autosuggest":"T1547.003 - Time Providers"},{"technique_id":"T1547.004","technique_name":"Winlogon Helper DLL","platforms":["Windows"],"autosuggest":"T1547.004 - Winlogon Helper DLL"},{"technique_id":"T1547.005","technique_name":"Security Support Provider","platforms":["Windows"],"autosuggest":"T1547.005 - Security Support Provider"},{"technique_id":"T1547.006","technique_name":"Kernel Modules and Extensions","platforms":["Linux","macOS"],"autosuggest":"T1547.006 - Kernel Modules and Extensions"},{"technique_id":"T1547.007","technique_name":"Re-opened Applications","platforms":["macOS"],"autosuggest":"T1547.007 - Re-opened Applications"},{"technique_id":"T1547.008","technique_name":"LSASS Driver","platforms":["Windows"],"autosuggest":"T1547.008 - LSASS Driver"},{"technique_id":"T1547.009","technique_name":"Shortcut Modification","platforms":["Windows"],"autosuggest":"T1547.009 - Shortcut Modification"},{"technique_id":"T1547.010","technique_name":"Port Monitors","platforms":["Windows"],"autosuggest":"T1547.010 - Port Monitors"},{"technique_id":"T1547.011","technique_name":"Plist Modification","platforms":["macOS"],"autosuggest":"T1547.011 - Plist Modification"},{"technique_id":"T1547.012","technique_name":"Print Processors","platforms":["Windows"],"autosuggest":"T1547.012 - Print Processors"},{"technique_id":"T1548","technique_name":"Abuse Elevation Control Mechanism","platforms":["Linux","Windows","macOS"],"autosuggest":"T1548 - Abuse Elevation Control Mechanism"},{"technique_id":"T1548.001","technique_name":"Setuid and Setgid","platforms":["Linux","macOS"],"autosuggest":"T1548.001 - Setuid and Setgid"},{"technique_id":"T1548.002","technique_name":"Bypass User Account Control","platforms":["Windows"],"autosuggest":"T1548.002 - Bypass User Account Control"},{"technique_id":"T1548.003","technique_name":"Sudo and Sudo Caching","platforms":["Linux","macOS"],"autosuggest":"T1548.003 - Sudo and Sudo Caching"},{"technique_id":"T1548.004","technique_name":"Elevated Execution with Prompt","platforms":["macOS"],"autosuggest":"T1548.004 - Elevated Execution with Prompt"},{"technique_id":"T1550","technique_name":"Use Alternate Authentication Material","platforms":["Office 365","SaaS","Windows"],"autosuggest":"T1550 - Use Alternate Authentication Material"},{"technique_id":"T1550.001","technique_name":"Application Access Token","platforms":["Office 365","SaaS"],"autosuggest":"T1550.001 - Application Access Token"},{"technique_id":"T1550.002","technique_name":"Pass the Hash","platforms":["Windows"],"autosuggest":"T1550.002 - Pass the Hash"},{"technique_id":"T1550.003","technique_name":"Pass the Ticket","platforms":["Windows"],"autosuggest":"T1550.003 - Pass the Ticket"},{"technique_id":"T1550.004","technique_name":"Web Session Cookie","platforms":["Office 365","SaaS"],"autosuggest":"T1550.004 - Web Session Cookie"},{"technique_id":"T1552","technique_name":"Unsecured Credentials","platforms":["AWS","Azure","Azure AD","GCP","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1552 - Unsecured Credentials"},{"technique_id":"T1552.001","technique_name":"Credentials In Files","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1552.001 - Credentials In Files"},{"technique_id":"T1552.002","technique_name":"Credentials in Registry","platforms":["Windows"],"autosuggest":"T1552.002 - Credentials in Registry"},{"technique_id":"T1552.003","technique_name":"Bash History","platforms":["Linux","macOS"],"autosuggest":"T1552.003 - Bash History"},{"technique_id":"T1552.004","technique_name":"Private Keys","platforms":["Linux","Windows","macOS"],"autosuggest":"T1552.004 - Private Keys"},{"technique_id":"T1552.005","technique_name":"Cloud Instance Metadata API","platforms":["AWS","Azure","GCP"],"autosuggest":"T1552.005 - Cloud Instance Metadata API"},{"technique_id":"T1552.006","technique_name":"Group Policy Preferences","platforms":["Windows"],"autosuggest":"T1552.006 - Group Policy Preferences"},{"technique_id":"T1553","technique_name":"Subvert Trust Controls","platforms":["Linux","Windows","macOS"],"autosuggest":"T1553 - Subvert Trust Controls"},{"technique_id":"T1553.001","technique_name":"Gatekeeper Bypass","platforms":["macOS"],"autosuggest":"T1553.001 - Gatekeeper Bypass"},{"technique_id":"T1553.002","technique_name":"Code Signing","platforms":["Windows","macOS"],"autosuggest":"T1553.002 - Code Signing"},{"technique_id":"T1553.003","technique_name":"SIP and Trust Provider Hijacking","platforms":["Windows"],"autosuggest":"T1553.003 - SIP and Trust Provider Hijacking"},{"technique_id":"T1553.004","technique_name":"Install Root Certificate","platforms":["Linux","Windows","macOS"],"autosuggest":"T1553.004 - Install Root Certificate"},{"technique_id":"T1554","technique_name":"Compromise Client Software Binary","platforms":["Linux","Windows","macOS"],"autosuggest":"T1554 - Compromise Client Software Binary"},{"technique_id":"T1555","technique_name":"Credentials from Password Stores","platforms":["Linux","Windows","macOS"],"autosuggest":"T1555 - Credentials from Password Stores"},{"technique_id":"T1555.001","technique_name":"Keychain","platforms":["macOS"],"autosuggest":"T1555.001 - Keychain"},{"technique_id":"T1555.002","technique_name":"Securityd Memory","platforms":["Linux","macOS"],"autosuggest":"T1555.002 - Securityd Memory"},{"technique_id":"T1555.003","technique_name":"Credentials from Web Browsers","platforms":["Linux","Windows","macOS"],"autosuggest":"T1555.003 - Credentials from Web Browsers"},{"technique_id":"T1556","technique_name":"Modify Authentication Process","platforms":["Linux","Network","Windows","macOS"],"autosuggest":"T1556 - Modify Authentication Process"},{"technique_id":"T1556.001","technique_name":"Domain Controller Authentication","platforms":["Windows"],"autosuggest":"T1556.001 - Domain Controller Authentication"},{"technique_id":"T1556.002","technique_name":"Password Filter DLL","platforms":["Windows"],"autosuggest":"T1556.002 - Password Filter DLL"},{"technique_id":"T1556.003","technique_name":"Pluggable Authentication Modules","platforms":["Linux","macOS"],"autosuggest":"T1556.003 - Pluggable Authentication Modules"},{"technique_id":"T1556.004","technique_name":"Network Device Authentication","platforms":["Network"],"autosuggest":"T1556.004 - Network Device Authentication"},{"technique_id":"T1557","technique_name":"Man-in-the-Middle","platforms":["Linux","Windows","macOS"],"autosuggest":"T1557 - Man-in-the-Middle"},{"technique_id":"T1557.001","technique_name":"LLMNR/NBT-NS Poisoning and SMB Relay","platforms":["Windows"],"autosuggest":"T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay"},{"technique_id":"T1557.002","technique_name":"ARP Cache Poisoning","platforms":["Linux","Windows","macOS"],"autosuggest":"T1557.002 - ARP Cache Poisoning"},{"technique_id":"T1558","technique_name":"Steal or Forge Kerberos Tickets","platforms":["Windows"],"autosuggest":"T1558 - Steal or Forge Kerberos Tickets"},{"technique_id":"T1558.001","technique_name":"Golden Ticket","platforms":["Windows"],"autosuggest":"T1558.001 - Golden Ticket"},{"technique_id":"T1558.002","technique_name":"Silver Ticket","platforms":["Windows"],"autosuggest":"T1558.002 - Silver Ticket"},{"technique_id":"T1558.003","technique_name":"Kerberoasting","platforms":["Windows"],"autosuggest":"T1558.003 - Kerberoasting"},{"technique_id":"T1558.004","technique_name":"AS-REP Roasting","platforms":["Windows"],"autosuggest":"T1558.004 - AS-REP Roasting"},{"technique_id":"T1559","technique_name":"Inter-Process Communication","platforms":["Windows"],"autosuggest":"T1559 - Inter-Process Communication"},{"technique_id":"T1559.001","technique_name":"Component Object Model","platforms":["Windows"],"autosuggest":"T1559.001 - Component Object Model"},{"technique_id":"T1559.002","technique_name":"Dynamic Data Exchange","platforms":["Windows"],"autosuggest":"T1559.002 - Dynamic Data Exchange"},{"technique_id":"T1560","technique_name":"Archive Collected Data","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560 - Archive Collected Data"},{"technique_id":"T1560.001","technique_name":"Archive via Utility","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.001 - Archive via Utility"},{"technique_id":"T1560.002","technique_name":"Archive via Library","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.002 - Archive via Library"},{"technique_id":"T1560.003","technique_name":"Archive via Custom Method","platforms":["Linux","Windows","macOS"],"autosuggest":"T1560.003 - Archive via Custom Method"},{"technique_id":"T1561","technique_name":"Disk Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561 - Disk Wipe"},{"technique_id":"T1561.001","technique_name":"Disk Content Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561.001 - Disk Content Wipe"},{"technique_id":"T1561.002","technique_name":"Disk Structure Wipe","platforms":["Linux","Windows","macOS"],"autosuggest":"T1561.002 - Disk Structure Wipe"},{"technique_id":"T1562","technique_name":"Impair Defenses","platforms":["AWS","Azure","GCP","Linux","Windows","macOS"],"autosuggest":"T1562 - Impair Defenses"},{"technique_id":"T1562.001","technique_name":"Disable or Modify Tools","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.001 - Disable or Modify Tools"},{"technique_id":"T1562.002","technique_name":"Disable Windows Event Logging","platforms":["Windows"],"autosuggest":"T1562.002 - Disable Windows Event Logging"},{"technique_id":"T1562.003","technique_name":"Impair Command History Logging","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.003 - Impair Command History Logging"},{"technique_id":"T1562.004","technique_name":"Disable or Modify System Firewall","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.004 - Disable or Modify System Firewall"},{"technique_id":"T1562.006","technique_name":"Indicator Blocking","platforms":["Linux","Windows","macOS"],"autosuggest":"T1562.006 - Indicator Blocking"},{"technique_id":"T1562.007","technique_name":"Disable or Modify Cloud Firewall","platforms":["AWS","Azure","GCP"],"autosuggest":"T1562.007 - Disable or Modify Cloud Firewall"},{"technique_id":"T1562.008","technique_name":"Disable Cloud Logs","platforms":["AWS","Azure","GCP"],"autosuggest":"T1562.008 - Disable Cloud Logs"},{"technique_id":"T1563","technique_name":"Remote Service Session Hijacking","platforms":["Linux","Windows","macOS"],"autosuggest":"T1563 - Remote Service Session Hijacking"},{"technique_id":"T1563.001","technique_name":"SSH Hijacking","platforms":["Linux","macOS"],"autosuggest":"T1563.001 - SSH Hijacking"},{"technique_id":"T1563.002","technique_name":"RDP Hijacking","platforms":["Windows"],"autosuggest":"T1563.002 - RDP Hijacking"},{"technique_id":"T1564","technique_name":"Hide Artifacts","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564 - Hide Artifacts"},{"technique_id":"T1564.001","technique_name":"Hidden Files and Directories","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.001 - Hidden Files and Directories"},{"technique_id":"T1564.002","technique_name":"Hidden Users","platforms":["macOS"],"autosuggest":"T1564.002 - Hidden Users"},{"technique_id":"T1564.003","technique_name":"Hidden Window","platforms":["Windows","macOS"],"autosuggest":"T1564.003 - Hidden Window"},{"technique_id":"T1564.004","technique_name":"NTFS File Attributes","platforms":["Windows"],"autosuggest":"T1564.004 - NTFS File Attributes"},{"technique_id":"T1564.005","technique_name":"Hidden File System","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.005 - Hidden File System"},{"technique_id":"T1564.006","technique_name":"Run Virtual Instance","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.006 - Run Virtual Instance"},{"technique_id":"T1564.007","technique_name":"VBA Stomping","platforms":["Linux","Windows","macOS"],"autosuggest":"T1564.007 - VBA Stomping"},{"technique_id":"T1565","technique_name":"Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565 - Data Manipulation"},{"technique_id":"T1565.001","technique_name":"Stored Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.001 - Stored Data Manipulation"},{"technique_id":"T1565.002","technique_name":"Transmitted Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.002 - Transmitted Data Manipulation"},{"technique_id":"T1565.003","technique_name":"Runtime Data Manipulation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1565.003 - Runtime Data Manipulation"},{"technique_id":"T1566","technique_name":"Phishing","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1566 - Phishing"},{"technique_id":"T1566.001","technique_name":"Spearphishing Attachment","platforms":["Linux","Windows","macOS"],"autosuggest":"T1566.001 - Spearphishing Attachment"},{"technique_id":"T1566.002","technique_name":"Spearphishing Link","platforms":["Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1566.002 - Spearphishing Link"},{"technique_id":"T1566.003","technique_name":"Spearphishing via Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1566.003 - Spearphishing via Service"},{"technique_id":"T1567","technique_name":"Exfiltration Over Web Service","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567 - Exfiltration Over Web Service"},{"technique_id":"T1567.001","technique_name":"Exfiltration to Code Repository","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567.001 - Exfiltration to Code Repository"},{"technique_id":"T1567.002","technique_name":"Exfiltration to Cloud Storage","platforms":["Linux","Windows","macOS"],"autosuggest":"T1567.002 - Exfiltration to Cloud Storage"},{"technique_id":"T1568","technique_name":"Dynamic Resolution","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568 - Dynamic Resolution"},{"technique_id":"T1568.001","technique_name":"Fast Flux DNS","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.001 - Fast Flux DNS"},{"technique_id":"T1568.002","technique_name":"Domain Generation Algorithms","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.002 - Domain Generation Algorithms"},{"technique_id":"T1568.003","technique_name":"DNS Calculation","platforms":["Linux","Windows","macOS"],"autosuggest":"T1568.003 - DNS Calculation"},{"technique_id":"T1569","technique_name":"System Services","platforms":["Windows","macOS"],"autosuggest":"T1569 - System Services"},{"technique_id":"T1569.001","technique_name":"Launchctl","platforms":["macOS"],"autosuggest":"T1569.001 - Launchctl"},{"technique_id":"T1569.002","technique_name":"Service Execution","platforms":["Windows"],"autosuggest":"T1569.002 - Service Execution"},{"technique_id":"T1570","technique_name":"Lateral Tool Transfer","platforms":["Linux","Windows","macOS"],"autosuggest":"T1570 - Lateral Tool Transfer"},{"technique_id":"T1571","technique_name":"Non-Standard Port","platforms":["Linux","Windows","macOS"],"autosuggest":"T1571 - Non-Standard Port"},{"technique_id":"T1572","technique_name":"Protocol Tunneling","platforms":["Linux","Windows","macOS"],"autosuggest":"T1572 - Protocol Tunneling"},{"technique_id":"T1573","technique_name":"Encrypted Channel","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573 - Encrypted Channel"},{"technique_id":"T1573.001","technique_name":"Symmetric Cryptography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573.001 - Symmetric Cryptography"},{"technique_id":"T1573.002","technique_name":"Asymmetric Cryptography","platforms":["Linux","Windows","macOS"],"autosuggest":"T1573.002 - Asymmetric Cryptography"},{"technique_id":"T1574","technique_name":"Hijack Execution Flow","platforms":["Linux","Windows","macOS"],"autosuggest":"T1574 - Hijack Execution Flow"},{"technique_id":"T1574.001","technique_name":"DLL Search Order Hijacking","platforms":["Windows"],"autosuggest":"T1574.001 - DLL Search Order Hijacking"},{"technique_id":"T1574.002","technique_name":"DLL Side-Loading","platforms":["Windows"],"autosuggest":"T1574.002 - DLL Side-Loading"},{"technique_id":"T1574.004","technique_name":"Dylib Hijacking","platforms":["macOS"],"autosuggest":"T1574.004 - Dylib Hijacking"},{"technique_id":"T1574.005","technique_name":"Executable Installer File Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.005 - Executable Installer File Permissions Weakness"},{"technique_id":"T1574.006","technique_name":"LD_PRELOAD","platforms":["Linux"],"autosuggest":"T1574.006 - LD_PRELOAD"},{"technique_id":"T1574.007","technique_name":"Path Interception by PATH Environment Variable","platforms":["Windows"],"autosuggest":"T1574.007 - Path Interception by PATH Environment Variable"},{"technique_id":"T1574.008","technique_name":"Path Interception by Search Order Hijacking","platforms":["Windows"],"autosuggest":"T1574.008 - Path Interception by Search Order Hijacking"},{"technique_id":"T1574.009","technique_name":"Path Interception by Unquoted Path","platforms":["Windows"],"autosuggest":"T1574.009 - Path Interception by Unquoted Path"},{"technique_id":"T1574.010","technique_name":"Services File Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.010 - Services File Permissions Weakness"},{"technique_id":"T1574.011","technique_name":"Services Registry Permissions Weakness","platforms":["Windows"],"autosuggest":"T1574.011 - Services Registry Permissions Weakness"},{"technique_id":"T1574.012","technique_name":"COR_PROFILER","platforms":["Windows"],"autosuggest":"T1574.012 - COR_PROFILER"},{"technique_id":"T1578","technique_name":"Modify Cloud Compute Infrastructure","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578 - Modify Cloud Compute Infrastructure"},{"technique_id":"T1578.001","technique_name":"Create Snapshot","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.001 - Create Snapshot"},{"technique_id":"T1578.002","technique_name":"Create Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.002 - Create Cloud Instance"},{"technique_id":"T1578.003","technique_name":"Delete Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.003 - Delete Cloud Instance"},{"technique_id":"T1578.004","technique_name":"Revert Cloud Instance","platforms":["AWS","Azure","GCP"],"autosuggest":"T1578.004 - Revert Cloud Instance"},{"technique_id":"T1580","technique_name":"Cloud Infrastructure Discovery","platforms":["AWS","Azure","GCP"],"autosuggest":"T1580 - Cloud Infrastructure Discovery"},{"technique_id":"T1583","technique_name":"Acquire Infrastructure","platforms":["PRE"],"autosuggest":"T1583 - Acquire Infrastructure"},{"technique_id":"T1583.001","technique_name":"Domains","platforms":["PRE"],"autosuggest":"T1583.001 - Domains"},{"technique_id":"T1583.002","technique_name":"DNS Server","platforms":["PRE"],"autosuggest":"T1583.002 - DNS Server"},{"technique_id":"T1583.003","technique_name":"Virtual Private Server","platforms":["PRE"],"autosuggest":"T1583.003 - Virtual Private Server"},{"technique_id":"T1583.004","technique_name":"Server","platforms":["PRE"],"autosuggest":"T1583.004 - Server"},{"technique_id":"T1583.005","technique_name":"Botnet","platforms":["PRE"],"autosuggest":"T1583.005 - Botnet"},{"technique_id":"T1583.006","technique_name":"Web Services","platforms":["PRE"],"autosuggest":"T1583.006 - Web Services"},{"technique_id":"T1584","technique_name":"Compromise Infrastructure","platforms":["PRE"],"autosuggest":"T1584 - Compromise Infrastructure"},{"technique_id":"T1584.001","technique_name":"Domains","platforms":["PRE"],"autosuggest":"T1584.001 - Domains"},{"technique_id":"T1584.002","technique_name":"DNS Server","platforms":["PRE"],"autosuggest":"T1584.002 - DNS Server"},{"technique_id":"T1584.003","technique_name":"Virtual Private Server","platforms":["PRE"],"autosuggest":"T1584.003 - Virtual Private Server"},{"technique_id":"T1584.004","technique_name":"Server","platforms":["PRE"],"autosuggest":"T1584.004 - Server"},{"technique_id":"T1584.005","technique_name":"Botnet","platforms":["PRE"],"autosuggest":"T1584.005 - Botnet"},{"technique_id":"T1584.006","technique_name":"Web Services","platforms":["PRE"],"autosuggest":"T1584.006 - Web Services"},{"technique_id":"T1585","technique_name":"Establish Accounts","platforms":["PRE"],"autosuggest":"T1585 - Establish Accounts"},{"technique_id":"T1585.001","technique_name":"Social Media Accounts","platforms":["PRE"],"autosuggest":"T1585.001 - Social Media Accounts"},{"technique_id":"T1585.002","technique_name":"Email Accounts","platforms":["PRE"],"autosuggest":"T1585.002 - Email Accounts"},{"technique_id":"T1586","technique_name":"Compromise Accounts","platforms":["PRE"],"autosuggest":"T1586 - Compromise Accounts"},{"technique_id":"T1586.001","technique_name":"Social Media Accounts","platforms":["PRE"],"autosuggest":"T1586.001 - Social Media Accounts"},{"technique_id":"T1586.002","technique_name":"Email Accounts","platforms":["PRE"],"autosuggest":"T1586.002 - Email Accounts"},{"technique_id":"T1587","technique_name":"Develop Capabilities","platforms":["PRE"],"autosuggest":"T1587 - Develop Capabilities"},{"technique_id":"T1587.001","technique_name":"Malware","platforms":["PRE"],"autosuggest":"T1587.001 - Malware"},{"technique_id":"T1587.002","technique_name":"Code Signing Certificates","platforms":["PRE"],"autosuggest":"T1587.002 - Code Signing Certificates"},{"technique_id":"T1587.003","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1587.003 - Digital Certificates"},{"technique_id":"T1587.004","technique_name":"Exploits","platforms":["PRE"],"autosuggest":"T1587.004 - Exploits"},{"technique_id":"T1588","technique_name":"Obtain Capabilities","platforms":["PRE"],"autosuggest":"T1588 - Obtain Capabilities"},{"technique_id":"T1588.001","technique_name":"Malware","platforms":["PRE"],"autosuggest":"T1588.001 - Malware"},{"technique_id":"T1588.002","technique_name":"Tool","platforms":["PRE"],"autosuggest":"T1588.002 - Tool"},{"technique_id":"T1588.003","technique_name":"Code Signing Certificates","platforms":["PRE"],"autosuggest":"T1588.003 - Code Signing Certificates"},{"technique_id":"T1588.004","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1588.004 - Digital Certificates"},{"technique_id":"T1588.005","technique_name":"Exploits","platforms":["PRE"],"autosuggest":"T1588.005 - Exploits"},{"technique_id":"T1588.006","technique_name":"Vulnerabilities","platforms":["PRE"],"autosuggest":"T1588.006 - Vulnerabilities"},{"technique_id":"T1589","technique_name":"Gather Victim Identity Information","platforms":["PRE"],"autosuggest":"T1589 - Gather Victim Identity Information"},{"technique_id":"T1589.001","technique_name":"Credentials","platforms":["PRE"],"autosuggest":"T1589.001 - Credentials"},{"technique_id":"T1589.002","technique_name":"Email Addresses","platforms":["PRE"],"autosuggest":"T1589.002 - Email Addresses"},{"technique_id":"T1589.003","technique_name":"Employee Names","platforms":["PRE"],"autosuggest":"T1589.003 - Employee Names"},{"technique_id":"T1590","technique_name":"Gather Victim Network Information","platforms":["PRE"],"autosuggest":"T1590 - Gather Victim Network Information"},{"technique_id":"T1590.001","technique_name":"Domain Properties","platforms":["PRE"],"autosuggest":"T1590.001 - Domain Properties"},{"technique_id":"T1590.002","technique_name":"DNS","platforms":["PRE"],"autosuggest":"T1590.002 - DNS"},{"technique_id":"T1590.003","technique_name":"Network Trust Dependencies","platforms":["PRE"],"autosuggest":"T1590.003 - Network Trust Dependencies"},{"technique_id":"T1590.004","technique_name":"Network Topology","platforms":["PRE"],"autosuggest":"T1590.004 - Network Topology"},{"technique_id":"T1590.005","technique_name":"IP Addresses","platforms":["PRE"],"autosuggest":"T1590.005 - IP Addresses"},{"technique_id":"T1590.006","technique_name":"Network Security Appliances","platforms":["PRE"],"autosuggest":"T1590.006 - Network Security Appliances"},{"technique_id":"T1591","technique_name":"Gather Victim Org Information","platforms":["PRE"],"autosuggest":"T1591 - Gather Victim Org Information"},{"technique_id":"T1591.001","technique_name":"Determine Physical Locations","platforms":["PRE"],"autosuggest":"T1591.001 - Determine Physical Locations"},{"technique_id":"T1591.002","technique_name":"Business Relationships","platforms":["PRE"],"autosuggest":"T1591.002 - Business Relationships"},{"technique_id":"T1591.003","technique_name":"Identify Business Tempo","platforms":["PRE"],"autosuggest":"T1591.003 - Identify Business Tempo"},{"technique_id":"T1591.004","technique_name":"Identify Roles","platforms":["PRE"],"autosuggest":"T1591.004 - Identify Roles"},{"technique_id":"T1592","technique_name":"Gather Victim Host Information","platforms":["PRE"],"autosuggest":"T1592 - Gather Victim Host Information"},{"technique_id":"T1592.001","technique_name":"Hardware","platforms":["PRE"],"autosuggest":"T1592.001 - Hardware"},{"technique_id":"T1592.002","technique_name":"Software","platforms":["PRE"],"autosuggest":"T1592.002 - Software"},{"technique_id":"T1592.003","technique_name":"Firmware","platforms":["PRE"],"autosuggest":"T1592.003 - Firmware"},{"technique_id":"T1592.004","technique_name":"Client Configurations","platforms":["PRE"],"autosuggest":"T1592.004 - Client Configurations"},{"technique_id":"T1593","technique_name":"Search Open Websites/Domains","platforms":["PRE"],"autosuggest":"T1593 - Search Open Websites/Domains"},{"technique_id":"T1593.001","technique_name":"Social Media","platforms":["PRE"],"autosuggest":"T1593.001 - Social Media"},{"technique_id":"T1593.002","technique_name":"Search Engines","platforms":["PRE"],"autosuggest":"T1593.002 - Search Engines"},{"technique_id":"T1594","technique_name":"Search Victim-Owned Websites","platforms":["PRE"],"autosuggest":"T1594 - Search Victim-Owned Websites"},{"technique_id":"T1595","technique_name":"Active Scanning","platforms":["PRE"],"autosuggest":"T1595 - Active Scanning"},{"technique_id":"T1595.001","technique_name":"Scanning IP Blocks","platforms":["PRE"],"autosuggest":"T1595.001 - Scanning IP Blocks"},{"technique_id":"T1595.002","technique_name":"Vulnerability Scanning","platforms":["PRE"],"autosuggest":"T1595.002 - Vulnerability Scanning"},{"technique_id":"T1596","technique_name":"Search Open Technical Databases","platforms":["PRE"],"autosuggest":"T1596 - Search Open Technical Databases"},{"technique_id":"T1596.001","technique_name":"DNS/Passive DNS","platforms":["PRE"],"autosuggest":"T1596.001 - DNS/Passive DNS"},{"technique_id":"T1596.002","technique_name":"WHOIS","platforms":["PRE"],"autosuggest":"T1596.002 - WHOIS"},{"technique_id":"T1596.003","technique_name":"Digital Certificates","platforms":["PRE"],"autosuggest":"T1596.003 - Digital Certificates"},{"technique_id":"T1596.004","technique_name":"CDNs","platforms":["PRE"],"autosuggest":"T1596.004 - CDNs"},{"technique_id":"T1596.005","technique_name":"Scan Databases","platforms":["PRE"],"autosuggest":"T1596.005 - Scan Databases"},{"technique_id":"T1597","technique_name":"Search Closed Sources","platforms":["PRE"],"autosuggest":"T1597 - Search Closed Sources"},{"technique_id":"T1597.001","technique_name":"Threat Intel Vendors","platforms":["PRE"],"autosuggest":"T1597.001 - Threat Intel Vendors"},{"technique_id":"T1597.002","technique_name":"Purchase Technical Data","platforms":["PRE"],"autosuggest":"T1597.002 - Purchase Technical Data"},{"technique_id":"T1598","technique_name":"Phishing for Information","platforms":["PRE"],"autosuggest":"T1598 - Phishing for Information"},{"technique_id":"T1598.001","technique_name":"Spearphishing Service","platforms":["PRE"],"autosuggest":"T1598.001 - Spearphishing Service"},{"technique_id":"T1598.002","technique_name":"Spearphishing Attachment","platforms":["PRE"],"autosuggest":"T1598.002 - Spearphishing Attachment"},{"technique_id":"T1598.003","technique_name":"Spearphishing Link","platforms":["PRE"],"autosuggest":"T1598.003 - Spearphishing Link"},{"technique_id":"T1599","technique_name":"Network Boundary Bridging","platforms":["Network"],"autosuggest":"T1599 - Network Boundary Bridging"},{"technique_id":"T1599.001","technique_name":"Network Address Translation Traversal","platforms":["Network"],"autosuggest":"T1599.001 - Network Address Translation Traversal"},{"technique_id":"T1600","technique_name":"Weaken Encryption","platforms":["Network"],"autosuggest":"T1600 - Weaken Encryption"},{"technique_id":"T1600.001","technique_name":"Reduce Key Space","platforms":["Network"],"autosuggest":"T1600.001 - Reduce Key Space"},{"technique_id":"T1600.002","technique_name":"Disable Crypto Hardware","platforms":["Network"],"autosuggest":"T1600.002 - Disable Crypto Hardware"},{"technique_id":"T1601","technique_name":"Modify System Image","platforms":["Network"],"autosuggest":"T1601 - Modify System Image"},{"technique_id":"T1601.001","technique_name":"Patch System Image","platforms":["Network"],"autosuggest":"T1601.001 - Patch System Image"},{"technique_id":"T1601.002","technique_name":"Downgrade System Image","platforms":["Network"],"autosuggest":"T1601.002 - Downgrade System Image"},{"technique_id":"T1602","technique_name":"Data from Configuration Repository","platforms":["Network"],"autosuggest":"T1602 - Data from Configuration Repository"},{"technique_id":"T1602.001","technique_name":"SNMP (MIB Dump)","platforms":["Network"],"autosuggest":"T1602.001 - SNMP (MIB Dump)"},{"technique_id":"T1602.002","technique_name":"Network Device Configuration Dump","platforms":["Network"],"autosuggest":"T1602.002 - Network Device Configuration Dump"},{"technique_id":"T1606","technique_name":"Forge Web Credentials","platforms":["Azure AD","Linux","Office 365","SaaS","Windows","macOS"],"autosuggest":"T1606 - Forge Web Credentials"},{"technique_id":"T1606.001","technique_name":"Web Cookies","platforms":["Linux","SaaS","Windows","macOS"],"autosuggest":"T1606.001 - Web Cookies"},{"technique_id":"T1606.002","technique_name":"SAML Tokens","platforms":["Azure AD","Office 365","SaaS","Windows"],"autosuggest":"T1606.002 - SAML Tokens"}]')},b5b2:function(e,t,s){},bba2:function(e){e.exports=JSON.parse('[{"software_id":"S0001","software_name":"Trojan.Mebromi","platforms":["Windows"],"autosuggest":"S0001 - Trojan.Mebromi"},{"software_id":"S0002","software_name":"Mimikatz","platforms":["Windows"],"autosuggest":"S0002 - Mimikatz"},{"software_id":"S0003","software_name":"RIPTIDE","platforms":["Windows"],"autosuggest":"S0003 - RIPTIDE"},{"software_id":"S0004","software_name":"TinyZBot","platforms":["Windows"],"autosuggest":"S0004 - TinyZBot"},{"software_id":"S0005","software_name":"Windows Credential Editor","platforms":["Windows"],"autosuggest":"S0005 - Windows Credential Editor"},{"software_id":"S0006","software_name":"pwdump","platforms":["Windows"],"autosuggest":"S0006 - pwdump"},{"software_id":"S0007","software_name":"Skeleton Key","platforms":["Windows"],"autosuggest":"S0007 - Skeleton Key"},{"software_id":"S0008","software_name":"gsecdump","platforms":["Windows"],"autosuggest":"S0008 - gsecdump"},{"software_id":"S0009","software_name":"Hikit","platforms":["Windows"],"autosuggest":"S0009 - Hikit"},{"software_id":"S0010","software_name":"Lurid","platforms":["Windows"],"autosuggest":"S0010 - Lurid"},{"software_id":"S0011","software_name":"Taidoor","platforms":["Windows"],"autosuggest":"S0011 - Taidoor"},{"software_id":"S0012","software_name":"PoisonIvy","platforms":["Windows"],"autosuggest":"S0012 - PoisonIvy"},{"software_id":"S0013","software_name":"PlugX","platforms":["Windows"],"autosuggest":"S0013 - PlugX"},{"software_id":"S0014","software_name":"BS2005","platforms":["Windows"],"autosuggest":"S0014 - BS2005"},{"software_id":"S0015","software_name":"Ixeshe","platforms":["Windows"],"autosuggest":"S0015 - Ixeshe"},{"software_id":"S0016","software_name":"P2P ZeuS","platforms":["Windows"],"autosuggest":"S0016 - P2P ZeuS"},{"software_id":"S0017","software_name":"BISCUIT","platforms":["Windows"],"autosuggest":"S0017 - BISCUIT"},{"software_id":"S0018","software_name":"Sykipot","platforms":["Windows"],"autosuggest":"S0018 - Sykipot"},{"software_id":"S0019","software_name":"Regin","platforms":["Windows"],"autosuggest":"S0019 - Regin"},{"software_id":"S0020","software_name":"China Chopper","platforms":["Windows"],"autosuggest":"S0020 - China Chopper"},{"software_id":"S0021","software_name":"Derusbi","platforms":["Linux","Windows"],"autosuggest":"S0021 - Derusbi"},{"software_id":"S0022","software_name":"Uroburos","platforms":["Windows"],"autosuggest":"S0022 - Uroburos"},{"software_id":"S0023","software_name":"CHOPSTICK","platforms":["Linux","Windows"],"autosuggest":"S0023 - CHOPSTICK"},{"software_id":"S0024","software_name":"Dyre","platforms":["Windows"],"autosuggest":"S0024 - Dyre"},{"software_id":"S0025","software_name":"CALENDAR","platforms":["Windows"],"autosuggest":"S0025 - CALENDAR"},{"software_id":"S0026","software_name":"GLOOXMAIL","platforms":["Windows"],"autosuggest":"S0026 - GLOOXMAIL"},{"software_id":"S0027","software_name":"Zeroaccess","platforms":["Windows"],"autosuggest":"S0027 - Zeroaccess"},{"software_id":"S0028","software_name":"SHIPSHAPE","platforms":["Windows"],"autosuggest":"S0028 - SHIPSHAPE"},{"software_id":"S0029","software_name":"PsExec","platforms":["Windows"],"autosuggest":"S0029 - PsExec"},{"software_id":"S0030","software_name":"Carbanak","platforms":["Windows"],"autosuggest":"S0030 - Carbanak"},{"software_id":"S0031","software_name":"BACKSPACE","platforms":["Windows"],"autosuggest":"S0031 - BACKSPACE"},{"software_id":"S0032","software_name":"gh0st RAT","platforms":["Windows","macOS"],"autosuggest":"S0032 - gh0st RAT"},{"software_id":"S0033","software_name":"NetTraveler","platforms":["Windows"],"autosuggest":"S0033 - NetTraveler"},{"software_id":"S0034","software_name":"NETEAGLE","platforms":["Windows"],"autosuggest":"S0034 - NETEAGLE"},{"software_id":"S0035","software_name":"SPACESHIP","platforms":["Windows"],"autosuggest":"S0035 - SPACESHIP"},{"software_id":"S0036","software_name":"FLASHFLOOD","platforms":["Windows"],"autosuggest":"S0036 - FLASHFLOOD"},{"software_id":"S0037","software_name":"HAMMERTOSS","platforms":["Windows"],"autosuggest":"S0037 - HAMMERTOSS"},{"software_id":"S0038","software_name":"Duqu","platforms":["Windows"],"autosuggest":"S0038 - Duqu"},{"software_id":"S0039","software_name":"Net","platforms":["Windows"],"autosuggest":"S0039 - Net"},{"software_id":"S0040","software_name":"HTRAN","platforms":["Linux","Windows"],"autosuggest":"S0040 - HTRAN"},{"software_id":"S0041","software_name":"Wiper","platforms":["Windows"],"autosuggest":"S0041 - Wiper"},{"software_id":"S0042","software_name":"LOWBALL","platforms":["Windows"],"autosuggest":"S0042 - LOWBALL"},{"software_id":"S0043","software_name":"BUBBLEWRAP","platforms":["Windows"],"autosuggest":"S0043 - BUBBLEWRAP"},{"software_id":"S0044","software_name":"JHUHUGIT","platforms":["Windows"],"autosuggest":"S0044 - JHUHUGIT"},{"software_id":"S0045","software_name":"ADVSTORESHELL","platforms":["Windows"],"autosuggest":"S0045 - ADVSTORESHELL"},{"software_id":"S0046","software_name":"CozyCar","platforms":["Windows"],"autosuggest":"S0046 - CozyCar"},{"software_id":"S0047","software_name":"Hacking Team UEFI Rootkit","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0047 - Hacking Team UEFI Rootkit"},{"software_id":"S0048","software_name":"PinchDuke","platforms":["Windows"],"autosuggest":"S0048 - PinchDuke"},{"software_id":"S0049","software_name":"GeminiDuke","platforms":["Windows"],"autosuggest":"S0049 - GeminiDuke"},{"software_id":"S0050","software_name":"CosmicDuke","platforms":["Windows"],"autosuggest":"S0050 - CosmicDuke"},{"software_id":"S0051","software_name":"MiniDuke","platforms":["Windows"],"autosuggest":"S0051 - MiniDuke"},{"software_id":"S0052","software_name":"OnionDuke","platforms":["Windows"],"autosuggest":"S0052 - OnionDuke"},{"software_id":"S0053","software_name":"SeaDuke","platforms":["Windows"],"autosuggest":"S0053 - SeaDuke"},{"software_id":"S0054","software_name":"CloudDuke","platforms":["Windows"],"autosuggest":"S0054 - CloudDuke"},{"software_id":"S0055","software_name":"RARSTONE","platforms":["Windows"],"autosuggest":"S0055 - RARSTONE"},{"software_id":"S0056","software_name":"Net Crawler","platforms":["Windows"],"autosuggest":"S0056 - Net Crawler"},{"software_id":"S0057","software_name":"Tasklist","platforms":["Windows"],"autosuggest":"S0057 - Tasklist"},{"software_id":"S0058","software_name":"SslMM","platforms":["Windows"],"autosuggest":"S0058 - SslMM"},{"software_id":"S0059","software_name":"WinMM","platforms":["Windows"],"autosuggest":"S0059 - WinMM"},{"software_id":"S0060","software_name":"Sys10","platforms":["Windows"],"autosuggest":"S0060 - Sys10"},{"software_id":"S0061","software_name":"HDoor","platforms":["Windows"],"autosuggest":"S0061 - HDoor"},{"software_id":"S0062","software_name":"DustySky","platforms":["Windows"],"autosuggest":"S0062 - DustySky"},{"software_id":"S0063","software_name":"SHOTPUT","platforms":["Windows"],"autosuggest":"S0063 - SHOTPUT"},{"software_id":"S0064","software_name":"ELMER","platforms":["Windows"],"autosuggest":"S0064 - ELMER"},{"software_id":"S0065","software_name":"4H RAT","platforms":["Windows"],"autosuggest":"S0065 - 4H RAT"},{"software_id":"S0066","software_name":"3PARA RAT","platforms":["Windows"],"autosuggest":"S0066 - 3PARA RAT"},{"software_id":"S0067","software_name":"pngdowner","platforms":["Windows"],"autosuggest":"S0067 - pngdowner"},{"software_id":"S0068","software_name":"httpclient","platforms":["Windows"],"autosuggest":"S0068 - httpclient"},{"software_id":"S0069","software_name":"BLACKCOFFEE","platforms":["Windows"],"autosuggest":"S0069 - BLACKCOFFEE"},{"software_id":"S0070","software_name":"HTTPBrowser","platforms":["Windows"],"autosuggest":"S0070 - HTTPBrowser"},{"software_id":"S0071","software_name":"hcdLoader","platforms":["Windows"],"autosuggest":"S0071 - hcdLoader"},{"software_id":"S0072","software_name":"OwaAuth","platforms":["Windows"],"autosuggest":"S0072 - OwaAuth"},{"software_id":"S0073","software_name":"ASPXSpy","platforms":["Windows"],"autosuggest":"S0073 - ASPXSpy"},{"software_id":"S0074","software_name":"Sakula","platforms":["Windows"],"autosuggest":"S0074 - Sakula"},{"software_id":"S0075","software_name":"Reg","platforms":["Windows"],"autosuggest":"S0075 - Reg"},{"software_id":"S0076","software_name":"FakeM","platforms":["Windows"],"autosuggest":"S0076 - FakeM"},{"software_id":"S0077","software_name":"CallMe","platforms":["macOS"],"autosuggest":"S0077 - CallMe"},{"software_id":"S0078","software_name":"Psylo","platforms":["Windows"],"autosuggest":"S0078 - Psylo"},{"software_id":"S0079","software_name":"MobileOrder","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0079 - MobileOrder"},{"software_id":"S0080","software_name":"Mivast","platforms":["Windows"],"autosuggest":"S0080 - Mivast"},{"software_id":"S0081","software_name":"Elise","platforms":["Windows"],"autosuggest":"S0081 - Elise"},{"software_id":"S0082","software_name":"Emissary","platforms":["Windows"],"autosuggest":"S0082 - Emissary"},{"software_id":"S0083","software_name":"Misdat","platforms":["Windows"],"autosuggest":"S0083 - Misdat"},{"software_id":"S0084","software_name":"Mis-Type","platforms":["Windows"],"autosuggest":"S0084 - Mis-Type"},{"software_id":"S0085","software_name":"S-Type","platforms":["Windows"],"autosuggest":"S0085 - S-Type"},{"software_id":"S0086","software_name":"ZLib","platforms":["Windows"],"autosuggest":"S0086 - ZLib"},{"software_id":"S0087","software_name":"Hi-Zor","platforms":["Windows"],"autosuggest":"S0087 - Hi-Zor"},{"software_id":"S0088","software_name":"Kasidet","platforms":["Windows"],"autosuggest":"S0088 - Kasidet"},{"software_id":"S0089","software_name":"BlackEnergy","platforms":["Windows"],"autosuggest":"S0089 - BlackEnergy"},{"software_id":"S0090","software_name":"Rover","platforms":["Windows"],"autosuggest":"S0090 - Rover"},{"software_id":"S0091","software_name":"Epic","platforms":["Windows"],"autosuggest":"S0091 - Epic"},{"software_id":"S0092","software_name":"Agent.btz","platforms":["Windows"],"autosuggest":"S0092 - Agent.btz"},{"software_id":"S0093","software_name":"Backdoor.Oldrea","platforms":["Windows"],"autosuggest":"S0093 - Backdoor.Oldrea"},{"software_id":"S0094","software_name":"Trojan.Karagany","platforms":["Windows"],"autosuggest":"S0094 - Trojan.Karagany"},{"software_id":"S0095","software_name":"FTP","platforms":["Linux","Windows","macOS"],"autosuggest":"S0095 - FTP"},{"software_id":"S0096","software_name":"Systeminfo","platforms":["Windows"],"autosuggest":"S0096 - Systeminfo"},{"software_id":"S0097","software_name":"Ping","platforms":["Linux","Windows","macOS"],"autosuggest":"S0097 - Ping"},{"software_id":"S0098","software_name":"T9000","platforms":["Windows"],"autosuggest":"S0098 - T9000"},{"software_id":"S0099","software_name":"Arp","platforms":["Linux","Windows","macOS"],"autosuggest":"S0099 - Arp"},{"software_id":"S0100","software_name":"ipconfig","platforms":["Windows"],"autosuggest":"S0100 - ipconfig"},{"software_id":"S0101","software_name":"ifconfig","platforms":["Linux"],"autosuggest":"S0101 - ifconfig"},{"software_id":"S0102","software_name":"nbtstat","platforms":["Windows"],"autosuggest":"S0102 - nbtstat"},{"software_id":"S0103","software_name":"route","platforms":["Linux","Windows","macOS"],"autosuggest":"S0103 - route"},{"software_id":"S0104","software_name":"netstat","platforms":["Linux","Windows","macOS"],"autosuggest":"S0104 - netstat"},{"software_id":"S0105","software_name":"dsquery","platforms":["Windows"],"autosuggest":"S0105 - dsquery"},{"software_id":"S0106","software_name":"cmd","platforms":["Windows"],"autosuggest":"S0106 - cmd"},{"software_id":"S0107","software_name":"Cherry Picker","platforms":["Windows"],"autosuggest":"S0107 - Cherry Picker"},{"software_id":"S0108","software_name":"netsh","platforms":["Windows"],"autosuggest":"S0108 - netsh"},{"software_id":"S0109","software_name":"WEBC2","platforms":["Windows"],"autosuggest":"S0109 - WEBC2"},{"software_id":"S0110","software_name":"at","platforms":["Linux","Windows","macOS"],"autosuggest":"S0110 - at"},{"software_id":"S0111","software_name":"schtasks","platforms":["Windows"],"autosuggest":"S0111 - schtasks"},{"software_id":"S0112","software_name":"ROCKBOOT","platforms":["Windows"],"autosuggest":"S0112 - ROCKBOOT"},{"software_id":"S0113","software_name":"Prikormka","platforms":["Windows"],"autosuggest":"S0113 - Prikormka"},{"software_id":"S0114","software_name":"BOOTRASH","platforms":["Windows"],"autosuggest":"S0114 - BOOTRASH"},{"software_id":"S0115","software_name":"Crimson","platforms":["Windows"],"autosuggest":"S0115 - Crimson"},{"software_id":"S0116","software_name":"UACMe","platforms":["Windows"],"autosuggest":"S0116 - UACMe"},{"software_id":"S0117","software_name":"XTunnel","platforms":["Windows"],"autosuggest":"S0117 - XTunnel"},{"software_id":"S0118","software_name":"Nidiran","platforms":["Windows"],"autosuggest":"S0118 - Nidiran"},{"software_id":"S0119","software_name":"Cachedump","platforms":["Windows"],"autosuggest":"S0119 - Cachedump"},{"software_id":"S0120","software_name":"Fgdump","platforms":["Windows"],"autosuggest":"S0120 - Fgdump"},{"software_id":"S0121","software_name":"Lslsass","platforms":["Windows"],"autosuggest":"S0121 - Lslsass"},{"software_id":"S0122","software_name":"Pass-The-Hash Toolkit","platforms":["Linux","Windows","macOS"],"autosuggest":"S0122 - Pass-The-Hash Toolkit"},{"software_id":"S0123","software_name":"xCmd","platforms":["Windows"],"autosuggest":"S0123 - xCmd"},{"software_id":"S0124","software_name":"Pisloader","platforms":["Windows"],"autosuggest":"S0124 - Pisloader"},{"software_id":"S0125","software_name":"Remsec","platforms":["Windows"],"autosuggest":"S0125 - Remsec"},{"software_id":"S0126","software_name":"ComRAT","platforms":["Windows"],"autosuggest":"S0126 - ComRAT"},{"software_id":"S0127","software_name":"BBSRAT","platforms":["Windows"],"autosuggest":"S0127 - BBSRAT"},{"software_id":"S0128","software_name":"BADNEWS","platforms":["Windows"],"autosuggest":"S0128 - BADNEWS"},{"software_id":"S0129","software_name":"AutoIt backdoor","platforms":["Windows"],"autosuggest":"S0129 - AutoIt backdoor"},{"software_id":"S0130","software_name":"Unknown Logger","platforms":["Windows"],"autosuggest":"S0130 - Unknown Logger"},{"software_id":"S0131","software_name":"TINYTYPHON","platforms":["Windows"],"autosuggest":"S0131 - TINYTYPHON"},{"software_id":"S0132","software_name":"H1N1","platforms":["Windows"],"autosuggest":"S0132 - H1N1"},{"software_id":"S0133","software_name":"Miner-C","platforms":["Windows"],"autosuggest":"S0133 - Miner-C"},{"software_id":"S0134","software_name":"Downdelph","platforms":["Windows"],"autosuggest":"S0134 - Downdelph"},{"software_id":"S0135","software_name":"HIDEDRV","platforms":["Windows"],"autosuggest":"S0135 - HIDEDRV"},{"software_id":"S0136","software_name":"USBStealer","platforms":["Windows"],"autosuggest":"S0136 - USBStealer"},{"software_id":"S0137","software_name":"CORESHELL","platforms":["Windows"],"autosuggest":"S0137 - CORESHELL"},{"software_id":"S0138","software_name":"OLDBAIT","platforms":["Windows"],"autosuggest":"S0138 - OLDBAIT"},{"software_id":"S0139","software_name":"PowerDuke","platforms":["Windows"],"autosuggest":"S0139 - PowerDuke"},{"software_id":"S0140","software_name":"Shamoon","platforms":["Windows"],"autosuggest":"S0140 - Shamoon"},{"software_id":"S0141","software_name":"Winnti for Windows","platforms":["Windows"],"autosuggest":"S0141 - Winnti for Windows"},{"software_id":"S0142","software_name":"StreamEx","platforms":["Windows"],"autosuggest":"S0142 - StreamEx"},{"software_id":"S0143","software_name":"Flame","platforms":["Windows"],"autosuggest":"S0143 - Flame"},{"software_id":"S0144","software_name":"ChChes","platforms":["Windows"],"autosuggest":"S0144 - ChChes"},{"software_id":"S0145","software_name":"POWERSOURCE","platforms":["Windows"],"autosuggest":"S0145 - POWERSOURCE"},{"software_id":"S0146","software_name":"TEXTMATE","platforms":["Windows"],"autosuggest":"S0146 - TEXTMATE"},{"software_id":"S0147","software_name":"Pteranodon","platforms":["Windows"],"autosuggest":"S0147 - Pteranodon"},{"software_id":"S0148","software_name":"RTM","platforms":["Windows"],"autosuggest":"S0148 - RTM"},{"software_id":"S0149","software_name":"MoonWind","platforms":["Windows"],"autosuggest":"S0149 - MoonWind"},{"software_id":"S0150","software_name":"POSHSPY","platforms":["Windows"],"autosuggest":"S0150 - POSHSPY"},{"software_id":"S0151","software_name":"HALFBAKED","platforms":["Windows"],"autosuggest":"S0151 - HALFBAKED"},{"software_id":"S0152","software_name":"EvilGrab","platforms":["Windows"],"autosuggest":"S0152 - EvilGrab"},{"software_id":"S0153","software_name":"RedLeaves","platforms":["Windows"],"autosuggest":"S0153 - RedLeaves"},{"software_id":"S0154","software_name":"Cobalt Strike","platforms":["Windows"],"autosuggest":"S0154 - Cobalt Strike"},{"software_id":"S0155","software_name":"WINDSHIELD","platforms":["Windows"],"autosuggest":"S0155 - WINDSHIELD"},{"software_id":"S0156","software_name":"KOMPROGO","platforms":["Windows"],"autosuggest":"S0156 - KOMPROGO"},{"software_id":"S0157","software_name":"SOUNDBITE","platforms":["Windows"],"autosuggest":"S0157 - SOUNDBITE"},{"software_id":"S0158","software_name":"PHOREAL","platforms":["Windows"],"autosuggest":"S0158 - PHOREAL"},{"software_id":"S0159","software_name":"SNUGRIDE","platforms":["Windows"],"autosuggest":"S0159 - SNUGRIDE"},{"software_id":"S0160","software_name":"certutil","platforms":["Windows"],"autosuggest":"S0160 - certutil"},{"software_id":"S0161","software_name":"XAgentOSX","platforms":["macOS"],"autosuggest":"S0161 - XAgentOSX"},{"software_id":"S0162","software_name":"Komplex","platforms":["macOS"],"autosuggest":"S0162 - Komplex"},{"software_id":"S0163","software_name":"Janicab","platforms":["macOS"],"autosuggest":"S0163 - Janicab"},{"software_id":"S0164","software_name":"TDTESS","platforms":["Windows"],"autosuggest":"S0164 - TDTESS"},{"software_id":"S0165","software_name":"OSInfo","platforms":["Windows"],"autosuggest":"S0165 - OSInfo"},{"software_id":"S0166","software_name":"RemoteCMD","platforms":["Windows"],"autosuggest":"S0166 - RemoteCMD"},{"software_id":"S0167","software_name":"Matroyshka","platforms":["Windows"],"autosuggest":"S0167 - Matroyshka"},{"software_id":"S0168","software_name":"Gazer","platforms":["Windows"],"autosuggest":"S0168 - Gazer"},{"software_id":"S0169","software_name":"RawPOS","platforms":["Windows"],"autosuggest":"S0169 - RawPOS"},{"software_id":"S0170","software_name":"Helminth","platforms":["Windows"],"autosuggest":"S0170 - Helminth"},{"software_id":"S0171","software_name":"Felismus","platforms":["Windows"],"autosuggest":"S0171 - Felismus"},{"software_id":"S0172","software_name":"Reaver","platforms":["Windows"],"autosuggest":"S0172 - Reaver"},{"software_id":"S0173","software_name":"FLIPSIDE","platforms":["Windows"],"autosuggest":"S0173 - FLIPSIDE"},{"software_id":"S0174","software_name":"Responder","platforms":["Windows"],"autosuggest":"S0174 - Responder"},{"software_id":"S0175","software_name":"meek","platforms":["Linux","Windows","macOS"],"autosuggest":"S0175 - meek"},{"software_id":"S0176","software_name":"Wingbird","platforms":["Windows"],"autosuggest":"S0176 - Wingbird"},{"software_id":"S0177","software_name":"Power Loader","platforms":["Windows"],"autosuggest":"S0177 - Power Loader"},{"software_id":"S0178","software_name":"Truvasys","platforms":["Windows"],"autosuggest":"S0178 - Truvasys"},{"software_id":"S0179","software_name":"MimiPenguin","platforms":["Linux"],"autosuggest":"S0179 - MimiPenguin"},{"software_id":"S0180","software_name":"Volgmer","platforms":["Windows"],"autosuggest":"S0180 - Volgmer"},{"software_id":"S0181","software_name":"FALLCHILL","platforms":["Windows"],"autosuggest":"S0181 - FALLCHILL"},{"software_id":"S0182","software_name":"FinFisher","platforms":["Android","Windows"],"autosuggest":"S0182 - FinFisher"},{"software_id":"S0183","software_name":"Tor","platforms":["Linux","Windows","macOS"],"autosuggest":"S0183 - Tor"},{"software_id":"S0184","software_name":"POWRUNER","platforms":["Windows"],"autosuggest":"S0184 - POWRUNER"},{"software_id":"S0185","software_name":"SEASHARPEE","platforms":["Windows"],"autosuggest":"S0185 - SEASHARPEE"},{"software_id":"S0186","software_name":"DownPaper","platforms":["Windows"],"autosuggest":"S0186 - DownPaper"},{"software_id":"S0187","software_name":"Daserf","platforms":["Windows"],"autosuggest":"S0187 - Daserf"},{"software_id":"S0188","software_name":"Starloader","platforms":["Windows"],"autosuggest":"S0188 - Starloader"},{"software_id":"S0189","software_name":"ISMInjector","platforms":["Windows"],"autosuggest":"S0189 - ISMInjector"},{"software_id":"S0190","software_name":"BITSAdmin","platforms":["Windows"],"autosuggest":"S0190 - BITSAdmin"},{"software_id":"S0191","software_name":"Winexe","platforms":["Windows"],"autosuggest":"S0191 - Winexe"},{"software_id":"S0192","software_name":"Pupy","platforms":["Android","Linux","Windows","macOS"],"autosuggest":"S0192 - Pupy"},{"software_id":"S0193","software_name":"Forfiles","platforms":["Windows"],"autosuggest":"S0193 - Forfiles"},{"software_id":"S0194","software_name":"PowerSploit","platforms":["Windows"],"autosuggest":"S0194 - PowerSploit"},{"software_id":"S0195","software_name":"SDelete","platforms":["Windows"],"autosuggest":"S0195 - SDelete"},{"software_id":"S0196","software_name":"PUNCHBUGGY","platforms":["Windows"],"autosuggest":"S0196 - PUNCHBUGGY"},{"software_id":"S0197","software_name":"PUNCHTRACK","platforms":["Windows"],"autosuggest":"S0197 - PUNCHTRACK"},{"software_id":"S0198","software_name":"NETWIRE","platforms":["Windows"],"autosuggest":"S0198 - NETWIRE"},{"software_id":"S0199","software_name":"TURNEDUP","platforms":["Windows"],"autosuggest":"S0199 - TURNEDUP"},{"software_id":"S0200","software_name":"Dipsind","platforms":["Windows"],"autosuggest":"S0200 - Dipsind"},{"software_id":"S0201","software_name":"JPIN","platforms":["Windows"],"autosuggest":"S0201 - JPIN"},{"software_id":"S0202","software_name":"adbupd","platforms":["Windows"],"autosuggest":"S0202 - adbupd"},{"software_id":"S0203","software_name":"Hydraq","platforms":["Windows"],"autosuggest":"S0203 - Hydraq"},{"software_id":"S0204","software_name":"Briba","platforms":["Windows"],"autosuggest":"S0204 - Briba"},{"software_id":"S0205","software_name":"Naid","platforms":["Windows"],"autosuggest":"S0205 - Naid"},{"software_id":"S0206","software_name":"Wiarp","platforms":["Windows"],"autosuggest":"S0206 - Wiarp"},{"software_id":"S0207","software_name":"Vasport","platforms":["Windows"],"autosuggest":"S0207 - Vasport"},{"software_id":"S0208","software_name":"Pasam","platforms":["Windows"],"autosuggest":"S0208 - Pasam"},{"software_id":"S0209","software_name":"Darkmoon","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0209 - Darkmoon"},{"software_id":"S0210","software_name":"Nerex","platforms":["Windows"],"autosuggest":"S0210 - Nerex"},{"software_id":"S0211","software_name":"Linfo","platforms":["Windows"],"autosuggest":"S0211 - Linfo"},{"software_id":"S0212","software_name":"CORALDECK","platforms":["Windows"],"autosuggest":"S0212 - CORALDECK"},{"software_id":"S0213","software_name":"DOGCALL","platforms":["Windows"],"autosuggest":"S0213 - DOGCALL"},{"software_id":"S0214","software_name":"HAPPYWORK","platforms":["Windows"],"autosuggest":"S0214 - HAPPYWORK"},{"software_id":"S0215","software_name":"KARAE","platforms":["Windows"],"autosuggest":"S0215 - KARAE"},{"software_id":"S0216","software_name":"POORAIM","platforms":["Windows"],"autosuggest":"S0216 - POORAIM"},{"software_id":"S0217","software_name":"SHUTTERSPEED","platforms":["Windows"],"autosuggest":"S0217 - SHUTTERSPEED"},{"software_id":"S0218","software_name":"SLOWDRIFT","platforms":["Windows"],"autosuggest":"S0218 - SLOWDRIFT"},{"software_id":"S0219","software_name":"WINERACK","platforms":["Windows"],"autosuggest":"S0219 - WINERACK"},{"software_id":"S0220","software_name":"Chaos","platforms":["Linux"],"autosuggest":"S0220 - Chaos"},{"software_id":"S0221","software_name":"Umbreon","platforms":["Linux"],"autosuggest":"S0221 - Umbreon"},{"software_id":"S0222","software_name":"CCBkdr","platforms":["Windows"],"autosuggest":"S0222 - CCBkdr"},{"software_id":"S0223","software_name":"POWERSTATS","platforms":["Windows"],"autosuggest":"S0223 - POWERSTATS"},{"software_id":"S0224","software_name":"Havij","platforms":["Linux","Windows","macOS"],"autosuggest":"S0224 - Havij"},{"software_id":"S0225","software_name":"sqlmap","platforms":["Linux","Windows","macOS"],"autosuggest":"S0225 - sqlmap"},{"software_id":"S0226","software_name":"Smoke Loader","platforms":["Windows"],"autosuggest":"S0226 - Smoke Loader"},{"software_id":"S0227","software_name":"spwebmember","platforms":["Windows"],"autosuggest":"S0227 - spwebmember"},{"software_id":"S0228","software_name":"NanHaiShu","platforms":["Windows"],"autosuggest":"S0228 - NanHaiShu"},{"software_id":"S0229","software_name":"Orz","platforms":["Windows"],"autosuggest":"S0229 - Orz"},{"software_id":"S0230","software_name":"ZeroT","platforms":["Windows"],"autosuggest":"S0230 - ZeroT"},{"software_id":"S0231","software_name":"Invoke-PSImage","platforms":["Windows"],"autosuggest":"S0231 - Invoke-PSImage"},{"software_id":"S0232","software_name":"HOMEFRY","platforms":["Windows"],"autosuggest":"S0232 - HOMEFRY"},{"software_id":"S0233","software_name":"MURKYTOP","platforms":["Windows"],"autosuggest":"S0233 - MURKYTOP"},{"software_id":"S0234","software_name":"Bandook","platforms":["Windows"],"autosuggest":"S0234 - Bandook"},{"software_id":"S0235","software_name":"CrossRAT","platforms":["Linux","Windows","macOS"],"autosuggest":"S0235 - CrossRAT"},{"software_id":"S0236","software_name":"Kwampirs","platforms":["Windows"],"autosuggest":"S0236 - Kwampirs"},{"software_id":"S0237","software_name":"GravityRAT","platforms":["Windows"],"autosuggest":"S0237 - GravityRAT"},{"software_id":"S0238","software_name":"Proxysvc","platforms":["Windows"],"autosuggest":"S0238 - Proxysvc"},{"software_id":"S0239","software_name":"Bankshot","platforms":["Windows"],"autosuggest":"S0239 - Bankshot"},{"software_id":"S0240","software_name":"ROKRAT","platforms":["Windows"],"autosuggest":"S0240 - ROKRAT"},{"software_id":"S0241","software_name":"RATANKBA","platforms":["Windows"],"autosuggest":"S0241 - RATANKBA"},{"software_id":"S0242","software_name":"SynAck","platforms":["Windows"],"autosuggest":"S0242 - SynAck"},{"software_id":"S0243","software_name":"DealersChoice","platforms":["Windows"],"autosuggest":"S0243 - DealersChoice"},{"software_id":"S0244","software_name":"Comnie","platforms":["Windows"],"autosuggest":"S0244 - Comnie"},{"software_id":"S0245","software_name":"BADCALL","platforms":["Windows"],"autosuggest":"S0245 - BADCALL"},{"software_id":"S0246","software_name":"HARDRAIN","platforms":["Windows"],"autosuggest":"S0246 - HARDRAIN"},{"software_id":"S0247","software_name":"NavRAT","platforms":["Windows"],"autosuggest":"S0247 - NavRAT"},{"software_id":"S0248","software_name":"yty","platforms":["Windows"],"autosuggest":"S0248 - yty"},{"software_id":"S0249","software_name":"Gold Dragon","platforms":["Windows"],"autosuggest":"S0249 - Gold Dragon"},{"software_id":"S0250","software_name":"Koadic","platforms":["Windows"],"autosuggest":"S0250 - Koadic"},{"software_id":"S0251","software_name":"Zebrocy","platforms":["Windows"],"autosuggest":"S0251 - Zebrocy"},{"software_id":"S0252","software_name":"Brave Prince","platforms":["Windows"],"autosuggest":"S0252 - Brave Prince"},{"software_id":"S0253","software_name":"RunningRAT","platforms":["Windows"],"autosuggest":"S0253 - RunningRAT"},{"software_id":"S0254","software_name":"PLAINTEE","platforms":["Windows"],"autosuggest":"S0254 - PLAINTEE"},{"software_id":"S0255","software_name":"DDKONG","platforms":["Windows"],"autosuggest":"S0255 - DDKONG"},{"software_id":"S0256","software_name":"Mosquito","platforms":["Windows"],"autosuggest":"S0256 - Mosquito"},{"software_id":"S0257","software_name":"VERMIN","platforms":["Windows"],"autosuggest":"S0257 - VERMIN"},{"software_id":"S0258","software_name":"RGDoor","platforms":["Windows"],"autosuggest":"S0258 - RGDoor"},{"software_id":"S0259","software_name":"InnaputRAT","platforms":["Windows"],"autosuggest":"S0259 - InnaputRAT"},{"software_id":"S0260","software_name":"InvisiMole","platforms":["Windows"],"autosuggest":"S0260 - InvisiMole"},{"software_id":"S0261","software_name":"Catchamas","platforms":["Windows"],"autosuggest":"S0261 - Catchamas"},{"software_id":"S0262","software_name":"QuasarRAT","platforms":["Windows"],"autosuggest":"S0262 - QuasarRAT"},{"software_id":"S0263","software_name":"TYPEFRAME","platforms":["Windows"],"autosuggest":"S0263 - TYPEFRAME"},{"software_id":"S0264","software_name":"OopsIE","platforms":["Windows"],"autosuggest":"S0264 - OopsIE"},{"software_id":"S0265","software_name":"Kazuar","platforms":["Windows","macOS"],"autosuggest":"S0265 - Kazuar"},{"software_id":"S0266","software_name":"TrickBot","platforms":["Windows"],"autosuggest":"S0266 - TrickBot"},{"software_id":"S0267","software_name":"FELIXROOT","platforms":["Windows"],"autosuggest":"S0267 - FELIXROOT"},{"software_id":"S0268","software_name":"Bisonal","platforms":["Windows"],"autosuggest":"S0268 - Bisonal"},{"software_id":"S0269","software_name":"QUADAGENT","platforms":["Windows"],"autosuggest":"S0269 - QUADAGENT"},{"software_id":"S0270","software_name":"RogueRobin","platforms":["Windows"],"autosuggest":"S0270 - RogueRobin"},{"software_id":"S0271","software_name":"KEYMARBLE","platforms":["Windows"],"autosuggest":"S0271 - KEYMARBLE"},{"software_id":"S0272","software_name":"NDiskMonitor","platforms":["Windows"],"autosuggest":"S0272 - NDiskMonitor"},{"software_id":"S0273","software_name":"Socksbot","platforms":["Windows"],"autosuggest":"S0273 - Socksbot"},{"software_id":"S0274","software_name":"Calisto","platforms":["macOS"],"autosuggest":"S0274 - Calisto"},{"software_id":"S0275","software_name":"UPPERCUT","platforms":["Windows"],"autosuggest":"S0275 - UPPERCUT"},{"software_id":"S0276","software_name":"Keydnap","platforms":["macOS"],"autosuggest":"S0276 - Keydnap"},{"software_id":"S0277","software_name":"FruitFly","platforms":["macOS"],"autosuggest":"S0277 - FruitFly"},{"software_id":"S0278","software_name":"iKitten","platforms":["macOS"],"autosuggest":"S0278 - iKitten"},{"software_id":"S0279","software_name":"Proton","platforms":["macOS"],"autosuggest":"S0279 - Proton"},{"software_id":"S0280","software_name":"MirageFox","platforms":["Windows"],"autosuggest":"S0280 - MirageFox"},{"software_id":"S0281","software_name":"Dok","platforms":["macOS"],"autosuggest":"S0281 - Dok"},{"software_id":"S0282","software_name":"MacSpy","platforms":["macOS"],"autosuggest":"S0282 - MacSpy"},{"software_id":"S0283","software_name":"jRAT","platforms":["Android","Linux","Windows","macOS"],"autosuggest":"S0283 - jRAT"},{"software_id":"S0284","software_name":"More_eggs","platforms":["Windows"],"autosuggest":"S0284 - More_eggs"},{"software_id":"S0330","software_name":"Zeus Panda","platforms":["Windows"],"autosuggest":"S0330 - Zeus Panda"},{"software_id":"S0331","software_name":"Agent Tesla","platforms":["Windows"],"autosuggest":"S0331 - Agent Tesla"},{"software_id":"S0332","software_name":"Remcos","platforms":["Windows"],"autosuggest":"S0332 - Remcos"},{"software_id":"S0333","software_name":"UBoatRAT","platforms":["Windows"],"autosuggest":"S0333 - UBoatRAT"},{"software_id":"S0334","software_name":"DarkComet","platforms":["Windows"],"autosuggest":"S0334 - DarkComet"},{"software_id":"S0335","software_name":"Carbon","platforms":["Windows"],"autosuggest":"S0335 - Carbon"},{"software_id":"S0336","software_name":"NanoCore","platforms":["Windows"],"autosuggest":"S0336 - NanoCore"},{"software_id":"S0337","software_name":"BadPatch","platforms":["Windows"],"autosuggest":"S0337 - BadPatch"},{"software_id":"S0338","software_name":"Cobian RAT","platforms":["Windows"],"autosuggest":"S0338 - Cobian RAT"},{"software_id":"S0339","software_name":"Micropsia","platforms":["Windows"],"autosuggest":"S0339 - Micropsia"},{"software_id":"S0340","software_name":"Octopus","platforms":["Windows"],"autosuggest":"S0340 - Octopus"},{"software_id":"S0341","software_name":"Xbash","platforms":["Linux","Windows"],"autosuggest":"S0341 - Xbash"},{"software_id":"S0342","software_name":"GreyEnergy","platforms":["Windows"],"autosuggest":"S0342 - GreyEnergy"},{"software_id":"S0343","software_name":"Exaramel for Windows","platforms":["Windows"],"autosuggest":"S0343 - Exaramel for Windows"},{"software_id":"S0344","software_name":"Azorult","platforms":["Windows"],"autosuggest":"S0344 - Azorult"},{"software_id":"S0345","software_name":"Seasalt","platforms":["Windows"],"autosuggest":"S0345 - Seasalt"},{"software_id":"S0346","software_name":"OceanSalt","platforms":["Windows"],"autosuggest":"S0346 - OceanSalt"},{"software_id":"S0347","software_name":"AuditCred","platforms":["Windows"],"autosuggest":"S0347 - AuditCred"},{"software_id":"S0348","software_name":"Cardinal RAT","platforms":["Windows"],"autosuggest":"S0348 - Cardinal RAT"},{"software_id":"S0349","software_name":"LaZagne","platforms":["Linux","Windows","macOS"],"autosuggest":"S0349 - LaZagne"},{"software_id":"S0350","software_name":"zwShell","platforms":["Windows"],"autosuggest":"S0350 - zwShell"},{"software_id":"S0351","software_name":"Cannon","platforms":["Windows"],"autosuggest":"S0351 - Cannon"},{"software_id":"S0352","software_name":"OSX_OCEANLOTUS.D","platforms":["macOS"],"autosuggest":"S0352 - OSX_OCEANLOTUS.D"},{"software_id":"S0353","software_name":"NOKKI","platforms":["Windows"],"autosuggest":"S0353 - NOKKI"},{"software_id":"S0354","software_name":"Denis","platforms":["Windows"],"autosuggest":"S0354 - Denis"},{"software_id":"S0355","software_name":"Final1stspy","platforms":["Windows"],"autosuggest":"S0355 - Final1stspy"},{"software_id":"S0356","software_name":"KONNI","platforms":["Windows"],"autosuggest":"S0356 - KONNI"},{"software_id":"S0357","software_name":"Impacket","platforms":["Linux","Windows","macOS"],"autosuggest":"S0357 - Impacket"},{"software_id":"S0358","software_name":"Ruler","platforms":["Office 365","Windows"],"autosuggest":"S0358 - Ruler"},{"software_id":"S0359","software_name":"Nltest","platforms":["Windows"],"autosuggest":"S0359 - Nltest"},{"software_id":"S0360","software_name":"BONDUPDATER","platforms":["Windows"],"autosuggest":"S0360 - BONDUPDATER"},{"software_id":"S0361","software_name":"Expand","platforms":["Windows"],"autosuggest":"S0361 - Expand"},{"software_id":"S0362","software_name":"Linux Rabbit","platforms":["Linux"],"autosuggest":"S0362 - Linux Rabbit"},{"software_id":"S0363","software_name":"Empire","platforms":["Linux","Windows","macOS"],"autosuggest":"S0363 - Empire"},{"software_id":"S0364","software_name":"RawDisk","platforms":["Windows"],"autosuggest":"S0364 - RawDisk"},{"software_id":"S0365","software_name":"Olympic Destroyer","platforms":["Windows"],"autosuggest":"S0365 - Olympic Destroyer"},{"software_id":"S0366","software_name":"WannaCry","platforms":["Windows"],"autosuggest":"S0366 - WannaCry"},{"software_id":"S0367","software_name":"Emotet","platforms":["Windows"],"autosuggest":"S0367 - Emotet"},{"software_id":"S0368","software_name":"NotPetya","platforms":["Windows"],"autosuggest":"S0368 - NotPetya"},{"software_id":"S0369","software_name":"CoinTicker","platforms":["macOS"],"autosuggest":"S0369 - CoinTicker"},{"software_id":"S0370","software_name":"SamSam","platforms":["Windows"],"autosuggest":"S0370 - SamSam"},{"software_id":"S0371","software_name":"POWERTON","platforms":["Windows"],"autosuggest":"S0371 - POWERTON"},{"software_id":"S0372","software_name":"LockerGoga","platforms":["Windows"],"autosuggest":"S0372 - LockerGoga"},{"software_id":"S0373","software_name":"Astaroth","platforms":["Windows"],"autosuggest":"S0373 - Astaroth"},{"software_id":"S0374","software_name":"SpeakUp","platforms":["Linux","macOS"],"autosuggest":"S0374 - SpeakUp"},{"software_id":"S0375","software_name":"Remexi","platforms":["Windows"],"autosuggest":"S0375 - Remexi"},{"software_id":"S0376","software_name":"HOPLIGHT","platforms":["Windows"],"autosuggest":"S0376 - HOPLIGHT"},{"software_id":"S0377","software_name":"Ebury","platforms":["Linux"],"autosuggest":"S0377 - Ebury"},{"software_id":"S0378","software_name":"PoshC2","platforms":["Linux","Windows","macOS"],"autosuggest":"S0378 - PoshC2"},{"software_id":"S0379","software_name":"Revenge RAT","platforms":["Windows"],"autosuggest":"S0379 - Revenge RAT"},{"software_id":"S0380","software_name":"StoneDrill","platforms":["Windows"],"autosuggest":"S0380 - StoneDrill"},{"software_id":"S0381","software_name":"FlawedAmmyy","platforms":["Windows"],"autosuggest":"S0381 - FlawedAmmyy"},{"software_id":"S0382","software_name":"ServHelper","platforms":["Windows"],"autosuggest":"S0382 - ServHelper"},{"software_id":"S0383","software_name":"FlawedGrace","platforms":["Windows"],"autosuggest":"S0383 - FlawedGrace"},{"software_id":"S0384","software_name":"Dridex","platforms":["Windows"],"autosuggest":"S0384 - Dridex"},{"software_id":"S0385","software_name":"njRAT","platforms":["Windows"],"autosuggest":"S0385 - njRAT"},{"software_id":"S0386","software_name":"Ursnif","platforms":["Windows"],"autosuggest":"S0386 - Ursnif"},{"software_id":"S0387","software_name":"KeyBoy","platforms":["Windows"],"autosuggest":"S0387 - KeyBoy"},{"software_id":"S0388","software_name":"YAHOYAH","platforms":["Windows"],"autosuggest":"S0388 - YAHOYAH"},{"software_id":"S0389","software_name":"JCry","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0389 - JCry"},{"software_id":"S0390","software_name":"SQLRat","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0390 - SQLRat"},{"software_id":"S0391","software_name":"HAWKBALL","platforms":["Windows"],"autosuggest":"S0391 - HAWKBALL"},{"software_id":"S0393","software_name":"PowerStallion","platforms":["Windows"],"autosuggest":"S0393 - PowerStallion"},{"software_id":"S0394","software_name":"HiddenWasp","platforms":["Linux"],"autosuggest":"S0394 - HiddenWasp"},{"software_id":"S0395","software_name":"LightNeuron","platforms":["Linux","Windows"],"autosuggest":"S0395 - LightNeuron"},{"software_id":"S0396","software_name":"EvilBunny","platforms":["Windows"],"autosuggest":"S0396 - EvilBunny"},{"software_id":"S0397","software_name":"LoJax","platforms":["Windows"],"autosuggest":"S0397 - LoJax"},{"software_id":"S0398","software_name":"HyperBro","platforms":["Windows"],"autosuggest":"S0398 - HyperBro"},{"software_id":"S0400","software_name":"RobbinHood","platforms":["Windows"],"autosuggest":"S0400 - RobbinHood"},{"software_id":"S0401","software_name":"Exaramel for Linux","platforms":["Linux"],"autosuggest":"S0401 - Exaramel for Linux"},{"software_id":"S0402","software_name":"OSX/Shlayer","platforms":["macOS"],"autosuggest":"S0402 - OSX/Shlayer"},{"software_id":"S0404","software_name":"esentutl","platforms":["Windows"],"autosuggest":"S0404 - esentutl"},{"software_id":"S0409","software_name":"Machete","platforms":["Windows"],"autosuggest":"S0409 - Machete"},{"software_id":"S0410","software_name":"Fysbis","platforms":["Linux"],"autosuggest":"S0410 - Fysbis"},{"software_id":"S0412","software_name":"ZxShell","platforms":["Windows"],"autosuggest":"S0412 - ZxShell"},{"software_id":"S0413","software_name":"MailSniper","platforms":["Azure AD","Office 365","Windows"],"autosuggest":"S0413 - MailSniper"},{"software_id":"S0414","software_name":"BabyShark","platforms":["Windows"],"autosuggest":"S0414 - BabyShark"},{"software_id":"S0415","software_name":"BOOSTWRITE","platforms":["Windows"],"autosuggest":"S0415 - BOOSTWRITE"},{"software_id":"S0416","software_name":"RDFSNIFFER","platforms":["Windows"],"autosuggest":"S0416 - RDFSNIFFER"},{"software_id":"S0417","software_name":"GRIFFON","platforms":["Windows"],"autosuggest":"S0417 - GRIFFON"},{"software_id":"S0428","software_name":"PoetRAT","platforms":["Windows"],"autosuggest":"S0428 - PoetRAT"},{"software_id":"S0430","software_name":"Winnti for Linux","platforms":["Linux"],"autosuggest":"S0430 - Winnti for Linux"},{"software_id":"S0431","software_name":"HotCroissant","platforms":["Windows"],"autosuggest":"S0431 - HotCroissant"},{"software_id":"S0433","software_name":"Rifdoor","platforms":["Windows"],"autosuggest":"S0433 - Rifdoor"},{"software_id":"S0434","software_name":"Imminent Monitor","platforms":["Windows"],"autosuggest":"S0434 - Imminent Monitor"},{"software_id":"S0435","software_name":"PLEAD","platforms":["Windows"],"autosuggest":"S0435 - PLEAD"},{"software_id":"S0436","software_name":"TSCookie","platforms":["Windows"],"autosuggest":"S0436 - TSCookie"},{"software_id":"S0437","software_name":"Kivars","platforms":["Windows"],"autosuggest":"S0437 - Kivars"},{"software_id":"S0438","software_name":"Attor","platforms":["Windows"],"autosuggest":"S0438 - Attor"},{"software_id":"S0439","software_name":"Okrum","platforms":["Windows"],"autosuggest":"S0439 - Okrum"},{"software_id":"S0441","software_name":"PowerShower","platforms":["Windows"],"autosuggest":"S0441 - PowerShower"},{"software_id":"S0442","software_name":"VBShower","platforms":["Windows"],"autosuggest":"S0442 - VBShower"},{"software_id":"S0443","software_name":"MESSAGETAP","platforms":["Linux"],"autosuggest":"S0443 - MESSAGETAP"},{"software_id":"S0444","software_name":"ShimRat","platforms":["Windows"],"autosuggest":"S0444 - ShimRat"},{"software_id":"S0445","software_name":"ShimRatReporter","platforms":["Windows"],"autosuggest":"S0445 - ShimRatReporter"},{"software_id":"S0446","software_name":"Ryuk","platforms":["Windows"],"autosuggest":"S0446 - Ryuk"},{"software_id":"S0447","software_name":"Lokibot","platforms":["Windows"],"autosuggest":"S0447 - Lokibot"},{"software_id":"S0448","software_name":"Rising Sun","platforms":["Windows"],"autosuggest":"S0448 - Rising Sun"},{"software_id":"S0449","software_name":"Maze","platforms":["Windows"],"autosuggest":"S0449 - Maze"},{"software_id":"S0450","software_name":"SHARPSTATS","platforms":["Windows"],"autosuggest":"S0450 - SHARPSTATS"},{"software_id":"S0451","software_name":"LoudMiner","platforms":["Windows","macOS"],"autosuggest":"S0451 - LoudMiner"},{"software_id":"S0452","software_name":"USBferry","platforms":["Windows"],"autosuggest":"S0452 - USBferry"},{"software_id":"S0453","software_name":"Pony","platforms":["Windows"],"autosuggest":"S0453 - Pony"},{"software_id":"S0454","software_name":"Cadelspy","platforms":["Windows"],"autosuggest":"S0454 - Cadelspy"},{"software_id":"S0455","software_name":"Metamorfo","platforms":["Windows"],"autosuggest":"S0455 - Metamorfo"},{"software_id":"S0456","software_name":"Aria-body","platforms":["Windows"],"autosuggest":"S0456 - Aria-body"},{"software_id":"S0457","software_name":"Netwalker","platforms":["Windows"],"autosuggest":"S0457 - Netwalker"},{"software_id":"S0458","software_name":"Ramsay","platforms":["Windows"],"autosuggest":"S0458 - Ramsay"},{"software_id":"S0459","software_name":"MechaFlounder","platforms":["Windows"],"autosuggest":"S0459 - MechaFlounder"},{"software_id":"S0460","software_name":"Get2","platforms":["Windows"],"autosuggest":"S0460 - Get2"},{"software_id":"S0461","software_name":"SDBot","platforms":["Windows"],"autosuggest":"S0461 - SDBot"},{"software_id":"S0462","software_name":"CARROTBAT","platforms":["Windows"],"autosuggest":"S0462 - CARROTBAT"},{"software_id":"S0464","software_name":"SYSCON","platforms":["Windows"],"autosuggest":"S0464 - SYSCON"},{"software_id":"S0465","software_name":"CARROTBALL","platforms":["Windows"],"autosuggest":"S0465 - CARROTBALL"},{"software_id":"S0466","software_name":"WindTail","platforms":["macOS"],"autosuggest":"S0466 - WindTail"},{"software_id":"S0467","software_name":"TajMahal","platforms":["Windows"],"autosuggest":"S0467 - TajMahal"},{"software_id":"S0468","software_name":"Skidmap","platforms":["Linux"],"autosuggest":"S0468 - Skidmap"},{"software_id":"S0469","software_name":"ABK","platforms":["Windows"],"autosuggest":"S0469 - ABK"},{"software_id":"S0470","software_name":"BBK","platforms":["Windows"],"autosuggest":"S0470 - BBK"},{"software_id":"S0471","software_name":"build_downer","platforms":["Windows"],"autosuggest":"S0471 - build_downer"},{"software_id":"S0472","software_name":"down_new","platforms":["Windows"],"autosuggest":"S0472 - down_new"},{"software_id":"S0473","software_name":"Avenger","platforms":["Windows"],"autosuggest":"S0473 - Avenger"},{"software_id":"S0475","software_name":"BackConfig","platforms":["Windows"],"autosuggest":"S0475 - BackConfig"},{"software_id":"S0476","software_name":"Valak","platforms":["Windows"],"autosuggest":"S0476 - Valak"},{"software_id":"S0477","software_name":"Goopy","platforms":["Windows"],"autosuggest":"S0477 - Goopy"},{"software_id":"S0481","software_name":"Ragnar Locker","platforms":["Windows"],"autosuggest":"S0481 - Ragnar Locker"},{"software_id":"S0482","software_name":"Bundlore","platforms":["macOS"],"autosuggest":"S0482 - Bundlore"},{"software_id":"S0483","software_name":"IcedID","platforms":["Windows"],"autosuggest":"S0483 - IcedID"},{"software_id":"S0484","software_name":"Carberp","platforms":["Windows"],"autosuggest":"S0484 - Carberp"},{"software_id":"S0486","software_name":"Bonadan","platforms":["Linux"],"autosuggest":"S0486 - Bonadan"},{"software_id":"S0487","software_name":"Kessel","platforms":["Linux"],"autosuggest":"S0487 - Kessel"},{"software_id":"S0488","software_name":"CrackMapExec","platforms":["Windows"],"autosuggest":"S0488 - CrackMapExec"},{"software_id":"S0491","software_name":"StrongPity","platforms":["Windows"],"autosuggest":"S0491 - StrongPity"},{"software_id":"S0492","software_name":"CookieMiner","platforms":["macOS"],"autosuggest":"S0492 - CookieMiner"},{"software_id":"S0493","software_name":"GoldenSpy","platforms":["Windows"],"autosuggest":"S0493 - GoldenSpy"},{"software_id":"S0495","software_name":"RDAT","platforms":["Windows"],"autosuggest":"S0495 - RDAT"},{"software_id":"S0496","software_name":"REvil","platforms":["Windows"],"autosuggest":"S0496 - REvil"},{"software_id":"S0497","software_name":"Dacls","platforms":["Linux","Windows","macOS"],"autosuggest":"S0497 - Dacls"},{"software_id":"S0498","software_name":"Cryptoistic","platforms":["macOS"],"autosuggest":"S0498 - Cryptoistic"},{"software_id":"S0499","software_name":"Hancitor","platforms":["Windows"],"autosuggest":"S0499 - Hancitor"},{"software_id":"S0500","software_name":"MCMD","platforms":["Windows"],"autosuggest":"S0500 - MCMD"},{"software_id":"S0501","software_name":"PipeMon","platforms":["Windows"],"autosuggest":"S0501 - PipeMon"},{"software_id":"S0502","software_name":"Drovorub","platforms":["Linux"],"autosuggest":"S0502 - Drovorub"},{"software_id":"S0503","software_name":"FrameworkPOS","platforms":["AWS","Azure","Azure AD","GCP","Linux","Network","Office 365","PRE","SaaS","Windows","macOS"],"autosuggest":"S0503 - FrameworkPOS"},{"software_id":"S0504","software_name":"Anchor","platforms":["Linux","Windows"],"autosuggest":"S0504 - Anchor"},{"software_id":"S0508","software_name":"Ngrok","platforms":["Windows"],"autosuggest":"S0508 - Ngrok"},{"software_id":"S0511","software_name":"RegDuke","platforms":["Windows"],"autosuggest":"S0511 - RegDuke"},{"software_id":"S0512","software_name":"FatDuke","platforms":["Windows"],"autosuggest":"S0512 - FatDuke"},{"software_id":"S0514","software_name":"WellMess","platforms":["Windows"],"autosuggest":"S0514 - WellMess"},{"software_id":"S0515","software_name":"WellMail","platforms":["Windows"],"autosuggest":"S0515 - WellMail"},{"software_id":"S0516","software_name":"SoreFang","platforms":["Windows"],"autosuggest":"S0516 - SoreFang"},{"software_id":"S0517","software_name":"Pillowmint","platforms":["Windows"],"autosuggest":"S0517 - Pillowmint"},{"software_id":"S0518","software_name":"PolyglotDuke","platforms":["Windows"],"autosuggest":"S0518 - PolyglotDuke"},{"software_id":"S0519","software_name":"SYNful Knock","platforms":["Network"],"autosuggest":"S0519 - SYNful Knock"},{"software_id":"S0521","software_name":"BloodHound","platforms":["Windows"],"autosuggest":"S0521 - BloodHound"},{"software_id":"S0552","software_name":"AdFind","platforms":["Windows"],"autosuggest":"S0552 - AdFind"},{"software_id":"S0559","software_name":"Sunburst","platforms":["Windows"],"autosuggest":"S0559 - Sunburst"},{"software_id":"S0560","software_name":"Teardrop","platforms":["Windows"],"autosuggest":"S0560 - Teardrop"},{"software_id":"S0562","software_name":"Sunspot","platforms":["Windows"],"autosuggest":"S0562 - Sunspot"},{"software_id":"S0565","software_name":"Raindrop","platforms":["Windows"],"autosuggest":"S0565 - Raindrop"}]')},be87:function(e,t,s){},f0fa:function(e,t,s){"use strict";var a=s("18f9"),i=s.n(a);i.a}}); +//# sourceMappingURL=app.54893e27.js.map \ No newline at end of file diff --git a/editor/dist/dettect-editor/js/app.6dd397e3.js.map b/editor/dist/dettect-editor/js/app.54893e27.js.map similarity index 99% rename from editor/dist/dettect-editor/js/app.6dd397e3.js.map rename to editor/dist/dettect-editor/js/app.54893e27.js.map index 6116ba6..ba1b485 100644 --- a/editor/dist/dettect-editor/js/app.6dd397e3.js.map +++ b/editor/dist/dettect-editor/js/app.54893e27.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Modal.vue?a882","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/App.vue?30df","webpack:///src/App.vue","webpack:///./src/App.vue?a7d1","webpack:///./src/App.vue","webpack:///./src/layout/Layout.vue?62ee","webpack:///./src/layout/Footer.vue?d46d","webpack:///src/layout/Footer.vue","webpack:///./src/layout/Footer.vue?6d55","webpack:///./src/layout/Footer.vue","webpack:///./src/layout/Content.vue?7dba","webpack:///src/layout/Content.vue","webpack:///./src/layout/Content.vue?d80a","webpack:///./src/layout/Content.vue","webpack:///src/layout/Layout.vue","webpack:///./src/layout/Layout.vue?6553","webpack:///./src/layout/Layout.vue","webpack:///./src/pages/HomePage.vue?f127","webpack:///src/pages/HomePage.vue","webpack:///./src/pages/HomePage.vue?2935","webpack:///./src/pages/HomePage.vue","webpack:///./src/pages/DataSourcesPage.vue?5405","webpack:///./src/pages/DataSourceDetail.vue?060c","webpack:///./src/components/Inputs/ListEditor.vue?2c1b","webpack:///./src/components/Icons.vue?88fc","webpack:///src/components/Icons.vue","webpack:///./src/components/Icons.vue?489c","webpack:///./src/components/Icons.vue","webpack:///./src/pages/Notifications/NotificationTemplate.vue?4ed1","webpack:///src/pages/Notifications/NotificationTemplate.vue","webpack:///./src/pages/Notifications/NotificationTemplate.vue?f5ec","webpack:///./src/pages/Notifications/NotificationTemplate.vue","webpack:///./src/mixins/NotificationMixins.js","webpack:///src/components/Inputs/ListEditor.vue","webpack:///./src/components/Inputs/ListEditor.vue?6bb1","webpack:///./src/components/Inputs/ListEditor.vue","webpack:///./src/components/Inputs/DatePicker.vue?6699","webpack:///src/components/Inputs/DatePicker.vue","webpack:///./src/components/Inputs/DatePicker.vue?a4c2","webpack:///./src/components/Inputs/DatePicker.vue","webpack:///./src/components/Inputs/ToggleButton.vue?f7a3","webpack:///src/components/Inputs/ToggleButton.vue","webpack:///./src/components/Inputs/ToggleButton.vue?79ee","webpack:///./src/components/Inputs/ToggleButton.vue","webpack:///./src/components/Inputs/ScoreSlider.vue?2c44","webpack:///src/components/Inputs/ScoreSlider.vue","webpack:///./src/components/Inputs/ScoreSlider.vue?816b","webpack:///./src/components/Inputs/ScoreSlider.vue","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue?e648","webpack:///src/components/Inputs/CustomKeyValueEditor.vue","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue?d82f","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue","webpack:///./src/components/Inputs/AutoSuggestTitle.vue?d808","webpack:///./src/mixins/AutoSuggestMixins.js","webpack:///src/components/Inputs/AutoSuggestTitle.vue","webpack:///./src/components/Inputs/AutoSuggestTitle.vue?32f0","webpack:///./src/components/Inputs/AutoSuggestTitle.vue","webpack:///./src/components/Inputs/ExtendedTextarea.vue?a393","webpack:///src/components/Inputs/ExtendedTextarea.vue","webpack:///./src/components/Inputs/ExtendedTextarea.vue?7ecb","webpack:///./src/components/Inputs/ExtendedTextarea.vue","webpack:///./src/constants.js","webpack:///./src/components/Modal.vue?196d","webpack:///src/components/Modal.vue","webpack:///./src/components/Modal.vue?6cd3","webpack:///./src/components/Modal.vue","webpack:///./src/mixins/PageDetailMixins.js","webpack:///src/pages/DataSourceDetail.vue","webpack:///./src/pages/DataSourceDetail.vue?37e8","webpack:///./src/pages/DataSourceDetail.vue","webpack:///./src/components/FileReader.vue?ef45","webpack:///src/components/FileReader.vue","webpack:///./src/components/FileReader.vue?0b26","webpack:///./src/components/FileReader.vue","webpack:///./src/components/FileDetails.vue?cd1f","webpack:///src/components/FileDetails.vue","webpack:///./src/components/FileDetails.vue?81f1","webpack:///./src/components/FileDetails.vue","webpack:///./src/mixins/PageMixins.js","webpack:///./src/mixins/NavigateMixins.js","webpack:///src/pages/DataSourcesPage.vue","webpack:///./src/pages/DataSourcesPage.vue?7ce8","webpack:///./src/pages/DataSourcesPage.vue","webpack:///./src/pages/TechniquesPage.vue?bb46","webpack:///./src/pages/TechniquesDetail.vue?9bfc","webpack:///./src/components/Inputs/ApplicableToCollapse.vue?220d","webpack:///./src/components/Inputs/ScoreLogbook.vue?8ef4","webpack:///src/components/Inputs/ScoreLogbook.vue","webpack:///./src/components/Inputs/ScoreLogbook.vue?9083","webpack:///./src/components/Inputs/ScoreLogbook.vue","webpack:///src/components/Inputs/ApplicableToCollapse.vue","webpack:///./src/components/Inputs/ApplicableToCollapse.vue?04ef","webpack:///./src/components/Inputs/ApplicableToCollapse.vue","webpack:///src/pages/TechniquesDetail.vue","webpack:///./src/pages/TechniquesDetail.vue?a92e","webpack:///./src/pages/TechniquesDetail.vue","webpack:///src/pages/TechniquesPage.vue","webpack:///./src/pages/TechniquesPage.vue?c8c3","webpack:///./src/pages/TechniquesPage.vue","webpack:///./src/pages/GroupsPage.vue?1639","webpack:///./src/pages/GroupsDetail.vue?4cd2","webpack:///./src/components/Inputs/AutoSuggestGroup.vue?d951","webpack:///src/components/Inputs/AutoSuggestGroup.vue","webpack:///./src/components/Inputs/AutoSuggestGroup.vue?bc08","webpack:///./src/components/Inputs/AutoSuggestGroup.vue","webpack:///src/pages/GroupsDetail.vue","webpack:///./src/pages/GroupsDetail.vue?09ee","webpack:///./src/pages/GroupsDetail.vue","webpack:///src/pages/GroupsPage.vue","webpack:///./src/pages/GroupsPage.vue?7961","webpack:///./src/pages/GroupsPage.vue","webpack:///./src/router/router.js","webpack:///./src/components/SidebarPlugin/SideBar.vue?a796","webpack:///./src/components/SidebarPlugin/SidebarLink.vue?ab14","webpack:///src/components/SidebarPlugin/SidebarLink.vue","webpack:///./src/components/SidebarPlugin/SidebarLink.vue?9922","webpack:///./src/components/SidebarPlugin/SidebarLink.vue","webpack:///src/components/SidebarPlugin/SideBar.vue","webpack:///./src/components/SidebarPlugin/SideBar.vue?5d3f","webpack:///./src/components/SidebarPlugin/SideBar.vue","webpack:///./src/components/SidebarPlugin/index.js","webpack:///./src/components/NotificationPlugin/Notifications.vue?7737","webpack:///./src/components/NotificationPlugin/Notification.vue?906e","webpack:///src/components/NotificationPlugin/Notification.vue","webpack:///./src/components/NotificationPlugin/Notification.vue?e610","webpack:///./src/components/NotificationPlugin/Notification.vue","webpack:///src/components/NotificationPlugin/Notifications.vue","webpack:///./src/components/NotificationPlugin/Notifications.vue?98ab","webpack:///./src/components/NotificationPlugin/Notifications.vue","webpack:///./src/components/NotificationPlugin/index.js","webpack:///./src/components/Inputs/BaseInput.vue?d9c0","webpack:///src/components/Inputs/BaseInput.vue","webpack:///./src/components/Inputs/BaseInput.vue?83ab","webpack:///./src/components/Inputs/BaseInput.vue","webpack:///./src/components/BaseCheckbox.vue?266a","webpack:///src/components/BaseCheckbox.vue","webpack:///./src/components/BaseCheckbox.vue?fe67","webpack:///./src/components/BaseCheckbox.vue","webpack:///./src/components/BaseRadio.vue?6edb","webpack:///src/components/BaseRadio.vue","webpack:///./src/components/BaseRadio.vue?9df1","webpack:///./src/components/BaseRadio.vue","webpack:///./src/components/BaseDropdown.vue?845f","webpack:///src/components/BaseDropdown.vue","webpack:///./src/components/BaseDropdown.vue?423e","webpack:///./src/components/BaseDropdown.vue","webpack:///./src/components/BaseTable.vue?07f7","webpack:///src/components/BaseTable.vue","webpack:///./src/components/BaseTable.vue?1ea2","webpack:///./src/components/BaseTable.vue","webpack:///./src/components/BaseButton.vue?c717","webpack:///src/components/BaseButton.vue","webpack:///./src/components/BaseButton.vue?8fc6","webpack:///./src/components/BaseButton.vue","webpack:///./src/components/BaseAlert.vue?fe25","webpack:///src/components/BaseAlert.vue","webpack:///./src/components/BaseAlert.vue?2243","webpack:///./src/components/BaseAlert.vue","webpack:///./src/components/CloseButton.vue?4fac","webpack:///src/components/CloseButton.vue","webpack:///./src/components/CloseButton.vue?763a","webpack:///./src/components/CloseButton.vue","webpack:///./src/components/Cards/Card.vue?62da","webpack:///src/components/Cards/Card.vue","webpack:///./src/components/Cards/Card.vue?679b","webpack:///./src/components/Cards/Card.vue","webpack:///./src/plugins/globalComponents.js","webpack:///./src/directives/click-ouside.js","webpack:///./src/plugins/globalDirectives.js","webpack:///./src/plugins/RTLPlugin.js","webpack:///./src/plugins/blackDashboard.js","webpack:///./src/main.js","webpack:///./src/components/NotificationPlugin/Notifications.vue?57a0","webpack:///./src/components/NotificationPlugin/Notification.vue?eac8"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","e","Error","code","keys","resolve","render","_vm","this","_h","$createElement","_c","_self","$route","fullPath","staticRenderFns","component","staticClass","slot","attrs","nativeOn","$event","toggleSidebar","_v","_s","year","_m","doc","on","navigateToTop","_e","askNewFile","setFileName","readFile","filename","platforms","downloadYaml","addItem","emptyDataSourceObject","model","filters","filter","callback","$$v","$set","expression","ref","data_sources","selectItem","scopedSlots","_u","fn","displayData","_l","row","data_source_name","refInFor","date_registered","_f","products","deleteDataSource","getSelectedItem","dqHelpText","dsHelpText","prevDataSourceQuality","navigateItem","dataSource","allDataSources","dataSourceSuggestionList","helptextDataSourceKVPairs","date_connected","available_for_data_analytics","dsEnabled","toggleEnabled","editCommentCallback","helptextDataQuality","data_quality","device_completeness","dataQualityScores","dataQualityTooltip","data_field_completeness","timeliness","consistency","retention","dataSourceDefaultKeys","helpText","item","index","updateItem","deleteItem","placeholder","type","indexOf","_k","keyCode","newItem","staticStyle","icon","directives","rawName","modifiers","showHelpText","notificationMixin","methods","notifyInfo","title","message","$notify","NotificationTemplate","horizontalAlign","verticalAlign","timeout","notifyInfoWithCallback","cb_function","cb_function_text","cb_function_key","notifyDanger","notifyDangerWithCallback","infinite","notifyWarning","date","updateDate","class","getDivStyleClass","state","checked","unchecked","disabled","switchButton","score","markData","val","markDataTooltip","color","updateScore","$bvModal","hide","modalId","v","k","defaultKeys","includes","updateKey","updateValue","deleteProperty","addProperty","newKey","newValue","isNewItem","editItem","itemIdName","filteredSuggestionList","displayAttr","valueAttr","autoCompleteStyle","tmpItemId","setItemIdValue","itemTitle","toLowerCase","autoSuggestMixins","defaultInput","suggestions","suggestItem","props","String","required","suggestionList","Array","computed","listKnownIDs","a","listKnownIDsForPlatform","tmpList","some","components","VueSimpleSuggest","data_object","data_field","rows","domProps","target","composing","callCbFunction","YAML_DATASOURCES_VERSION","YAML_TECHNIQUES_VERSION","YAML_GROUPS_VERSION","YAML_OBJ_NEW_DATA_SOURCES_FILE","version","file_type","platform","YAML_OBJ_DATA_SOURCES","comment","YAML_OBJ_NEW_GROUPS_FILE","groups","YAML_OBJ_GROUP","group_name","campaign","technique_id","software_id","enabled","YAML_OBJ_NEW_TECHNIQUES_FILE","techniques","YAML_OBJ_TECHNIQUE","technique_name","detection","applicable_to","location","score_logbook","visibility","auto_generated","YAML_OBJ_TECHNIQUE_DETECTION","YAML_OBJ_TECHNIQUE_VISIBILITY","YAML_OBJ_SCORE_DETECTION_LOGBOOK","YAML_OBJ_SCORE_VISIBILITY_LOGBOOK","PLATFORMS","PLATFORM_CONVERSION","windows","linux","pre","macos","aws","gcp","azure","saas","network","animationDuration","show","currentTarget","closeModal","centered","modalClasses","gradient","modalContentClasses","$slots","headerClasses","_t","bodyClasses","footerClasses","SlideYUpTransition","Boolean","showClose","default","acceptedValues","description","Number","$emit","watch","documentClasses","document","body","classList","add","remove","pageDetailMixin","created","addEventListener","escapeKeyListener","destroyed","removeEventListener","loadTextFromFile","toFixed","isArray","_i","platformEventHandler","$$a","$$el","$$c","$$i","concat","checkPlatform","options","container","easing","offset","duration","force","cancelable","onStart","element","onDone","onCancel","x","y","pageMixin","selected_filename","selectedRow","fileChanged","unwatchFunction","deletedRows","constants","FileReader","FileDetails","VueScrollTo","scrollTo","navigateToDetail","event","emptyObject","emptyRow","typeStr","replace","pop","newrow","_","cloneDeep","key_id","getAttribute","msg","recoverDeletedItem","recoverRow","indexEmptyRow","cleanupBeforeDownload","newDoc","convertBeforeDownload","blob","Blob","jsyaml","safeDump","lineWidth","FileSaver","require","saveAs","setWatch","$watch","after","before","deep","msgBoxConfirm","size","cancelVariant","okVariant","okTitle","modalClass","then","newFile","next","step","table","$refs","data_table","$el","found_index","className","found_row","data_table_rows","navigateMixins","arrowKeysListener","evt","shiftKey","ctrlKey","emptyTechObject","selectTechnique","deleteTechnique","technique","allTechniques","techniquesSuggestionList","selectedPlatforms","detectionHelpText","detectionScoreHelpText","detectionScores","detectionScoresTooltip","detectionScoreDefault","emptyScoreEntryDetection","emptyDetectionObject","visibilityHelpText","visibilityScoreHelpText","visibilityScores","visibilityScoresTooltip","visibilityScoreDefault","emptyScoreEntryVisibility","emptyVisibilityObject","join","deleteApplicableTo","getApplicableToList","getLatestScoreDate","getLatestScore","scores","scoresTooltip","setLatestScore","currentModal","defaultScore","showAutoGenerated","emptyScoreEntry","showHelptextScore","helptextScore","defaultKVKeys","addApplicableTo","componentKey","addNewItem","emptyGroupObject","deleteGroup","groupHelpText","isNewGroup","editGroupName","group","helptextGroupKVPairs","isUniqueGroup","software","groupDefaultKeys","formattedTitle","newID","Vue","use","Router","routes","path","Layout","redirect","children","HomePage","DataSourcesPage","TechniquesPage","GroupsPage","backgroundColor","$rtl","isRTL","link","tag","_b","hideSidebar","$attrs","inheritAttrs","inject","autoClose","addLink","removeLink","$sidebar","displaySidebar","contains","parentNode","removeChild","SidebarStore","showSidebar","sidebarLinks","SidebarPlugin","install","app","sidebarStore","Sidebar","SidebarLink","transitionName","transitionMode","notification","timestamp","getTime","onClick","removeNotification","alertType","style","tryClose","close","Notification","overlap","notifications","$notifications","settings","newVal","NotificationStore","closeOnClick","setOptions","assign","indexToDelete","findIndex","addNotification","Date","setMilliseconds","getMilliseconds","notify","forEach","notificationInstance","NotificationsPlugin","notificationStore","Notifications","hasIcon","focused","label","addonLeftIcon","_g","listeners","addonRightIcon","inlineClass","cbId","_q","inline","Math","random","isOpen","toggleDropDown","titleTag","titleClasses","ariaLabel","menuOnRight","menuClasses","tableClass","theadClasses","column","tbodyClasses","hasValue","itemValue","_obj","_obj$1","round","block","simple","nativeType","loading","handleClick","withIcon","dismissible","dismissAlert","expanded","header","subTitle","GlobalComponents","BaseInput","Card","BaseDropdown","BaseButton","BaseCheckbox","el","binding","vnode","clickOutsideEvent","context","unbind","GlobalDirectives","directive","clickOutside","getDocClasses","enableRTL","toggleBootstrapRTL","disableRTL","styleSheets","styleSheet","href","endsWith","SideBar","Notify","RTLPlugin","BlackDashboard","VueRouter","RouterPrefetch","SmartTable","VueResource","VueShowdown","openLinksInNewWindow","tables","Tooltip","BootstrapVue","BootstrapVueIcons","router","h","App","$mount"],"mappings":"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","file":"js/app.6dd397e3.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dettect-editor/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('notifications'),_c('keep-alive',[_c('router-view',{key:_vm.$route.fullPath})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=69142b45&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\"},[_c('side-bar',[_c('template',{slot:\"links\"},[_c('sidebar-link',{attrs:{\"to\":\"/home\",\"name\":'Home',\"icon\":\"tim-icons icon-bank\"}}),_c('sidebar-link',{attrs:{\"to\":\"/datasources\",\"name\":'Data sources',\"icon\":\"tim-icons icon-coins\"}}),_c('sidebar-link',{attrs:{\"to\":\"/techniques\",\"name\":'Techniques',\"icon\":\"tim-icons icon-zoom-split\"}}),_c('sidebar-link',{attrs:{\"to\":\"/groups\",\"name\":'Groups',\"icon\":\"tim-icons icon-single-02\"}})],1)],2),_c('div',{staticClass:\"main-panel\"},[_c('dashboard-content',{nativeOn:{\"click\":function($event){return _vm.toggleSidebar($event)}}}),_c('content-footer')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"footer\"},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"copyright\"},[_vm._v(\" © \"+_vm._s(_vm.year)+\" made with \"),_c('i',{staticClass:\"tim-icons icon-heart-2\"}),_vm._v(\" by \"),_c('a',{attrs:{\"href\":\"https://www.binarcode.com\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(\"Binar Code\")]),_vm._v(\" & \"),_c('a',{attrs:{\"href\":\"https://www.creative-tim.com\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(\"Creative Tim\")]),_vm._v(\" for a better web. \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=651fef35&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"content\",attrs:{\"id\":\"customcontent\"}},[_c('fade-transition',{attrs:{\"duration\":100,\"mode\":\"out-in\"}},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Content.vue?vue&type=template&id=1e1175b8&\"\nimport script from \"./Content.vue?vue&type=script&lang=js&\"\nexport * from \"./Content.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Layout.vue?vue&type=template&id=5d20e794&\"\nimport script from \"./Layout.vue?vue&type=script&lang=js&\"\nexport * from \"./Layout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-bank pb-md-2\"}),_vm._v(\" Home\")])]),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Introduction\")]),_c('p',[_vm._v(\" The DeTT&CT data source, technique and group YAML files can be edited using this editor. \")]),_c('p',{staticClass:\"mt-md-3\"},[_vm._v(\" Usefull links on the Wiki: \"),_c('ul',[_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Getting-started\",\"target\":\"_blank\"}},[_vm._v(\"Getting started with DeTT&CT\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/dettect-editor\",\"target\":\"_blank\"}},[_vm._v(\"DeTT&CT Editor\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor\",\"target\":\"_blank\"}},[_vm._v(\"Future developments\")])])])])]),_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Client-side and saving results\")]),_c('p',[_vm._v(\" The DeTT&CT Editor is entirely client-side. Therefore, the content of your YAML file is not send to a server. \")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\"It is important to take into account that modifed YAML files should be download using the button \"),_c('strong',[_vm._v(\"Save YAML file\")]),_vm._v(\", to save the results.\")])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Keyboard shortcuts\")]),_c('p',[_c('ul',[_c('li',[_vm._v(\"Ctrl+Shift+Up/Down: go to the next or previous item when editing a data source or technique administration YAML file.\")])])]),_c('h4',[_vm._v(\"Limitations\")]),_c('p',[_vm._v(\" With a few exceptions, all key-value pairs within a data source, techniques or group YAML file can be edited. More info can be found \"),_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor\",\"target\":\"_blank\"}},[_vm._v(\"here\")]),_vm._v(\". \")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\" Please note that comments (\"),_c('code',[_vm._v(\"#\")]),_vm._v(\") within your YAML files are not preserved due to lack of support in the YAML JavaScript library. Put your comments within a key-value pair to keep them. For example: \"),_c('code',[_vm._v(\"my-comment-1: your comment goes here\")]),_vm._v(\". \")])]),_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Authors and contributions\")]),_c('p',[_vm._v(\"DeTT&CT is developed and maintained by \"),_c('a',{attrs:{\"href\":\"https://github.com/marcusbakker\",\"target\":\"_blank\"}},[_vm._v(\"Marcus Bakker\")]),_vm._v(\" (Twitter: \"),_c('a',{attrs:{\"href\":\"https://twitter.com/Bakk3rM\",\"target\":\"_blank\"}},[_vm._v(\"@Bakk3rM\")]),_vm._v(\") and \"),_c('a',{attrs:{\"href\":\"https://github.com/rubinatorz\",\"target\":\"_blank\"}},[_vm._v(\"Ruben Bouman\")]),_vm._v(\" (Twitter: \"),_c('a',{attrs:{\"href\":\"https://twitter.com/rubenb_2/\",\"target\":\"_blank\"}},[_vm._v(\"@rubenb_2\")]),_vm._v(\"). Feel free to contact, DMs are open.\")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\" We welcome contributions! Contributions can be both in code, as well as in ideas you might have for further development, usability improvements, etc.\")])])])])])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HomePage.vue?vue&type=template&id=fe2bab76&\"\nimport script from \"./HomePage.vue?vue&type=script&lang=js&\"\nexport * from \"./HomePage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'dsFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('data_sources', 'data_source_name')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('data_sources', 'data_source_name', _vm.emptyDataSourceObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add data source \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{ref:\"data_table\",staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.data_sources,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectItem($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:row.data_source_name,ref:\"data_table_rows\",refInFor:true,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.data_source_name))]),_c('td',[_vm._v(_vm._s(row.date_registered))]),_c('td',[_vm._v(_vm._s(_vm._f(\"listToString\")(row.products)))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"data_source_name\":row.data_source_name},on:{\"click\":function($event){return _vm.deleteDataSource($event)}}})])])}),1)}}],null,false,2659452512)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"data_source_name\",\"defaultSort\":\"asc\",\"width\":\"350\"}},[_vm._v(\"Name\")]),_c('v-th',{attrs:{\"sortKey\":\"date_registered\",\"width\":\"200\"}},[_vm._v(\"Date registered\")]),_c('v-th',{attrs:{\"sortKey\":\"products\",\"width\":\"350\"}},[_vm._v(\"Products\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('data-source-detail',{attrs:{\"dataSource\":_vm.getSelectedItem(),\"allDataSources\":_vm.doc.data_sources,\"dqHelpText\":_vm.dqHelpText,\"dsHelpText\":_vm.dsHelpText,\"prevDataSourceQuality\":_vm.prevDataSourceQuality,\"navigateItem\":_vm.navigateItem}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-coins\"}),_vm._v(\" Data Sources\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.dataSource != null)?_c('div',{staticClass:\"card\"},[_c('auto-suggest-title',{attrs:{\"title\":\"Data source\",\"item\":_vm.dataSource,\"itemIdName\":\"data_source_name\",\"allItems\":_vm.allDataSources,\"suggestionList\":_vm.dataSourceSuggestionList,\"navigateItem\":_vm.navigateItem}}),_c('div',{staticClass:\"row mt-md-3\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextDataSourceKVPairs = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextDataSourceKVPairs,\"id\":\"dsModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextDataSourceKVPairs=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Data source key-value pairs\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.dsHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('date-picker',{attrs:{\"date\":_vm.dataSource.date_registered,\"name\":\"Date registered\"},on:{\"dateUpdated\":function($event){_vm.dataSource.date_registered = $event}}})],1),_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('date-picker',{attrs:{\"date\":_vm.dataSource.date_connected,\"name\":\"Date connected\"},on:{\"dateUpdated\":function($event){_vm.dataSource.date_connected = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('toggle-button',{attrs:{\"state\":_vm.dataSource.available_for_data_analytics,\"name\":\"Available for data analytics\"},on:{\"toggleButtonUpdated\":function($event){_vm.dataSource.available_for_data_analytics = $event}}})],1),_c('div',{staticClass:\"col-md-5 pr-md-1\"},[_c('toggle-button',{attrs:{\"state\":_vm.dsEnabled,\"name\":\"Data source enabled\",\"helpText\":\"Enables a data source by setting all data quality scores to 1, or restore to the previous value. Disables a data source by setting al data quality scores to 0.\"},on:{\"toggleButtonUpdated\":_vm.toggleEnabled}})],1)]),_c('list-editor',{staticClass:\"mt-md-2\",attrs:{\"list\":_vm.dataSource.products,\"name\":\"Products\",\"placeholder\":\"Products\"}}),_c('div',{staticClass:\"row mt-md-0\"},[_c('div',{staticClass:\"col-md-11 form-group pr-md-2\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")]),_c('extended-textarea',{attrs:{\"data_object\":_vm.dataSource,\"data_field\":\"comment\",\"id\":\"datasource\",\"rows\":\"4\",\"cb_function\":_vm.editCommentCallback}})],1)]),_c('div',{staticClass:\"row mt-md-3 col-md-5\"},[_vm._m(1),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextDataQuality = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextDataQuality,\"id\":\"dqModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextDataQuality=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Scoring data quality\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.dqHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Device completeness\",\"score\":_vm.dataSource.data_quality.device_completeness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.device_completeness = $event}}})],1),_c('div',{staticClass:\"col-md-5 ml-md-3\"},[_c('score-slider',{attrs:{\"name\":\"Data field completeness\",\"score\":_vm.dataSource.data_quality.data_field_completeness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.data_field_completeness = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Timeliness\",\"score\":_vm.dataSource.data_quality.timeliness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.timeliness = $event}}})],1),_c('div',{staticClass:\"col-md-5 ml-md-3\"},[_c('score-slider',{attrs:{\"name\":\"Consistency\",\"score\":_vm.dataSource.data_quality.consistency,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.consistency = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Retention\",\"score\":_vm.dataSource.data_quality.retention,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.retention = $event}}})],1)]),_c('custom-key-value-editor',{staticClass:\"mt-md-5\",attrs:{\"item\":_vm.dataSource,\"defaultKeys\":_vm.dataSourceDefaultKeys}})],1):_vm._e()}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Data source key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Data quality\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))])]),(_vm.helpText != '')?_c('div',{staticClass:\"col ml-md-0 pb-md-2\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":_vm.helpText}})],1):_vm._e()]),_vm._l((_vm.list),function(item,index){return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-8 pr-md-0\"},[_c('base-input',{attrs:{\"value\":item,\"idx\":index},on:{\"change\":function($event){return _vm.updateItem($event)}}})],1),_c('div',{staticClass:\"col mt-md-1\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",attrs:{\"idx\":index},on:{\"click\":function($event){return _vm.deleteItem($event)}}})])])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-8 pr-md-0 form-group\"},[_c('base-input',{attrs:{\"placeholder\":_vm.placeholder},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addItem($event)}},model:{value:(_vm.newItem),callback:function ($$v) {_vm.newItem=$$v},expression:\"newItem\"}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addItem}},[_vm._v(\" Add \")])])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"display\":\"inline-block\"}},[(_vm.icon == 'arrow-up')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"19\",\"x2\":\"12\",\"y2\":\"5\"}}),_c('polyline',{attrs:{\"points\":\"5 12 12 5 19 12\"}})]):_vm._e(),(_vm.icon == 'arrow-down')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"5\",\"x2\":\"12\",\"y2\":\"19\"}}),_c('polyline',{attrs:{\"points\":\"19 12 12 19 5 12\"}})]):_vm._e(),(_vm.icon == 'file')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"}}),_c('polyline',{attrs:{\"points\":\"14 2 14 8 20 8\"}}),_c('line',{attrs:{\"x1\":\"16\",\"y1\":\"13\",\"x2\":\"8\",\"y2\":\"13\"}}),_c('line',{attrs:{\"x1\":\"16\",\"y1\":\"17\",\"x2\":\"8\",\"y2\":\"17\"}}),_c('polyline',{attrs:{\"points\":\"10 9 9 9 8 9\"}})]):_vm._e(),(_vm.icon == 'file-empty')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z\"}}),_c('polyline',{attrs:{\"points\":\"13 2 13 9 20 9\"}})]):_vm._e(),(_vm.icon == 'text-balloon')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"9\",\"x2\":\"12\",\"y2\":\"13\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"17\",\"x2\":\"12.01\",\"y2\":\"17\"}})]):_vm._e(),(_vm.icon == 'save')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z\"}}),_c('polyline',{attrs:{\"points\":\"17 21 17 13 7 13 7 21\"}}),_c('polyline',{attrs:{\"points\":\"7 3 7 8 15 8\"}})]):_vm._e(),(_vm.icon == 'plus')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('circle',{attrs:{\"cx\":\"12\",\"cy\":\"12\",\"r\":\"10\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"8\",\"x2\":\"12\",\"y2\":\"16\"}}),_c('line',{attrs:{\"x1\":\"8\",\"y1\":\"12\",\"x2\":\"16\",\"y2\":\"12\"}})]):_vm._e(),(_vm.icon == 'help')?_c('svg',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.top\",value:(_vm.tooltip),expression:\"tooltip\",modifiers:{\"top\":true}}],staticClass:\"cursor-pointer\",staticStyle:{\"margin-top\":\"-4px\",\"fill\":\"#fff\"},attrs:{\"viewBox\":\"0 0 512 512\",\"width\":\"24\",\"height\":\"24\",\"stroke-width\":\"1px\"},on:{\"click\":function($event){_vm.showHelpText = true}}},[_c('path',{attrs:{\"d\":\"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z\"}}),_c('path',{attrs:{\"d\":\"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z\"}})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Icons.vue?vue&type=template&id=55edfe22&\"\nimport script from \"./Icons.vue?vue&type=script&lang=js&\"\nexport * from \"./Icons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"Welcome to \"),_c('b',[_vm._v(\"Black Dashboard\")]),_vm._v(\" - a beautiful freebie for every web developer.\")])}]\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationTemplate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationTemplate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NotificationTemplate.vue?vue&type=template&id=97fc888e&\"\nimport script from \"./NotificationTemplate.vue?vue&type=script&lang=js&\"\nexport * from \"./NotificationTemplate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import NotificationTemplate from '@/pages/Notifications/NotificationTemplate';\n\nexport const notificationMixin = {\n data() {\n return {};\n },\n methods: {\n notifyInfo(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-zoom-split',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'info',\n timeout: 10000,\n title: title,\n message: message\n });\n },\n notifyInfoWithCallback(title, message, cb_function, cb_function_text, cb_function_key) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-trash-simple',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'info',\n timeout: 10000,\n title: title,\n message: message,\n cb_function: cb_function,\n cb_function_text: cb_function_text,\n cb_function_key: cb_function_key\n });\n },\n notifyDanger(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'danger',\n timeout: 10000,\n title: title,\n message: message\n });\n },\n notifyDangerWithCallback(title, message, cb_function, cb_function_text, cb_function_key, infinite) {\n let timeout = 10000;\n if (infinite) {\n timeout = 0;\n }\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'danger',\n timeout: timeout,\n title: title,\n message: message,\n cb_function: cb_function,\n cb_function_text: cb_function_text,\n cb_function_key: cb_function_key\n });\n },\n notifyWarning(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'warning',\n timeout: 10000,\n title: title,\n message: message\n });\n }\n }\n};\n","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListEditor.vue?vue&type=template&id=37e0e470&\"\nimport script from \"./ListEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./ListEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_c('datepicker',{attrs:{\"value\":_vm.date,\"format\":\"yyyy-MM-dd\",\"monday-first\":true,\"typeable\":true,\"input-class\":\"form-control\"},on:{\"selected\":_vm.updateDate}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatePicker.vue?vue&type=template&id=00b4b062&\"\nimport script from \"./DatePicker.vue?vue&type=script&lang=js&\"\nexport * from \"./DatePicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('div',{class:_vm.getDivStyleClass()},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))])]),(_vm.helpText != '')?_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":_vm.helpText}})],1):_vm._e()]):_vm._e(),_c('div',{staticClass:\"row toggle-button\"},[_c('div',{staticClass:\"col-md-auto\"},[_c('toggle-button',{attrs:{\"value\":_vm.state,\"sync\":true,\"labels\":{ checked: 'Yes', unchecked: 'No' },\"font-size\":14,\"height\":30,\"width\":95,\"color\":{\n checked: '#00bf9a',\n unchecked: '#ff8d72',\n disabled: '#CCCCCC'\n }},on:{\"change\":_vm.switchButton}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToggleButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToggleButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ToggleButton.vue?vue&type=template&id=07c57460&\"\nimport script from \"./ToggleButton.vue?vue&type=script&lang=js&\"\nexport * from \"./ToggleButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_c('vue-slider',{attrs:{\"value\":_vm.score,\"dotSize\":\"18\",\"data\":_vm.markData,\"tooltip-formatter\":function (val) { return _vm.markDataTooltip[val]; },\"marks\":true,\"useKeyboard\":true,\"tooltypeStyle\":{ 'background-color': '#419EF9', 'border-color': '#419EF9' },\"processStyle\":{ 'background-color': '#419EF9' },\"labelStyle\":{ color: 'rgb(255, 255, 255, 0.8)' }},on:{\"change\":_vm.updateScore}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreSlider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreSlider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScoreSlider.vue?vue&type=template&id=57e752b5&\"\nimport script from \"./ScoreSlider.vue?vue&type=script&lang=js&\"\nexport * from \"./ScoreSlider.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"It's possible to have custom key-value pairs in your YAML file. The Editor supports numbers and string for the value.\"}})],1),(_vm.useInModal)?_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){return _vm.$bvModal.hide(_vm.modalId)}}},[_vm._v(\"×\")])]):_vm._e()]),_vm._m(1),_vm._l((_vm.item),function(v,k,index){return _c('div',{key:index},[(!_vm.defaultKeys.includes(k))?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-0\"},[_c('base-input',{attrs:{\"value\":k},on:{\"change\":function($event){return _vm.updateKey(k, $event)}}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('base-input',{attrs:{\"value\":_vm.item[k]},on:{\"change\":function($event){return _vm.updateValue(k, $event)}}})],1),_c('div',{staticClass:\"col-md-0 mt-md-1\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){return _vm.deleteProperty(k)}}})])]):_vm._e()])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-0\"},[_c('base-input',{attrs:{\"placeholder\":\"key\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addProperty($event)}},model:{value:(_vm.newKey),callback:function ($$v) {_vm.newKey=$$v},expression:\"newKey\"}})],1),_c('div',{staticClass:\"col-md-5 pr-md-0\"},[_c('base-input',{attrs:{\"placeholder\":\"value\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addProperty($event)},\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"tab\",9,$event.key,\"Tab\")){ return null; }return _vm.addProperty($event)}},model:{value:(_vm.newValue),callback:function ($$v) {_vm.newValue=$$v},expression:\"newValue\"}})],1),_c('div',{staticClass:\"col-md-2\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addProperty}},[_vm._v(\" Add \")])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Custom key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Key\")])]),_c('div',{staticClass:\"col-md-5\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Value\")])])])}]\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CustomKeyValueEditor.vue?vue&type=template&id=5a06b6bb&\"\nimport script from \"./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"container-fluid d-flex flex-column\"},[(_vm.isNewItem || _vm.editItem)?_c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0 pl-md-0 margin-top-8\"},[_c('label',[_vm._v(_vm._s(_vm.title))])]),_c('vue-simple-suggest',{staticClass:\"col-md-7 pl-md-2 pr-md-0\",attrs:{\"value\":_vm.item[_vm.itemIdName],\"list\":_vm.filteredSuggestionList,\"max-suggestions\":0,\"filter-by-query\":true,\"display-attribute\":_vm.displayAttr,\"value-attribute\":_vm.valueAttr,\"styles\":_vm.autoCompleteStyle},on:{\"input\":function($event){_vm.tmpItemId = $event},\"blur\":_vm.setItemIdValue}}),_c('i',{staticClass:\"tim-icons icon-check-2 icon-color icon-padding cursor-pointer\",attrs:{\"id\":\"checkmark\"},on:{\"click\":_vm.setItemIdValue}})],1)]):_c('div',{staticClass:\"row flex-fill\"},[_c('div',{staticClass:\"col-md pr-md-0 pl-md-0\"},[(_vm.itemTitle)?_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.item[_vm.itemTitle.id] + ' - ' + _vm.item[_vm.itemTitle.name]))]):_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.item[_vm.itemIdName]))]),_c('i',{staticClass:\"tim-icons icon-pencil icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editItem = true}}})]),_c('div',[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":'Previous ' + _vm.title.toLowerCase()},on:{\"click\":function($event){return _vm.navigateItem(false)}}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1),_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":'Next ' + _vm.title.toLowerCase()},on:{\"click\":function($event){return _vm.navigateItem(true)}}},[_c('icons',{attrs:{\"icon\":\"arrow-down\"}})],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import VueSimpleSuggest from 'vue-simple-suggest';\nimport 'vue-simple-suggest/dist/styles.css';\n\nexport const autoSuggestMixins = {\n data() {\n return {\n autoCompleteStyle: {\n defaultInput: 'autocomplete-input',\n suggestions: 'autocomplete-result',\n suggestItem: 'autocomplete-suggest'\n }\n };\n },\n props: {\n title: {\n type: String,\n required: true\n },\n // technique_id, oftware_id, data_source_name\n itemIdName: {\n type: String,\n required: true\n },\n suggestionList: {\n type: Array,\n required: true\n }\n },\n computed: {\n listKnownIDs() {\n // returns all IDs from within the suggestion list for the key that's equal to 'itemIdName'\n return this.suggestionList.map(a => a[this.itemIdName]);\n },\n listKnownIDsForPlatform() {\n // list of all IDs (technique or software ID) applicable to any of the selected platforms\n let tmpList = [];\n\n for (let i = 0; i < this.suggestionList.length; i++) {\n if (this.platforms[0] == 'all' || this.platforms.some(item => this.suggestionList[i]['platforms'].includes(item))) {\n tmpList.push(this.suggestionList[i]);\n }\n }\n return tmpList.map(a => a[this.itemIdName]);\n }\n },\n components: {\n VueSimpleSuggest\n }\n};\n","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestTitle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoSuggestTitle.vue?vue&type=template&id=49959e72&\"\nimport script from \"./AutoSuggestTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoSuggestTitle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data_object[_vm.data_field]),expression:\"data_object[data_field]\"}],staticClass:\"form-control textarea-border pl-md-3 textarea-customstyle\",attrs:{\"rows\":_vm.rows,\"placeholder\":\". . .\"},domProps:{\"value\":(_vm.data_object[_vm.data_field])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data_object, _vm.data_field, $event.target.value)}}}),_c('div',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:('comment-modal-' + _vm.id),expression:\"'comment-modal-' + id\"}],staticClass:\"icon-example\",on:{\"click\":function($event){return _vm.callCbFunction('comment-modal-' + _vm.id)}}}),_c('b-modal',{attrs:{\"id\":'comment-modal-' + _vm.id,\"dialog-class\":\"modal-edit-small\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\",\"no-close-on-esc\":\"\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Comment\")])]),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){_vm.$bvModal.hide('comment-modal-' + _vm.id);\n _vm.callCbFunction('comment-modal-' + _vm.id);}}},[_vm._v(\" × \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data_object[_vm.data_field]),expression:\"data_object[data_field]\"}],staticClass:\"form-control textarea-border textarea-modal pl-md-3\",attrs:{\"rows\":\"50\",\"placeholder\":\". . .\"},domProps:{\"value\":(_vm.data_object[_vm.data_field])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data_object, _vm.data_field, $event.target.value)}}})])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExtendedTextarea.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExtendedTextarea.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ExtendedTextarea.vue?vue&type=template&id=0808983f&\"\nimport script from \"./ExtendedTextarea.vue?vue&type=script&lang=js&\"\nexport * from \"./ExtendedTextarea.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\n YAML_DATASOURCES_VERSION: 1.0,\n YAML_TECHNIQUES_VERSION: 1.2,\n YAML_GROUPS_VERSION: 1.0,\n YAML_OBJ_NEW_DATA_SOURCES_FILE: {\n version: 1.0,\n file_type: 'data-source-administration',\n name: 'example',\n platform: ['all'],\n data_sources: []\n },\n YAML_OBJ_DATA_SOURCES: {\n data_source_name: '',\n date_registered: null,\n date_connected: null,\n products: [],\n available_for_data_analytics: false,\n comment: '',\n data_quality: {\n device_completeness: 0,\n data_field_completeness: 0,\n timeliness: 0,\n consistency: 0,\n retention: 0\n }\n },\n YAML_OBJ_NEW_GROUPS_FILE: {\n version: 1.0,\n file_type: 'group-administration',\n platform: ['all'],\n groups: []\n },\n YAML_OBJ_GROUP: {\n group_name: '',\n campaign: '',\n technique_id: [],\n software_id: [],\n enabled: true\n },\n YAML_OBJ_NEW_TECHNIQUES_FILE: {\n version: 1.2,\n file_type: 'technique-administration',\n name: 'example',\n platform: ['all'],\n techniques: []\n },\n YAML_OBJ_TECHNIQUE: {\n technique_id: '',\n technique_name: '',\n detection: [\n {\n applicable_to: ['all'],\n location: [],\n comment: '',\n score_logbook: [{ date: null, score: -1, comment: '' }]\n }\n ],\n visibility: [\n {\n applicable_to: ['all'],\n comment: '',\n score_logbook: [{ date: null, score: 0, comment: '', auto_generated: false }]\n }\n ]\n },\n YAML_OBJ_TECHNIQUE_DETECTION: {\n applicable_to: ['all'],\n location: [],\n comment: '',\n score_logbook: [{ date: null, score: -1, comment: '' }]\n },\n YAML_OBJ_TECHNIQUE_VISIBILITY: {\n applicable_to: ['all'],\n comment: '',\n score_logbook: [{ date: null, score: 0, comment: '', auto_generated: false }]\n },\n YAML_OBJ_SCORE_DETECTION_LOGBOOK: {\n date: null,\n score: -1,\n comment: ''\n },\n YAML_OBJ_SCORE_VISIBILITY_LOGBOOK: {\n date: null,\n score: 0,\n comment: '',\n auto_generated: false\n },\n PLATFORMS: ['all', 'Windows', 'Linux', 'PRE', 'macOS', 'AWS', 'GCP', 'Azure', 'Azure AD', 'Office 365', 'SaaS', 'Network'],\n PLATFORM_CONVERSION: {\n windows: 'Windows',\n linux: 'Linux',\n pre: 'PRE',\n macos: 'macOS',\n aws: 'AWS',\n gcp: 'GCP',\n azure: 'Azure',\n 'azure ad': 'Azure AD',\n 'office 365': 'Office 365',\n saas: 'SaaS',\n network: 'Network'\n }\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SlideYUpTransition',{attrs:{\"duration\":_vm.animationDuration}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.show),expression:\"show\"}],staticClass:\"modal fade\",class:[{'show d-block': _vm.show}, {'d-none': !_vm.show}, {'modal-mini': _vm.type === 'mini'}],attrs:{\"tabindex\":\"-1\",\"role\":\"dialog\",\"aria-hidden\":!_vm.show},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.closeModal($event)}}},[_c('div',{staticClass:\"modal-dialog\",class:[{'modal-notice': _vm.type === 'notice'}, {'modal-dialog-centered': _vm.centered}, _vm.modalClasses]},[_c('div',{staticClass:\"modal-content\",class:[_vm.gradient ? (\"bg-gradient-\" + _vm.gradient) : '',_vm.modalContentClasses]},[(_vm.$slots.header)?_c('div',{staticClass:\"modal-header\",class:[_vm.headerClasses]},[_vm._t(\"header\"),_vm._t(\"close-button\",[(_vm.showClose)?_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"data-dismiss\":\"modal\",\"aria-label\":\"Close\"},on:{\"click\":_vm.closeModal}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})]):_vm._e()])],2):_vm._e(),(_vm.$slots.default)?_c('div',{staticClass:\"modal-body\",class:_vm.bodyClasses},[_vm._t(\"default\")],2):_vm._e(),(_vm.$slots.footer)?_c('div',{staticClass:\"modal-footer\",class:_vm.footerClasses},[_vm._t(\"footer\")],2):_vm._e()])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=52f4e2f6&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export const pageDetailMixin = {\n data() {\n return {};\n },\n created: function() {\n document.addEventListener('keyup', this.escapeKeyListener);\n },\n destroyed: function() {\n document.removeEventListener('keyup', this.escapeKeyListener);\n },\n components: {},\n methods: {}\n};\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourceDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourceDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DataSourceDetail.vue?vue&type=template&id=17a15576&\"\nimport script from \"./DataSourceDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./DataSourceDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"text-reader\"},[_c('input',{attrs:{\"type\":\"file\",\"id\":_vm.id},on:{\"change\":_vm.loadTextFromFile}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileReader.vue?vue&type=template&id=aa8dd3b0&\"\nimport script from \"./FileReader.vue?vue&type=script&lang=js&\"\nexport * from \"./FileReader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table',{staticClass:\"table-file-details\"},[_vm._m(0),_c('tr',[_c('td',{attrs:{\"width\":\"100\"}},[_vm._v(\"Filename:\")]),_c('td',[_vm._v(_vm._s(_vm.filename))])]),_c('tr',[_c('td',[_vm._v(\"File type:\")]),_c('td',[_vm._v(_vm._s(_vm.doc['file_type']))])]),_c('tr',[_c('td',[_vm._v(\"Version:\")]),_c('td',[_vm._v(_vm._s(_vm.doc['version'].toFixed(1)))])]),_c('tr',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showName),expression:\"showName\"}]},[_c('td',[_vm._v(\"Name:\")]),_c('td',[_c('base-input',{staticClass:\"file-detail-edit\",model:{value:(_vm.doc['name']),callback:function ($$v) {_vm.$set(_vm.doc, 'name', $$v)},expression:\"doc['name']\"}})],1)]),_c('tr',[_c('td',[_vm._v(\"Notes:\")]),_c('td',[_c('div',{staticClass:\"textareaFileDetails\"},[_c('extended-textarea',{attrs:{\"data_object\":_vm.doc,\"data_field\":\"notes\",\"rows\":\"2\",\"id\":\"notes\"}})],1)])]),_c('tr',[_c('td',[_vm._v(\"Platform:\")]),_c('td',_vm._l((_vm.platforms),function(row){return _c('label',{staticClass:\"custom-checkbox\",attrs:{\"for\":row}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.doc.platform),expression:\"doc.platform\"}],attrs:{\"type\":\"checkbox\",\"id\":row},domProps:{\"value\":row,\"checked\":Array.isArray(_vm.doc.platform)?_vm._i(_vm.doc.platform,row)>-1:(_vm.doc.platform)},on:{\"click\":function($event){return _vm.platformEventHandler(row)},\"change\":[function($event){var $$a=_vm.doc.platform,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=row,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.doc, \"platform\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.doc, \"platform\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.doc, \"platform\", $$c)}},_vm.checkPlatform]}}),_vm._v(\" \"+_vm._s(row)+\" \")])}),0)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('td',{attrs:{\"width\":\"100\",\"colspan\":\"2\"}},[_c('b',[_vm._v(\"File details\")])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileDetails.vue?vue&type=template&id=723b0206&\"\nimport script from \"./FileDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./FileDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import VueScrollTo from 'vue-scrollto';\nimport constants from '@/constants';\nimport FileReader from '@/components/FileReader';\nimport FileDetails from '@/components/FileDetails';\nimport jsyaml from 'js-yaml';\nimport _ from 'lodash';\n\nvar options = {\n container: 'body',\n easing: 'ease-in',\n offset: -35,\n duration: 0,\n force: false,\n cancelable: true,\n // eslint-disable-next-line no-unused-vars\n onStart: function(element) {\n // scrolling started\n },\n // eslint-disable-next-line no-unused-vars\n onDone: function(element) {\n // scrolling is done\n },\n onCancel: function() {\n // scrolling has been interrupted\n },\n x: false,\n y: true\n};\n\nexport const pageMixin = {\n data() {\n return {\n filename: '',\n selected_filename: '',\n doc: null,\n selectedRow: [],\n fileChanged: false,\n unwatchFunction: null,\n deletedRows: [],\n platforms: constants.PLATFORMS\n };\n },\n components: {\n FileReader,\n FileDetails\n },\n methods: {\n navigateToTop() {\n VueScrollTo.scrollTo('#pageTop', 300, options);\n },\n navigateToDetail() {\n VueScrollTo.scrollTo('#detailCard', 300, options);\n },\n setFileName(filename) {\n // Callback function for file-reader component\n this.selected_filename = filename;\n },\n selectItem(event) {\n // selectionChanged event from the data table\n if (this.selectedRow != event) {\n this.selectedRow = event;\n if (event.length > 0) {\n this.navigateToDetail();\n }\n }\n },\n addItem(type, key, emptyObject) {\n // Add an item to the table and select it in the detail component\n // Check if no empty items are in the dataset (one new item is allowed at a time):\n this.filters.filter.value = '';\n let emptyRow = null;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (this.doc[type][i][key] == '') {\n emptyRow = this.doc[type][i];\n }\n }\n\n if (emptyRow != null) {\n let typeStr = type.replace('_', ' ').slice(0, -1);\n this.notifyWarning('Add new ' + typeStr, 'Only one ' + typeStr + ' can be added at a time.');\n this.selectedRow.pop();\n this.selectedRow.push(emptyRow);\n } else {\n let newrow = _.cloneDeep(emptyObject);\n this.doc[type].push(newrow);\n this.selectedRow.pop();\n this.selectedRow.push(newrow);\n }\n },\n getSelectedItem() {\n // Returns the selected row if there is one selected, otherwise null\n if (this.selectedRow != null && this.selectedRow.length > 0) {\n return this.selectedRow[0];\n } else {\n return null;\n }\n },\n deleteItem(event, type, key, title, cb_function) {\n let key_id = event.target.getAttribute(key);\n let index = -1;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (key_id == this.doc[type][i][key]) {\n index = i;\n break;\n }\n }\n this.deletedRows.push({\n key: key_id,\n value: this.doc[type][index]\n });\n\n // the below code results in hiding the details page when deleting:\n // - an empty item (i.e. without a name)\n // - the selected item\n if (this.selectedRow != null && this.selectedRow.length > 0 && (key_id == '' || key_id == this.selectedRow[0][key])) {\n this.selectedRow.pop();\n }\n this.doc[type].splice(index, 1);\n let msg = '';\n key_id == '' ? (msg = 'The empty ' + title.toLowerCase() + ' is removed.') : (msg = title + \" '\" + key_id + \"' is removed.\");\n this.notifyInfoWithCallback('Removal status', msg, cb_function, 'Undo this action', key_id);\n },\n recoverDeletedItem(type, key) {\n // Recover deleted item (also works for multiple deleted items)\n let recoverRow = null;\n for (let i = 0; i < this.deletedRows.length; i++) {\n if (key == this.deletedRows[i]['key']) {\n recoverRow = this.deletedRows[i]['value'];\n break;\n }\n }\n if (recoverRow != null) {\n this.doc[type].push(recoverRow);\n this.selectedRow.pop();\n this.selectedRow.push(recoverRow);\n }\n },\n downloadYaml(type, key) {\n // Call the unwatch function to make sure that this.doc isn't watched file altering the object during the download.\n // The splice function that is called underneath causes unexpected behaviour that results in altering the object\n // after the download and fileChange=false is done.\n this.unwatchFunction();\n\n // \"Download\" (save) the YAML file\n // Remove empty rows:\n let indexEmptyRow = -1;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (this.doc[type][i][key] == '') {\n indexEmptyRow = i;\n }\n }\n if (indexEmptyRow >= 0) {\n this.doc[type].splice(indexEmptyRow, 1);\n this.selectedRow.pop();\n }\n\n this.cleanupBeforeDownload();\n\n // Check platform:\n if (this.doc.platform.length == 0) {\n this.notifyDanger('Missing value', 'No value for platform selected. Please select one or more platforms.');\n return;\n }\n\n // Copy the doc variable before downloading to convert some values specific for the type of page\n let newDoc = _.cloneDeep(this.doc);\n this.convertBeforeDownload(newDoc);\n\n var blob = new Blob([jsyaml.safeDump(newDoc, { lineWidth: 2000 })], {\n type: 'text/plain;charset=utf-8'\n });\n var FileSaver = require('file-saver');\n FileSaver.saveAs(blob, this.filename);\n this.fileChanged = false;\n\n // Set the watch on this.doc again:\n this.setWatch();\n },\n setWatch() {\n if (this.unwatchFunction != null) {\n this.unwatchFunction();\n }\n this.unwatchFunction = this.$watch(\n 'doc',\n // eslint-disable-next-line no-unused-vars\n function(after, before) {\n this.fileChanged = true;\n },\n { deep: true }\n );\n },\n askNewFile() {\n if (this.fileChanged) {\n this.$bvModal\n .msgBoxConfirm('You have unsaved changes that will be lost if you choose to continue.', {\n title: 'Unsaved changes',\n size: 'sm',\n cancelVariant: 'warning',\n okVariant: 'info',\n okTitle: 'Continue',\n modalClass: 'confirmMessage'\n })\n .then((value) => {\n if (value) {\n this.newFile();\n }\n });\n } else {\n this.newFile();\n }\n },\n navigateItem(next) {\n let step = 1;\n if (!next) {\n step = -1;\n }\n // First, loop through the visible rows (this takes the sorting and filtering into account):\n let table = this.$refs.data_table.$el.rows;\n let found_index = 0;\n for (let i = 0; i < table.length; i++) {\n if (table[i].className == 'table-selected-custom') {\n found_index = i;\n break;\n }\n }\n // Do not proceed when it's the first or last row:\n if ((found_index != 0 && !next) || (found_index != table.length - 1 && next)) {\n // Unset current selected row:\n this.$refs.data_table.$el.rows[found_index].className = '';\n this.selectedRow.pop();\n // Select previous/next row just visually:\n this.$refs.data_table.$el.rows[found_index + step].className = 'table-selected-custom';\n\n // Next, loop through the dataset rows, looking for the new selected item to formally select:\n let rows = this.$refs.data_table_rows;\n let found_row;\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].$el.className == 'table-selected-custom') {\n found_row = rows[i].row;\n break;\n }\n }\n this.selectedRow.push(found_row);\n }\n }\n }\n};\n","export const navigateMixins = {\n data() {\n return {};\n },\n created: function() {\n document.addEventListener('keyup', this.arrowKeysListener);\n },\n destroyed: function() {\n document.removeEventListener('keyup', this.arrowKeysListener);\n },\n components: {},\n methods: {\n arrowKeysListener: function(evt) {\n if (evt.keyCode === 40 && evt.shiftKey && evt.ctrlKey) {\n // Ctrl + Shift + ArrowDown\n this.navigateItem(true);\n } else if (evt.keyCode === 38 && evt.shiftKey && evt.ctrlKey) {\n // Ctrl + Shift + ArrowUp\n this.navigateItem(false);\n }\n }\n }\n};\n","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourcesPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourcesPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DataSourcesPage.vue?vue&type=template&id=4571bac7&\"\nimport script from \"./DataSourcesPage.vue?vue&type=script&lang=js&\"\nexport * from \"./DataSourcesPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'techniqueFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('techniques', 'technique_id')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('techniques', 'technique_id', _vm.emptyTechObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add technique \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{ref:\"data_table\",staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.techniques,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectTechnique($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:row.technique_id,ref:\"data_table_rows\",refInFor:true,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.technique_id))]),_c('td',[_vm._v(_vm._s(row.technique_name))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"technique_id\":row.technique_id},on:{\"click\":function($event){return _vm.deleteTechnique($event)}}})])])}),1)}}],null,false,2895191889)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"technique_id\",\"defaultSort\":\"asc\",\"width\":\"200\"}},[_vm._v(\"Technique ID\")]),_c('v-th',{attrs:{\"sortKey\":\"technique_name\",\"width\":\"400\"}},[_vm._v(\"Name\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('techniques-detail',{ref:\"detailComponent\",attrs:{\"technique\":_vm.getSelectedItem(),\"allTechniques\":_vm.doc.techniques,\"selectedPlatforms\":_vm.doc.platform,\"navigateItem\":_vm.navigateItem}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-zoom-split\"}),_vm._v(\" Techniques\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.technique != null)?_c('div',{staticClass:\"card\"},[_c('auto-suggest-title',{attrs:{\"item\":_vm.technique,\"allItems\":_vm.allTechniques,\"itemIdName\":\"technique_id\",\"title\":\"Technique\",\"itemTitle\":{ id: 'technique_id', name: 'technique_name' },\"suggestionList\":_vm.techniquesSuggestionList,\"valueAttr\":\"technique_id\",\"displayAttr\":\"autosuggest\",\"isAttackEntity\":true,\"platforms\":_vm.selectedPlatforms,\"notifyText\":\"'ID' is an invalid technique, please comply with the naming scheme: TXXXX - [optional name].\",\"navigateItem\":_vm.navigateItem}}),_c('applicable-to-collapse',{ref:\"collapseDetectionComponent\",attrs:{\"title\":\"Detection\",\"applicable_to\":_vm.technique.detection,\"helpText\":_vm.detectionHelpText,\"helptextScore\":_vm.detectionScoreHelpText,\"scores\":_vm.detectionScores,\"scoresTooltip\":_vm.detectionScoresTooltip,\"defaultScore\":_vm.detectionScoreDefault,\"showAutoGenerated\":false,\"emptyScoreEntry\":_vm.emptyScoreEntryDetection,\"emptyObject\":_vm.emptyDetectionObject}}),_c('applicable-to-collapse',{ref:\"collapseVisibilityComponent\",attrs:{\"title\":\"Visibility\",\"applicable_to\":_vm.technique.visibility,\"showLocation\":false,\"helpText\":_vm.visibilityHelpText,\"helptextScore\":_vm.visibilityScoreHelpText,\"scores\":_vm.visibilityScores,\"scoresTooltip\":_vm.visibilityScoresTooltip,\"defaultScore\":_vm.visibilityScoreDefault,\"showAutoGenerated\":true,\"emptyScoreEntry\":_vm.emptyScoreEntryVisibility,\"emptyObject\":_vm.emptyVisibilityObject}})],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row mt-md-3\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(_vm._s(_vm.title))])]),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.showHelpText = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.showHelpText,\"id\":\"Modal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.showHelpText=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.helpText}})],1)])],1),_c('div',{staticClass:\"mb-3\"},_vm._l((_vm.applicable_to),function(row,i){return _c('div',{key:i,attrs:{\"row\":row}},[_c('div',{staticClass:\"collapseHeader\"},[_c('div',{staticClass:\"row\"},[_c('div',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:('collapse-' + _vm.title.toLowerCase() + '-' + i),expression:\"'collapse-' + title.toLowerCase() + '-' + i\"}],staticClass:\"col-md-10 cursor-pointer\"},[_c('i',{staticClass:\"when-opened tim-icons icon-minimal-up\"}),_c('i',{staticClass:\"when-closed tim-icons icon-minimal-down\"}),_vm._v(\" \"+_vm._s(row.applicable_to.join(', '))+\" \")]),_c('div',{staticClass:\"col collapse-trash-icon mr-md-2\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color cursor-pointer\",on:{\"click\":function($event){return _vm.deleteApplicableTo(i)}}})])])]),_c('b-collapse',{ref:\"collapseComponent\",refInFor:true,attrs:{\"id\":'collapse-' + _vm.title.toLowerCase() + '-' + i}},[_c('b-card',{staticClass:\"collapseContent\"},[_c('list-editor',{staticClass:\"mt-md-2 no-bottom-margin\",attrs:{\"list\":row.applicable_to,\"name\":_vm.title + ' is applicable to',\"placeholder\":\"applicable to\",\"externalListToValidate\":_vm.getApplicableToList(),\"helpText\":'Specifies to which type of system this ' +\n _vm.title.toLowerCase() +\n ' applies to. The value \\'all\\' can be used to let it apply to every type of system.',\"notifyText\":\"The value 'KEYNAME' is already part of the applicable_to for this technique. Duplicate entries are not allowed.\"}}),(row.applicable_to.length == 0)?_c('div',{staticClass:\"row mt-md-0 mb-md-2\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})]),_c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"The applicable_to field should be filled in order for DeTT&CT to work properly.\")])])]):_vm._e(),(_vm.showLocation)?_c('list-editor',{staticClass:\"mt-md-2\",attrs:{\"list\":row.location,\"name\":'Location of the ' + _vm.title.toLowerCase(),\"placeholder\":\"location\"}}):_vm._e(),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")])])]),_c('div',{staticClass:\"row mt-md-0\"},[_c('div',{staticClass:\"col-md-11\"},[_c('extended-textarea',{attrs:{\"data_object\":row,\"data_field\":\"comment\",\"id\":_vm.title + i,\"rows\":\"4\",\"cb_function\":_vm.editCommentCallback}})],1)]),_c('div',{staticClass:\"row mt-md-3\"},[_c('div',{staticClass:\"col-md-4\"},[_c('score-slider',{attrs:{\"name\":'Score date: ' + _vm.getLatestScoreDate(row.score_logbook),\"score\":_vm.getLatestScore(row.score_logbook),\"markData\":_vm.scores,\"markDataTooltip\":_vm.scoresTooltip,\"showLabel\":true},on:{\"scoreUpdated\":function($event){_vm.setLatestScore(row.score_logbook, _vm.getLatestScoreDate(row.score_logbook), $event)}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-auto\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(_vm.title + '-score-logbook-modal-' + i),expression:\"title + '-score-logbook-modal-' + i\"}],staticClass:\"btn-custom btn btn-secondary button-30\",on:{\"click\":function($event){_vm.currentModal = _vm.title + '-score-logbook-modal-' + i}}},[_vm._v(\"Score logbook\")]),_c('b-modal',{attrs:{\"id\":_vm.title + '-score-logbook-modal-' + i,\"dialog-class\":\"modal-edit-wide\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\",\"no-close-on-esc\":\"\"}},[_c('score-logbook',{attrs:{\"item\":row.score_logbook,\"scores\":_vm.scores,\"scoresTooltip\":_vm.scoresTooltip,\"defaultScore\":_vm.defaultScore,\"showAutoGenerated\":_vm.showAutoGenerated,\"modalId\":_vm.title + '-score-logbook-modal-' + i,\"emptyScoreEntry\":_vm.emptyScoreEntry,\"cb_function\":_vm.editCommentCallback},on:{\"showHelptextScoreNow\":function($event){_vm.showHelptextScore = true}}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.showHelptextScore,\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.showHelptextScore=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.title)+\" scoring\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.helptextScore}})],1)])],1),_c('div',{staticClass:\"col-md-auto\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(_vm.title + '-custom-kvpairs-modal-' + i),expression:\"title + '-custom-kvpairs-modal-' + i\"}],staticClass:\"btn-custom btn btn-secondary button-30\"},[_vm._v(\"Custom key value pairs\")]),_c('b-modal',{attrs:{\"id\":_vm.title + '-custom-kvpairs-modal-' + i,\"dialog-class\":\"modal-edit-small\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\"}},[_c('custom-key-value-editor',{attrs:{\"item\":row,\"defaultKeys\":_vm.defaultKVKeys,\"useInModal\":true,\"modalId\":_vm.title + '-custom-kvpairs-modal-' + i}})],1)],1)])],1)],1)],1)}),0),_c('div',{staticClass:\"row mb-3\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-30\",on:{\"click\":_vm.addApplicableTo}},[_vm._v(\"Add \"+_vm._s(_vm.title.toLowerCase()))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Keep track of changes within the score by adding score objects.\"}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){return _vm.$bvModal.hide(_vm.modalId)}}},[_vm._v(\"×\")])])]),_c('div',{staticClass:\"row\"},[_vm._m(1),_c('div',{staticClass:\"col-md-3\"},[_c('div',{staticClass:\"row\"},[_vm._m(2),_c('div',{staticClass:\"col-md-auto\",on:{\"click\":_vm.showHelptextScore}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1)])]),_vm._m(3),(_vm.showAutoGenerated)?_c('div',{staticClass:\"col-md-auto\"},[_c('div',{staticClass:\"row\"},[_vm._m(4),_c('div',{staticClass:\"col-md-auto pl-md-1\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Indicates if the score was auto-generated based on the number of data sources within the data source administration file (using the option -y, --yaml from the datasource mode in dettect.py) . When manually scoring your visibility you can set it to False. The purpose of having this property is to allow an easy update of your visibility scores based on changes in your data sources. Or modification within MITRE\\\\'s semi-annual update of ATT&CK (possible new techniques, data sources or changes in the data source listed for a particular technique). For more info see the wiki pages on Github.\"}})],1)])]):_vm._e(),_c('div',{staticClass:\"col-md-0\"})]),_vm._l((_vm.item),function(v,index){return _c('div',{key:_vm.componentKey},[_c('div',{staticClass:\"row score-logbook\"},[_c('div',{staticClass:\"col-md-2 pr-md-0\"},[_c('date-picker',{attrs:{\"showLabel\":false,\"date\":v.date,\"name\":\"Date\"},on:{\"dateUpdated\":function($event){return _vm.updateDate(index, $event)}}})],1),_c('div',{staticClass:\"col-md-3\"},[_c('score-slider',{attrs:{\"name\":\"score\",\"score\":v.score,\"markData\":_vm.scores,\"markDataTooltip\":_vm.scoresTooltip,\"showLabel\":false},on:{\"scoreUpdated\":function($event){v.score = $event;\n if (_vm.showAutoGenerated) {\n v.auto_generated = false;\n }}}})],1),_c('div',{staticClass:\"col-md-5\"},[_c('extended-textarea',{attrs:{\"data_object\":v,\"data_field\":\"comment\",\"id\":'modal' + index,\"cb_function\":_vm.cb_function,\"rows\":\"4\"}})],1),(_vm.showAutoGenerated)?_c('div',{staticClass:\"col-md-auto\"},[_c('toggle-button',{attrs:{\"state\":v.auto_generated,\"name\":\"auto_generated\",\"showLabel\":false},on:{\"toggleButtonUpdated\":function($event){v.auto_generated = $event}}})],1):_vm._e(),_c('div',{staticClass:\"col-md-0\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){return _vm.deleteProperty(index)}}})])])])}),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addNewItem}},[_vm._v(\" Add new score \")])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\" col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Score logbook\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-2\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Date\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Score\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-5\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Auto generated\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreLogbook.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreLogbook.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScoreLogbook.vue?vue&type=template&id=624152d0&\"\nimport script from \"./ScoreLogbook.vue?vue&type=script&lang=js&\"\nexport * from \"./ScoreLogbook.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ApplicableToCollapse.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ApplicableToCollapse.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApplicableToCollapse.vue?vue&type=template&id=e1d67638&\"\nimport script from \"./ApplicableToCollapse.vue?vue&type=script&lang=js&\"\nexport * from \"./ApplicableToCollapse.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TechniquesDetail.vue?vue&type=template&id=6117eb68&\"\nimport script from \"./TechniquesDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./TechniquesDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TechniquesPage.vue?vue&type=template&id=094ca722&\"\nimport script from \"./TechniquesPage.vue?vue&type=script&lang=js&\"\nexport * from \"./TechniquesPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'groupFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms,\"showName\":false}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('groups', 'group_name')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('groups', 'group_name', _vm.emptyGroupObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add group \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.groups,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectItem($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:i,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.group_name))]),_c('td',[_vm._v(_vm._s(row.campaign))]),_c('td',[_vm._v(_vm._s(_vm._f(\"listToString\")(row.enabled)))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"group_name\":row.group_name},on:{\"click\":function($event){return _vm.deleteGroup($event)}}})])])}),1)}}],null,false,1407728229)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"group_name\",\"defaultSort\":\"asc\",\"width\":\"400\"}},[_vm._v(\"Group name\")]),_c('v-th',{attrs:{\"sortKey\":\"campaign\",\"width\":\"400\"}},[_vm._v(\"Campaign\")]),_c('v-th',{attrs:{\"sortKey\":\"enabled\",\"width\":\"150\"}},[_vm._v(\"Enabled\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('groups-detail',{attrs:{\"group\":_vm.getSelectedItem(),\"allGroups\":_vm.doc.groups,\"selectedPlatforms\":_vm.doc.platform,\"groupHelpText\":_vm.groupHelpText}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-single-02\"}),_vm._v(\" Groups\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"container-fluid d-flex flex-column\"},[(_vm.isNewGroup || _vm.editGroupName)?_c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col-md-7 pl-md-2 pr-md-0\"},[_c('base-input',{attrs:{\"value\":_vm.group.group_name},on:{\"change\":function($event){_vm.group.group_name = $event.target.value},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.editGroupName = false},\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"tab\",9,$event.key,\"Tab\")){ return null; }_vm.editGroupName = false},\"blur\":function($event){_vm.editGroupName = false}}})],1),_c('div',{staticClass:\"col-md-auto\"},[_c('i',{staticClass:\"tim-icons icon-check-2 icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editGroupName = false}}})])])]):_c('div',{staticClass:\"row flex-fill\"},[_c('div',{staticClass:\"col-md pr-md-0 pl-md-0\"},[_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.group.group_name))]),_c('i',{staticClass:\"tim-icons icon-pencil icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editGroupName = true}}})])])]),_c('div',{staticClass:\"row mt-md-3\"},[_vm._m(1),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextGroupKVPairs = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextGroupKVPairs,\"id\":\"dsModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextGroupKVPairs=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Group key-value pairs\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.groupHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5 pr-md-0 form-group\"},[_vm._m(2),_c('div',[_c('base-input',{attrs:{\"value\":_vm.group.campaign},on:{\"change\":function($event){_vm.group.campaign = $event.target.value}}})],1)]),_c('div',{staticClass:\"col-md-3 mt-md-1 form-group\"},[_c('toggle-button',{attrs:{\"state\":_vm.group.enabled,\"name\":\"Enabled\",\"extraPaddingBottom\":false},on:{\"toggleButtonUpdated\":function($event){_vm.group.enabled = $event}}})],1)]),(!_vm.isUniqueGroup)?_c('div',{staticClass:\"row mt-md-0 mb-md-3\"},[_vm._m(3),_vm._m(4)]):_vm._e(),_c('auto-suggest-group',{attrs:{\"title\":\"Technique IDs\",\"group\":_vm.group,\"itemIdName\":\"technique_id\",\"platforms\":_vm.selectedPlatforms,\"suggestionList\":_vm.techniques,\"valueAttr\":\"technique_id\"}}),(_vm.group.technique_id.length < 1)?_c('div',{staticClass:\"row mt-md-0 mb-md-3\"},[_vm._m(5),_vm._m(6)]):_vm._e(),_c('auto-suggest-group',{staticClass:\"mt-md-3\",attrs:{\"title\":\"Software IDs\",\"group\":_vm.group,\"itemIdName\":\"software_id\",\"platforms\":_vm.selectedPlatforms,\"suggestionList\":_vm.software,\"valueAttr\":\"software_id\"}}),_c('custom-key-value-editor',{staticClass:\"mt-md-3\",attrs:{\"item\":_vm.group,\"defaultKeys\":_vm.groupDefaultKeys}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0 pl-md-0 margin-top-8\"},[_c('label',[_vm._v(\"Group name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Group key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('label',[_vm._v(\"Campaign name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"The combination of group name and campaign should be unique.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"A group YAML should contain at least one technique ID.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.title))])])]),(_vm.group[_vm.itemIdName].length > 0)?_c('div',{staticClass:\"row form-group\"},_vm._l((_vm.group[_vm.itemIdName]),function(id){return _c('span',{key:id,staticClass:\"attack-span\"},[_c('p',{staticClass:\"attack-id\"},[_vm._v(_vm._s(id))]),_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color mx-md-2 cursor-pointer\",attrs:{\"id\":id},on:{\"click\":function($event){return _vm.deleteItem($event)}}})])}),0):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-7 pr-md-0 form-group\"},[_c('vue-simple-suggest',{ref:\"suggestInputTxt\",attrs:{\"placeholder\":_vm.formattedTitle,\"list\":_vm.filteredSuggestionList,\"max-suggestions\":0,\"filter-by-query\":true,\"display-attribute\":\"autosuggest\",\"value-attribute\":_vm.valueAttr,\"styles\":_vm.autoCompleteStyle},on:{\"select\":function($event){_vm.newID = $event[_vm.itemIdName]},\"input\":function($event){_vm.newID = $event}}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addItem}},[_vm._v(\" Add \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoSuggestGroup.vue?vue&type=template&id=36f9d2c1&\"\nimport script from \"./AutoSuggestGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoSuggestGroup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupsDetail.vue?vue&type=template&id=094774c2&\"\nimport script from \"./GroupsDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupsDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupsPage.vue?vue&type=template&id=47b41b52&\"\nimport script from \"./GroupsPage.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupsPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport Router from 'vue-router';\nimport Layout from '../layout/Layout.vue';\nimport HomePage from '../pages/HomePage.vue';\nimport DataSourcesPage from '../pages/DataSourcesPage.vue';\nimport TechniquesPage from '../pages/TechniquesPage.vue';\nimport GroupsPage from '../pages/GroupsPage.vue';\n\nVue.use(Router);\n\nexport default new Router({\n routes: [\n {\n path: \"/\",\n component: Layout,\n redirect: \"/home\",\n children: [\n {\n path: \"home\",\n name: \"home\",\n component: HomePage\n },\n {\n path: \"datasources\",\n name: \"datasources\",\n component: DataSourcesPage\n },\n {\n path: \"techniques\",\n name: \"techniques\",\n component: TechniquesPage\n },\n {\n path: \"groups\",\n name: \"groups\",\n component: GroupsPage\n }\n ]\n }\n ]\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"sidebar\",attrs:{\"data\":_vm.backgroundColor}},[_c('div',{staticClass:\"sidebar-wrapper\",attrs:{\"id\":\"style-3\"}},[_c('div',{staticClass:\"logo\"},[_c('a',{staticClass:\"simple-text logo-mini\",attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT\",\"target\":\"blank\",\"aria-label\":\"sidebar mini logo\"}},[_c('div',{staticClass:\"logo-img\",class:{ 'logo-img-rtl': _vm.$rtl.isRTL }},[_c('img',{attrs:{\"src\":\"img/logo.png\",\"alt\":\"\"}})])]),_c('span',{staticClass:\"simple-text logo-normal custom-title custom-title1\"},[_vm._v(\"DeTT&CT\")]),_c('span',{staticClass:\"simple-text logo-normal custom-title\"},[_vm._v(\"Editor\")])]),_vm._t(\"default\"),_c('ul',{staticClass:\"nav\"},[_vm._t(\"links\",_vm._l((_vm.sidebarLinks),function(link,index){return _c('sidebar-link',{key:index,attrs:{\"to\":link.path,\"name\":link.name,\"icon\":link.icon}})}))],2)],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,_vm._b({tag:\"component\",staticClass:\"nav-item\",attrs:{\"tag\":\"li\"},nativeOn:{\"click\":function($event){return _vm.hideSidebar($event)}}},'component',_vm.$attrs,false),[_c('a',{staticClass:\"nav-link\"},[_vm._t(\"default\",[(_vm.icon)?_c('i',{class:_vm.icon}):_vm._e(),_c('p',[_vm._v(_vm._s(_vm.name))])])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SidebarLink.vue?vue&type=template&id=4cbde1c6&\"\nimport script from \"./SidebarLink.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SideBar.vue?vue&type=template&id=ec0e00a6&\"\nimport script from \"./SideBar.vue?vue&type=script&lang=js&\"\nexport * from \"./SideBar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Sidebar from \"./SideBar.vue\";\nimport SidebarLink from \"./SidebarLink\";\n\nconst SidebarStore = {\n showSidebar: false,\n sidebarLinks: [],\n displaySidebar(value) {\n this.showSidebar = value;\n }\n};\n\nconst SidebarPlugin = {\n install(Vue) {\n let app = new Vue({\n data: {\n sidebarStore: SidebarStore\n }\n });\n\n Vue.prototype.$sidebar = app.sidebarStore;\n Vue.component(\"side-bar\", Sidebar);\n Vue.component(\"sidebar-link\", SidebarLink);\n }\n};\n\nexport default SidebarPlugin;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notifications\"},[_c('transition-group',{attrs:{\"name\":_vm.transitionName,\"mode\":_vm.transitionMode}},_vm._l((_vm.notifications),function(notification){return _c('notification',_vm._b({key:notification.timestamp.getTime(),attrs:{\"clickHandler\":notification.onClick},on:{\"close\":_vm.removeNotification}},'notification',notification,false))}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"alert open\",class:[{ 'alert-with-icon': _vm.icon }, _vm.verticalAlign, _vm.horizontalAlign, _vm.alertType],style:(_vm.customPosition),attrs:{\"data-notify\":\"container\",\"role\":\"alert\",\"data-notify-position\":\"top-center\"},on:{\"click\":_vm.tryClose}},[(_vm.showClose)?_c('button',{staticClass:\"close col-xs-1 pl-md-3\",attrs:{\"type\":\"button\",\"aria-hidden\":\"true\",\"data-notify\":\"dismiss\"},on:{\"click\":_vm.close}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})]):_vm._e(),(_vm.icon)?_c('span',{class:['alert-icon', _vm.icon],attrs:{\"data-notify\":\"icon\"}}):_vm._e(),_c('div',{attrs:{\"data-notify\":\"message\"}},[(_vm.title)?_c('div',{staticClass:\"title\"},[_c('b',[_vm._v(_vm._s(_vm.title)),_c('br')])]):_vm._e(),(_vm.message)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.message)}}):_vm._e(),(!_vm.message && _vm.component)?_c('content-render',{attrs:{\"component\":_vm.component}}):_vm._e(),(_vm.cb_function != null)?_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.cb_function(_vm.cb_function_key)}}},[_vm._v(_vm._s(_vm.cb_function_text))])]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=e37796d6&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notifications.vue?vue&type=template&id=1e1e365e&\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js&\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notifications.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Notifications from './Notifications.vue';\n\nconst NotificationStore = {\n state: [], // here the notifications will be added\n settings: {\n overlap: false,\n verticalAlign: 'top',\n horizontalAlign: 'right',\n type: 'info',\n timeout: 5000,\n closeOnClick: true,\n showClose: true\n },\n setOptions(options) {\n this.settings = Object.assign(this.settings, options);\n },\n removeNotification(timestamp) {\n const indexToDelete = this.state.findIndex(n => n.timestamp === timestamp);\n if (indexToDelete !== -1) {\n this.state.splice(indexToDelete, 1);\n }\n },\n addNotification(notification) {\n if (typeof notification === 'string' || notification instanceof String) {\n notification = { message: notification };\n }\n notification.timestamp = new Date();\n notification.timestamp.setMilliseconds(\n notification.timestamp.getMilliseconds() + this.state.length\n );\n notification = Object.assign({}, this.settings, notification);\n this.state.push(notification);\n },\n notify(notification) {\n if (Array.isArray(notification)) {\n notification.forEach(notificationInstance => {\n this.addNotification(notificationInstance);\n });\n } else {\n this.addNotification(notification);\n }\n }\n};\n\nconst NotificationsPlugin = {\n install(Vue, options) {\n let app = new Vue({\n data: {\n notificationStore: NotificationStore\n },\n methods: {\n notify(notification) {\n this.notificationStore.notify(notification);\n }\n }\n });\n Vue.prototype.$notify = app.notify;\n Vue.prototype.$notifications = app.notificationStore;\n Vue.component('Notifications', Notifications);\n if (options) {\n NotificationStore.setOptions(options);\n }\n }\n};\n\nexport default NotificationsPlugin;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\",class:{\n 'input-group': _vm.hasIcon,\n 'input-group-focus': _vm.focused\n }},[_vm._t(\"label\",[(_vm.label)?_c('label',{staticClass:\"control-label\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \")]):_vm._e()]),_vm._t(\"addonLeft\",[(_vm.addonLeftIcon)?_c('span',{staticClass:\"input-group-prepend\"},[_c('div',{staticClass:\"input-group-text\"},[_c('i',{class:_vm.addonLeftIcon})])]):_vm._e()]),_vm._t(\"default\",[_c('input',_vm._g(_vm._b({staticClass:\"form-control\",attrs:{\"aria-describedby\":\"addon-right addon-left\"},domProps:{\"value\":_vm.value}},'input',_vm.$attrs,false),_vm.listeners))]),_vm._t(\"addonRight\",[(_vm.addonRightIcon)?_c('span',{staticClass:\"input-group-append\"},[_c('div',{staticClass:\"input-group-text\"},[_c('i',{class:_vm.addonRightIcon})])]):_vm._e()]),_vm._t(\"helperText\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseInput.vue?vue&type=template&id=8c2a10d6&\"\nimport script from \"./BaseInput.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseInput.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-check\",class:[{disabled: _vm.disabled}, _vm.inlineClass]},[_c('label',{staticClass:\"form-check-label\",attrs:{\"for\":_vm.cbId}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model),expression:\"model\"}],staticClass:\"form-check-input\",attrs:{\"id\":_vm.cbId,\"type\":\"checkbox\",\"disabled\":_vm.disabled},domProps:{\"checked\":Array.isArray(_vm.model)?_vm._i(_vm.model,null)>-1:(_vm.model)},on:{\"change\":function($event){var $$a=_vm.model,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.model=$$a.concat([$$v]))}else{$$i>-1&&(_vm.model=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.model=$$c}}}}),_c('span',{staticClass:\"form-check-sign\"}),_vm._t(\"default\",[(_vm.inline)?_c('span'):_vm._e()])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseCheckbox.vue?vue&type=template&id=246043d5&\"\nimport script from \"./BaseCheckbox.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseCheckbox.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-check form-check-radio\",class:[_vm.inlineClass, {disabled: _vm.disabled}]},[_c('label',{staticClass:\"form-check-label\",attrs:{\"for\":_vm.cbId}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model),expression:\"model\"}],staticClass:\"form-check-input\",attrs:{\"id\":_vm.cbId,\"type\":\"radio\",\"disabled\":_vm.disabled},domProps:{\"value\":_vm.name,\"checked\":_vm._q(_vm.model,_vm.name)},on:{\"change\":function($event){_vm.model=_vm.name}}}),_vm._t(\"default\"),_c('span',{staticClass:\"form-check-sign\"})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseRadio.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseRadio.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseRadio.vue?vue&type=template&id=544a6db7&\"\nimport script from \"./BaseRadio.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseRadio.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closeDropDown),expression:\"closeDropDown\"}],tag:\"component\",staticClass:\"dropdown\",class:{show:_vm.isOpen},on:{\"click\":_vm.toggleDropDown}},[_vm._t(\"title-container\",[_c(_vm.titleTag,{tag:\"component\",staticClass:\"dropdown-toggle btn-rotate\",class:_vm.titleClasses,attrs:{\"aria-expanded\":_vm.isOpen,\"aria-label\":_vm.title || _vm.ariaLabel,\"data-toggle\":\"dropdown\"}},[_vm._t(\"title\",[_c('i',{class:_vm.icon}),_vm._v(\" \"+_vm._s(_vm.title)+\" \")],{\"isOpen\":_vm.isOpen})],2)],{\"isOpen\":_vm.isOpen}),_c('ul',{staticClass:\"dropdown-menu\",class:[{show:_vm.isOpen}, {'dropdown-menu-right': _vm.menuOnRight}, _vm.menuClasses]},[_vm._t(\"default\")],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDropdown.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseDropdown.vue?vue&type=template&id=c2dbcac8&\"\nimport script from \"./BaseDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseDropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table',{staticClass:\"table tablesorter\",class:_vm.tableClass},[_c('thead',{class:_vm.theadClasses},[_c('tr',[_vm._t(\"columns\",_vm._l((_vm.columns),function(column){return _c('th',{key:column},[_vm._v(_vm._s(column))])}))],2)]),_c('tbody',{class:_vm.tbodyClasses},_vm._l((_vm.data),function(item,index){return _c('tr',{key:index},[_vm._t(\"default\",[_vm._l((_vm.columns),function(column,index){return (_vm.hasValue(item, column))?_c('td',{key:index},[_vm._v(\" \"+_vm._s(_vm.itemValue(item, column))+\" \")]):_vm._e()}),(_vm.deleteButton)?_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple\"})]):_vm._e()],{\"row\":item})],2)}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseTable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseTable.vue?vue&type=template&id=1c12c84c&\"\nimport script from \"./BaseTable.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseTable.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {\nvar _obj, _obj$1;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{tag:\"component\",staticClass:\"btn\",class:[\n {'btn-round': _vm.round},\n {'btn-block': _vm.block},\n {'btn-icon btn-fab': _vm.icon},\n ( _obj = {}, _obj[(\"btn-\" + _vm.type)] = _vm.type, _obj ),\n ( _obj$1 = {}, _obj$1[(\"btn-\" + _vm.size)] = _vm.size, _obj$1 ),\n {'btn-simple': _vm.simple},\n {'btn-link': _vm.link},\n {'disabled': _vm.disabled && _vm.tag !== 'button'}\n ],attrs:{\"type\":_vm.tag === 'button' ? _vm.nativeType : '',\"disabled\":_vm.disabled || _vm.loading},on:{\"click\":_vm.handleClick}},[_vm._t(\"loading\",[(_vm.loading)?_c('i',{staticClass:\"fas fa-spinner fa-spin\"}):_vm._e()]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseButton.vue?vue&type=template&id=a1e01c20&\"\nimport script from \"./BaseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('fade-transition',[(_vm.visible)?_c('div',{staticClass:\"alert\",class:[(\"alert-\" + _vm.type), { 'alert-with-icon': _vm.withIcon }],attrs:{\"role\":\"alert\"}},[(!_vm.dismissible)?_vm._t(\"default\"):_c('div',{staticClass:\"container\"},[_vm._t(\"default\"),_vm._t(\"dismiss-icon\",[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":_vm.dismissAlert}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})])])])],2)],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseAlert.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseAlert.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseAlert.vue?vue&type=template&id=69f0b954&\"\nimport script from \"./BaseAlert.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseAlert.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"navbar-toggler\",attrs:{\"type\":\"button\",\"data-toggle\":\"collapse\",\"data-target\":(\"#\" + _vm.target),\"aria-controls\":_vm.target,\"aria-expanded\":_vm.expanded,\"aria-label\":\"Toggle navigation\"},on:{\"click\":_vm.handleClick}},[_c('span'),_c('span')])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloseButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CloseButton.vue?vue&type=template&id=59b0836b&\"\nimport script from \"./CloseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./CloseButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card\",class:[_vm.type && (\"card-\" + _vm.type)]},[(_vm.$slots.image)?_c('div',{staticClass:\"card-image\"},[_vm._t(\"image\")],2):_vm._e(),(_vm.$slots.header || _vm.title)?_c('div',{staticClass:\"card-header\",class:_vm.headerClasses},[_vm._t(\"header\",[_c('h4',{staticClass:\"card-title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.subTitle)?_c('p',{staticClass:\"card-category\"},[_vm._v(_vm._s(_vm.subTitle))]):_vm._e()])],2):_vm._e(),(_vm.$slots.default)?_c('div',{staticClass:\"card-body\"},[_vm._t(\"default\")],2):_vm._e(),(_vm.$slots['image-bottom'])?_c('div',{staticClass:\"card-image\"},[_vm._t(\"image-bottom\")],2):_vm._e(),_vm._t(\"raw-content\"),(_vm.$slots.footer)?_c('div',{staticClass:\"card-footer\",class:_vm.footerClasses},[_vm._t(\"footer\")],2):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Card.vue?vue&type=template&id=2374244f&\"\nimport script from \"./Card.vue?vue&type=script&lang=js&\"\nexport * from \"./Card.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { BaseInput, Card, BaseDropdown, BaseButton, BaseCheckbox } from \"../components/index\";\n/**\n * You can register global components here and use them as a plugin in your main Vue instance\n */\n\nconst GlobalComponents = {\n install(Vue) {\n Vue.component(BaseInput.name, BaseInput);\n Vue.component(Card.name, Card);\n Vue.component(BaseDropdown.name, BaseDropdown);\n Vue.component(BaseButton.name, BaseButton);\n Vue.component(BaseCheckbox.name, BaseCheckbox);\n }\n};\n\nexport default GlobalComponents;\n","export default {\n bind: function (el, binding, vnode) {\n el.clickOutsideEvent = function (event) {\n // here I check that click was outside the el and his childrens\n if (!(el == event.target || el.contains(event.target))) {\n // and if it did, call method provided in attribute value\n vnode.context[binding.expression](event);\n }\n };\n document.body.addEventListener('click', el.clickOutsideEvent)\n },\n unbind: function (el) {\n document.body.removeEventListener('click', el.clickOutsideEvent)\n },\n}\n","import clickOutside from '../directives/click-ouside.js';\n\n\n/**\n * You can register global directives here and use them as a plugin in your main Vue instance\n */\n\nconst GlobalDirectives = {\n install (Vue) {\n Vue.directive('click-outside', clickOutside);\n }\n}\n\nexport default GlobalDirectives\n","export default {\n install(Vue) {\n let app = new Vue({\n data() {\n return {\n isRTL: false\n }\n },\n methods: {\n getDocClasses() {\n return document.body.classList\n },\n enableRTL() {\n this.isRTL = true;\n this.getDocClasses().add('rtl');\n this.getDocClasses().add('menu-on-right');\n this.toggleBootstrapRTL(true);\n },\n disableRTL() {\n this.isRTL = false;\n this.getDocClasses().remove('rtl');\n this.getDocClasses().remove('menu-on-right');\n this.toggleBootstrapRTL(false);\n },\n toggleBootstrapRTL(value) {\n for (let i=0; i < document.styleSheets.length; i++){\n let styleSheet = document.styleSheets[i];\n let { href } = styleSheet;\n if(href && href.endsWith('bootstrap-rtl.css')){\n styleSheet.disabled = !value;\n }\n }\n }\n }\n });\n\n Vue.prototype.$rtl = app;\n }\n}\n","import SideBar from '@/components/SidebarPlugin';\nimport Notify from '@/components/NotificationPlugin';\nimport GlobalComponents from './globalComponents';\nimport GlobalDirectives from './globalDirectives';\nimport RTLPlugin from './RTLPlugin';\n\n//css assets\nimport '@/assets/sass/black-dashboard.scss';\nimport '@/assets/css/nucleo-icons.css';\nimport 'bootstrap-vue/dist/bootstrap-vue.css';\n\nexport default {\n install(Vue) {\n Vue.use(GlobalComponents);\n Vue.use(GlobalDirectives);\n Vue.use(SideBar);\n Vue.use(Notify);\n Vue.use(RTLPlugin);\n }\n};\n","/*\n =========================================================\n * Vue Black Dashboard - v1.1.0\n =========================================================\n\n * Product Page: https://www.creative-tim.com/product/black-dashboard\n * Copyright 2018 Creative Tim (http://www.creative-tim.com)\n\n =========================================================\n\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\n */\nimport Vue from 'vue';\nimport VueRouter from 'vue-router';\nimport RouterPrefetch from 'vue-router-prefetch';\nimport App from './App';\nimport router from './router/router';\nimport SmartTable from 'vuejs-smart-table';\nimport VueResource from 'vue-resource';\nimport VueShowdown from 'vue-showdown';\nimport Tooltip from 'vue-directive-tooltip';\nimport { BootstrapVue, BootstrapVueIcons } from 'bootstrap-vue';\n\nimport BlackDashboard from './plugins/blackDashboard';\nVue.use(BlackDashboard);\nVue.use(VueRouter);\nVue.use(RouterPrefetch);\nVue.use(SmartTable);\nVue.use(VueResource);\nVue.use(VueShowdown, {\n options: {\n openLinksInNewWindow: true,\n tables: true\n }\n});\nVue.use(Tooltip);\nVue.use(BootstrapVue);\nVue.use(BootstrapVueIcons);\n\n/* eslint-disable no-new */\nnew Vue({\n router,\n render: (h) => h(App)\n}).$mount('#app');\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/Modal.vue?a882","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/App.vue?30df","webpack:///src/App.vue","webpack:///./src/App.vue?a7d1","webpack:///./src/App.vue","webpack:///./src/layout/Layout.vue?62ee","webpack:///./src/layout/Footer.vue?d46d","webpack:///src/layout/Footer.vue","webpack:///./src/layout/Footer.vue?6d55","webpack:///./src/layout/Footer.vue","webpack:///./src/layout/Content.vue?7dba","webpack:///src/layout/Content.vue","webpack:///./src/layout/Content.vue?d80a","webpack:///./src/layout/Content.vue","webpack:///src/layout/Layout.vue","webpack:///./src/layout/Layout.vue?6553","webpack:///./src/layout/Layout.vue","webpack:///./src/pages/HomePage.vue?f127","webpack:///src/pages/HomePage.vue","webpack:///./src/pages/HomePage.vue?2935","webpack:///./src/pages/HomePage.vue","webpack:///./src/pages/DataSourcesPage.vue?5405","webpack:///./src/pages/DataSourceDetail.vue?060c","webpack:///./src/components/Inputs/ListEditor.vue?2c1b","webpack:///./src/components/Icons.vue?88fc","webpack:///src/components/Icons.vue","webpack:///./src/components/Icons.vue?489c","webpack:///./src/components/Icons.vue","webpack:///./src/pages/Notifications/NotificationTemplate.vue?4ed1","webpack:///src/pages/Notifications/NotificationTemplate.vue","webpack:///./src/pages/Notifications/NotificationTemplate.vue?f5ec","webpack:///./src/pages/Notifications/NotificationTemplate.vue","webpack:///./src/mixins/NotificationMixins.js","webpack:///src/components/Inputs/ListEditor.vue","webpack:///./src/components/Inputs/ListEditor.vue?6bb1","webpack:///./src/components/Inputs/ListEditor.vue","webpack:///./src/components/Inputs/DatePicker.vue?6699","webpack:///src/components/Inputs/DatePicker.vue","webpack:///./src/components/Inputs/DatePicker.vue?a4c2","webpack:///./src/components/Inputs/DatePicker.vue","webpack:///./src/components/Inputs/ToggleButton.vue?f7a3","webpack:///src/components/Inputs/ToggleButton.vue","webpack:///./src/components/Inputs/ToggleButton.vue?79ee","webpack:///./src/components/Inputs/ToggleButton.vue","webpack:///./src/components/Inputs/ScoreSlider.vue?2c44","webpack:///src/components/Inputs/ScoreSlider.vue","webpack:///./src/components/Inputs/ScoreSlider.vue?816b","webpack:///./src/components/Inputs/ScoreSlider.vue","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue?e648","webpack:///src/components/Inputs/CustomKeyValueEditor.vue","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue?d82f","webpack:///./src/components/Inputs/CustomKeyValueEditor.vue","webpack:///./src/components/Inputs/AutoSuggestTitle.vue?d808","webpack:///./src/mixins/AutoSuggestMixins.js","webpack:///src/components/Inputs/AutoSuggestTitle.vue","webpack:///./src/components/Inputs/AutoSuggestTitle.vue?32f0","webpack:///./src/components/Inputs/AutoSuggestTitle.vue","webpack:///./src/components/Inputs/ExtendedTextarea.vue?a393","webpack:///src/components/Inputs/ExtendedTextarea.vue","webpack:///./src/components/Inputs/ExtendedTextarea.vue?7ecb","webpack:///./src/components/Inputs/ExtendedTextarea.vue","webpack:///./src/constants.js","webpack:///./src/components/Modal.vue?196d","webpack:///src/components/Modal.vue","webpack:///./src/components/Modal.vue?6cd3","webpack:///./src/components/Modal.vue","webpack:///./src/mixins/PageDetailMixins.js","webpack:///src/pages/DataSourceDetail.vue","webpack:///./src/pages/DataSourceDetail.vue?37e8","webpack:///./src/pages/DataSourceDetail.vue","webpack:///./src/components/FileReader.vue?ef45","webpack:///src/components/FileReader.vue","webpack:///./src/components/FileReader.vue?0b26","webpack:///./src/components/FileReader.vue","webpack:///./src/components/FileDetails.vue?cd1f","webpack:///src/components/FileDetails.vue","webpack:///./src/components/FileDetails.vue?81f1","webpack:///./src/components/FileDetails.vue","webpack:///./src/mixins/PageMixins.js","webpack:///./src/mixins/NavigateMixins.js","webpack:///src/pages/DataSourcesPage.vue","webpack:///./src/pages/DataSourcesPage.vue?7ce8","webpack:///./src/pages/DataSourcesPage.vue","webpack:///./src/pages/TechniquesPage.vue?bb46","webpack:///./src/pages/TechniquesDetail.vue?9bfc","webpack:///./src/components/Inputs/ApplicableToCollapse.vue?220d","webpack:///./src/components/Inputs/ScoreLogbook.vue?8ef4","webpack:///src/components/Inputs/ScoreLogbook.vue","webpack:///./src/components/Inputs/ScoreLogbook.vue?9083","webpack:///./src/components/Inputs/ScoreLogbook.vue","webpack:///src/components/Inputs/ApplicableToCollapse.vue","webpack:///./src/components/Inputs/ApplicableToCollapse.vue?04ef","webpack:///./src/components/Inputs/ApplicableToCollapse.vue","webpack:///src/pages/TechniquesDetail.vue","webpack:///./src/pages/TechniquesDetail.vue?a92e","webpack:///./src/pages/TechniquesDetail.vue","webpack:///src/pages/TechniquesPage.vue","webpack:///./src/pages/TechniquesPage.vue?c8c3","webpack:///./src/pages/TechniquesPage.vue","webpack:///./src/pages/GroupsPage.vue?1639","webpack:///./src/pages/GroupsDetail.vue?4cd2","webpack:///./src/components/Inputs/AutoSuggestGroup.vue?d951","webpack:///src/components/Inputs/AutoSuggestGroup.vue","webpack:///./src/components/Inputs/AutoSuggestGroup.vue?bc08","webpack:///./src/components/Inputs/AutoSuggestGroup.vue","webpack:///src/pages/GroupsDetail.vue","webpack:///./src/pages/GroupsDetail.vue?09ee","webpack:///./src/pages/GroupsDetail.vue","webpack:///src/pages/GroupsPage.vue","webpack:///./src/pages/GroupsPage.vue?7961","webpack:///./src/pages/GroupsPage.vue","webpack:///./src/router/router.js","webpack:///./src/components/SidebarPlugin/SideBar.vue?a796","webpack:///./src/components/SidebarPlugin/SidebarLink.vue?ab14","webpack:///src/components/SidebarPlugin/SidebarLink.vue","webpack:///./src/components/SidebarPlugin/SidebarLink.vue?9922","webpack:///./src/components/SidebarPlugin/SidebarLink.vue","webpack:///src/components/SidebarPlugin/SideBar.vue","webpack:///./src/components/SidebarPlugin/SideBar.vue?5d3f","webpack:///./src/components/SidebarPlugin/SideBar.vue","webpack:///./src/components/SidebarPlugin/index.js","webpack:///./src/components/NotificationPlugin/Notifications.vue?7737","webpack:///./src/components/NotificationPlugin/Notification.vue?906e","webpack:///src/components/NotificationPlugin/Notification.vue","webpack:///./src/components/NotificationPlugin/Notification.vue?e610","webpack:///./src/components/NotificationPlugin/Notification.vue","webpack:///src/components/NotificationPlugin/Notifications.vue","webpack:///./src/components/NotificationPlugin/Notifications.vue?98ab","webpack:///./src/components/NotificationPlugin/Notifications.vue","webpack:///./src/components/NotificationPlugin/index.js","webpack:///./src/components/Inputs/BaseInput.vue?d9c0","webpack:///src/components/Inputs/BaseInput.vue","webpack:///./src/components/Inputs/BaseInput.vue?83ab","webpack:///./src/components/Inputs/BaseInput.vue","webpack:///./src/components/BaseCheckbox.vue?266a","webpack:///src/components/BaseCheckbox.vue","webpack:///./src/components/BaseCheckbox.vue?fe67","webpack:///./src/components/BaseCheckbox.vue","webpack:///./src/components/BaseRadio.vue?6edb","webpack:///src/components/BaseRadio.vue","webpack:///./src/components/BaseRadio.vue?9df1","webpack:///./src/components/BaseRadio.vue","webpack:///./src/components/BaseDropdown.vue?845f","webpack:///src/components/BaseDropdown.vue","webpack:///./src/components/BaseDropdown.vue?423e","webpack:///./src/components/BaseDropdown.vue","webpack:///./src/components/BaseTable.vue?07f7","webpack:///src/components/BaseTable.vue","webpack:///./src/components/BaseTable.vue?1ea2","webpack:///./src/components/BaseTable.vue","webpack:///./src/components/BaseButton.vue?c717","webpack:///src/components/BaseButton.vue","webpack:///./src/components/BaseButton.vue?8fc6","webpack:///./src/components/BaseButton.vue","webpack:///./src/components/BaseAlert.vue?fe25","webpack:///src/components/BaseAlert.vue","webpack:///./src/components/BaseAlert.vue?2243","webpack:///./src/components/BaseAlert.vue","webpack:///./src/components/CloseButton.vue?4fac","webpack:///src/components/CloseButton.vue","webpack:///./src/components/CloseButton.vue?763a","webpack:///./src/components/CloseButton.vue","webpack:///./src/components/Cards/Card.vue?62da","webpack:///src/components/Cards/Card.vue","webpack:///./src/components/Cards/Card.vue?679b","webpack:///./src/components/Cards/Card.vue","webpack:///./src/plugins/globalComponents.js","webpack:///./src/directives/click-ouside.js","webpack:///./src/plugins/globalDirectives.js","webpack:///./src/plugins/RTLPlugin.js","webpack:///./src/plugins/blackDashboard.js","webpack:///./src/main.js","webpack:///./src/components/NotificationPlugin/Notifications.vue?57a0","webpack:///./src/components/NotificationPlugin/Notification.vue?eac8"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","e","Error","code","keys","resolve","render","_vm","this","_h","$createElement","_c","_self","$route","fullPath","staticRenderFns","component","staticClass","slot","attrs","nativeOn","$event","toggleSidebar","_v","_s","year","_m","doc","on","navigateToTop","_e","askNewFile","setFileName","readFile","filename","platforms","downloadYaml","addItem","emptyDataSourceObject","model","filters","filter","callback","$$v","$set","expression","ref","data_sources","selectItem","scopedSlots","_u","fn","displayData","_l","row","data_source_name","refInFor","date_registered","_f","products","deleteDataSource","getSelectedItem","dqHelpText","dsHelpText","prevDataSourceQuality","navigateItem","dataSource","allDataSources","dataSourceSuggestionList","helptextDataSourceKVPairs","date_connected","available_for_data_analytics","dsEnabled","toggleEnabled","editCommentCallback","helptextDataQuality","data_quality","device_completeness","dataQualityScores","dataQualityTooltip","data_field_completeness","timeliness","consistency","retention","dataSourceDefaultKeys","helpText","item","index","updateItem","deleteItem","placeholder","type","indexOf","_k","keyCode","newItem","staticStyle","icon","directives","rawName","modifiers","showHelpText","notificationMixin","methods","notifyInfo","title","message","$notify","NotificationTemplate","horizontalAlign","verticalAlign","timeout","notifyInfoWithCallback","cb_function","cb_function_text","cb_function_key","notifyDanger","notifyDangerWithCallback","infinite","notifyWarning","date","updateDate","class","getDivStyleClass","state","checked","unchecked","disabled","switchButton","score","markData","val","markDataTooltip","color","updateScore","$bvModal","hide","modalId","v","k","defaultKeys","includes","updateKey","updateValue","deleteProperty","addProperty","newKey","newValue","isNewItem","editItem","itemIdName","filteredSuggestionList","displayAttr","valueAttr","autoCompleteStyle","tmpItemId","setItemIdValue","itemTitle","toLowerCase","autoSuggestMixins","defaultInput","suggestions","suggestItem","props","String","required","suggestionList","Array","computed","listKnownIDs","a","listKnownIDsForPlatform","tmpList","some","components","VueSimpleSuggest","data_object","data_field","rows","domProps","target","composing","callCbFunction","YAML_DATASOURCES_VERSION","YAML_TECHNIQUES_VERSION","YAML_GROUPS_VERSION","YAML_OBJ_NEW_DATA_SOURCES_FILE","version","file_type","platform","YAML_OBJ_DATA_SOURCES","comment","YAML_OBJ_NEW_GROUPS_FILE","groups","YAML_OBJ_GROUP","group_name","campaign","technique_id","software_id","enabled","YAML_OBJ_NEW_TECHNIQUES_FILE","techniques","YAML_OBJ_TECHNIQUE","technique_name","detection","applicable_to","location","score_logbook","visibility","auto_generated","YAML_OBJ_TECHNIQUE_DETECTION","YAML_OBJ_TECHNIQUE_VISIBILITY","YAML_OBJ_SCORE_DETECTION_LOGBOOK","YAML_OBJ_SCORE_VISIBILITY_LOGBOOK","PLATFORMS","PLATFORM_CONVERSION","windows","linux","pre","macos","aws","gcp","azure","saas","network","animationDuration","show","currentTarget","closeModal","centered","modalClasses","gradient","modalContentClasses","$slots","headerClasses","_t","bodyClasses","footerClasses","SlideYUpTransition","Boolean","showClose","default","acceptedValues","description","Number","$emit","watch","documentClasses","document","body","classList","add","remove","pageDetailMixin","created","addEventListener","escapeKeyListener","destroyed","removeEventListener","loadTextFromFile","toFixed","isArray","_i","platformEventHandler","$$a","$$el","$$c","$$i","concat","checkPlatform","options","container","easing","offset","duration","force","cancelable","onStart","element","onDone","onCancel","x","y","pageMixin","selected_filename","selectedRow","fileChanged","unwatchFunction","deletedRows","constants","FileReader","FileDetails","VueScrollTo","scrollTo","navigateToDetail","event","emptyObject","emptyRow","typeStr","replace","pop","newrow","_","cloneDeep","key_id","getAttribute","msg","recoverDeletedItem","recoverRow","indexEmptyRow","cleanupBeforeDownload","newDoc","convertBeforeDownload","blob","Blob","jsyaml","safeDump","lineWidth","FileSaver","require","saveAs","setWatch","$watch","after","before","deep","msgBoxConfirm","size","cancelVariant","okVariant","okTitle","modalClass","then","newFile","next","step","table","$refs","data_table","$el","found_index","className","found_row","data_table_rows","navigateMixins","arrowKeysListener","evt","shiftKey","ctrlKey","emptyTechObject","selectTechnique","deleteTechnique","technique","allTechniques","techniquesSuggestionList","selectedPlatforms","detectionHelpText","detectionScoreHelpText","detectionScores","detectionScoresTooltip","detectionScoreDefault","emptyScoreEntryDetection","emptyDetectionObject","visibilityHelpText","visibilityScoreHelpText","visibilityScores","visibilityScoresTooltip","visibilityScoreDefault","emptyScoreEntryVisibility","emptyVisibilityObject","join","deleteApplicableTo","getApplicableToList","getLatestScoreDate","getLatestScore","scores","scoresTooltip","setLatestScore","currentModal","defaultScore","showAutoGenerated","emptyScoreEntry","showHelptextScore","helptextScore","defaultKVKeys","addApplicableTo","componentKey","addNewItem","emptyGroupObject","deleteGroup","groupHelpText","isNewGroup","editGroupName","group","helptextGroupKVPairs","isUniqueGroup","software","groupDefaultKeys","formattedTitle","newID","Vue","use","Router","routes","path","Layout","redirect","children","HomePage","DataSourcesPage","TechniquesPage","GroupsPage","backgroundColor","$rtl","isRTL","link","tag","_b","hideSidebar","$attrs","inheritAttrs","inject","autoClose","addLink","removeLink","$sidebar","displaySidebar","contains","parentNode","removeChild","SidebarStore","showSidebar","sidebarLinks","SidebarPlugin","install","app","sidebarStore","Sidebar","SidebarLink","transitionName","transitionMode","notification","timestamp","getTime","onClick","removeNotification","alertType","style","tryClose","close","Notification","overlap","notifications","$notifications","settings","newVal","NotificationStore","closeOnClick","setOptions","assign","indexToDelete","findIndex","addNotification","Date","setMilliseconds","getMilliseconds","notify","forEach","notificationInstance","NotificationsPlugin","notificationStore","Notifications","hasIcon","focused","label","addonLeftIcon","_g","listeners","addonRightIcon","inlineClass","cbId","_q","inline","Math","random","isOpen","toggleDropDown","titleTag","titleClasses","ariaLabel","menuOnRight","menuClasses","tableClass","theadClasses","column","tbodyClasses","hasValue","itemValue","_obj","_obj$1","round","block","simple","nativeType","loading","handleClick","withIcon","dismissible","dismissAlert","expanded","header","subTitle","GlobalComponents","BaseInput","Card","BaseDropdown","BaseButton","BaseCheckbox","el","binding","vnode","clickOutsideEvent","context","unbind","GlobalDirectives","directive","clickOutside","getDocClasses","enableRTL","toggleBootstrapRTL","disableRTL","styleSheets","styleSheet","href","endsWith","SideBar","Notify","RTLPlugin","BlackDashboard","VueRouter","RouterPrefetch","SmartTable","VueResource","VueShowdown","openLinksInNewWindow","tables","Tooltip","BootstrapVue","BootstrapVueIcons","router","h","App","$mount"],"mappings":"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","file":"js/app.54893e27.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dettect-editor/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('notifications'),_c('keep-alive',[_c('router-view',{key:_vm.$route.fullPath})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=69142b45&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\"},[_c('side-bar',[_c('template',{slot:\"links\"},[_c('sidebar-link',{attrs:{\"to\":\"/home\",\"name\":'Home',\"icon\":\"tim-icons icon-bank\"}}),_c('sidebar-link',{attrs:{\"to\":\"/datasources\",\"name\":'Data sources',\"icon\":\"tim-icons icon-coins\"}}),_c('sidebar-link',{attrs:{\"to\":\"/techniques\",\"name\":'Techniques',\"icon\":\"tim-icons icon-zoom-split\"}}),_c('sidebar-link',{attrs:{\"to\":\"/groups\",\"name\":'Groups',\"icon\":\"tim-icons icon-single-02\"}})],1)],2),_c('div',{staticClass:\"main-panel\"},[_c('dashboard-content',{nativeOn:{\"click\":function($event){return _vm.toggleSidebar($event)}}}),_c('content-footer')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"footer\"},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"copyright\"},[_vm._v(\" © \"+_vm._s(_vm.year)+\" made with \"),_c('i',{staticClass:\"tim-icons icon-heart-2\"}),_vm._v(\" by \"),_c('a',{attrs:{\"href\":\"https://www.binarcode.com\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(\"Binar Code\")]),_vm._v(\" & \"),_c('a',{attrs:{\"href\":\"https://www.creative-tim.com\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(\"Creative Tim\")]),_vm._v(\" for a better web. \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=651fef35&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"content\",attrs:{\"id\":\"customcontent\"}},[_c('fade-transition',{attrs:{\"duration\":100,\"mode\":\"out-in\"}},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Content.vue?vue&type=template&id=1e1175b8&\"\nimport script from \"./Content.vue?vue&type=script&lang=js&\"\nexport * from \"./Content.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Layout.vue?vue&type=template&id=5d20e794&\"\nimport script from \"./Layout.vue?vue&type=script&lang=js&\"\nexport * from \"./Layout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-bank pb-md-2\"}),_vm._v(\" Home\")])]),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Introduction\")]),_c('p',[_vm._v(\" The DeTT&CT data source, technique and group YAML files can be edited using this editor. \")]),_c('p',{staticClass:\"mt-md-3\"},[_vm._v(\" Usefull links on the Wiki: \"),_c('ul',[_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Getting-started\",\"target\":\"_blank\"}},[_vm._v(\"Getting started with DeTT&CT\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/dettect-editor\",\"target\":\"_blank\"}},[_vm._v(\"DeTT&CT Editor\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor\",\"target\":\"_blank\"}},[_vm._v(\"Future developments\")])])])])]),_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Client-side and saving results\")]),_c('p',[_vm._v(\" The DeTT&CT Editor is entirely client-side. Therefore, the content of your YAML file is not send to a server. \")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\"It is important to take into account that modifed YAML files should be download using the button \"),_c('strong',[_vm._v(\"Save YAML file\")]),_vm._v(\", to save the results.\")])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Keyboard shortcuts\")]),_c('p',[_c('ul',[_c('li',[_vm._v(\"Ctrl+Shift+Up/Down: go to the next or previous item when editing a data source or technique administration YAML file.\")])])]),_c('h4',[_vm._v(\"Limitations\")]),_c('p',[_vm._v(\" With a few exceptions, all key-value pairs within a data source, techniques or group YAML file can be edited. More info can be found \"),_c('a',{attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT/wiki/Future-dev#dettct-editor\",\"target\":\"_blank\"}},[_vm._v(\"here\")]),_vm._v(\". \")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\" Please note that comments (\"),_c('code',[_vm._v(\"#\")]),_vm._v(\") within your YAML files are not preserved due to lack of support in the YAML JavaScript library. Put your comments within a key-value pair to keep them. For example: \"),_c('code',[_vm._v(\"my-comment-1: your comment goes here\")]),_vm._v(\". \")])]),_c('div',{staticClass:\"col-md-5\"},[_c('h4',[_vm._v(\"Authors and contributions\")]),_c('p',[_vm._v(\"DeTT&CT is developed and maintained by \"),_c('a',{attrs:{\"href\":\"https://github.com/marcusbakker\",\"target\":\"_blank\"}},[_vm._v(\"Marcus Bakker\")]),_vm._v(\" (Twitter: \"),_c('a',{attrs:{\"href\":\"https://twitter.com/Bakk3rM\",\"target\":\"_blank\"}},[_vm._v(\"@Bakk3rM\")]),_vm._v(\") and \"),_c('a',{attrs:{\"href\":\"https://github.com/rubinatorz\",\"target\":\"_blank\"}},[_vm._v(\"Ruben Bouman\")]),_vm._v(\" (Twitter: \"),_c('a',{attrs:{\"href\":\"https://twitter.com/rubenb_2/\",\"target\":\"_blank\"}},[_vm._v(\"@rubenb_2\")]),_vm._v(\"). Feel free to contact, DMs are open.\")]),_c('p',{staticClass:\"mt-md-2\"},[_vm._v(\" We welcome contributions! Contributions can be both in code, as well as in ideas you might have for further development, usability improvements, etc.\")])])])])])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HomePage.vue?vue&type=template&id=fe2bab76&\"\nimport script from \"./HomePage.vue?vue&type=script&lang=js&\"\nexport * from \"./HomePage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'dsFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('data_sources', 'data_source_name')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('data_sources', 'data_source_name', _vm.emptyDataSourceObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add data source \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{ref:\"data_table\",staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.data_sources,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectItem($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:row.data_source_name,ref:\"data_table_rows\",refInFor:true,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.data_source_name))]),_c('td',[_vm._v(_vm._s(row.date_registered))]),_c('td',[_vm._v(_vm._s(_vm._f(\"listToString\")(row.products)))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"data_source_name\":row.data_source_name},on:{\"click\":function($event){return _vm.deleteDataSource($event)}}})])])}),1)}}],null,false,2659452512)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"data_source_name\",\"defaultSort\":\"asc\",\"width\":\"350\"}},[_vm._v(\"Name\")]),_c('v-th',{attrs:{\"sortKey\":\"date_registered\",\"width\":\"200\"}},[_vm._v(\"Date registered\")]),_c('v-th',{attrs:{\"sortKey\":\"products\",\"width\":\"350\"}},[_vm._v(\"Products\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('data-source-detail',{attrs:{\"dataSource\":_vm.getSelectedItem(),\"allDataSources\":_vm.doc.data_sources,\"dqHelpText\":_vm.dqHelpText,\"dsHelpText\":_vm.dsHelpText,\"prevDataSourceQuality\":_vm.prevDataSourceQuality,\"navigateItem\":_vm.navigateItem}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-coins\"}),_vm._v(\" Data Sources\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.dataSource != null)?_c('div',{staticClass:\"card\"},[_c('auto-suggest-title',{attrs:{\"title\":\"Data source\",\"item\":_vm.dataSource,\"itemIdName\":\"data_source_name\",\"allItems\":_vm.allDataSources,\"suggestionList\":_vm.dataSourceSuggestionList,\"navigateItem\":_vm.navigateItem}}),_c('div',{staticClass:\"row mt-md-3\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextDataSourceKVPairs = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextDataSourceKVPairs,\"id\":\"dsModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextDataSourceKVPairs=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Data source key-value pairs\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.dsHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('date-picker',{attrs:{\"date\":_vm.dataSource.date_registered,\"name\":\"Date registered\"},on:{\"dateUpdated\":function($event){_vm.dataSource.date_registered = $event}}})],1),_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('date-picker',{attrs:{\"date\":_vm.dataSource.date_connected,\"name\":\"Date connected\"},on:{\"dateUpdated\":function($event){_vm.dataSource.date_connected = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col-md-4 pr-md-1\"},[_c('toggle-button',{attrs:{\"state\":_vm.dataSource.available_for_data_analytics,\"name\":\"Available for data analytics\"},on:{\"toggleButtonUpdated\":function($event){_vm.dataSource.available_for_data_analytics = $event}}})],1),_c('div',{staticClass:\"col-md-5 pr-md-1\"},[_c('toggle-button',{attrs:{\"state\":_vm.dsEnabled,\"name\":\"Data source enabled\",\"helpText\":\"Enables a data source by setting all data quality scores to 1, or restore to the previous value. Disables a data source by setting al data quality scores to 0.\"},on:{\"toggleButtonUpdated\":_vm.toggleEnabled}})],1)]),_c('list-editor',{staticClass:\"mt-md-2\",attrs:{\"list\":_vm.dataSource.products,\"name\":\"Products\",\"placeholder\":\"Products\"}}),_c('div',{staticClass:\"row mt-md-0\"},[_c('div',{staticClass:\"col-md-11 form-group pr-md-2\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")]),_c('extended-textarea',{attrs:{\"data_object\":_vm.dataSource,\"data_field\":\"comment\",\"id\":\"datasource\",\"rows\":\"4\",\"cb_function\":_vm.editCommentCallback}})],1)]),_c('div',{staticClass:\"row mt-md-3 col-md-5\"},[_vm._m(1),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextDataQuality = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextDataQuality,\"id\":\"dqModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextDataQuality=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Scoring data quality\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.dqHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Device completeness\",\"score\":_vm.dataSource.data_quality.device_completeness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.device_completeness = $event}}})],1),_c('div',{staticClass:\"col-md-5 ml-md-3\"},[_c('score-slider',{attrs:{\"name\":\"Data field completeness\",\"score\":_vm.dataSource.data_quality.data_field_completeness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.data_field_completeness = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Timeliness\",\"score\":_vm.dataSource.data_quality.timeliness,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.timeliness = $event}}})],1),_c('div',{staticClass:\"col-md-5 ml-md-3\"},[_c('score-slider',{attrs:{\"name\":\"Consistency\",\"score\":_vm.dataSource.data_quality.consistency,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.consistency = $event}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-5\"},[_c('score-slider',{attrs:{\"name\":\"Retention\",\"score\":_vm.dataSource.data_quality.retention,\"markData\":_vm.dataQualityScores,\"markDataTooltip\":_vm.dataQualityTooltip},on:{\"scoreUpdated\":function($event){_vm.dataSource.data_quality.retention = $event}}})],1)]),_c('custom-key-value-editor',{staticClass:\"mt-md-5\",attrs:{\"item\":_vm.dataSource,\"defaultKeys\":_vm.dataSourceDefaultKeys}})],1):_vm._e()}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Data source key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Data quality\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))])]),(_vm.helpText != '')?_c('div',{staticClass:\"col ml-md-0 pb-md-2\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":_vm.helpText}})],1):_vm._e()]),_vm._l((_vm.list),function(item,index){return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-8 pr-md-0\"},[_c('base-input',{attrs:{\"value\":item,\"idx\":index},on:{\"change\":function($event){return _vm.updateItem($event)}}})],1),_c('div',{staticClass:\"col mt-md-1\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",attrs:{\"idx\":index},on:{\"click\":function($event){return _vm.deleteItem($event)}}})])])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-8 pr-md-0 form-group\"},[_c('base-input',{attrs:{\"placeholder\":_vm.placeholder},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addItem($event)}},model:{value:(_vm.newItem),callback:function ($$v) {_vm.newItem=$$v},expression:\"newItem\"}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addItem}},[_vm._v(\" Add \")])])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"display\":\"inline-block\"}},[(_vm.icon == 'arrow-up')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"19\",\"x2\":\"12\",\"y2\":\"5\"}}),_c('polyline',{attrs:{\"points\":\"5 12 12 5 19 12\"}})]):_vm._e(),(_vm.icon == 'arrow-down')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"5\",\"x2\":\"12\",\"y2\":\"19\"}}),_c('polyline',{attrs:{\"points\":\"19 12 12 19 5 12\"}})]):_vm._e(),(_vm.icon == 'file')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"}}),_c('polyline',{attrs:{\"points\":\"14 2 14 8 20 8\"}}),_c('line',{attrs:{\"x1\":\"16\",\"y1\":\"13\",\"x2\":\"8\",\"y2\":\"13\"}}),_c('line',{attrs:{\"x1\":\"16\",\"y1\":\"17\",\"x2\":\"8\",\"y2\":\"17\"}}),_c('polyline',{attrs:{\"points\":\"10 9 9 9 8 9\"}})]):_vm._e(),(_vm.icon == 'file-empty')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z\"}}),_c('polyline',{attrs:{\"points\":\"13 2 13 9 20 9\"}})]):_vm._e(),(_vm.icon == 'text-balloon')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"9\",\"x2\":\"12\",\"y2\":\"13\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"17\",\"x2\":\"12.01\",\"y2\":\"17\"}})]):_vm._e(),(_vm.icon == 'save')?_c('svg',{staticClass:\"css-i6dzq1\",staticStyle:{\"margin-top\":\"-3px\"},attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('path',{attrs:{\"d\":\"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z\"}}),_c('polyline',{attrs:{\"points\":\"17 21 17 13 7 13 7 21\"}}),_c('polyline',{attrs:{\"points\":\"7 3 7 8 15 8\"}})]):_vm._e(),(_vm.icon == 'plus')?_c('svg',{staticClass:\"css-i6dzq1\",attrs:{\"viewBox\":\"0 0 24 24\",\"width\":\"24\",\"height\":\"24\",\"stroke\":\"currentColor\",\"stroke-width\":\"2\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('circle',{attrs:{\"cx\":\"12\",\"cy\":\"12\",\"r\":\"10\"}}),_c('line',{attrs:{\"x1\":\"12\",\"y1\":\"8\",\"x2\":\"12\",\"y2\":\"16\"}}),_c('line',{attrs:{\"x1\":\"8\",\"y1\":\"12\",\"x2\":\"16\",\"y2\":\"12\"}})]):_vm._e(),(_vm.icon == 'help')?_c('svg',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.top\",value:(_vm.tooltip),expression:\"tooltip\",modifiers:{\"top\":true}}],staticClass:\"cursor-pointer\",staticStyle:{\"margin-top\":\"-4px\",\"fill\":\"#fff\"},attrs:{\"viewBox\":\"0 0 512 512\",\"width\":\"24\",\"height\":\"24\",\"stroke-width\":\"1px\"},on:{\"click\":function($event){_vm.showHelpText = true}}},[_c('path',{attrs:{\"d\":\"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z\"}}),_c('path',{attrs:{\"d\":\"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z\"}})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Icons.vue?vue&type=template&id=55edfe22&\"\nimport script from \"./Icons.vue?vue&type=script&lang=js&\"\nexport * from \"./Icons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"Welcome to \"),_c('b',[_vm._v(\"Black Dashboard\")]),_vm._v(\" - a beautiful freebie for every web developer.\")])}]\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationTemplate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationTemplate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NotificationTemplate.vue?vue&type=template&id=97fc888e&\"\nimport script from \"./NotificationTemplate.vue?vue&type=script&lang=js&\"\nexport * from \"./NotificationTemplate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import NotificationTemplate from '@/pages/Notifications/NotificationTemplate';\n\nexport const notificationMixin = {\n data() {\n return {};\n },\n methods: {\n notifyInfo(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-zoom-split',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'info',\n timeout: 10000,\n title: title,\n message: message\n });\n },\n notifyInfoWithCallback(title, message, cb_function, cb_function_text, cb_function_key) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-trash-simple',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'info',\n timeout: 10000,\n title: title,\n message: message,\n cb_function: cb_function,\n cb_function_text: cb_function_text,\n cb_function_key: cb_function_key\n });\n },\n notifyDanger(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'danger',\n timeout: 10000,\n title: title,\n message: message\n });\n },\n notifyDangerWithCallback(title, message, cb_function, cb_function_text, cb_function_key, infinite) {\n let timeout = 10000;\n if (infinite) {\n timeout = 0;\n }\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'danger',\n timeout: timeout,\n title: title,\n message: message,\n cb_function: cb_function,\n cb_function_text: cb_function_text,\n cb_function_key: cb_function_key\n });\n },\n notifyWarning(title, message) {\n this.$notify({\n component: NotificationTemplate,\n icon: 'tim-icons icon-alert-circle-exc',\n horizontalAlign: 'right',\n verticalAlign: 'top',\n type: 'warning',\n timeout: 10000,\n title: title,\n message: message\n });\n }\n }\n};\n","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListEditor.vue?vue&type=template&id=37e0e470&\"\nimport script from \"./ListEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./ListEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_c('datepicker',{attrs:{\"value\":_vm.date,\"format\":\"yyyy-MM-dd\",\"monday-first\":true,\"typeable\":true,\"input-class\":\"form-control\"},on:{\"selected\":_vm.updateDate}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatePicker.vue?vue&type=template&id=00b4b062&\"\nimport script from \"./DatePicker.vue?vue&type=script&lang=js&\"\nexport * from \"./DatePicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('div',{class:_vm.getDivStyleClass()},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))])]),(_vm.helpText != '')?_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":_vm.helpText}})],1):_vm._e()]):_vm._e(),_c('div',{staticClass:\"row toggle-button\"},[_c('div',{staticClass:\"col-md-auto\"},[_c('toggle-button',{attrs:{\"value\":_vm.state,\"sync\":true,\"labels\":{ checked: 'Yes', unchecked: 'No' },\"font-size\":14,\"height\":30,\"width\":95,\"color\":{\n checked: '#00bf9a',\n unchecked: '#ff8d72',\n disabled: '#CCCCCC'\n }},on:{\"change\":_vm.switchButton}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToggleButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToggleButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ToggleButton.vue?vue&type=template&id=07c57460&\"\nimport script from \"./ToggleButton.vue?vue&type=script&lang=js&\"\nexport * from \"./ToggleButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[(_vm.showLabel)?_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_c('vue-slider',{attrs:{\"value\":_vm.score,\"dotSize\":\"18\",\"data\":_vm.markData,\"tooltip-formatter\":function (val) { return _vm.markDataTooltip[val]; },\"marks\":true,\"useKeyboard\":true,\"tooltypeStyle\":{ 'background-color': '#419EF9', 'border-color': '#419EF9' },\"processStyle\":{ 'background-color': '#419EF9' },\"labelStyle\":{ color: 'rgb(255, 255, 255, 0.8)' }},on:{\"change\":_vm.updateScore}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreSlider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreSlider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScoreSlider.vue?vue&type=template&id=57e752b5&\"\nimport script from \"./ScoreSlider.vue?vue&type=script&lang=js&\"\nexport * from \"./ScoreSlider.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"It's possible to have custom key-value pairs in your YAML file. The Editor supports numbers and string for the value.\"}})],1),(_vm.useInModal)?_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){return _vm.$bvModal.hide(_vm.modalId)}}},[_vm._v(\"×\")])]):_vm._e()]),_vm._m(1),_vm._l((_vm.item),function(v,k,index){return _c('div',{key:index},[(!_vm.defaultKeys.includes(k))?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-0\"},[_c('base-input',{attrs:{\"value\":k},on:{\"change\":function($event){return _vm.updateKey(k, $event)}}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('base-input',{attrs:{\"value\":_vm.item[k]},on:{\"change\":function($event){return _vm.updateValue(k, $event)}}})],1),_c('div',{staticClass:\"col-md-0 mt-md-1\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){return _vm.deleteProperty(k)}}})])]):_vm._e()])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pr-md-0\"},[_c('base-input',{attrs:{\"placeholder\":\"key\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addProperty($event)}},model:{value:(_vm.newKey),callback:function ($$v) {_vm.newKey=$$v},expression:\"newKey\"}})],1),_c('div',{staticClass:\"col-md-5 pr-md-0\"},[_c('base-input',{attrs:{\"placeholder\":\"value\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.addProperty($event)},\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"tab\",9,$event.key,\"Tab\")){ return null; }return _vm.addProperty($event)}},model:{value:(_vm.newValue),callback:function ($$v) {_vm.newValue=$$v},expression:\"newValue\"}})],1),_c('div',{staticClass:\"col-md-2\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addProperty}},[_vm._v(\" Add \")])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Custom key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Key\")])]),_c('div',{staticClass:\"col-md-5\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Value\")])])])}]\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CustomKeyValueEditor.vue?vue&type=template&id=5a06b6bb&\"\nimport script from \"./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomKeyValueEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"container-fluid d-flex flex-column\"},[(_vm.isNewItem || _vm.editItem)?_c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0 pl-md-0 margin-top-8\"},[_c('label',[_vm._v(_vm._s(_vm.title))])]),_c('vue-simple-suggest',{staticClass:\"col-md-7 pl-md-2 pr-md-0\",attrs:{\"value\":_vm.item[_vm.itemIdName],\"list\":_vm.filteredSuggestionList,\"max-suggestions\":0,\"filter-by-query\":true,\"display-attribute\":_vm.displayAttr,\"value-attribute\":_vm.valueAttr,\"styles\":_vm.autoCompleteStyle},on:{\"input\":function($event){_vm.tmpItemId = $event},\"blur\":_vm.setItemIdValue}}),_c('i',{staticClass:\"tim-icons icon-check-2 icon-color icon-padding cursor-pointer\",attrs:{\"id\":\"checkmark\"},on:{\"click\":_vm.setItemIdValue}})],1)]):_c('div',{staticClass:\"row flex-fill\"},[_c('div',{staticClass:\"col-md pr-md-0 pl-md-0\"},[(_vm.itemTitle)?_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.item[_vm.itemTitle.id] + ' - ' + _vm.item[_vm.itemTitle.name]))]):_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.item[_vm.itemIdName]))]),_c('i',{staticClass:\"tim-icons icon-pencil icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editItem = true}}})]),_c('div',[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":'Previous ' + _vm.title.toLowerCase()},on:{\"click\":function($event){return _vm.navigateItem(false)}}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1),_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":'Next ' + _vm.title.toLowerCase()},on:{\"click\":function($event){return _vm.navigateItem(true)}}},[_c('icons',{attrs:{\"icon\":\"arrow-down\"}})],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import VueSimpleSuggest from 'vue-simple-suggest';\nimport 'vue-simple-suggest/dist/styles.css';\n\nexport const autoSuggestMixins = {\n data() {\n return {\n autoCompleteStyle: {\n defaultInput: 'autocomplete-input',\n suggestions: 'autocomplete-result',\n suggestItem: 'autocomplete-suggest'\n }\n };\n },\n props: {\n title: {\n type: String,\n required: true\n },\n // technique_id, oftware_id, data_source_name\n itemIdName: {\n type: String,\n required: true\n },\n suggestionList: {\n type: Array,\n required: true\n }\n },\n computed: {\n listKnownIDs() {\n // returns all IDs from within the suggestion list for the key that's equal to 'itemIdName'\n return this.suggestionList.map(a => a[this.itemIdName]);\n },\n listKnownIDsForPlatform() {\n // list of all IDs (technique or software ID) applicable to any of the selected platforms\n let tmpList = [];\n\n for (let i = 0; i < this.suggestionList.length; i++) {\n if (this.platforms[0] == 'all' || this.platforms.some(item => this.suggestionList[i]['platforms'].includes(item))) {\n tmpList.push(this.suggestionList[i]);\n }\n }\n return tmpList.map(a => a[this.itemIdName]);\n }\n },\n components: {\n VueSimpleSuggest\n }\n};\n","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestTitle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoSuggestTitle.vue?vue&type=template&id=49959e72&\"\nimport script from \"./AutoSuggestTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoSuggestTitle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data_object[_vm.data_field]),expression:\"data_object[data_field]\"}],staticClass:\"form-control textarea-border pl-md-3 textarea-customstyle\",attrs:{\"rows\":_vm.rows,\"placeholder\":\". . .\"},domProps:{\"value\":(_vm.data_object[_vm.data_field])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data_object, _vm.data_field, $event.target.value)}}}),_c('div',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:('comment-modal-' + _vm.id),expression:\"'comment-modal-' + id\"}],staticClass:\"icon-example\",on:{\"click\":function($event){return _vm.callCbFunction('comment-modal-' + _vm.id)}}}),_c('b-modal',{attrs:{\"id\":'comment-modal-' + _vm.id,\"dialog-class\":\"modal-edit-small\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\",\"no-close-on-esc\":\"\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Comment\")])]),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){_vm.$bvModal.hide('comment-modal-' + _vm.id);\n _vm.callCbFunction('comment-modal-' + _vm.id);}}},[_vm._v(\" × \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data_object[_vm.data_field]),expression:\"data_object[data_field]\"}],staticClass:\"form-control textarea-border textarea-modal pl-md-3\",attrs:{\"rows\":\"50\",\"placeholder\":\". . .\"},domProps:{\"value\":(_vm.data_object[_vm.data_field])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data_object, _vm.data_field, $event.target.value)}}})])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExtendedTextarea.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExtendedTextarea.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ExtendedTextarea.vue?vue&type=template&id=0808983f&\"\nimport script from \"./ExtendedTextarea.vue?vue&type=script&lang=js&\"\nexport * from \"./ExtendedTextarea.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\n YAML_DATASOURCES_VERSION: 1.0,\n YAML_TECHNIQUES_VERSION: 1.2,\n YAML_GROUPS_VERSION: 1.0,\n YAML_OBJ_NEW_DATA_SOURCES_FILE: {\n version: 1.0,\n file_type: 'data-source-administration',\n name: 'example',\n platform: ['all'],\n data_sources: []\n },\n YAML_OBJ_DATA_SOURCES: {\n data_source_name: '',\n date_registered: null,\n date_connected: null,\n products: [],\n available_for_data_analytics: false,\n comment: '',\n data_quality: {\n device_completeness: 0,\n data_field_completeness: 0,\n timeliness: 0,\n consistency: 0,\n retention: 0\n }\n },\n YAML_OBJ_NEW_GROUPS_FILE: {\n version: 1.0,\n file_type: 'group-administration',\n platform: ['all'],\n groups: []\n },\n YAML_OBJ_GROUP: {\n group_name: '',\n campaign: '',\n technique_id: [],\n software_id: [],\n enabled: true\n },\n YAML_OBJ_NEW_TECHNIQUES_FILE: {\n version: 1.2,\n file_type: 'technique-administration',\n name: 'example',\n platform: ['all'],\n techniques: []\n },\n YAML_OBJ_TECHNIQUE: {\n technique_id: '',\n technique_name: '',\n detection: [\n {\n applicable_to: ['all'],\n location: [],\n comment: '',\n score_logbook: [{ date: null, score: -1, comment: '' }]\n }\n ],\n visibility: [\n {\n applicable_to: ['all'],\n comment: '',\n score_logbook: [{ date: null, score: 0, comment: '', auto_generated: false }]\n }\n ]\n },\n YAML_OBJ_TECHNIQUE_DETECTION: {\n applicable_to: ['all'],\n location: [],\n comment: '',\n score_logbook: [{ date: null, score: -1, comment: '' }]\n },\n YAML_OBJ_TECHNIQUE_VISIBILITY: {\n applicable_to: ['all'],\n comment: '',\n score_logbook: [{ date: null, score: 0, comment: '', auto_generated: false }]\n },\n YAML_OBJ_SCORE_DETECTION_LOGBOOK: {\n date: null,\n score: -1,\n comment: ''\n },\n YAML_OBJ_SCORE_VISIBILITY_LOGBOOK: {\n date: null,\n score: 0,\n comment: '',\n auto_generated: false\n },\n PLATFORMS: ['all', 'Windows', 'Linux', 'PRE', 'macOS', 'AWS', 'GCP', 'Azure', 'Azure AD', 'Office 365', 'SaaS', 'Network'],\n PLATFORM_CONVERSION: {\n windows: 'Windows',\n linux: 'Linux',\n pre: 'PRE',\n macos: 'macOS',\n aws: 'AWS',\n gcp: 'GCP',\n azure: 'Azure',\n 'azure ad': 'Azure AD',\n 'office 365': 'Office 365',\n saas: 'SaaS',\n network: 'Network'\n }\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SlideYUpTransition',{attrs:{\"duration\":_vm.animationDuration}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.show),expression:\"show\"}],staticClass:\"modal fade\",class:[{'show d-block': _vm.show}, {'d-none': !_vm.show}, {'modal-mini': _vm.type === 'mini'}],attrs:{\"tabindex\":\"-1\",\"role\":\"dialog\",\"aria-hidden\":!_vm.show},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.closeModal($event)}}},[_c('div',{staticClass:\"modal-dialog\",class:[{'modal-notice': _vm.type === 'notice'}, {'modal-dialog-centered': _vm.centered}, _vm.modalClasses]},[_c('div',{staticClass:\"modal-content\",class:[_vm.gradient ? (\"bg-gradient-\" + _vm.gradient) : '',_vm.modalContentClasses]},[(_vm.$slots.header)?_c('div',{staticClass:\"modal-header\",class:[_vm.headerClasses]},[_vm._t(\"header\"),_vm._t(\"close-button\",[(_vm.showClose)?_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"data-dismiss\":\"modal\",\"aria-label\":\"Close\"},on:{\"click\":_vm.closeModal}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})]):_vm._e()])],2):_vm._e(),(_vm.$slots.default)?_c('div',{staticClass:\"modal-body\",class:_vm.bodyClasses},[_vm._t(\"default\")],2):_vm._e(),(_vm.$slots.footer)?_c('div',{staticClass:\"modal-footer\",class:_vm.footerClasses},[_vm._t(\"footer\")],2):_vm._e()])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=52f4e2f6&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export const pageDetailMixin = {\n data() {\n return {};\n },\n created: function() {\n document.addEventListener('keyup', this.escapeKeyListener);\n },\n destroyed: function() {\n document.removeEventListener('keyup', this.escapeKeyListener);\n },\n components: {},\n methods: {}\n};\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourceDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourceDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DataSourceDetail.vue?vue&type=template&id=17a15576&\"\nimport script from \"./DataSourceDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./DataSourceDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"text-reader\"},[_c('input',{attrs:{\"type\":\"file\",\"id\":_vm.id},on:{\"change\":_vm.loadTextFromFile}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileReader.vue?vue&type=template&id=aa8dd3b0&\"\nimport script from \"./FileReader.vue?vue&type=script&lang=js&\"\nexport * from \"./FileReader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table',{staticClass:\"table-file-details\"},[_vm._m(0),_c('tr',[_c('td',{attrs:{\"width\":\"100\"}},[_vm._v(\"Filename:\")]),_c('td',[_vm._v(_vm._s(_vm.filename))])]),_c('tr',[_c('td',[_vm._v(\"File type:\")]),_c('td',[_vm._v(_vm._s(_vm.doc['file_type']))])]),_c('tr',[_c('td',[_vm._v(\"Version:\")]),_c('td',[_vm._v(_vm._s(_vm.doc['version'].toFixed(1)))])]),_c('tr',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showName),expression:\"showName\"}]},[_c('td',[_vm._v(\"Name:\")]),_c('td',[_c('base-input',{staticClass:\"file-detail-edit\",model:{value:(_vm.doc['name']),callback:function ($$v) {_vm.$set(_vm.doc, 'name', $$v)},expression:\"doc['name']\"}})],1)]),_c('tr',[_c('td',[_vm._v(\"Notes:\")]),_c('td',[_c('div',{staticClass:\"textareaFileDetails\"},[_c('extended-textarea',{attrs:{\"data_object\":_vm.doc,\"data_field\":\"notes\",\"rows\":\"2\",\"id\":\"notes\"}})],1)])]),_c('tr',[_c('td',[_vm._v(\"Platform:\")]),_c('td',_vm._l((_vm.platforms),function(row){return _c('label',{staticClass:\"custom-checkbox\",attrs:{\"for\":row}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.doc.platform),expression:\"doc.platform\"}],attrs:{\"type\":\"checkbox\",\"id\":row},domProps:{\"value\":row,\"checked\":Array.isArray(_vm.doc.platform)?_vm._i(_vm.doc.platform,row)>-1:(_vm.doc.platform)},on:{\"click\":function($event){return _vm.platformEventHandler(row)},\"change\":[function($event){var $$a=_vm.doc.platform,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=row,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.doc, \"platform\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.doc, \"platform\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.doc, \"platform\", $$c)}},_vm.checkPlatform]}}),_vm._v(\" \"+_vm._s(row)+\" \")])}),0)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('td',{attrs:{\"width\":\"100\",\"colspan\":\"2\"}},[_c('b',[_vm._v(\"File details\")])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FileDetails.vue?vue&type=template&id=723b0206&\"\nimport script from \"./FileDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./FileDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import VueScrollTo from 'vue-scrollto';\nimport constants from '@/constants';\nimport FileReader from '@/components/FileReader';\nimport FileDetails from '@/components/FileDetails';\nimport jsyaml from 'js-yaml';\nimport _ from 'lodash';\n\nvar options = {\n container: 'body',\n easing: 'ease-in',\n offset: -35,\n duration: 0,\n force: false,\n cancelable: true,\n // eslint-disable-next-line no-unused-vars\n onStart: function(element) {\n // scrolling started\n },\n // eslint-disable-next-line no-unused-vars\n onDone: function(element) {\n // scrolling is done\n },\n onCancel: function() {\n // scrolling has been interrupted\n },\n x: false,\n y: true\n};\n\nexport const pageMixin = {\n data() {\n return {\n filename: '',\n selected_filename: '',\n doc: null,\n selectedRow: [],\n fileChanged: false,\n unwatchFunction: null,\n deletedRows: [],\n platforms: constants.PLATFORMS\n };\n },\n components: {\n FileReader,\n FileDetails\n },\n methods: {\n navigateToTop() {\n VueScrollTo.scrollTo('#pageTop', 300, options);\n },\n navigateToDetail() {\n VueScrollTo.scrollTo('#detailCard', 300, options);\n },\n setFileName(filename) {\n // Callback function for file-reader component\n this.selected_filename = filename;\n },\n selectItem(event) {\n // selectionChanged event from the data table\n if (this.selectedRow != event) {\n this.selectedRow = event;\n if (event.length > 0) {\n this.navigateToDetail();\n }\n }\n },\n addItem(type, key, emptyObject) {\n // Add an item to the table and select it in the detail component\n // Check if no empty items are in the dataset (one new item is allowed at a time):\n this.filters.filter.value = '';\n let emptyRow = null;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (this.doc[type][i][key] == '') {\n emptyRow = this.doc[type][i];\n }\n }\n\n if (emptyRow != null) {\n let typeStr = type.replace('_', ' ').slice(0, -1);\n this.notifyWarning('Add new ' + typeStr, 'Only one ' + typeStr + ' can be added at a time.');\n this.selectedRow.pop();\n this.selectedRow.push(emptyRow);\n } else {\n let newrow = _.cloneDeep(emptyObject);\n this.doc[type].push(newrow);\n this.selectedRow.pop();\n this.selectedRow.push(newrow);\n }\n },\n getSelectedItem() {\n // Returns the selected row if there is one selected, otherwise null\n if (this.selectedRow != null && this.selectedRow.length > 0) {\n return this.selectedRow[0];\n } else {\n return null;\n }\n },\n deleteItem(event, type, key, title, cb_function) {\n let key_id = event.target.getAttribute(key);\n let index = -1;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (key_id == this.doc[type][i][key]) {\n index = i;\n break;\n }\n }\n this.deletedRows.push({\n key: key_id,\n value: this.doc[type][index]\n });\n\n // the below code results in hiding the details page when deleting:\n // - an empty item (i.e. without a name)\n // - the selected item\n if (this.selectedRow != null && this.selectedRow.length > 0 && (key_id == '' || key_id == this.selectedRow[0][key])) {\n this.selectedRow.pop();\n }\n this.doc[type].splice(index, 1);\n let msg = '';\n key_id == '' ? (msg = 'The empty ' + title.toLowerCase() + ' is removed.') : (msg = title + \" '\" + key_id + \"' is removed.\");\n this.notifyInfoWithCallback('Removal status', msg, cb_function, 'Undo this action', key_id);\n },\n recoverDeletedItem(type, key) {\n // Recover deleted item (also works for multiple deleted items)\n let recoverRow = null;\n for (let i = 0; i < this.deletedRows.length; i++) {\n if (key == this.deletedRows[i]['key']) {\n recoverRow = this.deletedRows[i]['value'];\n break;\n }\n }\n if (recoverRow != null) {\n this.doc[type].push(recoverRow);\n this.selectedRow.pop();\n this.selectedRow.push(recoverRow);\n }\n },\n downloadYaml(type, key) {\n // Call the unwatch function to make sure that this.doc isn't watched file altering the object during the download.\n // The splice function that is called underneath causes unexpected behaviour that results in altering the object\n // after the download and fileChange=false is done.\n this.unwatchFunction();\n\n // \"Download\" (save) the YAML file\n // Remove empty rows:\n let indexEmptyRow = -1;\n for (let i = 0; i < this.doc[type].length; i++) {\n if (this.doc[type][i][key] == '') {\n indexEmptyRow = i;\n }\n }\n if (indexEmptyRow >= 0) {\n this.doc[type].splice(indexEmptyRow, 1);\n this.selectedRow.pop();\n }\n\n this.cleanupBeforeDownload();\n\n // Check platform:\n if (this.doc.platform.length == 0) {\n this.notifyDanger('Missing value', 'No value for platform selected. Please select one or more platforms.');\n return;\n }\n\n // Copy the doc variable before downloading to convert some values specific for the type of page\n let newDoc = _.cloneDeep(this.doc);\n this.convertBeforeDownload(newDoc);\n\n var blob = new Blob([jsyaml.safeDump(newDoc, { lineWidth: 2000 })], {\n type: 'text/plain;charset=utf-8'\n });\n var FileSaver = require('file-saver');\n FileSaver.saveAs(blob, this.filename);\n this.fileChanged = false;\n\n // Set the watch on this.doc again:\n this.setWatch();\n },\n setWatch() {\n if (this.unwatchFunction != null) {\n this.unwatchFunction();\n }\n this.unwatchFunction = this.$watch(\n 'doc',\n // eslint-disable-next-line no-unused-vars\n function(after, before) {\n this.fileChanged = true;\n },\n { deep: true }\n );\n },\n askNewFile() {\n if (this.fileChanged) {\n this.$bvModal\n .msgBoxConfirm('You have unsaved changes that will be lost if you choose to continue.', {\n title: 'Unsaved changes',\n size: 'sm',\n cancelVariant: 'warning',\n okVariant: 'info',\n okTitle: 'Continue',\n modalClass: 'confirmMessage'\n })\n .then((value) => {\n if (value) {\n this.newFile();\n }\n });\n } else {\n this.newFile();\n }\n },\n navigateItem(next) {\n let step = 1;\n if (!next) {\n step = -1;\n }\n // First, loop through the visible rows (this takes the sorting and filtering into account):\n let table = this.$refs.data_table.$el.rows;\n let found_index = 0;\n for (let i = 0; i < table.length; i++) {\n if (table[i].className == 'table-selected-custom') {\n found_index = i;\n break;\n }\n }\n // Do not proceed when it's the first or last row:\n if ((found_index != 0 && !next) || (found_index != table.length - 1 && next)) {\n // Unset current selected row:\n this.$refs.data_table.$el.rows[found_index].className = '';\n this.selectedRow.pop();\n // Select previous/next row just visually:\n this.$refs.data_table.$el.rows[found_index + step].className = 'table-selected-custom';\n\n // Next, loop through the dataset rows, looking for the new selected item to formally select:\n let rows = this.$refs.data_table_rows;\n let found_row;\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].$el.className == 'table-selected-custom') {\n found_row = rows[i].row;\n break;\n }\n }\n this.selectedRow.push(found_row);\n }\n }\n }\n};\n","export const navigateMixins = {\n data() {\n return {};\n },\n created: function() {\n document.addEventListener('keyup', this.arrowKeysListener);\n },\n destroyed: function() {\n document.removeEventListener('keyup', this.arrowKeysListener);\n },\n components: {},\n methods: {\n arrowKeysListener: function(evt) {\n if (evt.keyCode === 40 && evt.shiftKey && evt.ctrlKey) {\n // Ctrl + Shift + ArrowDown\n this.navigateItem(true);\n } else if (evt.keyCode === 38 && evt.shiftKey && evt.ctrlKey) {\n // Ctrl + Shift + ArrowUp\n this.navigateItem(false);\n }\n }\n }\n};\n","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourcesPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataSourcesPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DataSourcesPage.vue?vue&type=template&id=4571bac7&\"\nimport script from \"./DataSourcesPage.vue?vue&type=script&lang=js&\"\nexport * from \"./DataSourcesPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'techniqueFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('techniques', 'technique_id')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('techniques', 'technique_id', _vm.emptyTechObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add technique \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{ref:\"data_table\",staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.techniques,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectTechnique($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:row.technique_id,ref:\"data_table_rows\",refInFor:true,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.technique_id))]),_c('td',[_vm._v(_vm._s(row.technique_name))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"technique_id\":row.technique_id},on:{\"click\":function($event){return _vm.deleteTechnique($event)}}})])])}),1)}}],null,false,2895191889)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"technique_id\",\"defaultSort\":\"asc\",\"width\":\"200\"}},[_vm._v(\"Technique ID\")]),_c('v-th',{attrs:{\"sortKey\":\"technique_name\",\"width\":\"400\"}},[_vm._v(\"Name\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('techniques-detail',{ref:\"detailComponent\",attrs:{\"technique\":_vm.getSelectedItem(),\"allTechniques\":_vm.doc.techniques,\"selectedPlatforms\":_vm.doc.platform,\"navigateItem\":_vm.navigateItem}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-zoom-split\"}),_vm._v(\" Techniques\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.technique != null)?_c('div',{staticClass:\"card\"},[_c('auto-suggest-title',{attrs:{\"item\":_vm.technique,\"allItems\":_vm.allTechniques,\"itemIdName\":\"technique_id\",\"title\":\"Technique\",\"itemTitle\":{ id: 'technique_id', name: 'technique_name' },\"suggestionList\":_vm.techniquesSuggestionList,\"valueAttr\":\"technique_id\",\"displayAttr\":\"autosuggest\",\"isAttackEntity\":true,\"platforms\":_vm.selectedPlatforms,\"notifyText\":\"'ID' is an invalid technique, please comply with the naming scheme: TXXXX - [optional name].\",\"navigateItem\":_vm.navigateItem}}),_c('applicable-to-collapse',{ref:\"collapseDetectionComponent\",attrs:{\"title\":\"Detection\",\"applicable_to\":_vm.technique.detection,\"helpText\":_vm.detectionHelpText,\"helptextScore\":_vm.detectionScoreHelpText,\"scores\":_vm.detectionScores,\"scoresTooltip\":_vm.detectionScoresTooltip,\"defaultScore\":_vm.detectionScoreDefault,\"showAutoGenerated\":false,\"emptyScoreEntry\":_vm.emptyScoreEntryDetection,\"emptyObject\":_vm.emptyDetectionObject}}),_c('applicable-to-collapse',{ref:\"collapseVisibilityComponent\",attrs:{\"title\":\"Visibility\",\"applicable_to\":_vm.technique.visibility,\"showLocation\":false,\"helpText\":_vm.visibilityHelpText,\"helptextScore\":_vm.visibilityScoreHelpText,\"scores\":_vm.visibilityScores,\"scoresTooltip\":_vm.visibilityScoresTooltip,\"defaultScore\":_vm.visibilityScoreDefault,\"showAutoGenerated\":true,\"emptyScoreEntry\":_vm.emptyScoreEntryVisibility,\"emptyObject\":_vm.emptyVisibilityObject}})],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row mt-md-3\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(_vm._s(_vm.title))])]),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.showHelpText = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.showHelpText,\"id\":\"Modal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.showHelpText=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.helpText}})],1)])],1),_c('div',{staticClass:\"mb-3\"},_vm._l((_vm.applicable_to),function(row,i){return _c('div',{key:i,attrs:{\"row\":row}},[_c('div',{staticClass:\"collapseHeader\"},[_c('div',{staticClass:\"row\"},[_c('div',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:('collapse-' + _vm.title.toLowerCase() + '-' + i),expression:\"'collapse-' + title.toLowerCase() + '-' + i\"}],staticClass:\"col-md-10 cursor-pointer\"},[_c('i',{staticClass:\"when-opened tim-icons icon-minimal-up\"}),_c('i',{staticClass:\"when-closed tim-icons icon-minimal-down\"}),_vm._v(\" \"+_vm._s(row.applicable_to.join(', '))+\" \")]),_c('div',{staticClass:\"col collapse-trash-icon mr-md-2\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color cursor-pointer\",on:{\"click\":function($event){return _vm.deleteApplicableTo(i)}}})])])]),_c('b-collapse',{ref:\"collapseComponent\",refInFor:true,attrs:{\"id\":'collapse-' + _vm.title.toLowerCase() + '-' + i}},[_c('b-card',{staticClass:\"collapseContent\"},[_c('list-editor',{staticClass:\"mt-md-2 no-bottom-margin\",attrs:{\"list\":row.applicable_to,\"name\":_vm.title + ' is applicable to',\"placeholder\":\"applicable to\",\"externalListToValidate\":_vm.getApplicableToList(),\"helpText\":'Specifies to which type of system this ' +\n _vm.title.toLowerCase() +\n ' applies to. The value \\'all\\' can be used to let it apply to every type of system.',\"notifyText\":\"The value 'KEYNAME' is already part of the applicable_to for this technique. Duplicate entries are not allowed.\"}}),(row.applicable_to.length == 0)?_c('div',{staticClass:\"row mt-md-0 mb-md-2\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})]),_c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"The applicable_to field should be filled in order for DeTT&CT to work properly.\")])])]):_vm._e(),(_vm.showLocation)?_c('list-editor',{staticClass:\"mt-md-2\",attrs:{\"list\":row.location,\"name\":'Location of the ' + _vm.title.toLowerCase(),\"placeholder\":\"location\"}}):_vm._e(),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")])])]),_c('div',{staticClass:\"row mt-md-0\"},[_c('div',{staticClass:\"col-md-11\"},[_c('extended-textarea',{attrs:{\"data_object\":row,\"data_field\":\"comment\",\"id\":_vm.title + i,\"rows\":\"4\",\"cb_function\":_vm.editCommentCallback}})],1)]),_c('div',{staticClass:\"row mt-md-3\"},[_c('div',{staticClass:\"col-md-4\"},[_c('score-slider',{attrs:{\"name\":'Score date: ' + _vm.getLatestScoreDate(row.score_logbook),\"score\":_vm.getLatestScore(row.score_logbook),\"markData\":_vm.scores,\"markDataTooltip\":_vm.scoresTooltip,\"showLabel\":true},on:{\"scoreUpdated\":function($event){_vm.setLatestScore(row.score_logbook, _vm.getLatestScoreDate(row.score_logbook), $event)}}})],1)]),_c('div',{staticClass:\"row mt-md-4\"},[_c('div',{staticClass:\"col-md-auto\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(_vm.title + '-score-logbook-modal-' + i),expression:\"title + '-score-logbook-modal-' + i\"}],staticClass:\"btn-custom btn btn-secondary button-30\",on:{\"click\":function($event){_vm.currentModal = _vm.title + '-score-logbook-modal-' + i}}},[_vm._v(\"Score logbook\")]),_c('b-modal',{attrs:{\"id\":_vm.title + '-score-logbook-modal-' + i,\"dialog-class\":\"modal-edit-wide\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\",\"no-close-on-esc\":\"\"}},[_c('score-logbook',{attrs:{\"item\":row.score_logbook,\"scores\":_vm.scores,\"scoresTooltip\":_vm.scoresTooltip,\"defaultScore\":_vm.defaultScore,\"showAutoGenerated\":_vm.showAutoGenerated,\"modalId\":_vm.title + '-score-logbook-modal-' + i,\"emptyScoreEntry\":_vm.emptyScoreEntry,\"cb_function\":_vm.editCommentCallback},on:{\"showHelptextScoreNow\":function($event){_vm.showHelptextScore = true}}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.showHelptextScore,\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.showHelptextScore=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(_vm._s(_vm.title)+\" scoring\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.helptextScore}})],1)])],1),_c('div',{staticClass:\"col-md-auto\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(_vm.title + '-custom-kvpairs-modal-' + i),expression:\"title + '-custom-kvpairs-modal-' + i\"}],staticClass:\"btn-custom btn btn-secondary button-30\"},[_vm._v(\"Custom key value pairs\")]),_c('b-modal',{attrs:{\"id\":_vm.title + '-custom-kvpairs-modal-' + i,\"dialog-class\":\"modal-edit-small\",\"content-class\":\"modal-dark-mode\",\"hide-footer\":\"\",\"hide-header\":\"\"}},[_c('custom-key-value-editor',{attrs:{\"item\":row,\"defaultKeys\":_vm.defaultKVKeys,\"useInModal\":true,\"modalId\":_vm.title + '-custom-kvpairs-modal-' + i}})],1)],1)])],1)],1)],1)}),0),_c('div',{staticClass:\"row mb-3\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-30\",on:{\"click\":_vm.addApplicableTo}},[_vm._v(\"Add \"+_vm._s(_vm.title.toLowerCase()))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col ml-md-0\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Keep track of changes within the score by adding score objects.\"}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){return _vm.$bvModal.hide(_vm.modalId)}}},[_vm._v(\"×\")])])]),_c('div',{staticClass:\"row\"},[_vm._m(1),_c('div',{staticClass:\"col-md-3\"},[_c('div',{staticClass:\"row\"},[_vm._m(2),_c('div',{staticClass:\"col-md-auto\",on:{\"click\":_vm.showHelptextScore}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1)])]),_vm._m(3),(_vm.showAutoGenerated)?_c('div',{staticClass:\"col-md-auto\"},[_c('div',{staticClass:\"row\"},[_vm._m(4),_c('div',{staticClass:\"col-md-auto pl-md-1\"},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Indicates if the score was auto-generated based on the number of data sources within the data source administration file (using the option -y, --yaml from the datasource mode in dettect.py) . When manually scoring your visibility you can set it to False. The purpose of having this property is to allow an easy update of your visibility scores based on changes in your data sources. Or modification within MITRE\\\\'s semi-annual update of ATT&CK (possible new techniques, data sources or changes in the data source listed for a particular technique). For more info see the wiki pages on Github.\"}})],1)])]):_vm._e(),_c('div',{staticClass:\"col-md-0\"})]),_vm._l((_vm.item),function(v,index){return _c('div',{key:_vm.componentKey},[_c('div',{staticClass:\"row score-logbook\"},[_c('div',{staticClass:\"col-md-2 pr-md-0\"},[_c('date-picker',{attrs:{\"showLabel\":false,\"date\":v.date,\"name\":\"Date\"},on:{\"dateUpdated\":function($event){return _vm.updateDate(index, $event)}}})],1),_c('div',{staticClass:\"col-md-3\"},[_c('score-slider',{attrs:{\"name\":\"score\",\"score\":v.score,\"markData\":_vm.scores,\"markDataTooltip\":_vm.scoresTooltip,\"showLabel\":false},on:{\"scoreUpdated\":function($event){v.score = $event;\n if (_vm.showAutoGenerated) {\n v.auto_generated = false;\n }}}})],1),_c('div',{staticClass:\"col-md-5\"},[_c('extended-textarea',{attrs:{\"data_object\":v,\"data_field\":\"comment\",\"id\":'modal' + index,\"cb_function\":_vm.cb_function,\"rows\":\"4\"}})],1),(_vm.showAutoGenerated)?_c('div',{staticClass:\"col-md-auto\"},[_c('toggle-button',{attrs:{\"state\":v.auto_generated,\"name\":\"auto_generated\",\"showLabel\":false},on:{\"toggleButtonUpdated\":function($event){v.auto_generated = $event}}})],1):_vm._e(),_c('div',{staticClass:\"col-md-0\"},[_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){return _vm.deleteProperty(index)}}})])])])}),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addNewItem}},[_vm._v(\" Add new score \")])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\" col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title\"},[_vm._v(\"Score logbook\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-2\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Date\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Score\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-5\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Comment\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(\"Auto generated\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreLogbook.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScoreLogbook.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScoreLogbook.vue?vue&type=template&id=624152d0&\"\nimport script from \"./ScoreLogbook.vue?vue&type=script&lang=js&\"\nexport * from \"./ScoreLogbook.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ApplicableToCollapse.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ApplicableToCollapse.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApplicableToCollapse.vue?vue&type=template&id=e1d67638&\"\nimport script from \"./ApplicableToCollapse.vue?vue&type=script&lang=js&\"\nexport * from \"./ApplicableToCollapse.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TechniquesDetail.vue?vue&type=template&id=6117eb68&\"\nimport script from \"./TechniquesDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./TechniquesDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TechniquesPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TechniquesPage.vue?vue&type=template&id=094ca722&\"\nimport script from \"./TechniquesPage.vue?vue&type=script&lang=js&\"\nexport * from \"./TechniquesPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.doc != null)?_c('div',{staticClass:\"back-to-top\"},[_c('label',{staticClass:\"cursor-pointer\",attrs:{\"title\":\"Back to top\"},on:{\"click\":_vm.navigateToTop}},[_c('icons',{attrs:{\"icon\":\"arrow-up\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\",attrs:{\"id\":\"pageTop\"}},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"card card-card\"},[_vm._m(0),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn mr-md-3\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.askNewFile}},[_c('icons',{attrs:{\"icon\":\"file-empty\"}}),_vm._v(\" New file \")],1),_c('label',{staticClass:\"custom-file-upload\"},[_c('icons',{attrs:{\"icon\":\"file\"}}),_vm._v(\" Select YAML file \"),_c('file-reader',{attrs:{\"setFileNameFn\":_vm.setFileName,\"id\":'groupFileReader'},on:{\"load\":function($event){return _vm.readFile($event)}}})],1),(_vm.fileChanged)?_c('label',{staticClass:\"pl-2\"},[_c('icons',{attrs:{\"icon\":\"text-balloon\"}}),_vm._v(\" You have unsaved changes. You may want to save the file to preserve your changes.\")],1):_vm._e()])]),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('file-details',{attrs:{\"filename\":_vm.filename,\"doc\":_vm.doc,\"platforms\":_vm.platforms,\"showName\":false}})],1)]):_vm._e(),(_vm.doc != null)?_c('div',{staticClass:\"row pt-md-2\"},[_c('div',{staticClass:\"col card-text\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.downloadYaml('groups', 'group_name')}}},[_c('icons',{attrs:{\"icon\":\"save\"}}),_vm._v(\" Save YAML file \")],1)])]):_vm._e()])])])]),(_vm.doc != null)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('p',[_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.addItem('groups', 'group_name', _vm.emptyGroupObject)}}},[_c('icons',{attrs:{\"icon\":\"plus\"}}),_vm._v(\" Add group \")],1)])])]),_c('div',{staticClass:\"row mt-md-2\"},[_c('div',{staticClass:\"col\"},[_c('base-input',{attrs:{\"placeholder\":\"filter\"},model:{value:(_vm.filters.filter.value),callback:function ($$v) {_vm.$set(_vm.filters.filter, \"value\", $$v)},expression:\"filters.filter.value\"}}),_c('v-table',{staticClass:\"table-custom\",attrs:{\"data\":_vm.doc.groups,\"selectedClass\":\"table-selected-custom\",\"filters\":_vm.filters},on:{\"selectionChanged\":function($event){return _vm.selectItem($event)}},scopedSlots:_vm._u([{key:\"body\",fn:function(ref){\nvar displayData = ref.displayData;\nreturn _c('tbody',{},_vm._l((displayData),function(row,i){return _c('v-tr',{key:i,attrs:{\"row\":row}},[_c('td',[_vm._v(_vm._s(row.group_name))]),_c('td',[_vm._v(_vm._s(row.campaign))]),_c('td',[_vm._v(_vm._s(_vm._f(\"listToString\")(row.enabled)))]),_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple cursor-pointer\",attrs:{\"idx\":i,\"group_name\":row.group_name},on:{\"click\":function($event){return _vm.deleteGroup($event)}}})])])}),1)}}],null,false,1407728229)},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('v-th',{attrs:{\"sortKey\":\"group_name\",\"defaultSort\":\"asc\",\"width\":\"400\"}},[_vm._v(\"Group name\")]),_c('v-th',{attrs:{\"sortKey\":\"campaign\",\"width\":\"400\"}},[_vm._v(\"Campaign\")]),_c('v-th',{attrs:{\"sortKey\":\"enabled\",\"width\":\"150\"}},[_vm._v(\"Enabled\")]),_c('th')],1)])],1)])])],1),_c('div',{staticClass:\"col\"},[_c('card',{attrs:{\"type\":\"card\"}},[(_vm.getSelectedItem() != null)?_c('groups-detail',{attrs:{\"group\":_vm.getSelectedItem(),\"allGroups\":_vm.doc.groups,\"selectedPlatforms\":_vm.doc.platform,\"groupHelpText\":_vm.groupHelpText}}):_vm._e()],1)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card-header\"},[_c('h2',{staticClass:\"card-title\"},[_c('i',{staticClass:\"tim-icons icon-single-02\"}),_vm._v(\" Groups\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"container-fluid d-flex flex-column\"},[(_vm.isNewGroup || _vm.editGroupName)?_c('div',[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col-md-7 pl-md-2 pr-md-0\"},[_c('base-input',{attrs:{\"value\":_vm.group.group_name},on:{\"change\":function($event){_vm.group.group_name = $event.target.value},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.editGroupName = false},\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"tab\",9,$event.key,\"Tab\")){ return null; }_vm.editGroupName = false},\"blur\":function($event){_vm.editGroupName = false}}})],1),_c('div',{staticClass:\"col-md-auto\"},[_c('i',{staticClass:\"tim-icons icon-check-2 icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editGroupName = false}}})])])]):_c('div',{staticClass:\"row flex-fill\"},[_c('div',{staticClass:\"col-md pr-md-0 pl-md-0\"},[_c('span',{staticClass:\"card-title\",attrs:{\"id\":\"detailCard\"}},[_vm._v(_vm._s(_vm.group.group_name))]),_c('i',{staticClass:\"tim-icons icon-pencil icon-color icon-padding cursor-pointer\",on:{\"click\":function($event){_vm.editGroupName = true}}})])])]),_c('div',{staticClass:\"row mt-md-3\"},[_vm._m(1),_c('div',{staticClass:\"col ml-md-0\",on:{\"click\":function($event){_vm.helptextGroupKVPairs = true}}},[_c('icons',{attrs:{\"icon\":\"help\",\"tooltip\":\"Click to open more information.\"}})],1),_c('modal',{staticClass:\"modal-help\",attrs:{\"show\":_vm.helptextGroupKVPairs,\"id\":\"dsModal\",\"centered\":false,\"show-close\":true},on:{\"update:show\":function($event){_vm.helptextGroupKVPairs=$event}}},[_c('h1',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Group key-value pairs\")]),_c('div',{staticClass:\"markdown-popup\"},[_c('VueShowdown',{attrs:{\"markdown\":_vm.groupHelpText}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-5 pr-md-0 form-group\"},[_vm._m(2),_c('div',[_c('base-input',{attrs:{\"value\":_vm.group.campaign},on:{\"change\":function($event){_vm.group.campaign = $event.target.value}}})],1)]),_c('div',{staticClass:\"col-md-3 mt-md-1 form-group\"},[_c('toggle-button',{attrs:{\"state\":_vm.group.enabled,\"name\":\"Enabled\",\"extraPaddingBottom\":false},on:{\"toggleButtonUpdated\":function($event){_vm.group.enabled = $event}}})],1)]),(!_vm.isUniqueGroup)?_c('div',{staticClass:\"row mt-md-0 mb-md-3\"},[_vm._m(3),_vm._m(4)]):_vm._e(),_c('auto-suggest-group',{attrs:{\"title\":\"Technique IDs\",\"group\":_vm.group,\"itemIdName\":\"technique_id\",\"platforms\":_vm.selectedPlatforms,\"suggestionList\":_vm.techniques,\"valueAttr\":\"technique_id\"}}),(_vm.group.technique_id.length < 1)?_c('div',{staticClass:\"row mt-md-0 mb-md-3\"},[_vm._m(5),_vm._m(6)]):_vm._e(),_c('auto-suggest-group',{staticClass:\"mt-md-3\",attrs:{\"title\":\"Software IDs\",\"group\":_vm.group,\"itemIdName\":\"software_id\",\"platforms\":_vm.selectedPlatforms,\"suggestionList\":_vm.software,\"valueAttr\":\"software_id\"}}),_c('custom-key-value-editor',{staticClass:\"mt-md-3\",attrs:{\"item\":_vm.group,\"defaultKeys\":_vm.groupDefaultKeys}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0 pl-md-0 margin-top-8\"},[_c('label',[_vm._v(\"Group name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('h5',{staticClass:\"title mb-md-3\"},[_vm._v(\"Group key-value pairs\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('label',[_vm._v(\"Campaign name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"The combination of group name and campaign should be unique.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('i',{staticClass:\"tim-icons icon-alert-circle-exc icon-color-warning\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-auto pl-md-2\"},[_c('label',{staticClass:\"label-warning\",attrs:{\"id\":\"warningText\"}},[_vm._v(\"A group YAML should contain at least one technique ID.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-auto pr-md-0\"},[_c('label',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.title))])])]),(_vm.group[_vm.itemIdName].length > 0)?_c('div',{staticClass:\"row form-group\"},_vm._l((_vm.group[_vm.itemIdName]),function(id){return _c('span',{key:id,staticClass:\"attack-span\"},[_c('p',{staticClass:\"attack-id\"},[_vm._v(_vm._s(id))]),_c('i',{staticClass:\"tim-icons icon-trash-simple icon-color mx-md-2 cursor-pointer\",attrs:{\"id\":id},on:{\"click\":function($event){return _vm.deleteItem($event)}}})])}),0):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-7 pr-md-0 form-group\"},[_c('vue-simple-suggest',{ref:\"suggestInputTxt\",attrs:{\"placeholder\":_vm.formattedTitle,\"list\":_vm.filteredSuggestionList,\"max-suggestions\":0,\"filter-by-query\":true,\"display-attribute\":\"autosuggest\",\"value-attribute\":_vm.valueAttr,\"styles\":_vm.autoCompleteStyle},on:{\"select\":function($event){_vm.newID = $event[_vm.itemIdName]},\"input\":function($event){_vm.newID = $event}}})],1),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn-custom btn btn-secondary button-add\",on:{\"click\":_vm.addItem}},[_vm._v(\" Add \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoSuggestGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoSuggestGroup.vue?vue&type=template&id=36f9d2c1&\"\nimport script from \"./AutoSuggestGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoSuggestGroup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsDetail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsDetail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupsDetail.vue?vue&type=template&id=094774c2&\"\nimport script from \"./GroupsDetail.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupsDetail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupsPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupsPage.vue?vue&type=template&id=47b41b52&\"\nimport script from \"./GroupsPage.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupsPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport Router from 'vue-router';\nimport Layout from '../layout/Layout.vue';\nimport HomePage from '../pages/HomePage.vue';\nimport DataSourcesPage from '../pages/DataSourcesPage.vue';\nimport TechniquesPage from '../pages/TechniquesPage.vue';\nimport GroupsPage from '../pages/GroupsPage.vue';\n\nVue.use(Router);\n\nexport default new Router({\n routes: [\n {\n path: \"/\",\n component: Layout,\n redirect: \"/home\",\n children: [\n {\n path: \"home\",\n name: \"home\",\n component: HomePage\n },\n {\n path: \"datasources\",\n name: \"datasources\",\n component: DataSourcesPage\n },\n {\n path: \"techniques\",\n name: \"techniques\",\n component: TechniquesPage\n },\n {\n path: \"groups\",\n name: \"groups\",\n component: GroupsPage\n }\n ]\n }\n ]\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"sidebar\",attrs:{\"data\":_vm.backgroundColor}},[_c('div',{staticClass:\"sidebar-wrapper\",attrs:{\"id\":\"style-3\"}},[_c('div',{staticClass:\"logo\"},[_c('a',{staticClass:\"simple-text logo-mini\",attrs:{\"href\":\"https://github.com/rabobank-cdc/DeTTECT\",\"target\":\"blank\",\"aria-label\":\"sidebar mini logo\"}},[_c('div',{staticClass:\"logo-img\",class:{ 'logo-img-rtl': _vm.$rtl.isRTL }},[_c('img',{attrs:{\"src\":\"img/logo.png\",\"alt\":\"\"}})])]),_c('span',{staticClass:\"simple-text logo-normal custom-title custom-title1\"},[_vm._v(\"DeTT&CT\")]),_c('span',{staticClass:\"simple-text logo-normal custom-title\"},[_vm._v(\"Editor\")])]),_vm._t(\"default\"),_c('ul',{staticClass:\"nav\"},[_vm._t(\"links\",_vm._l((_vm.sidebarLinks),function(link,index){return _c('sidebar-link',{key:index,attrs:{\"to\":link.path,\"name\":link.name,\"icon\":link.icon}})}))],2)],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,_vm._b({tag:\"component\",staticClass:\"nav-item\",attrs:{\"tag\":\"li\"},nativeOn:{\"click\":function($event){return _vm.hideSidebar($event)}}},'component',_vm.$attrs,false),[_c('a',{staticClass:\"nav-link\"},[_vm._t(\"default\",[(_vm.icon)?_c('i',{class:_vm.icon}):_vm._e(),_c('p',[_vm._v(_vm._s(_vm.name))])])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SidebarLink.vue?vue&type=template&id=4cbde1c6&\"\nimport script from \"./SidebarLink.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SideBar.vue?vue&type=template&id=ec0e00a6&\"\nimport script from \"./SideBar.vue?vue&type=script&lang=js&\"\nexport * from \"./SideBar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Sidebar from \"./SideBar.vue\";\nimport SidebarLink from \"./SidebarLink\";\n\nconst SidebarStore = {\n showSidebar: false,\n sidebarLinks: [],\n displaySidebar(value) {\n this.showSidebar = value;\n }\n};\n\nconst SidebarPlugin = {\n install(Vue) {\n let app = new Vue({\n data: {\n sidebarStore: SidebarStore\n }\n });\n\n Vue.prototype.$sidebar = app.sidebarStore;\n Vue.component(\"side-bar\", Sidebar);\n Vue.component(\"sidebar-link\", SidebarLink);\n }\n};\n\nexport default SidebarPlugin;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notifications\"},[_c('transition-group',{attrs:{\"name\":_vm.transitionName,\"mode\":_vm.transitionMode}},_vm._l((_vm.notifications),function(notification){return _c('notification',_vm._b({key:notification.timestamp.getTime(),attrs:{\"clickHandler\":notification.onClick},on:{\"close\":_vm.removeNotification}},'notification',notification,false))}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"alert open\",class:[{ 'alert-with-icon': _vm.icon }, _vm.verticalAlign, _vm.horizontalAlign, _vm.alertType],style:(_vm.customPosition),attrs:{\"data-notify\":\"container\",\"role\":\"alert\",\"data-notify-position\":\"top-center\"},on:{\"click\":_vm.tryClose}},[(_vm.showClose)?_c('button',{staticClass:\"close col-xs-1 pl-md-3\",attrs:{\"type\":\"button\",\"aria-hidden\":\"true\",\"data-notify\":\"dismiss\"},on:{\"click\":_vm.close}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})]):_vm._e(),(_vm.icon)?_c('span',{class:['alert-icon', _vm.icon],attrs:{\"data-notify\":\"icon\"}}):_vm._e(),_c('div',{attrs:{\"data-notify\":\"message\"}},[(_vm.title)?_c('div',{staticClass:\"title\"},[_c('b',[_vm._v(_vm._s(_vm.title)),_c('br')])]):_vm._e(),(_vm.message)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.message)}}):_vm._e(),(!_vm.message && _vm.component)?_c('content-render',{attrs:{\"component\":_vm.component}}):_vm._e(),(_vm.cb_function != null)?_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.cb_function(_vm.cb_function_key)}}},[_vm._v(_vm._s(_vm.cb_function_text))])]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=e37796d6&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notifications.vue?vue&type=template&id=1e1e365e&\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js&\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notifications.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Notifications from './Notifications.vue';\n\nconst NotificationStore = {\n state: [], // here the notifications will be added\n settings: {\n overlap: false,\n verticalAlign: 'top',\n horizontalAlign: 'right',\n type: 'info',\n timeout: 5000,\n closeOnClick: true,\n showClose: true\n },\n setOptions(options) {\n this.settings = Object.assign(this.settings, options);\n },\n removeNotification(timestamp) {\n const indexToDelete = this.state.findIndex(n => n.timestamp === timestamp);\n if (indexToDelete !== -1) {\n this.state.splice(indexToDelete, 1);\n }\n },\n addNotification(notification) {\n if (typeof notification === 'string' || notification instanceof String) {\n notification = { message: notification };\n }\n notification.timestamp = new Date();\n notification.timestamp.setMilliseconds(\n notification.timestamp.getMilliseconds() + this.state.length\n );\n notification = Object.assign({}, this.settings, notification);\n this.state.push(notification);\n },\n notify(notification) {\n if (Array.isArray(notification)) {\n notification.forEach(notificationInstance => {\n this.addNotification(notificationInstance);\n });\n } else {\n this.addNotification(notification);\n }\n }\n};\n\nconst NotificationsPlugin = {\n install(Vue, options) {\n let app = new Vue({\n data: {\n notificationStore: NotificationStore\n },\n methods: {\n notify(notification) {\n this.notificationStore.notify(notification);\n }\n }\n });\n Vue.prototype.$notify = app.notify;\n Vue.prototype.$notifications = app.notificationStore;\n Vue.component('Notifications', Notifications);\n if (options) {\n NotificationStore.setOptions(options);\n }\n }\n};\n\nexport default NotificationsPlugin;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\",class:{\n 'input-group': _vm.hasIcon,\n 'input-group-focus': _vm.focused\n }},[_vm._t(\"label\",[(_vm.label)?_c('label',{staticClass:\"control-label\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \")]):_vm._e()]),_vm._t(\"addonLeft\",[(_vm.addonLeftIcon)?_c('span',{staticClass:\"input-group-prepend\"},[_c('div',{staticClass:\"input-group-text\"},[_c('i',{class:_vm.addonLeftIcon})])]):_vm._e()]),_vm._t(\"default\",[_c('input',_vm._g(_vm._b({staticClass:\"form-control\",attrs:{\"aria-describedby\":\"addon-right addon-left\"},domProps:{\"value\":_vm.value}},'input',_vm.$attrs,false),_vm.listeners))]),_vm._t(\"addonRight\",[(_vm.addonRightIcon)?_c('span',{staticClass:\"input-group-append\"},[_c('div',{staticClass:\"input-group-text\"},[_c('i',{class:_vm.addonRightIcon})])]):_vm._e()]),_vm._t(\"helperText\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseInput.vue?vue&type=template&id=8c2a10d6&\"\nimport script from \"./BaseInput.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseInput.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-check\",class:[{disabled: _vm.disabled}, _vm.inlineClass]},[_c('label',{staticClass:\"form-check-label\",attrs:{\"for\":_vm.cbId}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model),expression:\"model\"}],staticClass:\"form-check-input\",attrs:{\"id\":_vm.cbId,\"type\":\"checkbox\",\"disabled\":_vm.disabled},domProps:{\"checked\":Array.isArray(_vm.model)?_vm._i(_vm.model,null)>-1:(_vm.model)},on:{\"change\":function($event){var $$a=_vm.model,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.model=$$a.concat([$$v]))}else{$$i>-1&&(_vm.model=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.model=$$c}}}}),_c('span',{staticClass:\"form-check-sign\"}),_vm._t(\"default\",[(_vm.inline)?_c('span'):_vm._e()])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseCheckbox.vue?vue&type=template&id=246043d5&\"\nimport script from \"./BaseCheckbox.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseCheckbox.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-check form-check-radio\",class:[_vm.inlineClass, {disabled: _vm.disabled}]},[_c('label',{staticClass:\"form-check-label\",attrs:{\"for\":_vm.cbId}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model),expression:\"model\"}],staticClass:\"form-check-input\",attrs:{\"id\":_vm.cbId,\"type\":\"radio\",\"disabled\":_vm.disabled},domProps:{\"value\":_vm.name,\"checked\":_vm._q(_vm.model,_vm.name)},on:{\"change\":function($event){_vm.model=_vm.name}}}),_vm._t(\"default\"),_c('span',{staticClass:\"form-check-sign\"})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseRadio.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseRadio.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseRadio.vue?vue&type=template&id=544a6db7&\"\nimport script from \"./BaseRadio.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseRadio.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closeDropDown),expression:\"closeDropDown\"}],tag:\"component\",staticClass:\"dropdown\",class:{show:_vm.isOpen},on:{\"click\":_vm.toggleDropDown}},[_vm._t(\"title-container\",[_c(_vm.titleTag,{tag:\"component\",staticClass:\"dropdown-toggle btn-rotate\",class:_vm.titleClasses,attrs:{\"aria-expanded\":_vm.isOpen,\"aria-label\":_vm.title || _vm.ariaLabel,\"data-toggle\":\"dropdown\"}},[_vm._t(\"title\",[_c('i',{class:_vm.icon}),_vm._v(\" \"+_vm._s(_vm.title)+\" \")],{\"isOpen\":_vm.isOpen})],2)],{\"isOpen\":_vm.isOpen}),_c('ul',{staticClass:\"dropdown-menu\",class:[{show:_vm.isOpen}, {'dropdown-menu-right': _vm.menuOnRight}, _vm.menuClasses]},[_vm._t(\"default\")],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDropdown.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseDropdown.vue?vue&type=template&id=c2dbcac8&\"\nimport script from \"./BaseDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseDropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table',{staticClass:\"table tablesorter\",class:_vm.tableClass},[_c('thead',{class:_vm.theadClasses},[_c('tr',[_vm._t(\"columns\",_vm._l((_vm.columns),function(column){return _c('th',{key:column},[_vm._v(_vm._s(column))])}))],2)]),_c('tbody',{class:_vm.tbodyClasses},_vm._l((_vm.data),function(item,index){return _c('tr',{key:index},[_vm._t(\"default\",[_vm._l((_vm.columns),function(column,index){return (_vm.hasValue(item, column))?_c('td',{key:index},[_vm._v(\" \"+_vm._s(_vm.itemValue(item, column))+\" \")]):_vm._e()}),(_vm.deleteButton)?_c('td',[_c('i',{staticClass:\"tim-icons icon-trash-simple\"})]):_vm._e()],{\"row\":item})],2)}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseTable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseTable.vue?vue&type=template&id=1c12c84c&\"\nimport script from \"./BaseTable.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseTable.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {\nvar _obj, _obj$1;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{tag:\"component\",staticClass:\"btn\",class:[\n {'btn-round': _vm.round},\n {'btn-block': _vm.block},\n {'btn-icon btn-fab': _vm.icon},\n ( _obj = {}, _obj[(\"btn-\" + _vm.type)] = _vm.type, _obj ),\n ( _obj$1 = {}, _obj$1[(\"btn-\" + _vm.size)] = _vm.size, _obj$1 ),\n {'btn-simple': _vm.simple},\n {'btn-link': _vm.link},\n {'disabled': _vm.disabled && _vm.tag !== 'button'}\n ],attrs:{\"type\":_vm.tag === 'button' ? _vm.nativeType : '',\"disabled\":_vm.disabled || _vm.loading},on:{\"click\":_vm.handleClick}},[_vm._t(\"loading\",[(_vm.loading)?_c('i',{staticClass:\"fas fa-spinner fa-spin\"}):_vm._e()]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseButton.vue?vue&type=template&id=a1e01c20&\"\nimport script from \"./BaseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('fade-transition',[(_vm.visible)?_c('div',{staticClass:\"alert\",class:[(\"alert-\" + _vm.type), { 'alert-with-icon': _vm.withIcon }],attrs:{\"role\":\"alert\"}},[(!_vm.dismissible)?_vm._t(\"default\"):_c('div',{staticClass:\"container\"},[_vm._t(\"default\"),_vm._t(\"dismiss-icon\",[_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":_vm.dismissAlert}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_c('i',{staticClass:\"tim-icons icon-simple-remove\"})])])])],2)],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseAlert.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseAlert.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BaseAlert.vue?vue&type=template&id=69f0b954&\"\nimport script from \"./BaseAlert.vue?vue&type=script&lang=js&\"\nexport * from \"./BaseAlert.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"navbar-toggler\",attrs:{\"type\":\"button\",\"data-toggle\":\"collapse\",\"data-target\":(\"#\" + _vm.target),\"aria-controls\":_vm.target,\"aria-expanded\":_vm.expanded,\"aria-label\":\"Toggle navigation\"},on:{\"click\":_vm.handleClick}},[_c('span'),_c('span')])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloseButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CloseButton.vue?vue&type=template&id=59b0836b&\"\nimport script from \"./CloseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./CloseButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card\",class:[_vm.type && (\"card-\" + _vm.type)]},[(_vm.$slots.image)?_c('div',{staticClass:\"card-image\"},[_vm._t(\"image\")],2):_vm._e(),(_vm.$slots.header || _vm.title)?_c('div',{staticClass:\"card-header\",class:_vm.headerClasses},[_vm._t(\"header\",[_c('h4',{staticClass:\"card-title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.subTitle)?_c('p',{staticClass:\"card-category\"},[_vm._v(_vm._s(_vm.subTitle))]):_vm._e()])],2):_vm._e(),(_vm.$slots.default)?_c('div',{staticClass:\"card-body\"},[_vm._t(\"default\")],2):_vm._e(),(_vm.$slots['image-bottom'])?_c('div',{staticClass:\"card-image\"},[_vm._t(\"image-bottom\")],2):_vm._e(),_vm._t(\"raw-content\"),(_vm.$slots.footer)?_c('div',{staticClass:\"card-footer\",class:_vm.footerClasses},[_vm._t(\"footer\")],2):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Card.vue?vue&type=template&id=2374244f&\"\nimport script from \"./Card.vue?vue&type=script&lang=js&\"\nexport * from \"./Card.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { BaseInput, Card, BaseDropdown, BaseButton, BaseCheckbox } from \"../components/index\";\n/**\n * You can register global components here and use them as a plugin in your main Vue instance\n */\n\nconst GlobalComponents = {\n install(Vue) {\n Vue.component(BaseInput.name, BaseInput);\n Vue.component(Card.name, Card);\n Vue.component(BaseDropdown.name, BaseDropdown);\n Vue.component(BaseButton.name, BaseButton);\n Vue.component(BaseCheckbox.name, BaseCheckbox);\n }\n};\n\nexport default GlobalComponents;\n","export default {\n bind: function (el, binding, vnode) {\n el.clickOutsideEvent = function (event) {\n // here I check that click was outside the el and his childrens\n if (!(el == event.target || el.contains(event.target))) {\n // and if it did, call method provided in attribute value\n vnode.context[binding.expression](event);\n }\n };\n document.body.addEventListener('click', el.clickOutsideEvent)\n },\n unbind: function (el) {\n document.body.removeEventListener('click', el.clickOutsideEvent)\n },\n}\n","import clickOutside from '../directives/click-ouside.js';\n\n\n/**\n * You can register global directives here and use them as a plugin in your main Vue instance\n */\n\nconst GlobalDirectives = {\n install (Vue) {\n Vue.directive('click-outside', clickOutside);\n }\n}\n\nexport default GlobalDirectives\n","export default {\n install(Vue) {\n let app = new Vue({\n data() {\n return {\n isRTL: false\n }\n },\n methods: {\n getDocClasses() {\n return document.body.classList\n },\n enableRTL() {\n this.isRTL = true;\n this.getDocClasses().add('rtl');\n this.getDocClasses().add('menu-on-right');\n this.toggleBootstrapRTL(true);\n },\n disableRTL() {\n this.isRTL = false;\n this.getDocClasses().remove('rtl');\n this.getDocClasses().remove('menu-on-right');\n this.toggleBootstrapRTL(false);\n },\n toggleBootstrapRTL(value) {\n for (let i=0; i < document.styleSheets.length; i++){\n let styleSheet = document.styleSheets[i];\n let { href } = styleSheet;\n if(href && href.endsWith('bootstrap-rtl.css')){\n styleSheet.disabled = !value;\n }\n }\n }\n }\n });\n\n Vue.prototype.$rtl = app;\n }\n}\n","import SideBar from '@/components/SidebarPlugin';\nimport Notify from '@/components/NotificationPlugin';\nimport GlobalComponents from './globalComponents';\nimport GlobalDirectives from './globalDirectives';\nimport RTLPlugin from './RTLPlugin';\n\n//css assets\nimport '@/assets/sass/black-dashboard.scss';\nimport '@/assets/css/nucleo-icons.css';\nimport 'bootstrap-vue/dist/bootstrap-vue.css';\n\nexport default {\n install(Vue) {\n Vue.use(GlobalComponents);\n Vue.use(GlobalDirectives);\n Vue.use(SideBar);\n Vue.use(Notify);\n Vue.use(RTLPlugin);\n }\n};\n","/*\n =========================================================\n * Vue Black Dashboard - v1.1.0\n =========================================================\n\n * Product Page: https://www.creative-tim.com/product/black-dashboard\n * Copyright 2018 Creative Tim (http://www.creative-tim.com)\n\n =========================================================\n\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\n */\nimport Vue from 'vue';\nimport VueRouter from 'vue-router';\nimport RouterPrefetch from 'vue-router-prefetch';\nimport App from './App';\nimport router from './router/router';\nimport SmartTable from 'vuejs-smart-table';\nimport VueResource from 'vue-resource';\nimport VueShowdown from 'vue-showdown';\nimport Tooltip from 'vue-directive-tooltip';\nimport { BootstrapVue, BootstrapVueIcons } from 'bootstrap-vue';\n\nimport BlackDashboard from './plugins/blackDashboard';\nVue.use(BlackDashboard);\nVue.use(VueRouter);\nVue.use(RouterPrefetch);\nVue.use(SmartTable);\nVue.use(VueResource);\nVue.use(VueShowdown, {\n options: {\n openLinksInNewWindow: true,\n tables: true\n }\n});\nVue.use(Tooltip);\nVue.use(BootstrapVue);\nVue.use(BootstrapVueIcons);\n\n/* eslint-disable no-new */\nnew Vue({\n router,\n render: (h) => h(App)\n}).$mount('#app');\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""} \ No newline at end of file