diff --git a/config/webpack.config.dev.js b/config/webpack.config.dev.js index 914c0ce7c..b0d70f450 100644 --- a/config/webpack.config.dev.js +++ b/config/webpack.config.dev.js @@ -83,6 +83,11 @@ module.exports = { devtoolModuleFilenameTemplate: (info) => path.resolve(info.absoluteResourcePath).replace(/\\/g, "/"), }, + externals: { + "react": "React", + "react-dom": "ReactDOM", + 'alex': 'Alex', + }, resolve: { // This allows you to set a fallback for where Webpack should look for modules. // We placed these paths second because we want `node_modules` to "win" diff --git a/config/webpack.config.prod.js b/config/webpack.config.prod.js index 4a9d94652..129742c3a 100644 --- a/config/webpack.config.prod.js +++ b/config/webpack.config.prod.js @@ -71,6 +71,11 @@ module.exports = { .relative(paths.appSrc, info.absoluteResourcePath) .replace(/\\/g, "/"), }, + externals: { + 'alex': 'Alex', + "react": "React", + "react-dom": "ReactDOM", + }, resolve: { // This allows you to set a fallback for where Webpack should look for modules. // We placed these paths second because we want `node_modules` to "win" diff --git a/public/index.html b/public/index.html index 9489fe428..cebdfa250 100755 --- a/public/index.html +++ b/public/index.html @@ -2,13 +2,13 @@
- + - + @@ -20,11 +20,17 @@ + + + + + <%= htmlWebpackPlugin.tags.bodyTags %> \ No newline at end of file diff --git a/public/js/alex/alex.editor.all.global.min.js b/public/js/alex/alex.editor.all.global.min.js new file mode 100644 index 000000000..a85b4a53d --- /dev/null +++ b/public/js/alex/alex.editor.all.global.min.js @@ -0,0 +1,2 @@ +/*! For license information please see alex.editor.all.global.min.js.LICENSE.txt */ +(()=>{var e={50565:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HookType=t.CreatorStatus=t.INJECTOR_TOKEN=void 0,t.INJECTOR_TOKEN=Symbol("INJECTOR_TOKEN"),function(e){e.init="init",e.creating="creating",e.done="done"}(t.CreatorStatus||(t.CreatorStatus={})),function(e){e.Before="Before",e.After="After",e.Around="Around ",e.AfterReturning="AfterReturning",e.AfterThrowing="AfterThrowing"}(t.HookType||(t.HookType={}))},99030:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AfterThrowing=t.AfterReturning=t.Around=t.After=t.Before=t.Aspect=t.Autowired=t.Optinal=t.Optional=t.Inject=t.Injectable=void 0;var r=i(7391);i(28660);var n=r.__importStar(i(75861)),o=r.__importStar(i(12730)),s=i(50565),a=i(75861);function c(e){return void 0===e&&(e=Symbol()),function(t,i,r){n.setParameterIn(t,{default:void 0,token:e},r)}}t.Injectable=function(e){return function(t){n.markInjectable(t,e);var i=Reflect.getMetadata("design:paramtypes",t);if(Array.isArray(i)){if(n.setParameters(t,i),e&&e.multiple)return;n.getParameterDeps(t).forEach((function(e,i){if(!n.isToken(e))throw o.notInjectError(t,i)}))}}},t.Inject=function(e,t){return void 0===t&&(t={}),function(i,o,s){n.setParameterIn(i,r.__assign(r.__assign({},t),{token:e}),s)}},t.Optional=c,t.Optinal=c,t.Autowired=function(e,t){return function(i,r){var s=Symbol("INSTANCE_KEY"),a=e;if(void 0===e&&(a=Reflect.getMetadata("design:type",i,r)),!n.isToken(a))throw o.notSupportTokenError(i,r,a);return n.addDeps(i,a),{configurable:!0,enumerable:!0,get:function(){if(!this[s]){var e=n.getInjectorOfInstance(this);if(!e)throw o.noInjectorError(this);this[s]=e.get(a,t)}return this[s]}}}},t.Aspect=function(){return function(e){a.makeAsAspect(e)}},t.Before=function(e,t,i){return void 0===i&&(i={}),function(r,n){a.makeAsHook(r,n,s.HookType.Before,e,t,i)}},t.After=function(e,t,i){return void 0===i&&(i={}),function(r,n){a.makeAsHook(r,n,s.HookType.After,e,t,i)}},t.Around=function(e,t,i){return void 0===i&&(i={}),function(r,n){a.makeAsHook(r,n,s.HookType.Around,e,t,i)}},t.AfterReturning=function(e,t,i){return void 0===i&&(i={}),function(r,n){a.makeAsHook(r,n,s.HookType.AfterReturning,e,t,i)}},t.AfterThrowing=function(e,t,i){return void 0===i&&(i={}),function(r,n){a.makeAsHook(r,n,s.HookType.AfterThrowing,e,t,i)}}},12730:(e,t)=>{"use strict";function i(e){return"object"==typeof e?e.constructor.name:"function"==typeof e?e.name:String(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.circularError=t.noInjectorError=t.notSupportTokenError=t.notInjectError=t.noInjectableError=t.tagOnlyError=t.classTokenOnly=t.noProviderError=void 0,t.noProviderError=function(){for(var e=[],t=0;t[^<>]+\<\/p\>\n$/.test(e)}),[v]);return r.createElement("div",{className:n.reply_item},u.isUndefined(y)||y===o.CommentMode.Preview?r.createElement("div",null,k?r.createElement(r.Fragment,null,_&&r.createElement("img",{className:n.reply_item_icon,src:_,alt:d.name}),r.createElement("span",{className:n.comment_item_author_name},d.name),"string"==typeof m?r.createElement("span",{className:n.comment_item_label},m):m," : ",r.createElement("span",{className:n.comment_item_body},v),e.reactions&&e.reactions.length>0&&r.createElement(f.CommentReactionSwitcher,{className:n.reply_item_title,thread:t,comment:e}),r.createElement(s.InlineActionBar,{separator:"inline",className:n.reply_item_title,menus:E,context:[{thread:t,comment:e,menuId:l.MenuId.CommentsCommentTitle}],type:"icon"})):r.createElement(r.Fragment,null,r.createElement("div",{className:n.comment_item_markdown_header},r.createElement("div",null,_&&r.createElement("img",{className:n.reply_item_icon,src:_,alt:d.name}),r.createElement("span",{className:n.comment_item_author_name},d.name),"string"==typeof m?r.createElement("span",{className:n.comment_item_label},m):m," : "),r.createElement(s.InlineActionBar,{separator:"inline",className:n.reply_item_title,menus:E,context:[{thread:t,comment:e,menuId:l.MenuId.CommentsCommentTitle}],type:"icon"})),r.createElement(h.CommentsBody,{body:v}))):r.createElement("div",null,r.createElement(c.CommentsTextArea,{value:b,autoFocus:!0,onChange:S,dragFiles:O}),r.createElement(s.InlineActionBar,{className:n.comment_item_reply,menus:C,context:[{thread:t,comment:e,body:b,menuId:l.MenuId.CommentsCommentContext}],type:"button",separator:"inline",afterClick:()=>{w(v)}})),e.reactions&&e.reactions.length>0&&r.createElement(f.CommentReactions,{thread:t,comment:e}))}));t.CommentItem=a.observer((({thread:e,commentThreadContext:t,widget:i})=>{var a;const{readOnly:p,contextKeyService:v}=e,[y,_]=r.useState(!1),[b,w]=r.useState(""),[S,...C]=e.comments,{author:E,label:O,body:k,mode:D}=S,M=null===(a=E.iconPath)||void 0===a?void 0:a.toString(),[x,T,A,I,P,R]=g(v,S),L=u.useInjectable(o.ICommentsFeatureRegistry),N=r.useMemo((()=>L.getFileUploadHandler()),[]),F=r.useMemo((()=>v.createKey("commentIsEmpty",!0)),[]);const B=r.useCallback((async e=>{if(N){const t=await N(x,e);w((e=>{const i=e+t;return F.set(!i),i}))}}),[b]);return r.createElement("div",{className:n.comment_item},M&&r.createElement("img",{className:n.comment_item_icon,src:M,alt:E.name}),r.createElement("div",{className:n.comment_item_content},r.createElement("div",{className:n.comment_item_head},r.createElement("div",{className:n.comment_item_name},r.createElement("span",{className:n.comment_item_author_name},E.name),"string"==typeof O?r.createElement("span",{className:n.comment_item_label},O):O),r.createElement("div",{className:n.comment_item_actions},S.reactions&&S.reactions.length>0&&r.createElement(f.CommentReactionSwitcher,{thread:e,comment:S}),!p&&r.createElement(d.Button,{className:n.comment_item_reply_button,size:"small",type:"secondary",onClick:()=>_(!0)},u.localize("comments.thread.action.reply")),r.createElement(s.InlineActionBar,{menus:P,context:[{thread:e,comment:S,menuId:l.MenuId.CommentsCommentTitle}],type:"button"}))),u.isUndefined(D)||D===o.CommentMode.Preview?r.createElement(h.CommentsBody,{body:k}):r.createElement("div",null,r.createElement(c.CommentsTextArea,{value:x,autoFocus:!0,onChange:A,dragFiles:R}),r.createElement(s.InlineActionBar,{className:n.comment_item_context,menus:I,context:[{thread:e,comment:S,body:x,menuId:l.MenuId.CommentsCommentContext}],separator:"inline",type:"button",afterClick:()=>{T(k)}})),S.reactions&&S.reactions.length>0&&r.createElement(f.CommentReactions,{thread:e,comment:S}),(C.length>0||y)&&r.createElement("div",{className:n.comment_item_reply_wrap},C.map((t=>r.createElement(m,{key:t.id,thread:e,reply:t}))),y&&r.createElement("div",null,r.createElement(c.CommentsTextArea,{autoFocus:!0,value:b,onChange:function(e){F.set(!e.target.value),w(e.target.value)},placeholder:`${u.localize("comments.reply.placeholder")}...`,dragFiles:B}),r.createElement(s.InlineActionBar,{className:n.comment_item_reply,menus:t,context:[{thread:e,text:b,widget:i,menuId:l.MenuId.CommentsCommentThreadContext}],separator:"inline",type:"button",afterClick:()=>{w(""),_(!1)}})))))}))},28017:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(13205),o=i(32834),s=i(34865),a=i(63947),c=i(36738),l=i(84859),u=i(94184);t.CommentsPanel=o.observer((e=>{const t=s.useInjectable(a.ICommentsService),i=s.useInjectable(l.WorkbenchEditorService),o=s.useInjectable(a.ICommentsFeatureRegistry),[d,h]=r.useState([]),p=s.useInjectable(s.IEventBus);r.useEffect((()=>{p.on(a.CommentPanelCollapse,(()=>{h((e=>e.map((e=>(s.isUndefined(e.expanded)||(e.expanded=!1),e)))))}))}),[]);const f=r.useCallback((e=>e.filter((e=>{var t;return!e||!e.parent||!1!==e.parent.expanded&&!1!==(null===(t=e.parent.parent)||void 0===t?void 0:t.expanded)}))),[]);r.useEffect((()=>{h(t.commentsTreeNodes)}),[t.commentsTreeNodes]);const g=r.useCallback((([e])=>{if(e){if(s.isUndefined(e.expanded)){const t=d.map((t=>(t.selected=t.id===e.id,t)));h(t)}else{const t=d.map((t=>(t.id===e.id&&(t.expanded=!t.expanded),t.selected=t.id===e.id,t)));h(t)}e.onSelect?e.onSelect(e):i.open(e.uri,{range:e.thread.range})}}),[i,d]),m=r.useMemo((()=>o.getCommentsPanelOptions()),[]),v=r.useMemo((()=>m.header),[m]),y=r.useMemo((()=>e.viewState.height-((null==v?void 0:v.height)||0)),[e.viewState.height]),_=r.useMemo((()=>({width:"100%",height:y})),[y]),b=r.useMemo((()=>m.defaultPlaceholder),[m]),w=f(d);return r.createElement("div",{className:u(e.className,c.comment_panel)},null==v?void 0:v.component,w.length?r.createElement(n.DeprecatedRecycleTree,Object.assign({containerHeight:y,scrollContainerStyle:_,nodes:w,foldable:!0,outline:!1,onSelect:e=>g(e),leftPadding:20},m.recycleTreeProps)):b&&"string"!=typeof b?b:r.createElement("div",{className:c.panel_placeholder},b||s.localize("comments.panel.placeholder")))}))},90198:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(36738),o=i(88774),s=i(49749),a=i(34865),c=i(45715),l=i(4626),u=i(63947),d=(e,t)=>`@${t}`;t.CommentsTextArea=r.forwardRef(((e,t)=>{const{focusDelay:i=0,autoFocus:h=!1,placeholder:p="",onFocus:f,onBlur:g,onChange:m,maxRows:v=10,minRows:y=2,value:_,initialHeight:b,dragFiles:w}=e,[S,C]=r.useState(0),E=a.useInjectable(u.ICommentsFeatureRegistry),O=r.useRef(null),k=r.useRef(null),D=r.useRef(null);r.useImperativeHandle(t,(()=>O.current));const M=r.useCallback((async e=>{var t;e.stopPropagation(),e.preventDefault();const i=null===(t=e.dataTransfer)||void 0===t?void 0:t.files;i&&w&&await w(i),O.current&&(O.current.focus(),T(O.current.value))}),[w]),x=r.useCallback((e=>{e.stopPropagation(),e.preventDefault(),e.dataTransfer.dropEffect="copy"}),[]),T=r.useCallback((e=>{const t=null==O?void 0:O.current;if(t){const i=e.toString().length;t.setSelectionRange(i,i)}}),[]);r.useEffect((()=>{var e;const t=null==O?void 0:O.current;if(t)return b&&t.style&&(t.style.height=b),i&&setTimeout((()=>{t.focus()}),i),T(_),null===(e=k.current)||void 0===e||e.addEventListener("mousewheel",r,!0),()=>{var e;null===(e=k.current)||void 0===e||e.removeEventListener("mousewheel",r,!0)};function r(e){var t,i,r;const n=e.target;n&&("TEXTAREA"===n.nodeName.toUpperCase()&&n.scrollHeight>n.clientHeight||"UL"===n.nodeName.toUpperCase()||"UL"===(null===(t=n.parentElement)||void 0===t?void 0:t.nodeName.toUpperCase())||"UL"===(null===(r=null===(i=n.parentElement)||void 0===i?void 0:i.parentElement)||void 0===r?void 0:r.nodeName.toUpperCase()))&&e.stopPropagation()}}),[]),r.useEffect((()=>{var e;0===S&&(null===(e=null==O?void 0:O.current)||void 0===e||e.focus(),T(_))}),[S]);const A=r.useMemo((()=>l.getMentionBoxStyle({minRows:y,maxRows:v})),[y,v]),I=r.useMemo((()=>E.getMentionsOptions()),[E]),P=r.useCallback((async(e,t)=>{if(I.providerData){t(await I.providerData(e))}else t([])}),[I]);return r.createElement("div",{className:n.textarea_container},r.createElement(o.Tabs,{mini:!0,value:S,onChange:e=>C(e),tabs:[a.localize("comments.thread.textarea.write"),a.localize("comments.thread.textarea.preview")]}),r.createElement("div",null,0===S?r.createElement("div",{ref:k},r.createElement(c.MentionsInput,{autoFocus:h,onDragOver:x,onDrop:M,inputRef:O,ref:D,value:_,placeholder:p,onChange:m,onFocus:f,onBlur:g,style:A},r.createElement(c.Mention,{markup:I.markup||"@[__display__](__id__)",renderSuggestion:I.renderSuggestion,trigger:"@",data:P,displayTransform:I.displayTransform||d}))):r.createElement("div",{className:n.textarea_preview},r.createElement(s.CommentsBody,{body:_}))))}))},85641:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(19745),o=i(22188),s=i(34865),a=i(39573),c=i(63947),l=i(84859),u=i(29506);let d=class extends s.Disposable{constructor(e,t,i,r){super(),this.uri=e,this.range=t,this.providerId=i,this.options=r,this.widgets=new Map,this._id=`thread_${s.uuid()}`,this.toggle=e=>{if(this.comments.length>0){const t=this.widgets.get(e);t&&t.toggle()}else this.dispose()},this.comments=r.comments?r.comments.map((e=>Object.assign(Object.assign({},e),{id:s.uuid()}))):[],this.data=this.options.data,this._contextKeyService=this.registerDispose(this.globalContextKeyService.createScoped());new u.ResourceContextKey(this._contextKeyService).set(e),this._contextKeyService.createKey("thread",r.contextValue),this._contextKeyService.createKey("readOnly",!!r.readOnly),this.label=r.label,this.isCollapsed=!!this.options.isCollapsed;const n=this._contextKeyService.createKey("threadsLength",this.commentsService.getThreadsByUri(e).length),a=this._contextKeyService.createKey("commentsLength",this.comments.length),c=this._contextKeyService.createKey("commentThreadIsEmpty",!this.comments.length);this._contextKeyService.createKey("commentController",i),o.autorun((()=>{a.set(this.comments.length),c.set(!this.comments.length)})),o.autorun((()=>{this.isCollapsed?this.hideAll():this.showAll()})),this.addDispose(this.commentsService.onThreadsChanged((t=>{t.uri.isEqual(e)&&n.set(this.commentsService.getThreadsByUri(e).length)}))),this.addDispose({dispose:()=>{this.comments=[]}})}set contextValue(e){this._contextKeyService.createKey("thread",e)}get contextValue(){return this._contextKeyService.getContextValue("thread")}getWidgetByEditor(e){return this.widgets.get(e)}get id(){return this._id}get contextKeyService(){return this._contextKeyService}get readOnly(){return!!this.options.readOnly}get threadHeaderTitle(){if(this.label)return this.label;if(this.comments.length){const e=new Set(this.comments.map((e=>`@${e.author.name}`)));return`${s.localize("comments.participants")}: `+[...e].join(" ")}return s.localize("comments.zone.title")}getEditorsByUri(e){return this.editorCollectionService.listEditors().filter((t=>{var i;return null===(i=t.currentUri)||void 0===i?void 0:i.isEqual(e)}))}addWidgetByEditor(e){const t=this.injector.get(a.CommentsZoneWidget,[e,this]);return this.addDispose(t.onChangeZoneWidget((()=>{const t=this.commentsService.commentsThreads.filter((e=>this.isEqual(e))),i=t.findIndex((e=>e===this)),r=t.slice(i+1);for(const t of r)if(t.isShowWidget(e)){const i=t.getWidgetByEditor(e);null==i||i.resize()}}))),this.addDispose(t),this.widgets.set(e,t),e.onDispose((()=>{t.dispose(),this.widgets.delete(e)})),t}show(e){if(e){let t=this.widgets.get(e);t||(t=this.addWidgetByEditor(e)),t.show()}else{this.getEditorsByUri(this.uri).forEach((e=>{var t;let i=this.widgets.get(e);i||(i=this.addWidgetByEditor(e)),(null===(t=e.currentUri)||void 0===t?void 0:t.isEqual(this.uri))&&i.show()}))}}showWidgetsIfShowed(){var e;for(const t of this.getEditorsByUri(this.uri)){let i=this.widgets.get(t);i||(i=this.addWidgetByEditor(t)),(null===(e=t.currentUri)||void 0===e?void 0:e.isEqual(this.uri))&&i.isShow&&i.show()}}hideWidgetsByDispose(){var e;for(const[t,i]of this.widgets)!(null===(e=t.currentUri)||void 0===e?void 0:e.isEqual(this.uri))&&i.dispose()}isShowWidget(e){if(e){const t=this.widgets.get(e);return!!t&&t.isShow}for(const[,e]of this.widgets)return e.isShow;return!1}hide(e){if(e){const t=this.widgets.get(e);null==t||t.hide()}else this.hideAll()}showAll(){for(const[,e]of this.widgets)e.show()}hideAll(e){var t;for(const[i,r]of this.widgets)e?!(null===(t=i.currentUri)||void 0===t?void 0:t.isEqual(this.uri))&&r.dispose():r.hide()}addComment(...e){this.comments.push(...e.map((e=>Object.assign(Object.assign({},e),{id:s.uuid()}))))}removeComment(e){const t=this.comments.findIndex((t=>t===e));-1!==t&&this.comments.splice(t,1)}isEqual(e){return e.uri.isEqual(this.uri)&&e.range.startLineNumber===this.range.startLineNumber}};r.__decorate([n.Autowired(c.ICommentsService),r.__metadata("design:type",Object)],d.prototype,"commentsService",void 0),r.__decorate([n.Autowired(s.IContextKeyService),r.__metadata("design:type",Object)],d.prototype,"globalContextKeyService",void 0),r.__decorate([n.Autowired(l.EditorCollectionService),r.__metadata("design:type",l.EditorCollectionService)],d.prototype,"editorCollectionService",void 0),r.__decorate([n.Autowired(n.INJECTOR_TOKEN),r.__metadata("design:type",n.Injector)],d.prototype,"injector",void 0),r.__decorate([o.observable,r.__metadata("design:type",Array)],d.prototype,"comments",void 0),r.__decorate([o.observable,r.__metadata("design:type",Object)],d.prototype,"label",void 0),r.__decorate([o.observable,r.__metadata("design:type",Boolean)],d.prototype,"isCollapsed",void 0),r.__decorate([o.computed,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],d.prototype,"threadHeaderTitle",null),d=r.__decorate([n.Injectable({multiple:!0}),r.__metadata("design:paramtypes",[s.URI,Object,String,Object])],d),t.CommentsThread=d},97177:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(65686),o=i(19745),s=i(43849),a=i(85641);let c=class extends n.Disposable{constructor(e){super(),this.thread=e}get commentThreadTitle(){return this.registerDispose(this.menuService.createMenu(s.MenuId.CommentsCommentThreadTitle,this.thread.contextKeyService))}get commentThreadContext(){return this.registerDispose(this.menuService.createMenu(s.MenuId.CommentsCommentThreadContext,this.thread.contextKeyService))}};r.__decorate([o.Autowired(s.AbstractMenuService),r.__metadata("design:type",s.AbstractMenuService)],c.prototype,"menuService",void 0),r.__decorate([n.memoize,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],c.prototype,"commentThreadTitle",null),r.__decorate([n.memoize,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],c.prototype,"commentThreadContext",null),c=r.__decorate([o.Injectable({multiple:!0}),r.__param(0,o.Optional()),r.__metadata("design:paramtypes",[a.CommentsThread])],c),t.CommentsZoneService=c},39573:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(19745),s=i(27196),a=i(32834),c=i(36738),l=i(34865),u=i(94345),d=i(90198),h=i(63947),p=i(94184),f=i(19401),g=i(98913),m=i(97177),v=i(43849),y=a.observer((({thread:e,widget:t})=>{const{comments:i,threadHeaderTitle:r,contextKeyService:s}=e,a=l.useInjectable(o.INJECTOR_TOKEN).get(m.CommentsZoneService,[e]),g=l.useInjectable(h.ICommentsFeatureRegistry),y=n.useMemo((()=>g.getFileUploadHandler()),[]),[_,b]=n.useState(""),w=n.useMemo((()=>s.createKey("commentIsEmpty",!_)),[]),S=a.commentThreadTitle,C=a.commentThreadContext,E=n.useCallback((e=>{const{value:t}=e.target;b(t),w.set(!t)}),[]),O=n.useMemo((()=>{var t;return(null===(t=g.getProviderFeature(e.providerId))||void 0===t?void 0:t.placeholder)||`${l.localize("comments.reply.placeholder")}...`}),[]),k=n.useCallback((async e=>{if(y){const t=await y(_,e);b((e=>{const i=e+t;return w.set(!i),i}))}}),[_]);return n.createElement("div",{className:p(e.options.threadClassName,c.comment_container)},n.createElement("div",{className:p(e.options.threadHeadClassName,c.head)},n.createElement("div",{className:c.review_title},r),n.createElement(f.InlineActionBar,{menus:S,context:[{thread:e,widget:t,menuId:v.MenuId.CommentsCommentThreadTitle}],separator:"inline",type:"icon"})),n.createElement("div",{className:c.comment_body},i.length>0?n.createElement(u.CommentItem,{widget:t,commentThreadContext:C,thread:e}):n.createElement("div",null,n.createElement(d.CommentsTextArea,{focusDelay:100,initialHeight:"auto",value:_,onChange:E,placeholder:O,dragFiles:k}),n.createElement("div",{className:c.comment_bottom_actions},n.createElement(f.InlineActionBar,{className:c.comment_reply_actions,separator:"inline",type:"button",context:[{text:_,widget:t,thread:e,menuId:v.MenuId.CommentsCommentThreadContext}],menus:C})))))}));let _=class extends g.ResizeZoneWidget{constructor(e,t){super(e.monacoEditor,t.range),this._onShow=new l.Emitter,this.onShow=this._onShow.event,this._onHide=new l.Emitter,this.onHide=this._onHide.event,this._editor=e,this._wrapper=document.createElement("div"),this._isShow=!t.isCollapsed,this._container.appendChild(this._wrapper),this.observeContainer(this._wrapper);const i=this.commentsFeatureRegistry.getZoneWidgetRender();s.render(n.createElement(l.ConfigProvider,{value:this.appConfig},i?i(t,this):n.createElement(y,{thread:t,widget:this})),this._wrapper)}get coreEditor(){return this._editor}get isShow(){return this._isShow}show(){super.show(),this._isShow=!0,this._onShow.fire()}hide(){super.dispose(),this._isShow=!1,this._onHide.fire()}toggle(){this._isShow?this.hide():this.show()}applyClass(){}applyStyle(){}};r.__decorate([o.Autowired(l.AppConfig),r.__metadata("design:type",Object)],_.prototype,"appConfig",void 0),r.__decorate([o.Autowired(h.ICommentsFeatureRegistry),r.__metadata("design:type",Object)],_.prototype,"commentsFeatureRegistry",void 0),_=r.__decorate([o.Injectable({multiple:!0}),r.__metadata("design:paramtypes",[Object,Object])],_),t.CommentsZoneWidget=_},30097:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(19745),o=i(34865),s=i(63947),a=i(58407),c=i(73607),l=i(43849);let u=class extends o.Disposable{onStart(){this.registerCommentsFeature(),this.listenToCreateCommentsPanel(),this.commentsService.init()}get panelBadge(){const e=this.commentsService.commentsThreads.length;return e?e+"":""}registerCommands(e){e.registerCommand({id:s.CollapseId,label:"%comments.panel.action.collapse%",iconClass:o.getIcon("collapse-all")},{execute:()=>{this.eventBus.fire(new s.CommentPanelCollapse)}}),e.registerCommand({id:s.CloseThreadId,label:"%comments.thread.action.close%",iconClass:o.getIcon("up")},{execute:e=>{const{thread:t,widget:i}=e;t.comments.length?i.isShow&&i.toggle():t.dispose()}}),e.registerCommand({id:s.SwitchCommandReaction},{execute:e=>{this.eventBus.fire(new s.CommentReactionClick(e))}})}registerMenus(e){e.registerMenuItem(l.MenuId.CommentsCommentThreadTitle,{command:s.CloseThreadId,group:"inline",order:Number.MAX_SAFE_INTEGER})}registerToolbarItems(e){e.registerItem({id:s.CollapseId,viewId:s.CommentPanelId,command:s.CollapseId,tooltip:o.localize("comments.panel.action.collapse")})}registerCommentsFeature(){this.contributions.getContributions().forEach(((e,t)=>{this.addDispose(this.commentsService.registerCommentRangeProvider(`contribution_${t}`,{getCommentingRanges:t=>e.provideCommentingRanges(t)})),e.registerCommentsFeature&&e.registerCommentsFeature(this.commentsFeatureRegistry)}))}listenToCreateCommentsPanel(){this.commentsFeatureRegistry.getCommentsPanelOptions().defaultShow?this.commentsService.registerCommentPanel():o.Event.once(this.commentsService.onThreadsCreated)((()=>{this.commentsService.registerCommentPanel()})),this.addDispose(o.Event.debounce(this.commentsService.onThreadsChanged,(()=>{}),100)((()=>{const e=this.layoutService.getTabbarHandler(s.CommentPanelId);null==e||e.setBadge(this.panelBadge)}),this))}registerEditorFeature(e){e.registerEditorFeatureContribution({contribute:e=>this.commentsService.handleOnCreateEditor(e),provideEditorOptionsForUri:async e=>(await this.commentsService.getContributionRanges(e)).length?{lineDecorationsWidth:25,lineNumbersMinChars:5}:{}})}};r.__decorate([n.Autowired(s.ICommentsService),r.__metadata("design:type",Object)],u.prototype,"commentsService",void 0),r.__decorate([n.Autowired(c.IMainLayoutService),r.__metadata("design:type",Object)],u.prototype,"layoutService",void 0),r.__decorate([n.Autowired(s.ICommentsFeatureRegistry),r.__metadata("design:type",Object)],u.prototype,"commentsFeatureRegistry",void 0),r.__decorate([n.Autowired(s.CommentsContribution),r.__metadata("design:type",Object)],u.prototype,"contributions",void 0),r.__decorate([n.Autowired(o.IEventBus),r.__metadata("design:type",Object)],u.prototype,"eventBus",void 0),u=r.__decorate([o.Domain(o.ClientAppContribution,a.BrowserEditorContribution,o.CommandContribution,o.TabBarToolbarContribution,l.MenuContribution)],u),t.CommentsBrowserContribution=u},48445:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(81924),o=i(66905),s=i(19745),a=i(34865),c=i(58407),l=i(63947),u=i(85641),d=i(22188),h=i(44779),p=i(20276),f=i(35463),g=i(64994),m=i(28017),v=i(73607),y=i(29332),_=i(91296);let b=class extends a.Disposable{constructor(){super(...arguments),this.decorationChangeEmitter=new a.Emitter,this.threads=new Map,this.threadsChangeEmitter=new a.Emitter,this.threadsCreatedEmitter=new a.Emitter,this.rangeProviderMap=new Map,this.rangeOwner=new Map,this.providerDecorationCache=new y.LRUCache(1e4),this.shouldShowCommentsSchemes=new Set(["file","git"]),this.forceUpdateCount=0}get commentsThreads(){return[...this.threads.values()]}get isMultiCommentsForSingleLine(){var e;return!!(null===(e=this.commentsFeatureRegistry.getConfig())||void 0===e?void 0:e.isMultiCommentsForSingleLine)}get currentAuthorAvatar(){var e,t;return null===(t=null===(e=this.commentsFeatureRegistry.getConfig())||void 0===e?void 0:e.author)||void 0===t?void 0:t.avatar}get filterThreadDecoration(){var e;return null===(e=this.commentsFeatureRegistry.getConfig())||void 0===e?void 0:e.filterThreadDecoration}get onThreadsChanged(){return this.threadsChangeEmitter.event}get onThreadsCreated(){return this.threadsCreatedEmitter.event}createThreadDecoration(e){var t;const i=0===e.comments.length?this.currentAuthorAvatar:null===(t=e.comments[0].author.iconPath)||void 0===t?void 0:t.toString(),r={glyphMarginClassName:["comments-decoration","comments-thread",i?this.iconService.fromIcon("",i,g.IconType.Background):a.getIcon("message")].join(" ")};return o.ModelDecorationOptions.createDynamic(r)}createHoverDecoration(){const e={linesDecorationsClassName:["comments-decoration","comments-add",a.getIcon("message")].join(" ")};return o.ModelDecorationOptions.createDynamic(e)}init(){this.registerDecorationProvider()}handleOnCreateEditor(e){const t=new a.Disposable;t.addDispose(e.monacoEditor.onMouseDown((t=>{if(t.target.type===n.editor.MouseTargetType.GUTTER_LINE_DECORATIONS&&t.target.element&&t.target.element.className.indexOf("comments-add")>-1){const{target:i}=t;if(i&&i.range){const{range:t}=i;if(this.commentsThreads.some((i=>0===i.comments.length&&i.uri.isEqual(e.currentUri)&&i.range.startLineNumber===t.startLineNumber)))return;this.createThread(e.currentUri,t).show(e)}}else if(t.target.type===n.editor.MouseTargetType.GUTTER_GLYPH_MARGIN&&t.target.element&&t.target.element.className.indexOf("comments-thread")>-1){const{target:i}=t;if(i&&i.range){const{range:t}=i,r=this.commentsThreads.filter((i=>i.uri.isEqual(e.currentUri)&&i.range.startLineNumber===t.startLineNumber));if(r.length){r.some((t=>t.isShowWidget(e)))?r.forEach((t=>t.hide(e))):r.forEach((t=>t.show(e)))}}}})));let i=[];return t.addDispose(e.monacoEditor.onMouseMove(_((async t=>{const r=e.currentUri,n=t.target.range;i=r&&n&&await this.shouldShowHoverDecoration(r,n)?e.monacoEditor.deltaDecorations(i,[{range:a.positionToRange(n.startLineNumber),options:this.createHoverDecoration()}]):e.monacoEditor.deltaDecorations(i,[])}),10))),t.addDispose(e.monacoEditor.onMouseLeave(_((()=>{i=e.monacoEditor.deltaDecorations(i,[])}),10))),t}async shouldShowHoverDecoration(e,t){if(!this.shouldShowCommentsSchemes.has(e.scheme))return!1;const i=(await this.getContributionRanges(e)).some((e=>t.startLineNumber>=e.startLineNumber&&t.startLineNumber<=e.endLineNumber)),r=this.isMultiCommentsForSingleLine||!this.commentsThreads.some((i=>i.uri.isEqual(e)&&i.range.startLineNumber===t.startLineNumber));return i&&r}createThread(e,t,i={comments:[],readOnly:!1}){const r=this.getProviderIdsByLine(t.startLineNumber)[0],n=this.injector.get(u.CommentsThread,[e,t,r,i]);return n.onDispose((()=>{this.threads.delete(n.id),this.threadsChangeEmitter.fire(n),this.decorationChangeEmitter.fire(e)})),this.threads.set(n.id,n),this.addDispose(n),this.threadsChangeEmitter.fire(n),this.threadsCreatedEmitter.fire(n),this.decorationChangeEmitter.fire(e),n}getThreadsByUri(e){return this.commentsThreads.filter((t=>t.uri.isEqual(e))).sort(((e,t)=>e.range.startLineNumber-t.range.startLineNumber))}forceUpdateTreeNodes(){this.forceUpdateCount++}get commentsTreeNodes(){let e=[];const t=[...this.threads.values()].filter((e=>e.comments.length)),i=p(t,(e=>e.uri));Object.keys(i).forEach((t=>{const r=i[t];if(0===r.length)return;const n=r[0],o=n.uri,s=f.dirname(o.path.toString().replace(this.appConfig.workspaceDir,"")),a=Object.assign(Object.assign({id:t,name:o.displayName,uri:o,description:s.replace(/^\//,""),parent:void 0,thread:n},r.length&&{expanded:!0,children:[]}),{_forceUpdateCount:this.forceUpdateCount});e.push(a),r.forEach((t=>{var i;if(0===t.comments.length)return;const[r,...n]=t.comments,o=Object.assign(Object.assign({id:r.id,name:r.author.name,iconStyle:{marginRight:5,backgroundSize:"14px 14px"},icon:this.iconService.fromIcon("",null===(i=r.author.iconPath)||void 0===i?void 0:i.toString(),g.IconType.Background),description:r.body,uri:t.uri,parent:a,depth:1,thread:t},n.length&&{expanded:!0,children:[]}),{comment:r}),s=n.map((e=>{var i;return{id:e.id,name:e.author.name,description:e.body,uri:t.uri,iconStyle:{marginRight:5,backgroundSize:"14px 14px"},icon:this.iconService.fromIcon("",null===(i=e.author.iconPath)||void 0===i?void 0:i.toString(),g.IconType.Background),parent:o,depth:2,thread:t,comment:e}}));e.push(o),e.push(...s)}))}));for(const t of this.commentsFeatureRegistry.getCommentsPanelTreeNodeHandlers())e=t(e);return e}async getContributionRanges(e){const t=this.providerDecorationCache.get(e.toString());if(t)return await t.promise;const i=this.documentService.getModelReference(e),r=[];for(const e of this.rangeProviderMap){const[t,n]=e;r.push((async()=>{const e=await n.getCommentingRanges(null==i?void 0:i.instance);return e&&e.length&&this.rangeOwner.set(t,e),e})())}const n=new a.Deferred;this.providerDecorationCache.set(e.toString(),n);const o=await Promise.all(r);null==i||i.dispose();const s=h(o).filter(Boolean);return n.resolve(s),s}registerDecorationProvider(){this.addDispose(this.editorDecorationCollectionService.registerDecorationProvider({schemes:[...this.shouldShowCommentsSchemes.values()],key:"comments",onDidDecorationChange:this.decorationChangeEmitter.event,provideEditorDecoration:e=>this.commentsThreads.map((t=>(t.uri.isEqual(e)?t.showWidgetsIfShowed():t.hideWidgetsByDispose(),t))).filter((t=>{const i=t.uri.isEqual(e);return this.filterThreadDecoration?i&&this.filterThreadDecoration(t):i})).map((e=>({range:e.range,options:this.createThreadDecoration(e)})))}))}registerCommentPanel(){this.layoutService.getTabbarHandler(l.CommentPanelId)||this.layoutService.collectTabbarComponent([{id:l.CommentPanelId,component:m.CommentsPanel}],Object.assign({badge:this.panelBadge,containerId:l.CommentPanelId,title:a.localize("comments").toUpperCase(),hidden:!1,activateKeyBinding:"ctrlcmd+shift+c"},this.commentsFeatureRegistry.getCommentsPanelOptions()),"bottom")}get panelBadge(){const e=this.commentsThreads.length;return e?e+"":""}registerCommentRangeProvider(e,t){return this.rangeProviderMap.set(e,t),a.Disposable.create((()=>{this.rangeProviderMap.delete(e),this.rangeOwner.delete(e),this.providerDecorationCache.clear()}))}forceUpdateDecoration(){var e,t;const i=null===(e=this.workbenchEditorService.currentEditor)||void 0===e?void 0:e.currentUri;i&&this.decorationChangeEmitter.fire(i);const r=null===(t=this.workbenchEditorService.currentEditorGroup)||void 0===t?void 0:t.diffEditor.originalEditor.currentUri;r&&this.decorationChangeEmitter.fire(r)}getProviderIdsByLine(e){const t=[];if(1===this.rangeOwner.size)return[this.rangeOwner.keys().next().value];for(const i of this.rangeOwner){const[r,n]=i;n&&n.some((t=>t.startLineNumber<=e&&e<=t.endLineNumber))&&t.push(r)}return t}};r.__decorate([s.Autowired(s.INJECTOR_TOKEN),r.__metadata("design:type",s.Injector)],b.prototype,"injector",void 0),r.__decorate([s.Autowired(a.AppConfig),r.__metadata("design:type",Object)],b.prototype,"appConfig",void 0),r.__decorate([s.Autowired(c.IEditorDecorationCollectionService),r.__metadata("design:type",Object)],b.prototype,"editorDecorationCollectionService",void 0),r.__decorate([s.Autowired(g.IIconService),r.__metadata("design:type",Object)],b.prototype,"iconService",void 0),r.__decorate([s.Autowired(l.ICommentsFeatureRegistry),r.__metadata("design:type",Object)],b.prototype,"commentsFeatureRegistry",void 0),r.__decorate([s.Autowired(c.IEditorDocumentModelService),r.__metadata("design:type",Object)],b.prototype,"documentService",void 0),r.__decorate([s.Autowired(v.IMainLayoutService),r.__metadata("design:type",Object)],b.prototype,"layoutService",void 0),r.__decorate([s.Autowired(c.WorkbenchEditorService),r.__metadata("design:type",c.WorkbenchEditorService)],b.prototype,"workbenchEditorService",void 0),r.__decorate([d.observable,r.__metadata("design:type",Object)],b.prototype,"threads",void 0),r.__decorate([d.observable,r.__metadata("design:type",Object)],b.prototype,"forceUpdateCount",void 0),r.__decorate([d.computed,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],b.prototype,"commentsThreads",null),r.__decorate([a.memoize,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],b.prototype,"isMultiCommentsForSingleLine",null),r.__decorate([a.memoize,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],b.prototype,"currentAuthorAvatar",null),r.__decorate([a.memoize,r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[])],b.prototype,"filterThreadDecoration",null),r.__decorate([d.action,r.__metadata("design:type",Function),r.__metadata("design:paramtypes",[]),r.__metadata("design:returntype",void 0)],b.prototype,"forceUpdateTreeNodes",null),r.__decorate([d.computed,r.__metadata("design:type",Array),r.__metadata("design:paramtypes",[])],b.prototype,"commentsTreeNodes",null),b=r.__decorate([s.Injectable()],b),t.CommentsService=b},60398:(e,t,i)=>{"use strict";const r=i(70655),n=i(19745),o=i(34865),s=i(48445),a=i(6129),c=i(30097),l=i(63947);i(36738);let u=class extends o.BrowserModule{constructor(){super(...arguments),this.contributionProvider=l.CommentsContribution,this.providers=[{token:l.ICommentsService,useClass:s.CommentsService},{token:l.ICommentsFeatureRegistry,useClass:a.CommentsFeatureRegistry},c.CommentsBrowserContribution]}};u=r.__decorate([n.Injectable()],u),t.b=u},34116:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.markdownCss="\nh1, h2, h3, h4, h5, h6, p {\n color: var(--foreground);\n word-break: break-all;\n}\npre:first-child,\np:first-child {\n margin-top: 0;\n}\npre:last-child,\np:last-child {\n margin-bottom: 0;\n}\npre {\n background-color: var(--textBlockQuote-background);\n border-color: var(--textBlockQuote-border);\n}\nimg {\n max-width: 100%;\n max-height: 100%;\n}\na {\n color: var(--textLink-foreground);\n}\n"},4626:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.getMentionBoxStyle=({maxRows:e=10,minRows:t=2})=>({control:{fontSize:12},highlighter:{overflow:"hidden"},input:{margin:0},"&multiLine":{control:{border:"none"},highlighter:{padding:9},input:{boxSizing:"content-box",padding:"8px 0",lineHeight:"20px",minHeight:20*t+"px",maxHeight:20*e+"px",outline:0,border:0,overflowY:"auto"}},suggestions:{dataA:"aaa",list:{backgroundColor:"var(--kt-selectDropdown-background)",fontSize:12,maxHeight:200,overflowY:"auto"},item:{backgroundColor:"var(--kt-selectDropdown-background)",color:"var(--kt-selectDropdown-foreground)",padding:"4px 16px","&focused":{backgroundColor:"var(--kt-selectDropdown-selectionBackground)"}}}})},63947:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(34865);t.toRange=r.positionToRange,function(e){e[e.Editor=0]="Editor",e[e.Preview=1]="Preview"}(t.CommentMode||(t.CommentMode={})),function(e){e[e.Collapsed=0]="Collapsed",e[e.Expanded=1]="Expanded"}(t.CommentThreadCollapsibleState||(t.CommentThreadCollapsibleState={})),function(e){e.Thread="thread",e.Empty="empty"}(t.CommentGutterType||(t.CommentGutterType={})),t.CommentPanelId="CommentPanel",t.ICommentsFeatureRegistry=Symbol("ICommentsFeatureRegistry"),t.CommentsContribution=Symbol("CommentsContribution"),t.ICommentsService=Symbol("ICommentsService"),t.CollapseId="comments.panel.action.collapse",t.CloseThreadId="comments.thread.action.close",t.SwitchCommandReaction="comments.comment.action.switchCommand";class n extends r.BasicEvent{}t.CommentPanelCollapse=n;class o extends r.BasicEvent{}t.CommentReactionClick=o},12047:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});i(70655).__exportStar(i(63947),t)},69035:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184);i(83919),t.Badge=e=>{var{className:t,children:i}=e,s=r.__rest(e,["className","children"]);return n.createElement("span",Object.assign({className:o("kt-badge",t)},s),i)}},73258:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(82891),s=i(94184);i(84975);const a=i(84151),c=()=>n.createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false",className:"kt-button-anticon-spin","data-icon":"loading",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},n.createElement("path",{d:"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 0 0-94.3-139.9 437.71 437.71 0 0 0-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"}));function l(){}t.Button=function(e){var{children:t,loading:i,className:u,type:d="primary",htmlType:h,size:p,ghost:f=!1,onClick:g,disabled:m,block:v,iconClass:y,icon:_,more:b,moreIconClass:w,menu:S,title:C,onVisibleChange:E}=e,O=r.__rest(e,["children","loading","className","type","htmlType","size","ghost","onClick","disabled","block","iconClass","icon","more","moreIconClass","menu","title","onVisibleChange"]);const k=s.default("kt-button",u,{[`kt-${d}-button-loading`]:i,[`ghost-${d}-button`]:f&&!i&&"link"!==d,[`${d}-button`]:d,[`${p}-button-size`]:p,"ghost-button":f&&"link"!==d,"block-button":v}),D=s.default(u,{"kt-clickable-icon":!!g});if("icon"===d)return n.createElement(a.Icon,Object.assign({tooltip:C,disabled:m,icon:_,onClick:i||m?l:g,className:D,iconClass:y},O));const M=y?n.createElement(a.Icon,{iconClass:y,disabled:m}):null;return b?n.createElement(o.default,{className:"kt-menu",overlay:S,trigger:["click"],onVisibleChange:E},n.createElement("button",Object.assign({},O,{disabled:m,className:k,type:h,onClick:i||m?l:g}),i&&"link"!==d&&n.createElement(c,null),M&&M,t,b&&n.createElement(a.Icon,{iconClass:w||a.getKaitianIcon("down"),className:"kt-button-secondary-more"}))):n.createElement("button",Object.assign({},O,{disabled:m,className:k,type:h,onClick:i||m?l:g}),i&&"link"!==d&&n.createElement(c,null),M&&M,t)}},64528:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(99422);i(15014);const a=()=>n.createElement("svg",{fill:"currentColor",width:"1em",height:"1em",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},n.createElement("path",{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474c-6.1-7.7-15.3-12.2-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}));t.CheckBox=e=>{var{insertClass:t,className:i,label:c,size:l="default",disabled:u,checked:d=!1}=e,h=r.__rest(e,["insertClass","className","label","size","disabled","checked"]);s.warning(!t,"`insertClass` was deprecated, please use `className` instead");const p=o("kt-checkbox",t,i,{"kt-checkbox-large":"large"===l,"kt-checkbox-disabled":u});return n.createElement("label",{className:p},n.createElement("span",{className:"kt-checkbox-lump"},n.createElement("input",Object.assign({type:"checkbox",disabled:u,checked:d},h)),n.createElement("span",{className:"kt-checkbox-icon"},n.createElement(a,null))),c||" ")},t.CheckBox.displayName="KTCheckBox"},64911:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Error=0]="Error",e[e.Warning=1]="Warning",e[e.Info=2]="Info",e[e.Empty=3]="Empty"}(t.MessageType||(t.MessageType={}))},60313:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(94184),o=i(85366),s=i(84151),a=i(73258),c=i(64911);i(29058);const l=({onCancel:e,onOk:t,cancelText:i,okText:n})=>r.createElement(r.Fragment,null,r.createElement(a.Button,{size:"large",onClick:e,type:"secondary"},i||"取消"),r.createElement(a.Button,{size:"large",onClick:t},n||"确定"));t.Dialog=({visible:e,onClose:t,closable:i,afterClose:u,messageType:d,icon:h,message:p,buttons:f,type:g="confirm",title:m,onOk:v,onCancel:y,okText:_,cancelText:b,getContainer:w})=>{const{getIcon:S}=r.useContext(s.IconContext);return r.createElement(o.Overlay,{visible:e,onClose:t,title:"basic"===g?m:null,closable:"basic"===g,getContainer:w,footer:"basic"===g?f||r.createElement(l,{onCancel:y,onOk:v,okText:_,cancelText:b}):void 0,afterClose:u},r.createElement(r.Fragment,null,r.createElement("div",{className:"kt-dialog-content"},h&&r.createElement("div",{style:{color:h.color},className:n("kt-dialog-icon",s.getKaitianIcon(h.className)||S(h.className))}),r.createElement("div",{className:"kt-dialog-content_area"},"basic"!==g&&m&&r.createElement("p",{className:"kt-dialog-content_title"},m),"string"==typeof p?r.createElement("span",{className:"kt-dialog-message"},p):p),i&&"basic"!==g&&r.createElement("button",{className:n("kt-dialog-closex",s.getKaitianIcon("close")),onClick:t})),d!==c.MessageType.Empty&&"basic"!==g&&r.createElement("div",{className:"kt-dialog-buttonWrap"},"confirm"===g?f||r.createElement(l,{onCancel:y,onOk:v,okText:_,cancelText:b}):r.createElement(a.Button,{size:"large",onClick:t},"知道了"))))}},34810:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(94431),a=i(28652);i(41508),t.IconContext=n.createContext({getIcon:(e,t)=>e}),t.IconContextProvider=function(e){return n.createElement(t.IconContext.Provider,{value:e.value},n.createElement(t.IconContext.Consumer,null,(t=>e.value===t?e.children:null)))};const c=function(e,i){const{size:c="small",loading:l,icon:u,iconClass:d,className:h,tooltip:p,rotate:f,anim:g,fill:m,disabled:v,onClick:y,children:_}=e,b=r.__rest(e,["size","loading","icon","iconClass","className","tooltip","rotate","anim","fill","disabled","onClick","children"]),w={rotate:f,anim:g,fill:m};let S;if(u)if(s.defaultIconMap[u])S=a.getKaitianIcon(u,w);else{const{getIcon:e}=n.useContext(t.IconContext);S=e(u,w)}else S=d;return n.createElement("span",Object.assign({},b,{title:p,onClick:y,ref:i,className:o.default("kt-icon",S,h,{"kt-icon-loading":l,"kt-icon-disabled":!!v,[`kt-icon-${c}`]:!!c,"kt-icon-clickable":!!y})}),_)};t._InternalIcon=n.forwardRef(c),t.Icon=n.forwardRef(c)},60146:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(34810),a=i(28652),c=new Set;function l(e,t=0){const i=e[t];if(r=i,Boolean("string"==typeof r&&r.length&&!c.has(r))){const r=document.createElement("script");r.setAttribute("src",i),r.setAttribute("data-namespace",i),e.length>t+1&&(r.onload=()=>{l(e,t+1)},r.onerror=()=>{l(e,t+1)}),c.add(i),document.body.appendChild(r)}var r}const u={width:"1em",height:"1em",fill:"currentColor"};t.createFromIconfontCN=function(e={}){const{scriptUrl:t,extraCommonProps:i={}}=e;t&&"undefined"!=typeof document&&"undefined"!=typeof window&&"function"==typeof document.createElement&&(Array.isArray(t)?l(t.reverse()):l([t]));const c=n.forwardRef(((e,t)=>{const{icon:c,children:l,rotate:d,anim:h,fill:p,className:f=""}=e,g=r.__rest(e,["icon","children","rotate","anim","fill","className"]),m={rotate:d,anim:h,fill:p};let v=null;c&&(v=n.createElement("svg",Object.assign({},u,{focusable:"false"}),n.createElement("use",{xlinkHref:`#${c}`}))),l&&(v=l);const y=a.getIconShapeClxList(m);return n.createElement(s._InternalIcon,Object.assign({},i,g,{className:o(f,y),ref:t}),v)}));return c.displayName="Iconfont",c}},94431:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(99422),n=i(69557);t.defaultIconfont=n.defaultIconfont;const o={"folder-fill-open":"folder-fill","search-close":"close-square",fold:"collapse-all","setting-general":"setting","setting-editor":"codelibrary-fill","setting-file":"file-text","setting-extension":"extension","run-debug":"start","toggle-breakpoints":"deactivate-breakpoints",withdraw:"fallback",terminate1:"stop",stop1:"stop",add:"plus",rundebug:"start",terminate:"stop"},s=Object.assign({},n.defaultIconfont,o);t.defaultIconMap=new Proxy(s,{get(e,t){const i=o[t];return r.default(!i,`Icon '${t}' was a typo, please use '${i}' instead`),e[t]}});t.iconManager=new class{constructor(){this._ktIconPrefixes=[],this._iconMap={}}update(e,t){this._iconMap[e]=t,this._ktIconPrefixes.push(e)}getIconClx(e){let t=this._ktIconPrefixes.length;for(;!this._iconMap[this._ktIconPrefixes[--t]][e]&&0!==t;);const i=this._iconMap[this._ktIconPrefixes[t]][e];return i?[`${this._ktIconPrefixes[t]}${i}`]:(r.default(!1,"图标库缺失图标:"+e),[])}};t.iconManager.update("kaitian-icon kticon-",t.defaultIconMap)},69557:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultIconfont={"Gitlab-fill":"Gitlab-fill",LinkE:"LinkE",PR:"PR",ab:"ab",abl:"abl","add-comments":"add-comments",anymock:"anymock","arrow-down":"arrow-down","arrow-right":"arrow-right",arrowdown:"arrowdown",arrowup:"arrowup",basement:"basement","basement-fileicon":"basement-fileicon",bell:"bell",branches:"branches","breakpoint-activate":"breakpoint-activate","breakpoint-deactivate":"breakpoint-deactivate","breakpoint-disabled":"breakpoint-disabled","breakpoint-enabled":"breakpoint-enabled","breakpoint-stop":"breakpoint-stop","breakpoint-stop-before":"breakpoint-stop-before","browser-preview":"browser-preview","bulb-fill":"bulb-fill","caret-right":"caret-right",check:"check","check-circle-fill":"check-circle-fill","check-close-circle-o":"check-close-circle-o","check-square-fill":"check-square-fill","check-square-o":"check-square-o",clear:"clear",close:"close","close-all":"close-all","close-circle":"close-circle","close-circle-fill":"close-circle-fill",close1:"close1",close_square:"close_square","cloud-download":"cloud-download","cloud-server":"cloud-server",code:"code","codelibrary-fill":"codelibrary-fill","collapse-all":"collapse-all","compass-fill":"compass-fill","content-search":"content-search",continue:"continue",control:"control","control-fill":"control-fill","dashboard-fill":"dashboard-fill","deactivate-breakpoints":"deactivate-breakpoints",debug:"debug",delete:"delete",deploy:"deploy",detail:"detail",disconnect:"disconnect","dock-down":"dock-down","dock-right":"dock-right",doubleright:"doubleright",down:"down",download:"download",drag:"drag",edit:"edit",editor:"editor",ellipsis:"ellipsis",embed:"embed",error:"error",execute:"execute",expand:"expand","expand-all":"expand-all",experiment:"experiment",explorer:"explorer",extension:"extension",eye:"eye","eye-close":"eye-close","file-copy":"file-copy","file-default":"file-default","file-exclamation":"file-exclamation","file-text":"file-text",focus:"focus",folder:"folder","folder-default":"folder-default","folder-fill":"folder-fill","folder-open":"folder-open","folder-open-fill":"folder-open-fill","follow-cursor":"follow-cursor",fullscreen:"fullscreen","fullscreen-exit":"fullscreen-exit","github-fill":"github-fill",gitlab:"gitlab","global-search":"global-search",huoban:"huoban","huoban-blue":"huoban-blue","info-circle":"info-circle","info-circle-fill":"info-circle-fill",kaitian:"kaitian",keyboard:"keyboard",layout:"layout",layout1:"layout1",left:"left","left-right-subfield":"left-right-subfield",line:"line",link:"link",max:"max",message:"message",min:"min",minus:"minus","minus-circle-fill":"minus-circle-fill",mobile:"mobile","mobile-phone":"mobile-phone",more:"more","new-file":"new-file","new-folder":"new-folder",open:"open","open-changes":"open-changes",openfile:"openfile",pause:"pause",plus:"plus","project-information":"project-information","question-circle":"question-circle","question-circle-o":"question-circle-o",refresh:"refresh",regex:"regex",reload:"reload",replace:"replace",repository:"repository",retrieval:"retrieval",right:"right",rollback:"rollback","save-all":"save-all",scm:"scm",search:"search",setting:"setting",sever:"sever",share:"share",shrink:"shrink",smile:"smile",start:"start",step:"step","step-in":"step-in","step-out":"step-out",stop:"stop",swap:"swap",sync:"sync",team:"team",terminal:"terminal","time-circle":"time-circle","time-circle-fill":"time-circle-fill",toolkit:"toolkit",tree:"tree",undock:"undock",unmax:"unmax",unorderedlist:"unorderedlist",up:"up","up-down-subfield":"up-down-subfield",wait:"wait","warning-circle":"warning-circle","warning-circle-fill":"warning-circle-fill","window-maximize":"window-maximize"}},84151:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655);r.__exportStar(i(34810),t),r.__exportStar(i(28652),t);var n=i(60146);t.createFromIconfontCN=n.createFromIconfontCN},28652:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(94431);!function(e){e[e.rotate_90=0]="rotate_90",e[e.rotate_180=1]="rotate_180",e[e.rotate_270=2]="rotate_270",e[e.flip_horizontal=3]="flip_horizontal",e[e.flip_vertical=4]="flip_vertical",e[e.flip_both=5]="flip_both"}(t.ROTATE_TYPE||(t.ROTATE_TYPE={})),function(e){e[e.spin=0]="spin",e[e.pulse=1]="pulse"}(t.ANIM_TYPE||(t.ANIM_TYPE={}));const n=["rotate-90","rotate-180","rotate-270","flip-horizontal","flip-vertical","flip-both"],o=["spin","pulse"];function s(e){const{rotate:t,anim:i,fill:r}=e||{},s=[];return void 0!==t&&s.push(`iconfont-${n[t]}`),void 0!==i&&s.push(`iconfont-anim-${o[i]}`),r&&s.push("toggled"),s}t.updateKaitianIconMap=function(e,t){r.iconManager.update(e,t)},t.getIconShapeClxList=s,t.getKaitianIcon=function(e,t){const i=r.iconManager.getIconClx(e),n=s(t);return i.push(...n),i.join(" ")}},88774:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655);i(90637),r.__exportStar(i(73258),t),r.__exportStar(i(69035),t),r.__exportStar(i(51777),t),r.__exportStar(i(64528),t),r.__exportStar(i(7512),t),r.__exportStar(i(36466),t),r.__exportStar(i(85366),t),r.__exportStar(i(60313),t),r.__exportStar(i(84151),t),r.__exportStar(i(97839),t),r.__exportStar(i(17087),t),r.__exportStar(i(19713),t),r.__exportStar(i(30185),t),r.__exportStar(i(10014),t),r.__exportStar(i(24458),t),r.__exportStar(i(64911),t),r.__exportStar(i(1544),t),r.__exportStar(i(95512),t)},24292:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(99422),a=i(84151);function c(e,t,i){if("function"==typeof i){let r=t;if("click"===t.type){r=Object.create(t),r.target=e,r.currentTarget=e;const n=e.value;return e.value="",i(r),void(e.value=n)}i(r)}}i(1723),t.Input=n.forwardRef(((e,t)=>{const{defaultValue:i,className:l,wrapperStyle:u,size:d="default",controls:h,onChange:p,selection:f,addonBefore:g,addonAfter:m,persistFocus:v=!0,hasClear:y,afterClear:_,value:b="",onValueChange:w,onPressEnter:S,onKeyDown:C}=e,E=r.__rest(e,["defaultValue","className","wrapperStyle","size","controls","onChange","selection","addonBefore","addonAfter","persistFocus","hasClear","afterClear","value","onValueChange","onPressEnter","onKeyDown"]);s.default(!h,"[@ali/ide-components Input]: `controls` was deprecated, please use `addonAfter` instead");const O=n.useRef(null),[k,D]=n.useState(!1),[M,x]=n.useState((()=>(null!=b?b:i)||"")),[T,A]=n.useState((()=>(null!=b?b:i)||""));n.useImperativeHandle(t,(()=>O.current)),n.useEffect((()=>{f&&void 0!==f.start&&!k&&O.current.setSelectionRange(f.start,f.end)}),[f,k]),n.useEffect((()=>{null!=b&&(b!==T&&b!==M&&x(b),b!==T&&A(b))}),[b]);const I=e=>{x(e),"function"==typeof w&&w(e),k||D(!0)},P=m||h,R=v?{onMouseDown:e=>{e.preventDefault()}}:{},L=(e,t)=>e?n.createElement("div",Object.assign({className:o("kt-input-addon",t)},R),n.Children.map(e,(e=>n.isValidElement(e)?n.cloneElement(e,R):null))):null,N=o("kt-input",l,{[`kt-input-${d}`]:d,"kt-input-disabled":e.disabled});return n.createElement("div",{className:N,style:u},L(g,"kt-input-addon-before"),n.createElement("div",{className:"kt-input-box"},n.createElement("input",Object.assign({ref:O,type:"text",autoCapitalize:"off",autoCorrect:"off",autoComplete:"off",spellCheck:!1},E,{value:M,onChange:e=>{I(e.target.value),c(O.current,e,p)},onKeyDown:e=>{13===e.keyCode&&"function"==typeof S&&S(e),"function"==typeof C&&C(e)}})),y&&M&&n.createElement(a.Icon,Object.assign({className:"kt-input-clear",icon:"close-circle-fill",onClick:e=>{e.preventDefault(),I(""),c(O.current,e,p),"function"==typeof _&&_()}},R))),L(P,"kt-input-addon-after"))})),t.Input.displayName="KTInput"},35263:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(24292);class o extends r.Component{constructor(){super(...arguments),this.placeholderInputRef=r.createRef()}render(){const e=Object.assign({},this.props);return delete e.inputElement,delete e.innerRef,r.createElement(n.Input,Object.assign({},e,{type:"text",id:this.props.id,ref:this.placeholderInputRef}))}componentDidMount(){const{innerRef:e,inputElement:t}=this.props;this.placeholderInputRef.current.parentElement.replaceChild(t,this.placeholderInputRef.current),this.applyAttributes(),t.focus(),"function"==typeof e?e(t):null!==e&&"object"==typeof e&&null===e.current&&(e.current=t)}UNSAFE_componentWillUnmount(){const{innerRef:e,inputElement:t}=this.props;t.parentElement.replaceChild(this.placeholderInputRef.current,t),null!==e&&"object"==typeof e&&e.current&&(e.current=null)}shouldComponentUpdate(e){return this.applyAttributes(e),!1}applyAttributes(e=this.props){const{className:t,id:i,inputElement:r,style:n}=e;if("string"==typeof t&&(r.className=t),"string"==typeof i&&(r.id=i),null!==n&&"object"==typeof n)for(const e in n)"string"==typeof n[e]&&r[e]&&(r[e]=n[e])}}const s=r.forwardRef(((e,t)=>r.createElement(o,Object.assign({},e,{innerRef:t}))));t.bindInputElement=function(e){return t=>r.createElement(s,Object.assign({},t,{inputElement:e}))}},67471:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804);t.TextArea=()=>r.createElement("textarea",{name:"",id:"",cols:30,rows:10}),t.TextArea.displayName="KTTextArea"},57659:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(99422),a=i(24292);var c;i(26677),function(e){e[e.INFO=1]="INFO",e[e.WRANING=0]="WRANING",e[e.ERROR=2]="ERROR",e[e.WARNING=3]="WARNING"}(c=t.VALIDATE_TYPE||(t.VALIDATE_TYPE={})),t.ValidateInput=n.forwardRef(((e,t)=>{var{className:i,validate:l,onChange:u,onValueChange:d,validateMessage:h,popup:p=!0}=e,f=r.__rest(e,["className","validate","onChange","onValueChange","validateMessage","popup"]);const[g,m]=n.useState();n.useEffect((()=>{m(h)}),[h]),s.default(!g||g.type!==c.WRANING,"`VALIDATE_TYPE.WRANING` was a wrong typo, please use `VALIDATE_TYPE.WARNING` instead");const v=o({"validate-error":g&&g.type===c.ERROR,"validate-warning":g&&[c.WRANING,c.WARNING].includes(g.type),"validate-info":g&&g.type===c.INFO});return n.createElement("div",{className:o("input-box",{popup:p})},n.createElement(a.Input,Object.assign({type:"text",ref:t,className:o(i,g,v),onChange:e=>{let t;if(t="number"===e.target.type?e.target.valueAsNumber:e.target.value,"function"==typeof l){const e=l(t);m(e)}"function"==typeof u&&u(e),"function"==typeof d&&d(t)}},f)),(()=>{if(g&&g.message)return n.createElement("div",{className:o("validate-message",v,{popup:p})},g.message)})())})),t.ValidateInput.displayName="KTValidateInput"},51777:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655);r.__exportStar(i(67471),t),r.__exportStar(i(24292),t),r.__exportStar(i(57659),t),r.__exportStar(i(35263),t)},95512:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(99422),o=i(84151);function s(e){return r.createElement(t.LocalizeContext.Provider,{value:e.value},r.createElement(t.LocalizeContext.Consumer,null,(t=>e.value===t?e.children:null)))}t.LocalizeContext=r.createContext({localize:e=>(n.warning(!1,"Using the default localize fn"),"")}),t.LocalizeContext.displayName="LocalizeContext",t.LocalizeContextProvider=s,t.ComponentContextProvider=function(e){return r.createElement(o.IconContextProvider,{value:{getIcon:e.value.getIcon}},r.createElement(s,{value:{localize:e.value.localize}},e.children))}},19713:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(11187);function n(e){return(t,i)=>new Promise((n=>{r.default[e](t,i,n)}))}i(29883),t.message={success:n("success"),error:n("error"),info:n("info"),warning:n("warning"),loading:n("loading")}},97839:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(94184),n=i(63804),o=i(16318),s=i(73258);i(44835);const a=i(64911),c={[a.MessageType.Info]:15e3,[a.MessageType.Warning]:18e3,[a.MessageType.Error]:2e4};o.default.config({placement:"bottomRight"}),t.notification=o.default;const l=new Map;function u(e,i){switch(e){case a.MessageType.Info:t.notification.info(i);break;case a.MessageType.Warning:t.notification.warning(i);break;case a.MessageType.Error:t.notification.error(i);break;default:t.notification.open(i)}}t.open=function(e,t,i=!0,d,h,p,f,g){return new Promise((m=>{const v={key:d,className:r.default("kt-notification-wrapper",{"kt-notification-info":t===a.MessageType.Info,"kt-notification-error":t===a.MessageType.Error,"kt-notification-warn":t===a.MessageType.Warning}),duration:void 0!==f?null:c[t]/1e3,onClose:()=>{g&&g(),l.delete(d),m(void 0)},btn:h?h.map(((e,t)=>n.createElement(s.Button,{className:r.default("kt-notification-button"),size:"small",ghost:0===t,onClick:()=>{m(e),o.default.close(d)},key:e},e))):null,message:e,description:p};l.set(d,[t,v]),i||(v.closeIcon=n.createElement("span",null)),u(t,v)}))},t.close=function(e){t.notification.close(e)},t.update=function(e,t){const i=l.get(e);u(i[0],Object.assign(Object.assign({},i[1]),{key:e,message:t}))}},85366:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184),s=i(56697);i(55465),t.Overlay=e=>{var{maskClosable:t=!1,closable:i=!0,className:a,onClose:c,children:l,footer:u,title:d,getContainer:h}=e,p=r.__rest(e,["maskClosable","closable","className","onClose","children","footer","title","getContainer"]);return n.createElement(s.default,Object.assign({footer:u||null,maskClosable:t,closable:i,onCancel:c,title:d,getContainer:h,className:o("kt-overlay",a)},p),l)}},17087:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(94184);i(94410);const s=i(73258);var a,c;function l(){}!function(e){e[e.hover=0]="hover",e[e.program=1]="program"}(a=t.PopoverTriggerType||(t.PopoverTriggerType={})),function(e){e.top="top",e.bottom="bottom",e.left="left",e.right="right"}(c=t.PopoverPosition||(t.PopoverPosition={})),t.Popover=e=>{var{delay:t,children:i,trigger:u,display:d,id:h,insertClass:p,popoverClass:f,content:g,position:m=c.top,title:v,titleClassName:y,action:_,onClickAction:b}=e,w=r.__rest(e,["delay","children","trigger","display","id","insertClass","popoverClass","content","position","title","titleClassName","action","onClickAction"]);const S=n.useRef(null),C=n.useRef(null),E=u||a.hover;let O,k;function D(){C.current&&S.current&&(clearTimeout(O),C.current.style.display="block",setTimeout((()=>{if(!S.current||!C.current)return;const{left:e,top:t,width:i,height:r}=S.current.getBoundingClientRect(),n=C.current.getBoundingClientRect();if(m===c.top){const r=e-n.width/2+i/2,o=t-n.height-7;C.current.style.left=(r<0?0:r)+"px",C.current.style.top=(o<0?0:o)+"px",C.current.style.visibility="visible"}else if(m===c.bottom){const o=e-n.width/2+i/2,s=t+r+7;C.current.style.left=(o<0?0:o)+"px",C.current.style.top=(s<0?0:s)+"px",C.current.style.visibility="visible"}else if(m===c.left){const i=e-n.width-7,o=t-n.height/2+r/2;C.current.style.left=(i<0?0:i)+"px",C.current.style.top=(o<0?0:o)+"px",C.current.style.visibility="visible"}else if(m===c.right){const o=e+i+7,s=t-n.height/2+r/2;C.current.style.left=(o<0?0:o)+"px",C.current.style.top=(s<0?0:s)+"px",C.current.style.visibility="visible"}})))}return n.useEffect((()=>{if(!C.current)return;const e=document.body.querySelector(`body > #${h}`);return e&&document.body.removeChild(e),C.current.style.display="none",document.body.appendChild(C.current),d&&D(),()=>{const e=document.body.querySelector(`body > #${h}`);e&&document.body.removeChild(e)}}),[d]),n.createElement("div",Object.assign({},Object.assign({},w),{className:o.default("kt-popover",p),onMouseEnter:function(){E===a.hover&&(t?k=setTimeout((()=>{D()}),t):D())},onMouseLeave:function(){E===a.hover&&(clearTimeout(k),function(){if(!C.current)return;O=setTimeout((()=>{C.current.style.display="none"}),500)}())}}),n.createElement("div",{className:o.default(f||"","kt-popover-content",`kt-popover-${m}`),ref:C,id:h},v&&n.createElement("p",{className:o.default("kt-popover-title",y)},v,_&&n.createElement(s.Button,{size:"small",type:"link",onClick:b||l},_)),g||""),n.createElement("span",{ref:S},i))}},83005:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(70655),n=i(63804),o=i(74061),s=i(1544),a=i(11728),c=i(94184);t.RECYCLE_LIST_STABILIZATION_TIME=500,t.RECYCLE_LIST_OVER_SCAN_COUNT=50,t.RecycleList=({width:e,height:i,className:l,style:u,data:d,onReady:h,itemHeight:p,header:f,footer:g,template:m,paddingBottomSize:v})=>{const y=n.useRef(),_=n.useRef({}),b=n.useRef();n.useEffect((()=>{if("function"==typeof h){h({scrollTo:e=>{var t;null===(t=y.current)||void 0===t||t.scrollTo(e)},scrollToIndex:(e,i="start")=>{var r,n;let o=e;if(f&&o++,"number"==typeof p)null===(r=y.current)||void 0===r||r.scrollTo(o*p,i);else{b.current&&clearTimeout(b.current);const r=(_.current?Object.keys(_.current):[]).slice(0,o).reduce(((e,t)=>e+w(t)),0);null===(n=y.current)||void 0===n||n.scrollToItem(e,i),b.current=setTimeout((()=>{var t;(_.current?Object.keys(_.current):[]).slice(0,o).reduce(((e,t)=>e+w(t)),0)!==r&&(null===(t=y.current)||void 0===t||t.scrollToItem(e,i)),b.current=null}),t.RECYCLE_LIST_STABILIZATION_TIME)}}})}}),[]);const w=e=>((null==_?void 0:_.current)||[])[e]||100,S=n.useMemo((()=>{let e=d.length;return f&&e++,g&&e++,e}),[d]),C=({index:e,style:t})=>{let i;if(0===e&&f)return n.createElement("div",{style:t},n.createElement(f,null));if(e+1===S&&g)return n.createElement("div",{style:t},n.createElement(g,null));if(i=f?d[e-1]:d[e],!i)return n.createElement("div",{style:t});const r={"aria-setsize":S,"aria-posinset":e};return n.createElement("div",Object.assign({style:t,role:"listitem"},r),n.createElement(m,{data:i,index:e}))},E=({index:e,style:t})=>{const i=n.useRef(null),r=n.useRef(),o=()=>{if(i.current){let t=0;for(let e=0;e{if("number"==typeof e.badge){const t=e.badgeLimit||99;return r.createElement(a.Badge,{style:e.badgeStyle},e.badge>t?`${t}+`:e.badge)}if("string"==typeof e.badge){const t=e.badgeLimit||e.badge.length;return r.createElement("div",{className:n.treenode_status,style:e.badgeStyle},e.badge.slice(0,t))}};t.TreeContainerNode=({node:e,leftPadding:t,defaultLeftPadding:i,onSelect:a,onTwistieClick:v,onContextMenu:y,onDragStart:_,onDragEnter:b,onDragOver:w,onDragLeave:S,onDragEnd:C,onDrag:E,onDrop:O,onChange:k,draggable:D,foldable:M,isEdited:x,isComplex:T,actions:A=[],alwaysShowActions:I,commandActuator:P,replace:R="",itemLineHeight:L,validate:N})=>{i="number"==typeof i?i:10;const F={position:"absolute",width:"100%",height:L,backgroundColor:e.background||"inherit",left:"0",opacity:x&&!e.isTemporary?.3:1,top:(e.order||0)*L+"px"},B=Object.assign(Object.assign({paddingLeft:l.ExpandableTreeNode.is(e)?`${i+(e.depth||0)*(t||0)}px`:`${i+(e.depth||0)*(t||0)+(T?5:0)}px`},e.style),{color:e.color,height:e.title?2*L:L}),z=(e,t,i)=>t.map(((t,s)=>{if(c.isTreeViewActionComponent(t))return r.createElement("span",{key:`${e.id}-${t.location}-${s}`},t.component);const a="string"==typeof t.icon?t.icon:t.icon.dark;return r.createElement(h.Icon,{key:`${e.id}-${"string"==typeof t.paramsKey?e[t.paramsKey]:e.id}-${t.command}`,iconClass:o(n.action_icon,a),tooltip:t.title,onClick:r=>{r.stopPropagation(),r.preventDefault();const n=t.paramsKey?"string"==typeof t.paramsKey?e[t.paramsKey]:t.paramsKey(e):e.id;i(t.command,n)}})})),V={height:L,lineHeight:`${L}px`,paddingLeft:l.ExpandableTreeNode.is(e)?0:M&&T?"15px":0},j={height:L,lineHeight:`${L}px`,paddingLeft:l.ExpandableTreeNode.is(e)?`${i+8+(t||0)}px`:0};return r.createElement("div",{key:e.id,style:F,title:e.tooltip,draggable:D,onDragStart:t=>{t.stopPropagation(),x?t.preventDefault():_(e,t)},onDragEnter:t=>{if(x)return t.stopPropagation(),void t.preventDefault();b(e,t)},onDragOver:t=>{if(x)return t.stopPropagation(),void t.preventDefault();w(e,t)},onDragLeave:t=>{if(x)return t.stopPropagation(),void t.preventDefault();S(e,t)},onDragEnd:t=>{if(x)return t.stopPropagation(),void t.preventDefault();C(e,t)},onDrag:t=>{if(x)return t.stopPropagation(),void t.preventDefault();E(e,t)},onDrop:t=>{if(x)return t.stopPropagation(),void t.preventDefault();O(e,t)},onContextMenu:t=>{t.stopPropagation(),t.preventDefault(),x||y(e,t)},onClick:t=>{t.stopPropagation(),t.preventDefault(),l.ExpandableTreeNode.is(e)&&!M||x||a(e,t)}},r.createElement("div",{className:o(n.treenode,{[n.alwaysShowActions]:I||e.alwaysShowActions,[n.mod_focused]:l.SelectableTreeNode.hasFocus(e),[n.mod_selected]:!l.SelectableTreeNode.hasFocus(e)&&!!l.SelectableTreeNode.isSelected(e)}),style:B},(e=>{if(e.title)return r.createElement("div",{className:n.treenode_title,style:j},e.title)})(e),r.createElement("div",{className:o(n.treenode_content,e.badge?n.treenode_has_badge:""),style:V},l.ExpandableTreeNode.is(e)&&M&&((e,t)=>e.isLoading?r.createElement(f.Loading,null):r.createElement("div",{onClick:t,className:o(n.treenode_segment,n.expansion_toggle,d.getIcon("arrow-right"),{[`${n.mod_collapsed}`]:!e.expanded})}))(e,(t=>{t.stopPropagation(),t.preventDefault(),x||v(e,t)}))||(e=>{const t=[];if(!l.ExpandableTreeNode.is(e))for(const e of A)switch(e.location){case l.TreeViewActionTypes.TreeNode_Left:t.push(e)}return r.createElement("div",{className:o(n.treenode_head)},e.headIconClass&&r.createElement("div",{className:o(n.treenode_head_icon,e.headIconClass)}),0!==t.length&&((e,t,i)=>{if(0!==t.length)return r.createElement("div",{className:n.left_actions},z(e,t,i))})(e,t,P))})(e),(e=>r.createElement("div",{className:o(e.icon,n.file_icon,{expanded:e.expanded}),style:Object.assign(Object.assign({},e.iconStyle),{height:L,lineHeight:`${L}px`})}))(e),r.createElement("div",{className:x?n.treenode_edit_wrap:s.isString(e.name)?n.treenode_overflow_wrap:n.treenode_flex_wrap},((e,t,i,a=(()=>{}))=>{const c=!s.isString(e.name),[l,d]=r.useState(c||e.name!==u.TEMP_FILE_NAME?c?"":e.name:""),f=e=>{const t=e.target.value;d(t)},m=t=>{y(l)?a(e,""):a(e,l)},v=t=>{const{key:i}=p.KeyCode.createKeyCode(t.nativeEvent);i&&p.Key.ENTER.keyCode===i.keyCode?(t.stopPropagation(),t.preventDefault(),y(l)?a(e,""):a(e,l)):i&&p.Key.ESCAPE.keyCode===i.keyCode&&(t.stopPropagation(),t.preventDefault(),a(e,""))},y=t=>{if(N)return N(e,t)};if(e.isTemporary){let t={start:0,end:0};return e.name!==u.TEMP_FILE_NAME&&s.isString(e.name)&&(t={start:0,end:e.name.replace(/\..+/,"").length}),r.createElement("div",{className:o(n.treenode_segment,n.treenode_inputbox,y(l)&&n.overflow_visible)},r.createElement("div",{className:n.input_wrapper},r.createElement(h.ValidateInput,{type:"text",className:o(n.input_box),autoFocus:!0,popup:!0,onBlur:m,value:l,onChange:f,onKeyDown:v,validate:y,selection:t})))}if(c){const t=e.name;return r.createElement(t,null)}return r.createElement("div",{className:o(n.treenode_segment,n.treenode_displayname,e.labelClass)},e.beforeLabel,g(e.name,e.highLightRanges&&e.highLightRanges.name,R),e.afterLabel)})(e,e.actions,0,k),((e,t)=>{if(!s.isString(e.description)&&!s.isUndefined(e.description)){const t=e.description;return r.createElement(t,null)}if(!s.isUndefined(e.description))return r.createElement("div",{className:o(n.treenode_segment_grow,n.treenode_description,e.descriptionClass)},g(e.description,e.highLightRanges&&e.highLightRanges.description,t))})(e,R)),((e,t,i)=>{const s=[],a=[];for(const e of t)switch(e.location){case l.TreeViewActionTypes.TreeNode_Right:s.push(e);break;case l.TreeViewActionTypes.TreeContainer:a.push(e)}return l.ExpandableTreeNode.is(e)?a.length>0?r.createElement("div",{className:o(n.treenode_segment,n.treenode_tail)},((e,t,i)=>r.createElement("div",{className:n.container_actions},z(e,t,i)))(e,a,i),m(e)):r.createElement("div",{className:o(n.treenode_segment,n.treenode_tail)},m(e)):0!==s.length?r.createElement("div",{className:o(n.treenode_segment,n.treenode_tail)},((e,t,i)=>{if(0!==t.length)return r.createElement("div",{className:n.right_actions},z(e,t,i))})(e,s,i),m(e)):r.createElement("div",{className:o(n.treenode_segment,n.treenode_tail)},m(e))})(e,e.actions||A,P))))}},98632:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(63804),n=i(8673),o=i(17126),s=i(65686),a=i(21665),c=i(62034),l=i(45299);t.TEMP_FILE_NAME="kt_template_file",t.defaultTreeProps={nodes:[],leftPadding:8,defaultLeftPadding:8},t.TreeContainer=({nodes:e=t.defaultTreeProps.nodes,leftPadding:i=t.defaultTreeProps.leftPadding,defaultLeftPadding:u=t.defaultTreeProps.defaultLeftPadding,multiSelectable:d,onSelect:h,onTwistieClick:p,onContextMenu:f,onDragStart:g,onDragEnter:m,onDragOver:v,onDragLeave:y,onDragEnd:_,onDrag:b,onDrop:w,onChange:S,onBlur:C,onFocus:E,onReveal:O,draggable:k,foldable:D=!0,editable:M,replace:x,actions:T,alwaysShowActions:A,commandActuator:I,themeProvider:P,fileDecorationProvider:R,notifyFileDecorationsChange:L,notifyThemeChange:N,itemLineHeight:F=22,style:B,outline:z,validate:V,isComplex:j})=>{const[K,H]=r.useState(!1),[W,U]=r.useState(!1),[,G]=r.useState(),q=M&&!!e.find(((e,t)=>!!e.isTemporary)),$=(t,i)=>{i.stopPropagation(),i.preventDefault();const r=[];let n=[t],o=!1;if(e){if(q)return i.stopPropagation(),void i.preventDefault();for(const i of e)i.selected&&(t.id===i.id&&(o=!0),r.push(i));o&&(n=r),H(!1),f&&f(n,i)}},Y=e=>[e],Z=(t,i)=>{let r;if(t&&!q){if(d&&!q){const o=Q(i),s=J(i);n.SelectableTreeNode.is(t)&&(r=o?((e=[],t)=>{const i=[];let r,n;for(let i=0;ii&&await new Promise((e=>setTimeout(e))),o&&o.isCancellationRequested)throw r.canceled();c(e,t,a,l,u)}return a})().then(s,a)}))},t.coalesce=function(e){return e?e.filter((e=>!!e)):e},t.coalesceInPlace=function(e){if(!e)return;let t=0;for(let i=0;i1&&c.charAt(c.length-1)===t.sep&&(c=c.substr(0,c.length-1)),c},t.replaceAsarInPath=function(e){const t=e.split(l("/",!0));return t.forEach(((e,i)=>{e.endsWith(".asar")&&(t[i]=e+".unpacked")})),t.join(l("/",!0))};const p=/[\\/:\*\?"<>\|]/g,f=/[\\/]/g,g=/^(con|prn|aux|clock\$|nul|lpt[0-9]|com[0-9])$/i;t.isValidBasename=function(e,t=r.isWindows){const i=t?p:f;return!(!e||0===e.length||/^\s+$/.test(e))&&(i.lastIndex=0,!i.test(e)&&((!t||!g.test(e))&&("."!==e&&".."!==e&&((!t||"."!==e[e.length-1])&&((!t||e.length===e.trim().length)&&!(e.length>255))))))}},61041:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.Deferred=class{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}},38142:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=i(33697);t.empty="";const n="undefined"!=typeof TextEncoder,o="undefined"!=typeof TextDecoder;!function(e){e.StringTextEncoder=n?TextEncoder:i(89539).TextEncoder,e.StringTextDecoder=o?TextDecoder:i(89539).TextDecoder}(t.stringUtils||(t.stringUtils={})),t.isFalsyOrWhitespace=function(e){return!e||"string"!=typeof e||0===e.trim().length},t.pad=function(e,t,i="0"){const r=""+e,n=[r];for(let e=r.length;e`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
)","beginCaptures":{"0":{"name":"storage.modifier.attribute.swift"},"1":{"name":"punctuation.definition.attribute.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"}},"comment":"any other attribute","end":"(?!\\\\G\\\\()","name":"meta.attribute.swift","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.arguments.attribute.swift","patterns":[{"include":"#expressions"}]}]}]},"builtin-functions":{"patterns":[{"comment":"Member functions in the standard library in Swift 3 which may be used with trailing closures and no parentheses","match":"(?<=\\\\.)(?:s(?:ort(?:ed)?|plit)|contains|index|partition|f(?:i(?:lter|rst)|orEach|latMap)|with(?:MutableCharacters|CString|U(?:nsafe(?:Mutable(?:BufferPointer|Pointer(?:s|To(?:Header|Elements)))|BufferPointer)|TF8Buffer))|m(?:in|a(?:p|x)))(?=\\\\s*[({])\\\\b","name":"support.function.swift"},{"comment":"Member functions in the standard library in Swift 3","match":"(?<=\\\\.)(?:s(?:ymmetricDifference|t(?:oreBytes|arts|ride)|ortInPlace|u(?:ccessor|ffix|btract(?:ing|InPlace|WithOverflow)?)|quareRoot|amePosition)|h(?:oldsUnique(?:Reference|OrPinnedReference)|as(?:Suffix|Prefix))|ne(?:gate(?:d)?|xt)|c(?:o(?:untByEnumerating|py(?:Bytes)?)|lamp(?:ed)?|reate)|t(?:o(?:IntMax|Opaque|UIntMax)|ake(?:RetainedValue|UnretainedValue)|r(?:uncatingRemainder|a(?:nscodedLength|ilSurrogate)))|i(?:s(?:MutableAndUniquelyReferenced(?:OrPinned)?|S(?:trictSu(?:perset(?:Of)?|bset(?:Of)?)|u(?:perset(?:Of)?|bset(?:Of)?))|Continuation|T(?:otallyOrdered|railSurrogate)|Disjoint(?:With)?|Unique(?:Reference|lyReferenced(?:OrPinned)?)|Equal|Le(?:ss(?:ThanOrEqualTo)?|adSurrogate))|n(?:sert(?:ContentsOf)?|tersect(?:ion|InPlace)?|itialize(?:Memory|From)?|dex(?:Of|ForKey)))|o(?:verlaps|bjectAt)|d(?:i(?:stance(?:To)?|vide(?:d|WithOverflow)?)|e(?:s(?:cendant|troy)|code(?:CString)?|initialize|alloc(?:ate(?:Capacity)?)?)|rop(?:First|Last))|u(?:n(?:ion(?:InPlace)?|derestimateCount|wrappedOrError)|p(?:date(?:Value)?|percased))|join(?:ed|WithSeparator)|p(?:op(?:First|Last)|ass(?:Retained|Unretained)|re(?:decessor|fix))|e(?:scape(?:d)?|n(?:code|umerate(?:d)?)|lementsEqual|xclusiveOr(?:InPlace)?)|f(?:orm(?:Remainder|S(?:ymmetricDifference|quareRoot)|TruncatingRemainder|In(?:tersection|dex)|Union)|latten|rom(?:CString(?:RepairingIllFormedUTF8)?|Opaque))|w(?:i(?:thMemoryRebound|dth)|rite(?:To)?)|l(?:o(?:wercased|ad)|e(?:adSurrogate|xicographical(?:Compare|lyPrecedes)))|a(?:ss(?:ign(?:BackwardFrom|From)?|umingMemoryBound)|d(?:d(?:ing(?:Product)?|Product|WithOverflow)?|vanced(?:By)?)|utorelease|ppend(?:ContentsOf)?|lloc(?:ate)?|bs)|r(?:ound(?:ed)?|e(?:serveCapacity|tain|duce|place(?:Range|Subrange)?|verse(?:d)?|quest(?:NativeBuffer|UniqueMutableBackingBuffer)|lease|m(?:ove(?:Range|Subrange|Value(?:ForKey)?|First|Last|A(?:tIndex|ll))?|ainder(?:WithOverflow)?)))|ge(?:nerate|t(?:Objects|Element))|m(?:in(?:imum(?:Magnitude)?|Element)|ove(?:Initialize(?:Memory|BackwardFrom|From)?|Assign(?:From)?)?|ultipl(?:y(?:WithOverflow)?|ied)|easure|a(?:ke(?:Iterator|Description)|x(?:imum(?:Magnitude)?|Element)))|bindMemory)(?=\\\\s*\\\\()","name":"support.function.swift"},{"comment":"Member functions in the standard library in Swift 2 only","match":"(?<=\\\\.)(?:s(?:uperclassMirror|amePositionIn|tartsWith)|nextObject|c(?:haracterAtIndex|o(?:untByEnumeratingWithState|pyWithZone)|ustom(?:Mirror|PlaygroundQuickLook))|is(?:EmptyInput|ASCII)|object(?:Enumerator|ForKey|AtIndex)|join|put|keyEnumerator|withUnsafeMutablePointerToValue|length|getMirror|m(?:oveInitializeAssignFrom|ember))(?=\\\\s*\\\\()","name":"support.function.swift"}]},"builtin-global-functions":{"patterns":[{"begin":"\\\\b(type)(\\\\()\\\\s*(of)(:)","beginCaptures":{"1":{"name":"support.function.dynamic-type.swift"},"2":{"name":"punctuation.definition.arguments.begin.swift"},"3":{"name":"support.variable.parameter.swift"},"4":{"name":"punctuation.separator.argument-label.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"patterns":[{"include":"#expressions"}]},{"comment":"Global functions available in Swift 3 which may be used with trailing closures and no parentheses","match":"\\\\b(?:anyGenerator|autoreleasepool)(?=\\\\s*[({])\\\\b","name":"support.function.swift"},{"comment":"Global functions available in Swift 3","match":"\\\\b(?:s(?:tride(?:of(?:Value)?)?|izeof(?:Value)?|equence|wap)|numericCast|transcode|is(?:UniquelyReferenced(?:NonObjC)?|KnownUniquelyReferenced)|zip|d(?:ump|ebugPrint)|unsafe(?:BitCast|Downcast|Unwrap|Address(?:Of)?)|pr(?:int|econdition(?:Failure)?)|fatalError|with(?:Unsafe(?:MutablePointer|Pointer)|ExtendedLifetime|VaList)|a(?:ssert(?:ionFailure)?|lignof(?:Value)?|bs)|re(?:peatElement|adLine)|getVaList|m(?:in|ax))(?=\\\\s*\\\\()","name":"support.function.swift"},{"comment":"Global functions available in Swift 2 only","match":"\\\\b(?:s(?:ort|uffix|pli(?:ce|t))|insert|overlaps|d(?:istance|rop(?:First|Last))|join|prefix|extend|withUnsafe(?:MutablePointers|Pointers)|lazy|advance|re(?:flect|move(?:Range|Last|A(?:tIndex|ll))))(?=\\\\s*\\\\()","name":"support.function.swift"}]},"builtin-properties":{"patterns":[{"comment":"The simpler (?<=\\\\bProcess\\\\.|\\\\bCommandLine\\\\.) breaks VS Code / Atom, see https://github.com/textmate/swift.tmbundle/issues/29","match":"(?<=^Process\\\\.|\\\\WProcess\\\\.|^CommandLine\\\\.|\\\\WCommandLine\\\\.)(arguments|argc|unsafeArgv)","name":"support.variable.swift"},{"comment":"Properties in the standard library in Swift 3","match":"(?<=\\\\.)(?:s(?:t(?:artIndex|ri(?:ngValue|de))|i(?:ze|gn(?:BitIndex|ificand(?:Bit(?:Count|Pattern)|Width)?|alingNaN)?)|u(?:perclassMirror|mmary|bscriptBaseAddress))|h(?:eader|as(?:hValue|PointerRepresentation))|n(?:ulTerminatedUTF8|ext(?:Down|Up)|a(?:n|tiveOwner))|c(?:haracters|ount(?:TrailingZeros)?|ustom(?:Mirror|PlaygroundQuickLook)|apacity)|i(?:s(?:S(?:ign(?:Minus|aling(?:NaN)?)|ubnormal)|N(?:ormal|aN)|Canonical|Infinite|Zero|Empty|Finite|ASCII)|n(?:dices|finity)|dentity)|owner|de(?:scription|bugDescription)|u(?:n(?:safelyUnwrapped|icodeScalar(?:s)?|derestimatedCount)|tf(?:16|8(?:Start|C(?:String|odeUnitCount))?)|intValue|ppercaseString|lp(?:OfOne)?)|p(?:i|ointee)|e(?:ndIndex|lements|xponent(?:Bit(?:Count|Pattern))?)|value(?:s)?|keys|quietNaN|f(?:irst(?:ElementAddress(?:IfContiguous)?)?|loatingPointClass)|l(?:ittleEndian|owercaseString|eastNo(?:nzeroMagnitude|rmalMagnitude)|a(?:st|zy))|a(?:l(?:ignment|l(?:ocatedElementCount|Zeros))|rray(?:PropertyIsNativeTypeChecked)?)|ra(?:dix|wValue)|greatestFiniteMagnitude|m(?:in|emory|ax)|b(?:yteS(?:ize|wapped)|i(?:nade|tPattern|gEndian)|uffer|ase(?:Address)?))\\\\b","name":"support.variable.swift"},{"comment":"Properties in the standard library in Swift 2 only","match":"(?<=\\\\.)(?:boolValue|disposition|end|objectIdentifier|quickLookObject|start|valueType)\\\\b","name":"support.variable.swift"},{"comment":"Enum cases in the standard library - note that there is some overlap between these and the properties","match":"(?<=\\\\.)(?:s(?:calarValue|i(?:ze|gnalingNaN)|o(?:und|me)|uppressed|prite|et)|n(?:one|egative(?:Subnormal|Normal|Infinity|Zero))|c(?:ol(?:or|lection)|ustomized)|t(?:o(?:NearestOr(?:Even|AwayFromZero)|wardZero)|uple|ext)|i(?:nt|mage)|optional|d(?:ictionary|o(?:uble|wn))|u(?:Int|p|rl)|p(?:o(?:sitive(?:Subnormal|Normal|Infinity|Zero)|int)|lus)|e(?:rror|mptyInput)|view|quietNaN|float|a(?:ttributedString|wayFromZero)|r(?:ectangle|ange)|generated|minus|b(?:ool|ezierPath))\\\\b","name":"support.variable.swift"}]},"builtin-types":{"comment":"Types provided in the standard library","patterns":[{"include":"#builtin-class-type"},{"include":"#builtin-enum-type"},{"include":"#builtin-protocol-type"},{"include":"#builtin-struct-type"},{"include":"#builtin-typealias"},{"match":"\\\\bAny\\\\b","name":"support.type.any.swift"}],"repository":{"builtin-class-type":{"comment":"Builtin class types","match":"\\\\b(Managed(Buffer|ProtoBuffer)|NonObjectiveCBase|AnyGenerator)\\\\b","name":"support.class.swift"},"builtin-enum-type":{"patterns":[{"comment":"CommandLine is an enum, but it acts like a constant","match":"\\\\b(?:CommandLine|Process(?=\\\\.))\\\\b","name":"support.constant.swift"},{"comment":"The return type of a function that never returns","match":"\\\\bNever\\\\b","name":"support.constant.never.swift"},{"comment":"Enum types in the standard library in Swift 3","match":"\\\\b(?:ImplicitlyUnwrappedOptional|Representation|MemoryLayout|FloatingPointClassification|SetIndexRepresentation|SetIteratorRepresentation|FloatingPointRoundingRule|UnicodeDecodingResult|Optional|DictionaryIndexRepresentation|AncestorRepresentation|DisplayStyle|PlaygroundQuickLook|Never|FloatingPointSign|Bit|DictionaryIteratorRepresentation)\\\\b","name":"support.type.swift"},{"comment":"Enum types in the standard library in Swift 2 only","match":"\\\\b(?:MirrorDisposition|QuickLookObject)\\\\b","name":"support.type.swift"}]},"builtin-protocol-type":{"patterns":[{"comment":"Protocols in the standard library in Swift 3","match":"\\\\b(?:Ra(?:n(?:domAccess(?:Collection|Indexable)|geReplaceable(?:Collection|Indexable))|wRepresentable)|M(?:irrorPath|utable(?:Collection|Indexable))|Bi(?:naryFloatingPoint|twiseOperations|directional(?:Collection|Indexable))|S(?:tr(?:ideable|eamable)|igned(?:Number|Integer)|e(?:tAlgebra|quence))|Hashable|C(?:o(?:llection|mparable)|ustom(?:Reflectable|StringConvertible|DebugStringConvertible|PlaygroundQuickLookable|LeafReflectable)|VarArg)|TextOutputStream|I(?:n(?:teger(?:Arithmetic)?|dexable(?:Base)?)|teratorProtocol)|OptionSet|Un(?:signedInteger|icodeCodec)|E(?:quatable|rror|xpressibleBy(?:BooleanLiteral|String(?:Interpolation|Literal)|NilLiteral|IntegerLiteral|DictionaryLiteral|UnicodeScalarLiteral|ExtendedGraphemeClusterLiteral|FloatLiteral|ArrayLiteral))|FloatingPoint|L(?:osslessStringConvertible|azy(?:SequenceProtocol|CollectionProtocol))|A(?:nyObject|bsoluteValuable))\\\\b","name":"support.type.swift"},{"comment":"Protocols in the standard library in Swift 2 only","match":"\\\\b(?:Ran(?:domAccessIndexType|geReplaceableCollectionType)|GeneratorType|M(?:irror(?:Type|PathType)|utable(?:Sliceable|CollectionType))|B(?:i(?:twiseOperationsType|directionalIndexType)|oolean(?:Type|LiteralConvertible))|S(?:tring(?:InterpolationConvertible|LiteralConvertible)|i(?:nkType|gned(?:NumberType|IntegerType))|e(?:tAlgebraType|quenceType)|liceable)|NilLiteralConvertible|C(?:ollectionType|VarArgType)|Inte(?:rvalType|ger(?:Type|LiteralConvertible|ArithmeticType))|O(?:utputStreamType|ptionSetType)|DictionaryLiteralConvertible|Un(?:signedIntegerType|icode(?:ScalarLiteralConvertible|CodecType))|E(?:rrorType|xten(?:sibleCollectionType|dedGraphemeClusterLiteralConvertible))|F(?:orwardIndexType|loat(?:ingPointType|LiteralConvertible))|A(?:nyCollectionType|rrayLiteralConvertible))\\\\b","name":"support.type.swift"}]},"builtin-struct-type":{"patterns":[{"comment":"Structs in the standard library in Swift 3","match":"\\\\b(?:R(?:e(?:peat(?:ed)?|versed(?:RandomAccess(?:Collection|Index)|Collection|Index))|an(?:domAccessSlice|ge(?:Replaceable(?:RandomAccessSlice|BidirectionalSlice|Slice)|Generator)?))|Generator(?:Sequence|OfOne)|M(?:irror|utable(?:Ran(?:domAccessSlice|geReplaceable(?:RandomAccessSlice|BidirectionalSlice|Slice))|BidirectionalSlice|Slice)|anagedBufferPointer)|B(?:idirectionalSlice|ool)|S(?:t(?:aticString|ri(?:ng|deT(?:hrough(?:Generator|Iterator)?|o(?:Generator|Iterator)?)))|et(?:I(?:ndex|terator))?|lice)|HalfOpenInterval|C(?:haracter(?:View)?|o(?:ntiguousArray|untable(?:Range|ClosedRange)|llectionOfOne)|OpaquePointer|losed(?:Range(?:I(?:ndex|terator))?|Interval)|VaListPointer)|I(?:n(?:t(?:16|8|32|64)?|d(?:ices|ex(?:ing(?:Generator|Iterator))?))|terator(?:Sequence|OverOne)?)|Zip2(?:Sequence|Iterator)|O(?:paquePointer|bjectIdentifier)|D(?:ictionary(?:I(?:ndex|terator)|Literal)?|ouble|efault(?:RandomAccessIndices|BidirectionalIndices|Indices))|U(?:n(?:safe(?:RawPointer|Mutable(?:RawPointer|BufferPointer|Pointer)|BufferPointer(?:Generator|Iterator)?|Pointer)|icodeScalar(?:View)?|foldSequence|managed)|TF(?:16(?:View)?|8(?:View)?|32)|Int(?:16|8|32|64)?)|Join(?:Generator|ed(?:Sequence|Iterator))|PermutationGenerator|E(?:numerate(?:Generator|Sequence|d(?:Sequence|Iterator))|mpty(?:Generator|Collection|Iterator))|Fl(?:oat(?:80)?|atten(?:Generator|BidirectionalCollection(?:Index)?|Sequence|Collection(?:Index)?|Iterator))|L(?:egacyChildren|azy(?:RandomAccessCollection|Map(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Collection|Iterator)|BidirectionalCollection|Sequence|Collection|Filter(?:Generator|BidirectionalCollection|Sequence|Collection|I(?:ndex|terator))))|A(?:ny(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Hashable|Collection|I(?:ndex|terator))|utoreleasingUnsafeMutablePointer|rray(?:Slice)?))\\\\b","name":"support.type.swift"},{"comment":"Structs in the standard library in Swift 2 only","match":"\\\\b(?:R(?:everse(?:RandomAccess(?:Collection|Index)|Collection|Index)|awByte)|Map(?:Generator|Sequence|Collection)|S(?:inkOf|etGenerator)|Zip2Generator|DictionaryGenerator|Filter(?:Generator|Sequence|Collection(?:Index)?)|LazyForwardCollection|Any(?:RandomAccessIndex|BidirectionalIndex|Forward(?:Collection|Index)))\\\\b","name":"support.type.swift"}]},"builtin-typealias":{"patterns":[{"comment":"Typealiases in the standard library in Swift 3","match":"\\\\b(?:Raw(?:Significand|Exponent|Value)|B(?:ooleanLiteralType|uffer|ase)|S(?:t(?:orage|r(?:i(?:ngLiteralType|de)|eam(?:1|2)))|ubSequence)|NativeBuffer|C(?:hild(?:ren)?|Bool|S(?:hort|ignedChar)|odeUnit|Char(?:16|32)?|Int|Double|Unsigned(?:Short|Char|Int|Long(?:Long)?)|Float|WideChar|Long(?:Long)?)|I(?:n(?:t(?:Max|egerLiteralType)|d(?:ices|ex(?:Distance)?))|terator)|Distance|U(?:n(?:icodeScalar(?:Type|Index|View|LiteralType)|foldFirstSequence)|TF(?:16(?:Index|View)|8Index)|IntMax)|E(?:lement(?:s)?|x(?:tendedGraphemeCluster(?:Type|LiteralType)|ponent))|V(?:oid|alue)|Key|Float(?:32|LiteralType|64)|AnyClass)\\\\b","name":"support.type.swift"},{"comment":"Typealiases in the standard library in Swift 2 only","match":"\\\\b(?:Generator|PlaygroundQuickLook|UWord|Word)\\\\b","name":"support.type.swift"}]}}},"code-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.swift"}},"patterns":[{"include":"$self"}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.swift"}},"match":"\\\\A^(#!).*$\\\\n?","name":"comment.line.number-sign.swift"},{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.documentation.swift","patterns":[{"include":"#nested"}]},{"begin":"/\\\\*:","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.documentation.playground.swift","patterns":[{"include":"#nested"}]},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.swift","patterns":[{"include":"#nested"}]},{"match":"\\\\*/","name":"invalid.illegal.unexpected-end-of-block-comment.swift"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.swift"}},"end":"(?!\\\\G)","patterns":[{"begin":"///","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"^","name":"comment.line.triple-slash.documentation.swift"},{"begin":"//:","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"^","name":"comment.line.double-slash.documentation.swift"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"^","name":"comment.line.double-slash.swift"}]}],"repository":{"nested":{"begin":"/\\\\*","end":"\\\\*/","patterns":[{"include":"#nested"}]}}},"compiler-control":{"patterns":[{"begin":"^\\\\s*(#)(if|elseif)\\\\s+(false)\\\\b.*?(?=$|//|/\\\\*)","beginCaptures":{"0":{"name":"meta.preprocessor.conditional.swift"},"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.preprocessor.conditional.swift"},"3":{"name":"constant.language.boolean.swift"}},"contentName":"comment.block.preprocessor.swift","end":"(?=^\\\\s*(#(elseif|else|endif)\\\\b))"},{"begin":"^\\\\s*(#)(if|elseif)\\\\s+","captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.preprocessor.conditional.swift"}},"end":"(?=\\\\s*(?://|/\\\\*))|$","name":"meta.preprocessor.conditional.swift","patterns":[{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.logical.swift"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.swift"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"support.constant.platform.architecture.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(arch)\\\\s*(\\\\()\\\\s*(?:(arm|arm64|powerpc64|powerpc64le|i386|x86_64|s390x)|\\\\w+)\\\\s*(\\\\))"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"support.constant.platform.os.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(os)\\\\s*(\\\\()\\\\s*(?:(macOS|OSX|iOS|tvOS|watchOS|Android|Linux|FreeBSD|Windows|PS4)|\\\\w+)\\\\s*(\\\\))"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"entity.name.type.module.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(canImport)\\\\s*(\\\\()([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(\\\\))"},{"begin":"\\\\b(targetEnvironment)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))|$","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"}},"patterns":[{"match":"\\\\b(simulator|UIKitForMac)\\\\b","name":"support.constant.platform.environment.swift"}]},{"begin":"\\\\b(swift|compiler)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))|$","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"}},"patterns":[{"match":">=|<","name":"keyword.operator.comparison.swift"},{"match":"\\\\b[0-9]+(?:\\\\.[0-9]+)*\\\\b","name":"constant.numeric.swift"}]}]},{"captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.preprocessor.conditional.swift"},"3":{"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"match":"^\\\\s*(#)(else|endif)(.*?)(?=$|//|/\\\\*)","name":"meta.preprocessor.conditional.swift"},{"captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.preprocessor.sourcelocation.swift"},"4":{"name":"punctuation.definition.parameters.begin.swift"},"5":{"patterns":[{"begin":"(file)\\\\s*(:)\\\\s*(?=\\")","beginCaptures":{"1":{"name":"support.variable.parameter.swift"},"2":{"name":"punctuation.separator.key-value.swift"}},"end":"(?!\\\\G)","patterns":[{"include":"#literals"}]},{"captures":{"1":{"name":"support.variable.parameter.swift"},"2":{"name":"punctuation.separator.key-value.swift"},"3":{"name":"constant.numeric.integer.swift"}},"match":"(line)\\\\s*(:)\\\\s*([0-9]+)"},{"match":",","name":"punctuation.separator.parameters.swift"},{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]},"6":{"name":"punctuation.definition.parameters.begin.swift"},"7":{"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"match":"^\\\\s*(#)(sourceLocation)((\\\\()([^)]*)(\\\\)))(.*?)(?=$|//|/\\\\*)","name":"meta.preprocessor.sourcelocation.swift"}]},"declarations":{"patterns":[{"include":"#function"},{"include":"#function-initializer"},{"include":"#import"},{"include":"#operator"},{"include":"#precedencegroup"},{"include":"#protocol"},{"include":"#type"},{"include":"#extension"},{"include":"#typealias"}],"repository":{"available-types":{"patterns":[{"include":"#comments"},{"include":"#builtin-types"},{"include":"#attributes"},{"match":"\\\\b(?:throws|rethrows)\\\\b","name":"keyword.control.exception.swift"},{"match":"\\\\binout\\\\b","name":"storage.modifier.swift"},{"match":"\\\\bSelf\\\\b","name":"variable.language.swift"},{"captures":{"1":{"name":"keyword.operator.type.function.swift"}},"match":"(?&|\\\\^~.])(->)(?![/=\\\\-+!*%<>&|\\\\^~.])"},{"captures":{"1":{"name":"keyword.operator.type.composition.swift"}},"comment":"Swift 3: A & B","match":"(?&|\\\\^~.])(&)(?![/=\\\\-+!*%<>&|\\\\^~.])"},{"match":"[?!]","name":"keyword.operator.type.optional.swift"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.function.variadic-parameter.swift"},{"comment":"Swift 2: protocol","match":"\\\\bprotocol\\\\b","name":"keyword.operator.type.composition.swift"},{"match":"(?<=\\\\.)(?:Protocol|Type)\\\\b","name":"keyword.operator.type.metatype.swift"},{"include":"#tuple-type"},{"include":"#collection-type"},{"include":"#generic-argument-clause"}],"repository":{"collection-type":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.collection-type.begin.swift"}},"comment":"array and dictionary types [Value] and [Key: Value]","end":"\\\\]|(?=[>){}])","endCaptures":{"0":{"name":"punctuation.section.collection-type.end.swift"}},"patterns":[{"include":"#available-types"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.key-value.swift"}},"end":"(?=\\\\]|[>){}])","patterns":[{"match":":","name":"invalid.illegal.extra-colon-in-dictionary-type.swift"},{"include":"#available-types"}]}]},"tuple-type":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.tuple-type.begin.swift"}},"end":"\\\\)|(?=[>\\\\]{}])","endCaptures":{"0":{"name":"punctuation.section.tuple-type.end.swift"}},"patterns":[{"include":"#available-types"}]}}},"extension":{"begin":"\\\\b(extension)\\\\s+((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.swift","patterns":[{"include":"#available-types"}]},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.$1.swift","patterns":[{"include":"#comments"},{"comment":"SE-0143: Conditional Conformances","include":"#generic-where-clause"},{"include":"#inheritance-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"$self"}]}]},"function":{"begin":"(?x)\\n\\t\\t\\t\\t\\t\\t\\\\b\\n\\t\\t\\t\\t\\t\\t(func)\\n\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t(?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
)\\n\\t\\t\\t\\t\\t\\t | (?:\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?
)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t","name":"entity.name.type.swift"},{"match":"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<=\\\\G|\\\\.)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\$[0-9]+\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t","name":"entity.name.type.swift"},{"captures":{"1":{"patterns":[{"match":"\\\\.","name":"invalid.illegal.dot-not-allowed-here.swift"}]}},"match":"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<=\\\\G|\\\\.)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?:\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))"}}},"parameter-clause":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"}},"name":"meta.parameter-clause.swift","patterns":[{"include":"#parameter-list"}]},"parameter-list":{"patterns":[{"captures":{"1":{"name":"entity.name.function.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"variable.parameter.function.swift"},"5":{"name":"punctuation.definition.identifier.swift"},"6":{"name":"punctuation.definition.identifier.swift"}},"comment":"External parameter labels are considered part of the function name","match":"((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
)))(?=\\\\s*:)"},{"begin":":\\\\s*(?!\\\\s)","end":"(?=[,)])","patterns":[{"include":"#available-types"},{"match":":","name":"invalid.illegal.extra-colon-in-parameter-list.swift"},{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.swift"}},"comment":"a parameter\'s default value","end":"(?=[,)])","patterns":[{"include":"#expressions"}]}]}]},"precedencegroup":{"begin":"\\\\b(precedencegroup)\\\\s+((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))\\\\s*(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.precedencegroup.swift"},"2":{"name":"entity.name.type.precedencegroup.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G)","name":"meta.definition.precedencegroup.swift","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.precedencegroup.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.precedencegroup.end.swift"}},"patterns":[{"include":"#comments"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"entity.other.inherited-class.swift","patterns":[{"include":"#types-precedencegroup"}]},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"match":"\\\\b(higherThan|lowerThan)\\\\s*:\\\\s*((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"keyword.other.operator.associativity.swift"}},"match":"\\\\b(associativity)\\\\b(?:\\\\s*:\\\\s*(right|left|none)\\\\b)?"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"constant.language.boolean.swift"}},"match":"\\\\b(assignment)\\\\b(?:\\\\s*:\\\\s*(true|false)\\\\b)?"}]}]},"protocol":{"begin":"\\\\b(protocol)\\\\s+((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.$1.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.protocol.swift","patterns":[{"include":"#comments"},{"include":"#inheritance-clause"},{"comment":"SE-0142: Permit where clauses to constrain associated types","include":"#generic-where-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"#protocol-method"},{"include":"#protocol-initializer"},{"include":"#associated-type"},{"include":"$self"}]}],"repository":{"associated-type":{"begin":"\\\\b(associatedtype)\\\\s+((?
`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration-specifier.swift"},"2":{"name":"variable.language.associatedtype.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G)$|(?=[;}]|$)","name":"meta.definition.associatedtype.swift","patterns":[{"include":"#inheritance-clause"},{"comment":"SE-0142: Permit where clauses to constrain associated types","include":"#generic-where-clause"},{"include":"#typealias-assignment"}]},"protocol-initializer":{"begin":"(?`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k
)\\n\\t\\t \\t\\t\\t\\t\\t\\t | (?:\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t(?