@teambit/env 1.0.199 → 1.0.201

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,4 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="0" failures="0" errors="0" skipped="0">
3
- <testsuite name="teambit.envs/env@1.0.199" tests="0" failures="0" errors="0" skipped="0"/>
3
+ <testsuite name="teambit.envs/env@1.0.201" tests="0" failures="0" errors="0" skipped="0"/>
4
4
  </testsuites>
@@ -207,7 +207,7 @@ the following are permitted ${Object.keys(exports.IssuesClasses).join(", ")}`);c
207
207
  id
208
208
  }
209
209
  }
210
- `,useRootLanes=(viewedLaneId,skip,options={},scope)=>{const{ids,offset,limit,sort}=options,{data,fetchMore,loading}=(0,ui_foundation_ui_hooks_use_data_query_1.useDataQuery)(GET_LANES,{variables:{laneIds:ids,offset,limit,sort,skipViewedLane:!viewedLaneId||viewedLaneId.isDefault(),viewedLaneId:viewedLaneId?[viewedLaneId?.toString()]:void 0},skip,errorPolicy:"all",fetchPolicy:"cache-and-network"}),lanesModel=(0,react_1.useMemo)(()=>{if(!loading&&!!data)return lanes_ui_models_lanes_model_1.LanesModel.from({data,scope})},[loading,data,viewedLaneId?.toString(),scope]),hasMore=(0,react_1.useMemo)(()=>{var _a,_b,_c,_d,_e,_f;return loading?!0:limit?ids?.length?((_c=(_b=(_a=data?.lanes)===null||_a===void 0?void 0:_a.list)===null||_b===void 0?void 0:_b.length)!==null&&_c!==void 0?_c:0)===ids.length:((_f=(_e=(_d=data?.lanes)===null||_d===void 0?void 0:_d.list)===null||_e===void 0?void 0:_e.length)!==null&&_f!==void 0?_f:0)>=limit:!1},[loading,data]),fetchMoreLanes=(0,react_1.useCallback)((newOffset,newLimit)=>__awaiter(void 0,void 0,void 0,function*(){var _a,_b;if(hasMore)try{const{data:moreData,networkStatus}=yield fetchMore({variables:{offset:newOffset,limit:newLimit,laneIds:[],skipViewedLane:!viewedLaneId||viewedLaneId.isDefault(),viewedLaneId:viewedLaneId?[viewedLaneId?.toString()]:void 0}}),loadingMore=networkStatus===3;return!loadingMore&&moreData.lanes?{lanesModel:lanes_ui_models_lanes_model_1.LanesModel.from({data:moreData}),loading:loadingMore,hasMore:((_b=(_a=moreData.lanes.list)===null||_a===void 0?void 0:_a.length)!==null&&_b!==void 0?_b:0)>=newLimit,nextOffset:newOffset+newLimit}:{lanesModel,loading:loadingMore,nextOffset:newOffset,currentLimit:newLimit}}catch(err){return console.error(err),{}}return{lanesModel,loading:!1,hasMore:!1,nextOffset:newOffset,currentLimit:newLimit}}),[hasMore,viewedLaneId?.toString(),lanesModel]);return{loading,lanesModel,fetchMoreLanes,hasMore,offset,limit}},useSearchLanes=(search,skip)=>{const{data:searchData,loading:loadingSearch}=(0,ui_foundation_ui_hooks_use_data_query_1.useDataQuery)(GET_LANES,{variables:{search,skipViewedLane:!0},skip:skip||!search,errorPolicy:"all",fetchPolicy:"cache-and-network"});return search?{loading:loadingSearch,lanesModel:searchData&&lanes_ui_models_lanes_model_1.LanesModel.from({data:{lanes:Object.assign(Object.assign({},searchData.lanes),{current:void 0,default:void 0})}})}:{}};exports.useSearchLanes=useSearchLanes;const useLanes=(targetLanes,skip,optionsFromProps,useContextFromProps=!0,scope)=>{var _a,_b,_c,_d,_e;const context=(0,lanes_context_1.useLanesContext)()||{},options=optionsFromProps||context?.options,isSameOptions=(0,lodash_1.isEqual)(options,context?.options),useContext=useContextFromProps&&!!context&&isSameOptions,shouldSkip=skip||!!targetLanes||useContext,rootLanesData=useRootLanes((_b=(_a=context?.lanesModel)===null||_a===void 0?void 0:_a.viewedLane)===null||_b===void 0?void 0:_b.id,shouldSkip,options,scope),searchResult=(0,exports.useSearchLanes)(options?.search,shouldSkip);return targetLanes?Object.assign(Object.assign(Object.assign({},context),rootLanesData),{lanesModel:targetLanes,searchResult}):useContext?Object.assign(Object.assign({},context),{searchResult}):((_c=rootLanesData.lanesModel)===null||_c===void 0||_c.setViewedLane((_e=(_d=context?.lanesModel)===null||_d===void 0?void 0:_d.viewedLane)===null||_e===void 0?void 0:_e.id),Object.assign(Object.assign(Object.assign({},context),rootLanesData),{searchResult}))};exports.useLanes=useLanes},85904:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Collapser=void 0;const evangelist_elements_icon_1=__webpack_require__(6281),classnames_1=__importDefault(__webpack_require__(97754)),react_1=__importDefault(__webpack_require__(59496)),design_ui_tooltip_1=__webpack_require__(49142),collapser_button_module_scss_1=__importDefault(__webpack_require__(509));function Collapser(_a){var{isOpen,tooltipContent,placement="right",onClick,className}=_a,rest=__rest(_a,["isOpen","tooltipContent","placement","onClick","className"]);const icon=`${placement}-rounded-corners`;return react_1.default.createElement(design_ui_tooltip_1.Tooltip,{content:tooltipContent},react_1.default.createElement("div",Object.assign({},rest,{onClick,className:(0,classnames_1.default)(collapser_button_module_scss_1.default.collapser,collapser_button_module_scss_1.default[placement],isOpen&&collapser_button_module_scss_1.default.open,className)}),react_1.default.createElement("div",{className:collapser_button_module_scss_1.default.circle},react_1.default.createElement("div",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:icon})))))}exports.Collapser=Collapser},53440:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Collapser=void 0;var collapser_button_1=__webpack_require__(85904);Object.defineProperty(exports,"Collapser",{enumerable:!0,get:function(){return collapser_button_1.Collapser}})},43912:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanesModel=void 0;var lanes_model_1=__webpack_require__(69291);Object.defineProperty(exports,"LanesModel",{enumerable:!0,get:function(){return lanes_model_1.LanesModel}})},69291:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanesModel=void 0;const component_1=__webpack_require__(99906),lane_id_1=__webpack_require__(8839),component_id_1=__webpack_require__(99978),path_to_regexp_1=__webpack_require__(51419),lodash_1=__webpack_require__(32699);class LanesModel{static mapToLaneModel(laneData){var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k;const{id,laneComponentIds=[],readmeComponent,hash,createdAt,displayName,updatedAt,createdBy:createdByData,updatedBy:updatedByData}=laneData,componentIds=laneComponentIds?.map(laneComponentId=>component_id_1.ComponentID.fromObject(laneComponentId))||[],readmeComponentModel=readmeComponent&&component_1.ComponentModel.from(Object.assign({},readmeComponent)),createdAtDate=createdAt&&new Date(+createdAt)||void 0,createdBy=createdByData?{name:(_a=createdByData?.name)!==null&&_a!==void 0?_a:void 0,email:(_b=createdByData.email)!==null&&_b!==void 0?_b:void 0,username:(_c=createdByData?.username)!==null&&_c!==void 0?_c:void 0,displayName:(_d=createdByData?.displayName)!==null&&_d!==void 0?_d:void 0,profileImage:(_e=createdByData.profileImage)!==null&&_e!==void 0?_e:void 0}:void 0,updatedAtDate=updatedAt&&new Date(+updatedAt)||void 0,updatedBy=updatedByData?.name?{name:(_f=updatedByData?.name)!==null&&_f!==void 0?_f:void 0,username:(_g=updatedByData?.username)!==null&&_g!==void 0?_g:void 0,displayName:(_h=updatedByData?.displayName)!==null&&_h!==void 0?_h:void 0,email:(_j=updatedByData.email)!==null&&_j!==void 0?_j:void 0,profileImage:(_k=updatedByData.profileImage)!==null&&_k!==void 0?_k:void 0}:void 0;return{id:lane_id_1.LaneId.from(id.name,id.scope),components:componentIds,readmeComponent:readmeComponentModel,createdAt:createdAtDate,updatedAt:updatedAtDate,displayName,hash,updatedBy,createdBy}}static groupLaneIdsByScope(laneIds){const grouped=new Map;return laneIds.forEach(laneId=>{const{scope}=laneId;if(!grouped.has(scope))grouped.set(scope,[laneId]);else{const existing=grouped.get(scope);grouped.set(scope,[...existing,laneId])}}),grouped}static groupLanesByScope(lanes){const grouped=new Map;return lanes.forEach(lane=>{const{scope}=lane.id;if(!grouped.has(scope))grouped.set(scope,[lane]);else{const existing=grouped.get(scope);grouped.set(scope,[...existing,lane])}}),grouped}static groupByComponentNameAndId(lanes){const byName=new Map,byId=new Map;return lanes.forEach(lane=>{const{components}=lane;components.forEach(component=>{const name=component.fullName,id=component.toString(),existingByName=byName.get(name)||[],existingById=byId.get(id)||[];existingByName.push(lane),existingById.push(lane),byName.set(name,existingByName),byId.set(id,existingById)})}),{byName,byId}}static from({data,scope,viewedLaneId}){var _a,_b,_c,_d,_e;const lanes=((_b=(_a=data?.lanes)===null||_a===void 0?void 0:_a.list)===null||_b===void 0?void 0:_b.map(lane=>LanesModel.mapToLaneModel(lane)))||[],currentLane=!((_c=data?.lanes)===null||_c===void 0)&&_c.current?LanesModel.mapToLaneModel(data.lanes.current):void 0,defaultLane=!((_d=data?.lanes)===null||_d===void 0)&&_d.default?LanesModel.mapToLaneModel(data.lanes.default):scope&&LanesModel.mapToLaneModel({id:{name:"main",scope},hash:""})||lanes.find(lane=>lane.id.isDefault())||void 0,viewedLane=viewedLaneId?lanes.find(lane=>lane.id.isEqual(viewedLaneId)):((_e=data?.lanes)===null||_e===void 0?void 0:_e.viewedLane)&&LanesModel.mapToLaneModel(data.lanes.viewedLane[0])||currentLane||defaultLane;return new LanesModel({lanes,currentLane,defaultLane,viewedLane})}constructor({lanes=[],viewedLane,currentLane,defaultLane}){this.getLaneComponentUrlByVersion=(componentId,laneId,addScopeMetadataInUrl)=>{var _a;const defaultLane2=this.getDefaultLane();if(!componentId.version||!laneId||!defaultLane2||laneId&&this.currentLane&&laneId.isEqual(this.currentLane.id))return LanesModel.getMainComponentUrl(componentId,void 0,addScopeMetadataInUrl);const lane=(_a=this.getLanesByComponentId(componentId))===null||_a===void 0?void 0:_a.find(l=>l.id.isEqual(laneId));return lane?lane.id.isDefault()?LanesModel.getMainComponentUrl(componentId,void 0,addScopeMetadataInUrl):LanesModel.getLaneComponentUrl(componentId,lane.id,addScopeMetadataInUrl):defaultLane2.components.find(c=>c.isEqual(componentId))?LanesModel.getMainComponentUrl(componentId,laneId,addScopeMetadataInUrl):void 0},this.setViewedLane=viewedLaneId=>{this.viewedLane=viewedLaneId?this.lanes.find(lane=>lane.id.isEqual(viewedLaneId)):void 0},this.setViewedOrDefaultLane=viewedLaneId=>{this.viewedLane=viewedLaneId?this.lanes.find(lane=>lane.id.isEqual(viewedLaneId)):this.getDefaultLane()},this.resolveComponentFromUrl=(idFromUrl,laneId)=>{var _a;const comps=((_a=laneId&&this.lanes.find(lane=>lane.id.isEqual(laneId))||this.viewedLane)===null||_a===void 0?void 0:_a.components)||[];return idFromUrl.includes(".")?comps.find(component=>component.toStringWithoutVersion()===idFromUrl):comps.find(component=>component.fullName===idFromUrl)},this.getDefaultLane=()=>this.defaultLane,this.getNonMainLanes=()=>this.lanes.filter(lane=>!lane.id.isDefault()),this.isInViewedLane=(componentId,includeVersion)=>{var _a,_b;return includeVersion?(_a=this.viewedLane)===null||_a===void 0?void 0:_a.components.some(comp=>includeVersion&&comp.isEqual(componentId)):(_b=this.viewedLane)===null||_b===void 0?void 0:_b.components.some(comp=>includeVersion&&comp.isEqual(componentId,{ignoreVersion:!0}))},this.isViewingCurrentLane=()=>this.currentLane&&this.viewedLane&&this.currentLane.id.isEqual(this.viewedLane.id),this.isViewingDefaultLane=()=>this.viewedLane&&this.viewedLane.id.isDefault(),this.isViewingNonDefaultLane=()=>this.viewedLane&&!this.viewedLane.id.isDefault(),this.getLanesByComponentName=componentId=>this.lanesByComponentName.get(componentId.fullName),this.getLanesByComponentId=componentId=>this.lanesByComponentId.get(componentId.toString()),this.isComponentOnMain=(componentId,includeVersion)=>{var _a,_b;return includeVersion?!!(!((_a=this.getLanesByComponentId(componentId))===null||_a===void 0)&&_a.some(lane=>lane.id.isDefault())):!!(!((_b=this.getLanesByComponentName(componentId))===null||_b===void 0)&&_b.some(lane=>lane.id.isDefault()))},this.isComponentOnMainButNotOnLane=(componentId,includeVersion,laneId)=>this.isComponentOnMain(componentId,includeVersion)&&!this.isComponentOnNonDefaultLanes(componentId,includeVersion,laneId),this.isComponentOnLaneButNotOnMain=(componentId,includeVersion,laneId)=>!this.isComponentOnMain(componentId,includeVersion)&&this.isComponentOnNonDefaultLanes(componentId,includeVersion,laneId),this.isComponentOnNonDefaultLanes=(componentId,includeVersion,laneId)=>{var _a,_b;return includeVersion?!!(!((_a=this.getLanesByComponentId(componentId))===null||_a===void 0)&&_a.some(lane=>!lane.id.isDefault()&&(!laneId||lane.id.isEqual(laneId)))):!!(!((_b=this.getLanesByComponentName(componentId))===null||_b===void 0)&&_b.some(lane=>!lane.id.isDefault()&&(!laneId||lane.id.isEqual(laneId))))},this.viewedLane=viewedLane,this.currentLane=currentLane,this.defaultLane=defaultLane;const allUniqueLanes=(0,lodash_1.compact)((0,lodash_1.uniqBy)([...lanes,this.defaultLane,this.currentLane,this.viewedLane],lane=>lane?.id.toString()));this.lanes=allUniqueLanes,this.laneIdsByScope=LanesModel.groupLaneIdsByScope(this.lanes.map(lane=>lane.id));const{byId,byName}=LanesModel.groupByComponentNameAndId(this.lanes);this.lanesByComponentId=byId,this.lanesByComponentName=byName}addLanes(newLanes=[]){this.lanes=LanesModel.concatLanes(this.lanes,newLanes),this.laneIdsByScope=LanesModel.groupLaneIdsByScope(this.lanes.map(lane=>lane.id));const{byId,byName}=LanesModel.groupByComponentNameAndId(this.lanes);this.lanesByComponentId=byId,this.lanesByComponentName=byName}static concatLanes(lanes=[],newLanes=[]){return(0,lodash_1.compact)((0,lodash_1.uniqBy)([...lanes,...newLanes],lane=>lane?.id.toString()))}}exports.LanesModel=LanesModel,LanesModel.lanesPrefix="~lane",LanesModel.baseLaneComponentRoute="/~component",LanesModel.lanePath=":scopeId/:laneId",LanesModel.laneUrlParamsKey="lane",LanesModel.laneFromPathRegex=(0,path_to_regexp_1.pathToRegexp)(`${LanesModel.lanesPrefix}/${LanesModel.lanePath}`,void 0,{end:!1,start:!1}),LanesModel.getLaneIdFromPathname=(pathname,urlSearchParams)=>{const matches=LanesModel.laneFromPathRegex.exec(pathname);if(matches){const[,scopeId,laneId]=matches;return lane_id_1.LaneId.from(laneId,scopeId)}if(urlSearchParams){const laneIdQueryParam=urlSearchParams.get(LanesModel.laneUrlParamsKey);return laneIdQueryParam?lane_id_1.LaneId.parse(laneIdQueryParam):void 0}},LanesModel.getLaneUrl=(laneId,relative)=>`${relative?"":"/"}${LanesModel.lanesPrefix}/${laneId.toString()}`,LanesModel.getLaneComponentUrl=(componentId,laneId,addScopeMetadataInUrl)=>{const isExternalComponent=componentId.scope!==laneId.scope,laneUrl=LanesModel.getLaneUrl(laneId),queryParams=new URLSearchParams;return componentId.version&&queryParams.set("version",componentId.version),addScopeMetadataInUrl&&queryParams.set("scope",componentId.scope),`${isExternalComponent?`${laneUrl}${LanesModel.baseLaneComponentRoute}/${componentId.toStringWithoutVersion()}`:`${laneUrl}${LanesModel.baseLaneComponentRoute}/${componentId.fullName}`}?${queryParams.toString()}`},LanesModel.getMainComponentUrl=(componentId,laneId,addScopeMetadataInUrl)=>{const componentUrl=componentId.fullName,queryParams=new URLSearchParams;return laneId&&queryParams.set(LanesModel.laneUrlParamsKey,laneId.toString()),addScopeMetadataInUrl&&queryParams.set("scope",componentId.scope),`${componentUrl}?${queryParams.toString()}`}},64856:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{SlotRouter:()=>SlotRouter});var jsx_runtime=__webpack_require__(4637),react=__webpack_require__(59496),dist=__webpack_require__(67702),lodash=__webpack_require__(32699);function toKey(route){return route.path?route.path:route.index?"/":"."}function SlotRouter({routes:routesFromProps,slot,rootRoutes,children,parentPath}){const jsxRoutes=(routesFromProps||slot&&(0,lodash.flatten)(slot.values())||[]).concat(rootRoutes||[]).map(route=>(0,jsx_runtime.jsx)(dist.AW,{...route},toKey(route)));return parentPath?(0,jsx_runtime.jsx)(dist.Z5,{children:(0,jsx_runtime.jsxs)(dist.AW,{path:parentPath,children:[jsxRoutes,children]})}):(0,jsx_runtime.jsx)(dist.Z5,{children:(0,jsx_runtime.jsxs)(dist.AW,{path:parentPath,children:[jsxRoutes,children]})})}},24135:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.DetailedVersion=exports.SimpleVersion=void 0;var version_dropdown_placeholder_1=__webpack_require__(37899);Object.defineProperty(exports,"SimpleVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.SimpleVersion}}),Object.defineProperty(exports,"DetailedVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.DetailedVersion}});var version_dropdown_1=__webpack_require__(37452);Object.defineProperty(exports,"VersionDropdown",{enumerable:!0,get:function(){return version_dropdown_1.VersionDropdown}})},555:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;var lane_info_1=__webpack_require__(33760);Object.defineProperty(exports,"LaneInfo",{enumerable:!0,get:function(){return lane_info_1.LaneInfo}})},33760:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;const lanes_ui_models_lanes_model_1=__webpack_require__(43912),react_1=__importDefault(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_elements_icon_1=__webpack_require__(6281),lane_info_module_scss_1=__importDefault(__webpack_require__(97473));function LaneInfo({id,currentLane}){const isCurrent=currentLane&&id.isEqual(currentLane.id);return react_1.default.createElement("div",{key:id.toString()},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href:lanes_ui_models_lanes_model_1.LanesModel.getLaneUrl(id),className:lane_info_module_scss_1.default.versionRow},react_1.default.createElement("span",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{className:lane_info_module_scss_1.default.laneIcon,of:"lane"}),id.toString())))}exports.LaneInfo=LaneInfo},37899:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DetailedVersion=exports.SimpleVersion=void 0;const react_1=__importDefault(__webpack_require__(59496)),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),semver=__importStar(__webpack_require__(9131)),evangelist_elements_icon_1=__webpack_require__(6281),design_ui_time_ago_1=__webpack_require__(69327),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),version_dropdown_placeholder_module_scss_1=__importDefault(__webpack_require__(42465));function SimpleVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,useCurrentVersionLog,showFullVersion,loading}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","useCurrentVersionLog","showFullVersion","loading"]);if(loading)return react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9});const formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.simple,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.SimpleVersion=SimpleVersion;function DetailedVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,loading,useCurrentVersionLog,showFullVersion}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","loading","useCurrentVersionLog","showFullVersion"]);const currentVersionLog=useCurrentVersionLog?.({skip:loading,version:currentVersion}),{displayName,message,username,email,date:_date,profileImage}=currentVersionLog||{},author=react_1.default.useMemo(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6),date=_date?new Date(+_date):void 0,timestamp=react_1.default.useMemo(()=>date?new Date(+date).toString():new Date().toString(),[date]);return loading?react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9}):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.detailed,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author??{},className:version_dropdown_placeholder_module_scss_1.default.versionUserAvatar,showTooltip:!0,onClick:rest.onClick}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),commitMessage(message,rest.onClick),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.versionTimestamp,onClick:rest.onClick},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp,onClick:rest.onClick})),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.DetailedVersion=DetailedVersion;function commitMessage(message,onClick){return!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.emptyMessage,onClick},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.commitMessage,onClick},message)}},37452:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.LOCAL_VERSION=void 0;const react_1=__importStar(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_surfaces_dropdown_1=__webpack_require__(47676),ui_foundation_ui_use_box_tab_1=__webpack_require__(11058),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),classnames_1=__importDefault(__webpack_require__(97754)),version_dropdown_module_scss_1=__importDefault(__webpack_require__(48510)),version_info_1=__webpack_require__(2285),lane_info_1=__webpack_require__(555),version_dropdown_placeholder_1=__webpack_require__(37899);exports.LOCAL_VERSION="workspace",exports.VersionDropdown=react_1.default.memo(_VersionDropdown);const VersionMenu=react_1.default.memo(_VersionMenu);function _VersionDropdown(_a){var{currentVersion,latestVersion,localVersion,useCurrentVersionLog,hasMoreVersions,loading,overrideVersionHref,className,placeholderClassName,getActiveTabIndex,dropdownClassName,menuClassName,showVersionDetails=!0,disabled,PlaceholderComponent:_PlaceholderComponent,currentLane,useComponentVersions,lanes}=_a,rest=__rest(_a,["currentVersion","latestVersion","localVersion","useCurrentVersionLog","hasMoreVersions","loading","overrideVersionHref","className","placeholderClassName","getActiveTabIndex","dropdownClassName","menuClassName","showVersionDetails","disabled","PlaceholderComponent","currentLane","useComponentVersions","lanes"]);const[key,setKey]=(0,react_1.useState)(0),singleVersion=!hasMoreVersions,[open,setOpen]=(0,react_1.useState)(!1);react_1.default.useEffect(()=>{loading&&open&&setOpen(!1)},[loading]);const handlePlaceholderClicked=e=>{loading||e.target===e.currentTarget&&setOpen(o=>!o)},defaultPlaceholder=react_1.default.createElement(version_dropdown_placeholder_1.SimpleVersion,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}),PlaceholderComponent=_PlaceholderComponent?react_1.default.createElement(_PlaceholderComponent,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}):defaultPlaceholder;return disabled||singleVersion&&!loading?react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.noVersions,className)},PlaceholderComponent):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionDropdown,className)}),react_1.default.createElement(evangelist_surfaces_dropdown_1.Dropdown,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.dropdown,dropdownClassName),dropClass:(0,classnames_1.default)(version_dropdown_module_scss_1.default.menu,menuClassName),open,onClick:handlePlaceholderClicked,onClickOutside:()=>setOpen(!1),onChange:(_e,_open)=>_open&&setKey(x=>x+1),PlaceholderComponent:_a2=>{var{children}=_a2,other=__rest(_a2,["children"]);return react_1.default.createElement("div",Object.assign({},other,{className:placeholderClassName,onClick:handlePlaceholderClicked}),children)},placeholder:PlaceholderComponent},react_1.default.createElement(VersionMenu,{className:menuClassName,key,currentVersion,latestVersion,localVersion,overrideVersionHref,showVersionDetails,currentLane,getActiveTabIndex,lanes,useVersions:useComponentVersions,open})))}const defaultActiveTabIndex=(currentVersion,tabs=[],tags,snaps)=>(snaps||[]).some(snap=>snap.version===currentVersion)?tabs.findIndex(tab=>tab.name==="SNAP"):0,VERSION_TAB_NAMES=["TAG","SNAP","LANE"];function _VersionMenu(_a){var _b,_c,{currentVersion,localVersion,latestVersion,overrideVersionHref,showVersionDetails,useVersions,currentLane,lanes,getActiveTabIndex=defaultActiveTabIndex,loading:loadingFromProps,open}=_a,rest=__rest(_a,["currentVersion","localVersion","latestVersion","overrideVersionHref","showVersionDetails","useVersions","currentLane","lanes","getActiveTabIndex","loading","open"]);const{snaps,tags,loading:loadingVersions}=useVersions?.()||{},loading=loadingFromProps||loadingVersions,tabs=react_1.default.useMemo(()=>VERSION_TAB_NAMES.map(name=>{switch(name){case"SNAP":return{name,payload:snaps||[]};case"LANE":return{name,payload:lanes||[]};default:return{name,payload:tags||[]}}}).filter(tab=>tab.payload.length>0),[snaps?.length,tags?.length,lanes?.length,loading]),[activeTabIndex,setActiveTab]=react_1.default.useState(getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane)),activeTab=react_1.default.useMemo(()=>activeTabIndex!==void 0?tabs[activeTabIndex]:void 0,[activeTabIndex,tabs]);react_1.default.useEffect(()=>{if(!currentLane||tabs.length===0)return;const _activeTabIndex=getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane);_activeTabIndex!==activeTabIndex&&setActiveTab(_activeTabIndex)},[currentLane,tabs.length,tags?.length,snaps?.length,currentVersion,loading]);const multipleTabs=tabs.length>1,message=multipleTabs?"Switch to view tags, snaps, or lanes":`Switch between ${(_b=tabs[0])===null||_b===void 0?void 0:_b.name.toLocaleLowerCase()}s`,showTab=activeTabIndex!==void 0&&((_c=tabs[activeTabIndex])===null||_c===void 0?void 0:_c.payload.length)>0,_rowRenderer=react_1.default.useCallback(function({index}){const{name,payload=[]}=activeTab||{},item=payload[index];if(!item)return null;if(name==="LANE"){const lane=item;return react_1.default.createElement(lane_info_1.LaneInfo,Object.assign({key:lane.id.toString(),currentLane},lane))}const version=item;return react_1.default.createElement(version_info_1.VersionInfo,Object.assign({key:version.version,currentVersion,latestVersion,overrideVersionHref,showDetails:showVersionDetails},version))},[activeTab,currentVersion,latestVersion,showVersionDetails,currentLane?.id.toString(),showTab]),rowRenderer=react_1.default.useMemo(()=>showTab&&activeTab?_rowRenderer:()=>null,[showTab,activeTab,_rowRenderer]),ActiveTab=react_1.default.useMemo(()=>activeTab?.payload.map((payload,index)=>rowRenderer({index})),[activeTab]);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionMenuContainer,!open&&version_dropdown_module_scss_1.default.hide)}),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.top},loading&&react_1.default.createElement(base_ui_loaders_skeleton_1.LineSkeleton,{count:6,className:version_dropdown_module_scss_1.default.loader}),!loading&&react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.titleContainer,version_dropdown_module_scss_1.default.title)},message),!loading&&localVersion&&react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{href:"?",active:currentVersion===exports.LOCAL_VERSION,className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionRow,version_dropdown_module_scss_1.default.localVersion)},react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:{},className:version_dropdown_module_scss_1.default.versionUserAvatar}),react_1.default.createElement("span",{className:version_dropdown_module_scss_1.default.versionName},exports.LOCAL_VERSION)))),react_1.default.createElement("div",{className:(0,classnames_1.default)(multipleTabs&&version_dropdown_module_scss_1.default.tabs)},multipleTabs&&tabs.map(({name},index)=>react_1.default.createElement(ui_foundation_ui_use_box_tab_1.Tab,{className:version_dropdown_module_scss_1.default.tab,key:name,isActive:activeTabIndex===index,onClick:()=>setActiveTab(index)},name))),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.versionContainerRoot},ActiveTab))}},2285:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;var version_info_1=__webpack_require__(4259);Object.defineProperty(exports,"VersionInfo",{enumerable:!0,get:function(){return version_info_1.VersionInfo}})},4259:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;const design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),design_ui_time_ago_1=__webpack_require__(69327),component_ui_version_label_1=__webpack_require__(35447),react_1=__importStar(__webpack_require__(59496)),design_ui_avatar_1=__webpack_require__(7719),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),version_info_module_scss_1=__importDefault(__webpack_require__(61578));exports.VersionInfo=react_1.default.memo(react_1.default.forwardRef(_VersionInfo));function _VersionInfo({version,currentVersion,latestVersion,date,username,displayName,email,overrideVersionHref,showDetails,message,tag,profileImage},ref){const isCurrent=version===currentVersion,author=(0,react_1.useMemo)(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),timestamp=(0,react_1.useMemo)(()=>date?new Date(parseInt(date)).toString():new Date().toString(),[date]),currentVersionRef=(0,react_1.useRef)(null);(0,react_1.useEffect)(()=>{var _a;isCurrent&&((_a=currentVersionRef.current)===null||_a===void 0||_a.scrollIntoView({block:"nearest"}))},[isCurrent]);const href=overrideVersionHref?overrideVersionHref(version):`?version=${version}`,formattedVersion=(0,react_1.useMemo)(()=>tag?version:version.slice(0,6),[tag,version]),isLatest=version===latestVersion;return react_1.default.createElement("div",{ref:ref||currentVersionRef},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href,className:version_info_module_scss_1.default.versionRow},react_1.default.createElement("div",{className:version_info_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author,className:version_info_module_scss_1.default.versionUserAvatar,showTooltip:!0}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_info_module_scss_1.default.versionName)},formattedVersion),isLatest&&react_1.default.createElement(component_ui_version_label_1.VersionLabel,{status:"latest"}),react_1.default.createElement(CommitMessage,{message,showDetails})),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.versionTimestamp},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp}))))}function CommitMessage({message,showDetails}){return showDetails?!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.emptyMessage},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.commitMessage},message):null}},39636:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectList=void 0;class AspectList{constructor(entries){this.entries=entries}get(aspectId){const aspectEntry=this.entries.find(entry=>entry.aspectId===aspectId);if(!!aspectEntry)return aspectEntry.aspectData}toObject(){return{entries:this.entries}}static fromObject(obj){const entries=obj?.entries||[];return new AspectList(entries)}static fromJson(obj){const entries=obj?.entries?.map(({aspectId,aspectData})=>({aspectId,aspectData:JSON.parse(aspectData)}))||[];return new AspectList(entries)}}exports.AspectList=AspectList},83804:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentDescriptor=void 0;function _component(){const data=__webpack_require__(99906);return _component=function(){return data},data}function _aspectList(){const data=__webpack_require__(39636);return _aspectList=function(){return data},data}class ComponentDescriptor{constructor(id,aspectList){this.id=id,this.aspectList=aspectList}get scope(){return this.id.scope}get(aspectId){return this.aspectList.get(aspectId)}toObject(){return{id:this.id.toString(),aspectList:this.aspectList.toObject()}}async isModified(){return!1}stringify(){return JSON.stringify(this.toObject())}toString(){return this.stringify()}static fromObject({id,aspectList}){const aspects=_aspectList().AspectList.fromObject(aspectList);return new ComponentDescriptor(_component().ComponentID.fromString(id),aspects)}static fromArray(componentsDescriptorProps){return componentsDescriptorProps.map(component=>ComponentDescriptor.fromObject(component))}}exports.ComponentDescriptor=ComponentDescriptor},17092:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"AspectDataEntry",{enumerable:!0,get:function(){return _aspectList().AspectDataEntry}}),Object.defineProperty(exports,"AspectList",{enumerable:!0,get:function(){return _aspectList().AspectList}}),Object.defineProperty(exports,"AspectListProps",{enumerable:!0,get:function(){return _aspectList().AspectListProps}}),Object.defineProperty(exports,"ComponentDescriptor",{enumerable:!0,get:function(){return _componentDescriptor().ComponentDescriptor}}),Object.defineProperty(exports,"ComponentDescriptorProps",{enumerable:!0,get:function(){return _componentDescriptor().ComponentDescriptorProps}});function _componentDescriptor(){const data=__webpack_require__(83804);return _componentDescriptor=function(){return data},data}function _aspectList(){const data=__webpack_require__(39636);return _aspectList=function(){return data},data}},99674:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectEntry=void 0;class AspectEntry{constructor(id,legacyEntry){this.id=id,this.legacyEntry=legacyEntry}get legacy(){return this.legacyEntry}get isLegacy(){return!!this.config?.__legacy}get config(){return this.legacy.config}set config(config){this.legacy.config=config}get data(){return this.legacy.data}get isRemoved(){return this.legacy.isRemoved}set data(val){this.legacy.data=val}transform(newData){const newEntry=this.clone();return newEntry.data=newData,new AspectEntry(this.id,newEntry.legacy)}clone(){return new AspectEntry(this.id,this.legacyEntry.clone())}serialize(){return{id:this.id.toString(),config:this.config,data:this.data,icon:"https://static.bit.dev/extensions-icons/default.svg"}}}exports.AspectEntry=AspectEntry},14449:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;function _anyFs(){const data=__webpack_require__(21186);return _anyFs=function(){return data},data}function _eol(){const data=__webpack_require__(58225);return _eol=function(){return data},data}function _path(){const data=_interopRequireDefault(__webpack_require__(62005));return _path=function(){return data},data}function _toolboxPath(){const data=__webpack_require__(92175);return _toolboxPath=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}class ComponentFS extends _anyFs().MemoryFS{constructor(files){super();this.files=files}get hash(){return""}byRegex(extension){return this.files.filter(file=>file.path.match(extension))}byGlob(patterns){const{includePatterns,excludePatterns}=(0,_toolboxPath().splitPatterns)(patterns);return this.files.filter(file=>(0,_toolboxPath().matchPatterns)(file.relative,includePatterns,excludePatterns))}toObject(){return this.files.map(file=>({path:file.path,contents:file.contents}))}static fromVinyls(files){const fs=new ComponentFS(files);return files.forEach(file=>{let dirPath=file.relativeDir;dirPath.startsWith("/")||(dirPath=_path().default.join("/",dirPath)),fs.mkdirpSync(dirPath),fs.writeFileSync(`/${file.relative}`,(0,_eol().auto)(file.contents||""))}),fs}}exports.default=ComponentFS},68703:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentMap=void 0;class ComponentMap{constructor(hashMap){this.hashMap=hashMap}byComponent(component){return this.hashMap.get(component.id.toString())}get components(){return this.toArray().map(([component])=>component)}get(component){return this.hashMap.get(component.id.toString())}getValueByComponentId(componentId){const tuple=this.hashMap.get(componentId.toString());return tuple?tuple[1]:null}toArray(){return Array.from(this.hashMap.values())}map(predicate){const tuples=this.toArray().map(([component,value])=>{const newValue=predicate(value,component);return[component.id.toString(),[component,newValue]]});return new ComponentMap(new Map(tuples))}async asyncMap(predicate){const tuplesP=this.toArray().map(async([component,value])=>{const newValue=await predicate(value,component);return[component.id.toString(),[component,newValue]]}),tuples=await Promise.all(tuplesP);return new ComponentMap(new Map(tuples))}forEach(predicate){this.toArray().forEach(([component,value])=>{predicate(value,component)})}flattenValue(){return this.toArray().reduce((acc,[,value])=>(acc=acc.concat(value),acc),[])}filter(predicate){const asMap=this.toArray().filter(([,value])=>predicate(value)).map(([component,value])=>[component.id.toString(),[component,value]]);return new ComponentMap(new Map(asMap))}keys(){return this.hashMap.keys()}static create(rawMap){const newMap=rawMap.map(([component,data])=>[component.id.toString(),[component,data]]);return new ComponentMap(new Map(newMap))}static as(components,predicate){const tuples=components.map(component=>[component.id.toString(),[component,predicate(component)]]);return new ComponentMap(new Map(tuples))}static async asAsync(components,predicate){const tuples=await Promise.all(components.map(async component=>[component.id.toString(),[component,await predicate(component)]]));return new ComponentMap(new Map(tuples))}}exports.ComponentMap=ComponentMap},64749:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ComponentMap",{enumerable:!0,get:function(){return _componentMap().ComponentMap}});function _componentMap(){const data=__webpack_require__(68703);return _componentMap=function(){return data},data}},9882:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.ComponentAspect=void 0;function _harmony(){const data=__webpack_require__(55669);return _harmony=function(){return data},data}const ComponentAspect=exports.ComponentAspect=_harmony().Aspect.create({id:"teambit.component/component",dependencies:[],defaultConfig:{}});var _default=exports.default=ComponentAspect},39669:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Component=void 0;function _toolboxString(){const data=__webpack_require__(22139);return _toolboxString=function(){return data},data}function _bitError(){const data=__webpack_require__(74155);return _bitError=function(){return data},data}function _lodash(){const data=__webpack_require__(32699);return _lodash=function(){return data},data}function _tagMap(){const data=__webpack_require__(11293);return _tagMap=function(){return data},data}function _exceptions(){const data=__webpack_require__(67044);return _exceptions=function(){return data},data}class Component{constructor(id,head=null,_state,tags=new(_tagMap()).TagMap,factory){this.id=id,this.head=head,this._state=_state,this.tags=tags,this.factory=factory}get mainFile(){return this.state.mainFile}get state(){return this._state}set state(state){this._state=state}get config(){return this.state.config}get filesystem(){return this.state.filesystem}get buildStatus(){return this._state._consumer.buildStatus}get headTag(){if(!!this.head)return this.tags.byHash(this.head.hash)}get latest(){if(!!this.head)try{return this.tags.getLatest()}catch(err){if(err instanceof _exceptions().CouldNotFindLatest)return this.head.hash;throw err}}get(id){return this.state.aspects.get(id)?.serialize()}async getLogs(filter){const allLogs=await this.factory.getLogs(this.id,!1,filter?.head);if(!filter)return allLogs;const{type,limit,offset,sort}=filter,typeFilter=snap=>type==="tag"?snap.tag:type==="snap"?!snap.tag:!0;let filteredLogs=type&&allLogs.filter(typeFilter)||allLogs;return sort!=="asc"&&(filteredLogs=filteredLogs.reverse()),limit&&(filteredLogs=(0,_lodash().slice)(filteredLogs,offset,limit+(offset||0))),filteredLogs}stringify(){return JSON.stringify({id:this.id,head:this.head})}get displayName(){return this.id.name.split("-").map(token=>(0,_toolboxString().capitalize)(token)).join(" ")}tag(version){}isModified(){return this.factory.isModified(this)}isDeleted(){return this.state._consumer.isRemoved()}isOutdated(){if(!this.latest)return!1;const latestTag=this.tags.byVersion(this.latest);return latestTag?this.head?.hash!==latestTag?.hash:!1}isNew(){return Promise.resolve(this.head===null)}loadState(snapId){return this.factory.getState(this.id,snapId)}loadSnap(snapId){const snapToGet=snapId||this.head?.hash;if(!snapToGet)throw new(_bitError()).BitError("could not load snap for new components");return this.factory.getSnap(this.id,snapToGet)}snapsIterable(snapId,options={}){const snapToStart=snapId||this.head?.hash;let nextSnaps=[snapToStart],done;snapToStart||(done=!0);const iterator={next:async()=>{if(done)return{value:void 0,done};const currSnapId=nextSnaps.shift(),snap=await this.loadSnap(currSnapId);return snap.parents&&snap.parents.length&&(options.firstParentOnly?nextSnaps.push(snap.parents[0]):nextSnaps=nextSnaps.concat(snap.parents)),nextSnaps.length?options.stopFn&&(done=await options.stopFn(snap)):done=!0,{value:snap,done:void 0}}};return{[Symbol.asyncIterator]:()=>iterator}}async getClosestTag(snapToStartFrom){const tagsHashMap=this.tags.getHashMap(),stopFn=async snap=>!!tagsHashMap.has(snap.hash),iterable=this.snapsIterable(snapToStartFrom,{firstParentOnly:!0,stopFn}),snaps=[];for await(const snap of iterable)snaps.push(snap);if(snaps.length){const hashOfLastSnap=snaps[snaps.length-1].hash;return tagsHashMap.get(hashOfLastSnap)}}getTag(){const currentVersion=this.id.version;if(!!currentVersion)return this.tags.byVersion(currentVersion)||this.tags.byHash(currentVersion)}getSnapHash(){if(!this.id.hasVersion())return;const tag=this.tags.byVersion(this.id.version);return tag?tag.hash:this.id.version}checkout(version){}write(path,fs){}equals(component){return component.id.toString()===this.id.toString()}}exports.Component=Component},79792:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Config=void 0;class Config{constructor(consumerComponent){this.consumerComponent=consumerComponent}get main(){return this.consumerComponent.mainFile}get extensions(){return this.consumerComponent.extensions}}exports.Config=Config},33570:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CouldNotFindLatest=void 0;class CouldNotFindLatest extends Error{constructor(semverArray){super(`could not find latest semver in array: ${semverArray.join(", ")}`)}report(){return this.message}}exports.CouldNotFindLatest=CouldNotFindLatest},35075:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostNotFound=void 0;class HostNotFound extends Error{constructor(hostName){super();this.hostName=hostName}toString(){return`[component] error: host '${this.hostName}' was not found`}}exports.HostNotFound=HostNotFound},67044:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"CouldNotFindLatest",{enumerable:!0,get:function(){return _couldNotFindLatest().CouldNotFindLatest}}),Object.defineProperty(exports,"HostNotFound",{enumerable:!0,get:function(){return _hostNotFound().HostNotFound}}),Object.defineProperty(exports,"MainFileNotFound",{enumerable:!0,get:function(){return _mainFileNotFound().MainFileNotFound}}),Object.defineProperty(exports,"NothingToSnap",{enumerable:!0,get:function(){return _nothingToSnap().default}});function _nothingToSnap(){const data=_interopRequireDefault(__webpack_require__(86337));return _nothingToSnap=function(){return data},data}function _hostNotFound(){const data=__webpack_require__(35075);return _hostNotFound=function(){return data},data}function _couldNotFindLatest(){const data=__webpack_require__(33570);return _couldNotFindLatest=function(){return data},data}function _mainFileNotFound(){const data=__webpack_require__(86889);return _mainFileNotFound=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},86889:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MainFileNotFound=void 0;class MainFileNotFound extends Error{constructor(id,mainFile){super();this.id=id,this.mainFile=mainFile}toString(){return`[component] error: main file ${this.mainFile} for component ${this.id.toString()} was not found`}}exports.MainFileNotFound=MainFileNotFound},86337:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class NothingToSnap extends Error{}exports.default=NothingToSnap},45995:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentHostModel=void 0;function _ui(){const data=__webpack_require__(8980);return _ui=function(){return data},data}class ComponentHostModel{constructor(name,components){this.name=name,this.components=components}static from(data){return new ComponentHostModel(data.getHost.name,_ui().ComponentModel.fromArray(data.getHost.list))}}exports.ComponentHostModel=ComponentHostModel},47636:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={useComponentHost:!0};Object.defineProperty(exports,"useComponentHost",{enumerable:!0,get:function(){return _useComponentHost().useComponentHost}});function _useComponentHost(){const data=__webpack_require__(15893);return _useComponentHost=function(){return data},data}var _componentHostModel=__webpack_require__(45995);Object.keys(_componentHostModel).forEach(function(key){key==="default"||key==="__esModule"||Object.prototype.hasOwnProperty.call(_exportNames,key)||key in exports&&exports[key]===_componentHostModel[key]||Object.defineProperty(exports,key,{enumerable:!0,get:function(){return _componentHostModel[key]}})})},15893:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useComponentHost=useComponentHost;function _uiFoundationUiHooks(){const data=__webpack_require__(25338);return _uiFoundationUiHooks=function(){return data},data}function _client(){const data=__webpack_require__(97299);return _client=function(){return data},data}function _componentHostModel(){const data=__webpack_require__(45995);return _componentHostModel=function(){return data},data}const COMPONENT_HOST=(0,_client().gql)`
210
+ `,useRootLanes=(viewedLaneId,skip,options={},scope)=>{const{ids,offset,limit,sort}=options,{data,fetchMore,loading}=(0,ui_foundation_ui_hooks_use_data_query_1.useDataQuery)(GET_LANES,{variables:{laneIds:ids,offset,limit,sort,skipViewedLane:!viewedLaneId||viewedLaneId.isDefault(),viewedLaneId:viewedLaneId?[viewedLaneId?.toString()]:void 0},skip,errorPolicy:"all",fetchPolicy:"cache-and-network"}),lanesModel=(0,react_1.useMemo)(()=>{if(!loading&&!!data)return lanes_ui_models_lanes_model_1.LanesModel.from({data,scope})},[loading,data,viewedLaneId?.toString(),scope]),hasMore=(0,react_1.useMemo)(()=>{var _a,_b,_c,_d,_e,_f;return loading?!0:limit?ids?.length?((_c=(_b=(_a=data?.lanes)===null||_a===void 0?void 0:_a.list)===null||_b===void 0?void 0:_b.length)!==null&&_c!==void 0?_c:0)===ids.length:((_f=(_e=(_d=data?.lanes)===null||_d===void 0?void 0:_d.list)===null||_e===void 0?void 0:_e.length)!==null&&_f!==void 0?_f:0)>=limit:!1},[loading,data]),fetchMoreLanes=(0,react_1.useCallback)((newOffset,newLimit)=>__awaiter(void 0,void 0,void 0,function*(){var _a,_b;if(hasMore)try{const{data:moreData,networkStatus}=yield fetchMore({variables:{offset:newOffset,limit:newLimit,laneIds:[],skipViewedLane:!viewedLaneId||viewedLaneId.isDefault(),viewedLaneId:viewedLaneId?[viewedLaneId?.toString()]:void 0}}),loadingMore=networkStatus===3;return!loadingMore&&moreData.lanes?{lanesModel:lanes_ui_models_lanes_model_1.LanesModel.from({data:moreData}),loading:loadingMore,hasMore:((_b=(_a=moreData.lanes.list)===null||_a===void 0?void 0:_a.length)!==null&&_b!==void 0?_b:0)>=newLimit,nextOffset:newOffset+newLimit}:{lanesModel,loading:loadingMore,nextOffset:newOffset,currentLimit:newLimit}}catch(err){return console.error(err),{}}return{lanesModel,loading:!1,hasMore:!1,nextOffset:newOffset,currentLimit:newLimit}}),[hasMore,viewedLaneId?.toString(),lanesModel]);return{loading,lanesModel,fetchMoreLanes,hasMore,offset,limit}},useSearchLanes=(search,skip)=>{const{data:searchData,loading:loadingSearch}=(0,ui_foundation_ui_hooks_use_data_query_1.useDataQuery)(GET_LANES,{variables:{search,skipViewedLane:!0},skip:skip||!search,errorPolicy:"all",fetchPolicy:"cache-and-network"});return search?{loading:loadingSearch,lanesModel:searchData&&lanes_ui_models_lanes_model_1.LanesModel.from({data:{lanes:Object.assign(Object.assign({},searchData.lanes),{current:void 0,default:void 0})}})}:{}};exports.useSearchLanes=useSearchLanes;const useLanes=(targetLanes,skip,optionsFromProps,useContextFromProps=!0,scope)=>{var _a,_b,_c,_d,_e;const context=(0,lanes_context_1.useLanesContext)()||{},options=optionsFromProps||context?.options,isSameOptions=(0,lodash_1.isEqual)(options,context?.options),useContext=useContextFromProps&&!!context&&isSameOptions,shouldSkip=skip||!!targetLanes||useContext,rootLanesData=useRootLanes((_b=(_a=context?.lanesModel)===null||_a===void 0?void 0:_a.viewedLane)===null||_b===void 0?void 0:_b.id,shouldSkip,options,scope),searchResult=(0,exports.useSearchLanes)(options?.search,shouldSkip);return targetLanes?Object.assign(Object.assign(Object.assign({},context),rootLanesData),{lanesModel:targetLanes,searchResult}):useContext?Object.assign(Object.assign({},context),{searchResult}):((_c=rootLanesData.lanesModel)===null||_c===void 0||_c.setViewedLane((_e=(_d=context?.lanesModel)===null||_d===void 0?void 0:_d.viewedLane)===null||_e===void 0?void 0:_e.id),Object.assign(Object.assign(Object.assign({},context),rootLanesData),{searchResult}))};exports.useLanes=useLanes},85904:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Collapser=void 0;const evangelist_elements_icon_1=__webpack_require__(6281),classnames_1=__importDefault(__webpack_require__(97754)),react_1=__importDefault(__webpack_require__(59496)),design_ui_tooltip_1=__webpack_require__(49142),collapser_button_module_scss_1=__importDefault(__webpack_require__(509));function Collapser(_a){var{isOpen,tooltipContent,placement="right",onClick,className}=_a,rest=__rest(_a,["isOpen","tooltipContent","placement","onClick","className"]);const icon=`${placement}-rounded-corners`;return react_1.default.createElement(design_ui_tooltip_1.Tooltip,{content:tooltipContent},react_1.default.createElement("div",Object.assign({},rest,{onClick,className:(0,classnames_1.default)(collapser_button_module_scss_1.default.collapser,collapser_button_module_scss_1.default[placement],isOpen&&collapser_button_module_scss_1.default.open,className)}),react_1.default.createElement("div",{className:collapser_button_module_scss_1.default.circle},react_1.default.createElement("div",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:icon})))))}exports.Collapser=Collapser},53440:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Collapser=void 0;var collapser_button_1=__webpack_require__(85904);Object.defineProperty(exports,"Collapser",{enumerable:!0,get:function(){return collapser_button_1.Collapser}})},43912:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanesModel=void 0;var lanes_model_1=__webpack_require__(69291);Object.defineProperty(exports,"LanesModel",{enumerable:!0,get:function(){return lanes_model_1.LanesModel}})},69291:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanesModel=void 0;const component_1=__webpack_require__(99906),lane_id_1=__webpack_require__(8839),component_id_1=__webpack_require__(99978),path_to_regexp_1=__webpack_require__(51419),lodash_1=__webpack_require__(32699);class LanesModel{static mapToLaneModel(laneData){var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k;const{id,laneComponentIds=[],readmeComponent,hash,createdAt,displayName,updatedAt,createdBy:createdByData,updatedBy:updatedByData}=laneData,componentIds=laneComponentIds?.map(laneComponentId=>component_id_1.ComponentID.fromObject(laneComponentId))||[],readmeComponentModel=readmeComponent&&component_1.ComponentModel.from(Object.assign({},readmeComponent)),createdAtDate=createdAt&&new Date(+createdAt)||void 0,createdBy=createdByData?{name:(_a=createdByData?.name)!==null&&_a!==void 0?_a:void 0,email:(_b=createdByData.email)!==null&&_b!==void 0?_b:void 0,username:(_c=createdByData?.username)!==null&&_c!==void 0?_c:void 0,displayName:(_d=createdByData?.displayName)!==null&&_d!==void 0?_d:void 0,profileImage:(_e=createdByData.profileImage)!==null&&_e!==void 0?_e:void 0}:void 0,updatedAtDate=updatedAt&&new Date(+updatedAt)||void 0,updatedBy=updatedByData?.name?{name:(_f=updatedByData?.name)!==null&&_f!==void 0?_f:void 0,username:(_g=updatedByData?.username)!==null&&_g!==void 0?_g:void 0,displayName:(_h=updatedByData?.displayName)!==null&&_h!==void 0?_h:void 0,email:(_j=updatedByData.email)!==null&&_j!==void 0?_j:void 0,profileImage:(_k=updatedByData.profileImage)!==null&&_k!==void 0?_k:void 0}:void 0;return{id:lane_id_1.LaneId.from(id.name,id.scope),components:componentIds,readmeComponent:readmeComponentModel,createdAt:createdAtDate,updatedAt:updatedAtDate,displayName,hash,updatedBy,createdBy}}static groupLaneIdsByScope(laneIds){const grouped=new Map;return laneIds.forEach(laneId=>{const{scope}=laneId;if(!grouped.has(scope))grouped.set(scope,[laneId]);else{const existing=grouped.get(scope);grouped.set(scope,[...existing,laneId])}}),grouped}static groupLanesByScope(lanes){const grouped=new Map;return lanes.forEach(lane=>{const{scope}=lane.id;if(!grouped.has(scope))grouped.set(scope,[lane]);else{const existing=grouped.get(scope);grouped.set(scope,[...existing,lane])}}),grouped}static groupByComponentNameAndId(lanes){const byName=new Map,byId=new Map;return lanes.forEach(lane=>{const{components}=lane;components.forEach(component=>{const name=component.fullName,id=component.toString(),existingByName=byName.get(name)||[],existingById=byId.get(id)||[];existingByName.push(lane),existingById.push(lane),byName.set(name,existingByName),byId.set(id,existingById)})}),{byName,byId}}static from({data,scope,viewedLaneId}){var _a,_b,_c,_d,_e;const lanes=((_b=(_a=data?.lanes)===null||_a===void 0?void 0:_a.list)===null||_b===void 0?void 0:_b.map(lane=>LanesModel.mapToLaneModel(lane)))||[],currentLane=!((_c=data?.lanes)===null||_c===void 0)&&_c.current?LanesModel.mapToLaneModel(data.lanes.current):void 0,defaultLane=!((_d=data?.lanes)===null||_d===void 0)&&_d.default?LanesModel.mapToLaneModel(data.lanes.default):scope&&LanesModel.mapToLaneModel({id:{name:"main",scope},hash:""})||lanes.find(lane=>lane.id.isDefault())||void 0,viewedLane=viewedLaneId?lanes.find(lane=>lane.id.isEqual(viewedLaneId)):((_e=data?.lanes)===null||_e===void 0?void 0:_e.viewedLane)&&LanesModel.mapToLaneModel(data.lanes.viewedLane[0])||currentLane||defaultLane;return new LanesModel({lanes,currentLane,defaultLane,viewedLane})}constructor({lanes=[],viewedLane,currentLane,defaultLane}){this.getLaneComponentUrlByVersion=(componentId,laneId,addScopeMetadataInUrl)=>{var _a;const defaultLane2=this.getDefaultLane();if(!componentId.version||!laneId||!defaultLane2||laneId&&this.currentLane&&laneId.isEqual(this.currentLane.id))return LanesModel.getMainComponentUrl(componentId,void 0,addScopeMetadataInUrl);const lane=(_a=this.getLanesByComponentId(componentId))===null||_a===void 0?void 0:_a.find(l=>l.id.isEqual(laneId));return lane?lane.id.isDefault()?LanesModel.getMainComponentUrl(componentId,void 0,addScopeMetadataInUrl):LanesModel.getLaneComponentUrl(componentId,lane.id,addScopeMetadataInUrl):defaultLane2.components.find(c=>c.isEqual(componentId))?LanesModel.getMainComponentUrl(componentId,laneId,addScopeMetadataInUrl):void 0},this.setViewedLane=viewedLaneId=>{this.viewedLane=viewedLaneId?this.lanes.find(lane=>lane.id.isEqual(viewedLaneId)):void 0},this.setViewedOrDefaultLane=viewedLaneId=>{this.viewedLane=viewedLaneId?this.lanes.find(lane=>lane.id.isEqual(viewedLaneId)):this.getDefaultLane()},this.resolveComponentFromUrl=(idFromUrl,laneId)=>{var _a;const comps=((_a=laneId&&this.lanes.find(lane=>lane.id.isEqual(laneId))||this.viewedLane)===null||_a===void 0?void 0:_a.components)||[];return idFromUrl.includes(".")?comps.find(component=>component.toStringWithoutVersion()===idFromUrl):comps.find(component=>component.fullName===idFromUrl)},this.getDefaultLane=()=>this.defaultLane,this.getNonMainLanes=()=>this.lanes.filter(lane=>!lane.id.isDefault()),this.isInViewedLane=(componentId,includeVersion)=>{var _a,_b;return includeVersion?(_a=this.viewedLane)===null||_a===void 0?void 0:_a.components.some(comp=>includeVersion&&comp.isEqual(componentId)):(_b=this.viewedLane)===null||_b===void 0?void 0:_b.components.some(comp=>includeVersion&&comp.isEqual(componentId,{ignoreVersion:!0}))},this.isViewingCurrentLane=()=>this.currentLane&&this.viewedLane&&this.currentLane.id.isEqual(this.viewedLane.id),this.isViewingDefaultLane=()=>this.viewedLane&&this.viewedLane.id.isDefault(),this.isViewingNonDefaultLane=()=>this.viewedLane&&!this.viewedLane.id.isDefault(),this.getLanesByComponentName=componentId=>this.lanesByComponentName.get(componentId.fullName),this.getLanesByComponentId=componentId=>this.lanesByComponentId.get(componentId.toString()),this.isComponentOnMain=(componentId,includeVersion)=>{var _a,_b;return includeVersion?!!(!((_a=this.getLanesByComponentId(componentId))===null||_a===void 0)&&_a.some(lane=>lane.id.isDefault())):!!(!((_b=this.getLanesByComponentName(componentId))===null||_b===void 0)&&_b.some(lane=>lane.id.isDefault()))},this.isComponentOnMainButNotOnLane=(componentId,includeVersion,laneId)=>this.isComponentOnMain(componentId,includeVersion)&&!this.isComponentOnNonDefaultLanes(componentId,includeVersion,laneId),this.isComponentOnLaneButNotOnMain=(componentId,includeVersion,laneId)=>!this.isComponentOnMain(componentId,includeVersion)&&this.isComponentOnNonDefaultLanes(componentId,includeVersion,laneId),this.isComponentOnNonDefaultLanes=(componentId,includeVersion,laneId)=>{var _a,_b;return includeVersion?!!(!((_a=this.getLanesByComponentId(componentId))===null||_a===void 0)&&_a.some(lane=>!lane.id.isDefault()&&(!laneId||lane.id.isEqual(laneId)))):!!(!((_b=this.getLanesByComponentName(componentId))===null||_b===void 0)&&_b.some(lane=>!lane.id.isDefault()&&(!laneId||lane.id.isEqual(laneId))))},this.viewedLane=viewedLane,this.currentLane=currentLane,this.defaultLane=defaultLane;const allUniqueLanes=(0,lodash_1.compact)((0,lodash_1.uniqBy)([...lanes,this.defaultLane,this.currentLane,this.viewedLane],lane=>lane?.id.toString()));this.lanes=allUniqueLanes,this.laneIdsByScope=LanesModel.groupLaneIdsByScope(this.lanes.map(lane=>lane.id));const{byId,byName}=LanesModel.groupByComponentNameAndId(this.lanes);this.lanesByComponentId=byId,this.lanesByComponentName=byName}addLanes(newLanes=[]){this.lanes=LanesModel.concatLanes(this.lanes,newLanes),this.laneIdsByScope=LanesModel.groupLaneIdsByScope(this.lanes.map(lane=>lane.id));const{byId,byName}=LanesModel.groupByComponentNameAndId(this.lanes);this.lanesByComponentId=byId,this.lanesByComponentName=byName}static concatLanes(lanes=[],newLanes=[]){return(0,lodash_1.compact)((0,lodash_1.uniqBy)([...lanes,...newLanes],lane=>lane?.id.toString()))}}exports.LanesModel=LanesModel,LanesModel.lanesPrefix="~lane",LanesModel.baseLaneComponentRoute="/~component",LanesModel.lanePath=":scopeId/:laneId",LanesModel.laneUrlParamsKey="lane",LanesModel.laneFromPathRegex=(0,path_to_regexp_1.pathToRegexp)(`${LanesModel.lanesPrefix}/${LanesModel.lanePath}`,void 0,{end:!1,start:!1}),LanesModel.getLaneIdFromPathname=(pathname,urlSearchParams)=>{const matches=LanesModel.laneFromPathRegex.exec(pathname);if(matches){const[,scopeId,laneId]=matches;return lane_id_1.LaneId.from(laneId,scopeId)}if(urlSearchParams){const laneIdQueryParam=urlSearchParams.get(LanesModel.laneUrlParamsKey);return laneIdQueryParam?lane_id_1.LaneId.parse(laneIdQueryParam):void 0}},LanesModel.getLaneUrl=(laneId,relative)=>`${relative?"":"/"}${LanesModel.lanesPrefix}/${laneId.toString()}`,LanesModel.getLaneComponentUrl=(componentId,laneId,addScopeMetadataInUrl)=>{const isExternalComponent=componentId.scope!==laneId.scope,laneUrl=LanesModel.getLaneUrl(laneId),queryParams=new URLSearchParams;return componentId.version&&queryParams.set("version",componentId.version),addScopeMetadataInUrl&&queryParams.set("scope",componentId.scope),`${isExternalComponent?`${laneUrl}${LanesModel.baseLaneComponentRoute}/${componentId.toStringWithoutVersion()}`:`${laneUrl}${LanesModel.baseLaneComponentRoute}/${componentId.fullName}`}?${queryParams.toString()}`},LanesModel.getMainComponentUrl=(componentId,laneId,addScopeMetadataInUrl)=>{const componentUrl=componentId.fullName,queryParams=new URLSearchParams;return laneId&&queryParams.set(LanesModel.laneUrlParamsKey,laneId.toString()),addScopeMetadataInUrl&&queryParams.set("scope",componentId.scope),`${componentUrl}?${queryParams.toString()}`}},64856:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{SlotRouter:()=>SlotRouter});var jsx_runtime=__webpack_require__(4637),react=__webpack_require__(59496),dist=__webpack_require__(67702),lodash=__webpack_require__(32699);function toKey(route){return route.path?route.path:route.index?"/":"."}function SlotRouter({routes:routesFromProps,slot,rootRoutes,children,parentPath}){const jsxRoutes=(routesFromProps||slot&&(0,lodash.flatten)(slot.values())||[]).concat(rootRoutes||[]).map(route=>(0,jsx_runtime.jsx)(dist.AW,{...route},toKey(route)));return parentPath?(0,jsx_runtime.jsx)(dist.Z5,{children:(0,jsx_runtime.jsxs)(dist.AW,{path:parentPath,children:[jsxRoutes,children]})}):(0,jsx_runtime.jsx)(dist.Z5,{children:(0,jsx_runtime.jsxs)(dist.AW,{path:parentPath,children:[jsxRoutes,children]})})}},24135:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.DetailedVersion=exports.SimpleVersion=void 0;var version_dropdown_placeholder_1=__webpack_require__(37899);Object.defineProperty(exports,"SimpleVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.SimpleVersion}}),Object.defineProperty(exports,"DetailedVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.DetailedVersion}});var version_dropdown_1=__webpack_require__(37452);Object.defineProperty(exports,"VersionDropdown",{enumerable:!0,get:function(){return version_dropdown_1.VersionDropdown}})},555:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;var lane_info_1=__webpack_require__(33760);Object.defineProperty(exports,"LaneInfo",{enumerable:!0,get:function(){return lane_info_1.LaneInfo}})},33760:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;const lanes_ui_models_lanes_model_1=__webpack_require__(43912),react_1=__importDefault(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_elements_icon_1=__webpack_require__(6281),lane_info_module_scss_1=__importDefault(__webpack_require__(97473));function LaneInfo({id,currentLane}){const isCurrent=currentLane&&id.isEqual(currentLane.id);return react_1.default.createElement("div",{key:id.toString()},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href:lanes_ui_models_lanes_model_1.LanesModel.getLaneUrl(id),className:lane_info_module_scss_1.default.versionRow},react_1.default.createElement("span",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{className:lane_info_module_scss_1.default.laneIcon,of:"lane"}),id.toString())))}exports.LaneInfo=LaneInfo},37899:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DetailedVersion=exports.SimpleVersion=void 0;const react_1=__importDefault(__webpack_require__(59496)),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),semver=__importStar(__webpack_require__(9131)),evangelist_elements_icon_1=__webpack_require__(6281),design_ui_time_ago_1=__webpack_require__(69327),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),version_dropdown_placeholder_module_scss_1=__importDefault(__webpack_require__(42465));function SimpleVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,useCurrentVersionLog,showFullVersion,loading}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","useCurrentVersionLog","showFullVersion","loading"]);if(loading)return react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9});const formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.simple,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.SimpleVersion=SimpleVersion;function DetailedVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,loading,useCurrentVersionLog,showFullVersion}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","loading","useCurrentVersionLog","showFullVersion"]);const currentVersionLog=useCurrentVersionLog?.({skip:loading,version:currentVersion}),{displayName,message,username,email,date:_date,profileImage}=currentVersionLog||{},author=react_1.default.useMemo(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6),date=_date?new Date(+_date):void 0,timestamp=react_1.default.useMemo(()=>date?new Date(+date).toString():new Date().toString(),[date]);return loading?react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9}):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.detailed,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author??{},className:version_dropdown_placeholder_module_scss_1.default.versionUserAvatar,showTooltip:!0,onClick:rest.onClick}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),commitMessage(message,rest.onClick),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.versionTimestamp,onClick:rest.onClick},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp,onClick:rest.onClick})),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.DetailedVersion=DetailedVersion;function commitMessage(message,onClick){return!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.emptyMessage,onClick},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.commitMessage,onClick},message)}},37452:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.LOCAL_VERSION=void 0;const react_1=__importStar(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_surfaces_dropdown_1=__webpack_require__(47676),ui_foundation_ui_use_box_tab_1=__webpack_require__(11058),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),classnames_1=__importDefault(__webpack_require__(97754)),version_dropdown_module_scss_1=__importDefault(__webpack_require__(48510)),version_info_1=__webpack_require__(2285),lane_info_1=__webpack_require__(555),version_dropdown_placeholder_1=__webpack_require__(37899);exports.LOCAL_VERSION="workspace",exports.VersionDropdown=react_1.default.memo(_VersionDropdown);const VersionMenu=react_1.default.memo(_VersionMenu);function _VersionDropdown(_a){var{currentVersion,latestVersion,localVersion,useCurrentVersionLog,hasMoreVersions,loading,overrideVersionHref,className,placeholderClassName,getActiveTabIndex,dropdownClassName,menuClassName,showVersionDetails=!0,disabled,PlaceholderComponent:_PlaceholderComponent,currentLane,useComponentVersions,lanes}=_a,rest=__rest(_a,["currentVersion","latestVersion","localVersion","useCurrentVersionLog","hasMoreVersions","loading","overrideVersionHref","className","placeholderClassName","getActiveTabIndex","dropdownClassName","menuClassName","showVersionDetails","disabled","PlaceholderComponent","currentLane","useComponentVersions","lanes"]);const[key,setKey]=(0,react_1.useState)(0),singleVersion=!hasMoreVersions,[open,setOpen]=(0,react_1.useState)(!1);react_1.default.useEffect(()=>{loading&&open&&setOpen(!1)},[loading]);const handlePlaceholderClicked=e=>{loading||e.target===e.currentTarget&&setOpen(o=>!o)},defaultPlaceholder=react_1.default.createElement(version_dropdown_placeholder_1.SimpleVersion,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}),PlaceholderComponent=_PlaceholderComponent?react_1.default.createElement(_PlaceholderComponent,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}):defaultPlaceholder;return disabled||singleVersion&&!loading?react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.noVersions,className)},PlaceholderComponent):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionDropdown,className)}),react_1.default.createElement(evangelist_surfaces_dropdown_1.Dropdown,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.dropdown,dropdownClassName),dropClass:(0,classnames_1.default)(version_dropdown_module_scss_1.default.menu,menuClassName),open,onClick:handlePlaceholderClicked,onClickOutside:()=>setOpen(!1),onChange:(_e,_open)=>_open&&setKey(x=>x+1),PlaceholderComponent:_a2=>{var{children}=_a2,other=__rest(_a2,["children"]);return react_1.default.createElement("div",Object.assign({},other,{className:placeholderClassName,onClick:handlePlaceholderClicked}),children)},placeholder:PlaceholderComponent},react_1.default.createElement(VersionMenu,{className:menuClassName,key,currentVersion,latestVersion,localVersion,overrideVersionHref,showVersionDetails,currentLane,getActiveTabIndex,lanes,useVersions:useComponentVersions,open})))}const defaultActiveTabIndex=(currentVersion,tabs=[],tags,snaps)=>(snaps||[]).some(snap=>snap.version===currentVersion)?tabs.findIndex(tab=>tab.name==="SNAP"):0,VERSION_TAB_NAMES=["TAG","SNAP","LANE"];function _VersionMenu(_a){var _b,_c,{currentVersion,localVersion,latestVersion,overrideVersionHref,showVersionDetails,useVersions,currentLane,lanes,getActiveTabIndex=defaultActiveTabIndex,loading:loadingFromProps,open}=_a,rest=__rest(_a,["currentVersion","localVersion","latestVersion","overrideVersionHref","showVersionDetails","useVersions","currentLane","lanes","getActiveTabIndex","loading","open"]);const{snaps,tags,loading:loadingVersions}=useVersions?.()||{},loading=loadingFromProps||loadingVersions,tabs=react_1.default.useMemo(()=>VERSION_TAB_NAMES.map(name=>{switch(name){case"SNAP":return{name,payload:snaps||[]};case"LANE":return{name,payload:lanes||[]};default:return{name,payload:tags||[]}}}).filter(tab=>tab.payload.length>0),[snaps?.length,tags?.length,lanes?.length,loading]),[activeTabIndex,setActiveTab]=react_1.default.useState(getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane)),activeTab=react_1.default.useMemo(()=>activeTabIndex!==void 0?tabs[activeTabIndex]:void 0,[activeTabIndex,tabs]);react_1.default.useEffect(()=>{if(!currentLane||tabs.length===0)return;const _activeTabIndex=getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane);_activeTabIndex!==activeTabIndex&&setActiveTab(_activeTabIndex)},[currentLane,tabs.length,tags?.length,snaps?.length,currentVersion,loading]);const multipleTabs=tabs.length>1,message=multipleTabs?"Switch to view tags, snaps, or lanes":`Switch between ${(_b=tabs[0])===null||_b===void 0?void 0:_b.name.toLocaleLowerCase()}s`,showTab=activeTabIndex!==void 0&&((_c=tabs[activeTabIndex])===null||_c===void 0?void 0:_c.payload.length)>0,_rowRenderer=react_1.default.useCallback(function({index}){const{name,payload=[]}=activeTab||{},item=payload[index];if(!item)return null;if(name==="LANE"){const lane=item;return react_1.default.createElement(lane_info_1.LaneInfo,Object.assign({key:lane.id.toString(),currentLane},lane))}const version=item;return react_1.default.createElement(version_info_1.VersionInfo,Object.assign({key:version.version,currentVersion,latestVersion,overrideVersionHref,showDetails:showVersionDetails},version))},[activeTab,currentVersion,latestVersion,showVersionDetails,currentLane?.id.toString(),showTab]),rowRenderer=react_1.default.useMemo(()=>showTab&&activeTab?_rowRenderer:()=>null,[showTab,activeTab,_rowRenderer]),ActiveTab=react_1.default.useMemo(()=>activeTab?.payload.map((payload,index)=>rowRenderer({index})),[activeTab]);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionMenuContainer,!open&&version_dropdown_module_scss_1.default.hide)}),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.top},loading&&react_1.default.createElement(base_ui_loaders_skeleton_1.LineSkeleton,{count:6,className:version_dropdown_module_scss_1.default.loader}),!loading&&react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.titleContainer,version_dropdown_module_scss_1.default.title)},message),!loading&&localVersion&&react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{href:"?",active:currentVersion===exports.LOCAL_VERSION,className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionRow,version_dropdown_module_scss_1.default.localVersion)},react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:{},className:version_dropdown_module_scss_1.default.versionUserAvatar}),react_1.default.createElement("span",{className:version_dropdown_module_scss_1.default.versionName},exports.LOCAL_VERSION)))),react_1.default.createElement("div",{className:(0,classnames_1.default)(multipleTabs&&version_dropdown_module_scss_1.default.tabs)},multipleTabs&&tabs.map(({name},index)=>react_1.default.createElement(ui_foundation_ui_use_box_tab_1.Tab,{className:version_dropdown_module_scss_1.default.tab,key:name,isActive:activeTabIndex===index,onClick:()=>setActiveTab(index)},name))),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.versionContainerRoot},ActiveTab))}},2285:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;var version_info_1=__webpack_require__(4259);Object.defineProperty(exports,"VersionInfo",{enumerable:!0,get:function(){return version_info_1.VersionInfo}})},4259:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;const design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),design_ui_time_ago_1=__webpack_require__(69327),component_ui_version_label_1=__webpack_require__(35447),react_1=__importStar(__webpack_require__(59496)),design_ui_avatar_1=__webpack_require__(7719),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),version_info_module_scss_1=__importDefault(__webpack_require__(61578));exports.VersionInfo=react_1.default.memo(react_1.default.forwardRef(_VersionInfo));function _VersionInfo({version,currentVersion,latestVersion,date,username,displayName,email,overrideVersionHref,showDetails,message,tag,profileImage},ref){const isCurrent=version===currentVersion,author=(0,react_1.useMemo)(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),timestamp=(0,react_1.useMemo)(()=>date?new Date(parseInt(date)).toString():new Date().toString(),[date]),currentVersionRef=(0,react_1.useRef)(null);(0,react_1.useEffect)(()=>{var _a;isCurrent&&((_a=currentVersionRef.current)===null||_a===void 0||_a.scrollIntoView({block:"nearest"}))},[isCurrent]);const href=overrideVersionHref?overrideVersionHref(version):`?version=${version}`,formattedVersion=(0,react_1.useMemo)(()=>tag?version:version.slice(0,6),[tag,version]),isLatest=version===latestVersion;return react_1.default.createElement("div",{ref:ref||currentVersionRef},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href,className:version_info_module_scss_1.default.versionRow},react_1.default.createElement("div",{className:version_info_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author,className:version_info_module_scss_1.default.versionUserAvatar,showTooltip:!0}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_info_module_scss_1.default.versionName)},formattedVersion),isLatest&&react_1.default.createElement(component_ui_version_label_1.VersionLabel,{status:"latest"}),react_1.default.createElement(CommitMessage,{message,showDetails})),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.versionTimestamp},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp}))))}function CommitMessage({message,showDetails}){return showDetails?!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.emptyMessage},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.commitMessage},message):null}},39636:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectList=void 0;class AspectList{constructor(entries){this.entries=entries}get(aspectId){const aspectEntry=this.entries.find(entry=>entry.aspectId===aspectId);if(!!aspectEntry)return aspectEntry.aspectData}toObject(){return{entries:this.entries}}static fromObject(obj){const entries=obj?.entries||[];return new AspectList(entries)}static fromJson(obj){const entries=obj?.entries?.map(({aspectId,aspectData})=>({aspectId,aspectData:JSON.parse(aspectData)}))||[];return new AspectList(entries)}}exports.AspectList=AspectList},83804:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentDescriptor=void 0;function _component(){const data=__webpack_require__(99906);return _component=function(){return data},data}function _aspectList(){const data=__webpack_require__(39636);return _aspectList=function(){return data},data}class ComponentDescriptor{constructor(id,aspectList){this.id=id,this.aspectList=aspectList}get scope(){return this.id.scope}get(aspectId){return this.aspectList.get(aspectId)}toObject(){return{id:this.id.toString(),aspectList:this.aspectList.toObject()}}async isModified(){return!1}stringify(){return JSON.stringify(this.toObject())}toString(){return this.stringify()}static fromObject({id,aspectList}){const aspects=_aspectList().AspectList.fromObject(aspectList);return new ComponentDescriptor(_component().ComponentID.fromString(id),aspects)}static fromArray(componentsDescriptorProps){return componentsDescriptorProps.map(component=>ComponentDescriptor.fromObject(component))}}exports.ComponentDescriptor=ComponentDescriptor},17092:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"AspectDataEntry",{enumerable:!0,get:function(){return _aspectList().AspectDataEntry}}),Object.defineProperty(exports,"AspectList",{enumerable:!0,get:function(){return _aspectList().AspectList}}),Object.defineProperty(exports,"AspectListProps",{enumerable:!0,get:function(){return _aspectList().AspectListProps}}),Object.defineProperty(exports,"ComponentDescriptor",{enumerable:!0,get:function(){return _componentDescriptor().ComponentDescriptor}}),Object.defineProperty(exports,"ComponentDescriptorProps",{enumerable:!0,get:function(){return _componentDescriptor().ComponentDescriptorProps}});function _componentDescriptor(){const data=__webpack_require__(83804);return _componentDescriptor=function(){return data},data}function _aspectList(){const data=__webpack_require__(39636);return _aspectList=function(){return data},data}},99674:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectEntry=void 0;class AspectEntry{constructor(id,legacyEntry){this.id=id,this.legacyEntry=legacyEntry}get legacy(){return this.legacyEntry}get isLegacy(){return!!this.config?.__legacy}get config(){return this.legacy.config}set config(config){this.legacy.config=config}get data(){return this.legacy.data}get isRemoved(){return this.legacy.isRemoved}set data(val){this.legacy.data=val}transform(newData){const newEntry=this.clone();return newEntry.data=newData,new AspectEntry(this.id,newEntry.legacy)}clone(){return new AspectEntry(this.id,this.legacyEntry.clone())}serialize(){return{id:this.id.toString(),config:this.config,data:this.data,icon:"https://static.bit.dev/extensions-icons/default.svg"}}}exports.AspectEntry=AspectEntry},14449:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;function _anyFs(){const data=__webpack_require__(21186);return _anyFs=function(){return data},data}function _eol(){const data=__webpack_require__(58225);return _eol=function(){return data},data}function _path(){const data=_interopRequireDefault(__webpack_require__(62005));return _path=function(){return data},data}function _toolboxPath(){const data=__webpack_require__(92175);return _toolboxPath=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}class ComponentFS extends _anyFs().MemoryFS{constructor(files){super();this.files=files}get hash(){return""}byRegex(extension){return this.files.filter(file=>file.path.match(extension))}byGlob(patterns){const{includePatterns,excludePatterns}=(0,_toolboxPath().splitPatterns)(patterns);return this.files.filter(file=>(0,_toolboxPath().matchPatterns)(file.relative,includePatterns,excludePatterns))}toObject(){return this.files.map(file=>({path:file.path,contents:file.contents}))}static fromVinyls(files){const fs=new ComponentFS(files);return files.forEach(file=>{let dirPath=file.relativeDir;dirPath.startsWith("/")||(dirPath=_path().default.join("/",dirPath)),fs.mkdirpSync(dirPath),fs.writeFileSync(`/${file.relative}`,(0,_eol().auto)(file.contents||""))}),fs}}exports.default=ComponentFS},68703:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentMap=void 0;class ComponentMap{constructor(hashMap){this.hashMap=hashMap}byComponent(component){return this.hashMap.get(component.id.toString())}get components(){return this.toArray().map(([component])=>component)}get(component){return this.hashMap.get(component.id.toString())}getValueByComponentId(componentId){const tuple=this.hashMap.get(componentId.toString());return tuple?tuple[1]:null}toArray(){return Array.from(this.hashMap.values())}map(predicate){const tuples=this.toArray().map(([component,value])=>{const newValue=predicate(value,component);return[component.id.toString(),[component,newValue]]});return new ComponentMap(new Map(tuples))}async asyncMap(predicate){const tuplesP=this.toArray().map(async([component,value])=>{const newValue=await predicate(value,component);return[component.id.toString(),[component,newValue]]}),tuples=await Promise.all(tuplesP);return new ComponentMap(new Map(tuples))}forEach(predicate){this.toArray().forEach(([component,value])=>{predicate(value,component)})}flattenValue(){return this.toArray().reduce((acc,[,value])=>(acc=acc.concat(value),acc),[])}filter(predicate){const asMap=this.toArray().filter(([,value])=>predicate(value)).map(([component,value])=>[component.id.toString(),[component,value]]);return new ComponentMap(new Map(asMap))}keys(){return this.hashMap.keys()}static create(rawMap){const newMap=rawMap.map(([component,data])=>[component.id.toString(),[component,data]]);return new ComponentMap(new Map(newMap))}static as(components,predicate){const tuples=components.map(component=>[component.id.toString(),[component,predicate(component)]]);return new ComponentMap(new Map(tuples))}static async asAsync(components,predicate){const tuples=await Promise.all(components.map(async component=>[component.id.toString(),[component,await predicate(component)]]));return new ComponentMap(new Map(tuples))}}exports.ComponentMap=ComponentMap},64749:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ComponentMap",{enumerable:!0,get:function(){return _componentMap().ComponentMap}});function _componentMap(){const data=__webpack_require__(68703);return _componentMap=function(){return data},data}},9882:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.ComponentAspect=void 0;function _harmony(){const data=__webpack_require__(55669);return _harmony=function(){return data},data}const ComponentAspect=exports.ComponentAspect=_harmony().Aspect.create({id:"teambit.component/component",dependencies:[],defaultConfig:{}});var _default=exports.default=ComponentAspect},39669:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Component=void 0;function _toolboxString(){const data=__webpack_require__(22139);return _toolboxString=function(){return data},data}function _bitError(){const data=__webpack_require__(74155);return _bitError=function(){return data},data}function _lodash(){const data=__webpack_require__(32699);return _lodash=function(){return data},data}function _tagMap(){const data=__webpack_require__(11293);return _tagMap=function(){return data},data}function _exceptions(){const data=__webpack_require__(67044);return _exceptions=function(){return data},data}class Component{constructor(id,head=null,_state,tags=new(_tagMap()).TagMap,factory){this.id=id,this.head=head,this._state=_state,this.tags=tags,this.factory=factory}get mainFile(){return this.state.mainFile}get state(){return this._state}set state(state){this._state=state}get config(){return this.state.config}get filesystem(){return this.state.filesystem}get buildStatus(){return this._state._consumer.buildStatus}get headTag(){if(!!this.head)return this.tags.byHash(this.head.hash)}get latest(){if(!!this.head)try{return this.tags.getLatest()}catch(err){if(err instanceof _exceptions().CouldNotFindLatest)return this.head.hash;throw err}}get(id){return this.state.aspects.get(id)?.serialize()}async getLogs(filter){const allLogs=await this.factory.getLogs(this.id,!1,filter?.head);if(!filter)return allLogs;const{type,limit,offset,sort}=filter,typeFilter=snap=>type==="tag"?snap.tag:type==="snap"?!snap.tag:!0;let filteredLogs=type&&allLogs.filter(typeFilter)||allLogs;return sort!=="asc"&&(filteredLogs=filteredLogs.reverse()),limit&&(filteredLogs=(0,_lodash().slice)(filteredLogs,offset,limit+(offset||0))),filteredLogs}stringify(){return JSON.stringify({id:this.id,head:this.head})}get displayName(){return this.id.name.split("-").map(token=>(0,_toolboxString().capitalize)(token)).join(" ")}tag(version){}isModified(){return this.factory.isModified(this)}isDeleted(){return this.state._consumer.isRemoved()}isOutdated(){if(!this.latest)return!1;const latestTag=this.tags.byVersion(this.latest);return latestTag?this.head?.hash!==latestTag?.hash:!1}isNew(){return Promise.resolve(this.head===null)}loadState(snapId){return this.factory.getState(this.id,snapId)}loadSnap(snapId){const snapToGet=snapId||this.head?.hash;if(!snapToGet)throw new(_bitError()).BitError("could not load snap for new components");return this.factory.getSnap(this.id,snapToGet)}snapsIterable(snapId,options={}){const snapToStart=snapId||this.head?.hash;let nextSnaps=[snapToStart],done;snapToStart||(done=!0);const iterator={next:async()=>{if(done)return{value:void 0,done};const currSnapId=nextSnaps.shift(),snap=await this.loadSnap(currSnapId);return snap.parents&&snap.parents.length&&(options.firstParentOnly?nextSnaps.push(snap.parents[0]):nextSnaps=nextSnaps.concat(snap.parents)),nextSnaps.length?options.stopFn&&(done=await options.stopFn(snap)):done=!0,{value:snap,done:void 0}}};return{[Symbol.asyncIterator]:()=>iterator}}async getClosestTag(snapToStartFrom){const tagsHashMap=this.tags.getHashMap(),stopFn=async snap=>!!tagsHashMap.has(snap.hash),iterable=this.snapsIterable(snapToStartFrom,{firstParentOnly:!0,stopFn}),snaps=[];for await(const snap of iterable)snaps.push(snap);if(snaps.length){const hashOfLastSnap=snaps[snaps.length-1].hash;return tagsHashMap.get(hashOfLastSnap)}}getTag(){const currentVersion=this.id.version;if(!!currentVersion)return this.tags.byVersion(currentVersion)||this.tags.byHash(currentVersion)}getSnapHash(){if(!this.id.hasVersion())return;const tag=this.tags.byVersion(this.id.version);return tag?tag.hash:this.id.version}async getCurrentSnap(){const snap=this.getSnapHash();if(!!snap)return this.loadSnap(snap)}checkout(version){}write(path,fs){}equals(component){return component.id.toString()===this.id.toString()}}exports.Component=Component},79792:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Config=void 0;class Config{constructor(consumerComponent){this.consumerComponent=consumerComponent}get main(){return this.consumerComponent.mainFile}get extensions(){return this.consumerComponent.extensions}}exports.Config=Config},33570:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CouldNotFindLatest=void 0;class CouldNotFindLatest extends Error{constructor(semverArray){super(`could not find latest semver in array: ${semverArray.join(", ")}`)}report(){return this.message}}exports.CouldNotFindLatest=CouldNotFindLatest},35075:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostNotFound=void 0;class HostNotFound extends Error{constructor(hostName){super();this.hostName=hostName}toString(){return`[component] error: host '${this.hostName}' was not found`}}exports.HostNotFound=HostNotFound},67044:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"CouldNotFindLatest",{enumerable:!0,get:function(){return _couldNotFindLatest().CouldNotFindLatest}}),Object.defineProperty(exports,"HostNotFound",{enumerable:!0,get:function(){return _hostNotFound().HostNotFound}}),Object.defineProperty(exports,"MainFileNotFound",{enumerable:!0,get:function(){return _mainFileNotFound().MainFileNotFound}}),Object.defineProperty(exports,"NothingToSnap",{enumerable:!0,get:function(){return _nothingToSnap().default}});function _nothingToSnap(){const data=_interopRequireDefault(__webpack_require__(86337));return _nothingToSnap=function(){return data},data}function _hostNotFound(){const data=__webpack_require__(35075);return _hostNotFound=function(){return data},data}function _couldNotFindLatest(){const data=__webpack_require__(33570);return _couldNotFindLatest=function(){return data},data}function _mainFileNotFound(){const data=__webpack_require__(86889);return _mainFileNotFound=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},86889:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MainFileNotFound=void 0;class MainFileNotFound extends Error{constructor(id,mainFile){super();this.id=id,this.mainFile=mainFile}toString(){return`[component] error: main file ${this.mainFile} for component ${this.id.toString()} was not found`}}exports.MainFileNotFound=MainFileNotFound},86337:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class NothingToSnap extends Error{}exports.default=NothingToSnap},45995:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentHostModel=void 0;function _ui(){const data=__webpack_require__(8980);return _ui=function(){return data},data}class ComponentHostModel{constructor(name,components){this.name=name,this.components=components}static from(data){return new ComponentHostModel(data.getHost.name,_ui().ComponentModel.fromArray(data.getHost.list))}}exports.ComponentHostModel=ComponentHostModel},47636:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={useComponentHost:!0};Object.defineProperty(exports,"useComponentHost",{enumerable:!0,get:function(){return _useComponentHost().useComponentHost}});function _useComponentHost(){const data=__webpack_require__(15893);return _useComponentHost=function(){return data},data}var _componentHostModel=__webpack_require__(45995);Object.keys(_componentHostModel).forEach(function(key){key==="default"||key==="__esModule"||Object.prototype.hasOwnProperty.call(_exportNames,key)||key in exports&&exports[key]===_componentHostModel[key]||Object.defineProperty(exports,key,{enumerable:!0,get:function(){return _componentHostModel[key]}})})},15893:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useComponentHost=useComponentHost;function _uiFoundationUiHooks(){const data=__webpack_require__(25338);return _uiFoundationUiHooks=function(){return data},data}function _client(){const data=__webpack_require__(97299);return _client=function(){return data},data}function _componentHostModel(){const data=__webpack_require__(45995);return _componentHostModel=function(){return data},data}const COMPONENT_HOST=(0,_client().gql)`
211
211
  {
212
212
  getHost {
213
213
  id # used for GQL caching
@@ -671,7 +671,7 @@ ${namesToRegister.map(({variableName,uniqueLocalName})=>` reactHotLoader.regist
671
671
  `)}exports.formatTitle=formatTitle;function componentIssueToString(value){return Array.isArray(value)?value.join(", "):value}exports.componentIssueToString=componentIssueToString;function deserializeWithBitId(dataStr){const data=JSON.parse(dataStr);return Object.keys(data).forEach(filePath=>{data[filePath]=data[filePath].map(id=>new component_id_1.ComponentID(id))}),data}exports.deserializeWithBitId=deserializeWithBitId},63087:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DuplicateComponentAndPackage=void 0;const component_issue_1=__webpack_require__(50581);class DuplicateComponentAndPackage extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="tracked component added as a package",this.solution="either remove the package from the workspace.jsonc (bit uninstall) or remove the component (bit remove)",this.isTagBlocker=!0}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data}}exports.DuplicateComponentAndPackage=DuplicateComponentAndPackage},60873:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExternalEnvWithoutVersion=void 0;const component_issue_1=__webpack_require__(50581);class ExternalEnvWithoutVersion extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="failed loading env - external env without a version",this.solution="",this.isTagBlocker=!0}formatSolution(){return`(run "bit env set ${this.data.componentId} ${this.data.envId}")`}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data.envId}}exports.ExternalEnvWithoutVersion=ExternalEnvWithoutVersion},86826:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ImportNonMainFiles=void 0;const component_issue_1=__webpack_require__(50581);class ImportNonMainFiles extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="importing non-main files",this.solution="the dependency should expose its API from the main file",this.data={},this.isCacheBlocker=!1}}exports.ImportNonMainFiles=ImportNonMainFiles},86853:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RelativeComponentsAuthoredEntry=exports.MISSING_NESTED_DEPS_SPACE=exports.UntrackedFileDependencyEntry=exports.ComponentIssue=exports.MISSING_DEPS_SPACE=exports.IssuesNames=exports.IssuesClasses=exports.IssuesList=void 0;var issues_list_1=__webpack_require__(99838);Object.defineProperty(exports,"IssuesList",{enumerable:!0,get:function(){return issues_list_1.IssuesList}}),Object.defineProperty(exports,"IssuesClasses",{enumerable:!0,get:function(){return issues_list_1.IssuesClasses}}),Object.defineProperty(exports,"IssuesNames",{enumerable:!0,get:function(){return issues_list_1.IssuesNames}});var component_issue_1=__webpack_require__(50581);Object.defineProperty(exports,"MISSING_DEPS_SPACE",{enumerable:!0,get:function(){return component_issue_1.ISSUE_FORMAT_SPACE}}),Object.defineProperty(exports,"ComponentIssue",{enumerable:!0,get:function(){return component_issue_1.ComponentIssue}});var untracked_dependencies_1=__webpack_require__(89695);Object.defineProperty(exports,"UntrackedFileDependencyEntry",{enumerable:!0,get:function(){return untracked_dependencies_1.UntrackedFileDependencyEntry}}),Object.defineProperty(exports,"MISSING_NESTED_DEPS_SPACE",{enumerable:!0,get:function(){return untracked_dependencies_1.MISSING_NESTED_DEPS_SPACE}});var relative_components_authored_1=__webpack_require__(68545);Object.defineProperty(exports,"RelativeComponentsAuthoredEntry",{enumerable:!0,get:function(){return relative_components_authored_1.RelativeComponentsAuthoredEntry}})},99838:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.IssuesList=exports.IssuesClasses=void 0;const import_non_main_files_1=__webpack_require__(86826),missing_dependencies_on_fs_1=__webpack_require__(34904),missing_dists_1=__webpack_require__(47153),missing_packages_dependencies_on_fs_1=__webpack_require__(38568),missing_manually_configured_packages_1=__webpack_require__(97331),parse_errors_1=__webpack_require__(3185),relative_components_1=__webpack_require__(41420),relative_components_authored_1=__webpack_require__(68545),resolve_errors_1=__webpack_require__(5649),untracked_dependencies_1=__webpack_require__(89695),legacy_inside_harmony_1=__webpack_require__(27842),multiple_envs_1=__webpack_require__(88821),missing_links_from_nm_to_src_1=__webpack_require__(83813),circular_dependencies_1=__webpack_require__(65559),duplicate_component_and_package_1=__webpack_require__(63087),merge_config_has_conflict_1=__webpack_require__(2720),non_loaded_env_1=__webpack_require__(57524),external_env_without_version_1=__webpack_require__(60873),removed_dependencies_1=__webpack_require__(84981),self_reference_1=__webpack_require__(55088);exports.IssuesClasses={MissingPackagesDependenciesOnFs:missing_packages_dependencies_on_fs_1.MissingPackagesDependenciesOnFs,MissingManuallyConfiguredPackages:missing_manually_configured_packages_1.MissingManuallyConfiguredPackages,UntrackedDependencies:untracked_dependencies_1.UntrackedDependencies,ResolveErrors:resolve_errors_1.ResolveErrors,RelativeComponents:relative_components_1.RelativeComponents,RelativeComponentsAuthored:relative_components_authored_1.RelativeComponentsAuthored,ParseErrors:parse_errors_1.ParseErrors,MissingDists:missing_dists_1.MissingDists,LegacyInsideHarmony:legacy_inside_harmony_1.LegacyInsideHarmony,MissingDependenciesOnFs:missing_dependencies_on_fs_1.MissingDependenciesOnFs,ImportNonMainFiles:import_non_main_files_1.ImportNonMainFiles,MultipleEnvs:multiple_envs_1.MultipleEnvs,MissingLinksFromNodeModulesToSrc:missing_links_from_nm_to_src_1.MissingLinksFromNodeModulesToSrc,CircularDependencies:circular_dependencies_1.CircularDependencies,DuplicateComponentAndPackage:duplicate_component_and_package_1.DuplicateComponentAndPackage,MergeConfigHasConflict:merge_config_has_conflict_1.MergeConfigHasConflict,NonLoadedEnv:non_loaded_env_1.NonLoadedEnv,ExternalEnvWithoutVersion:external_env_without_version_1.ExternalEnvWithoutVersion,RemovedDependencies:removed_dependencies_1.RemovedDependencies,SelfReference:self_reference_1.SelfReference};class IssuesList{constructor(_issues=[]){this._issues=_issues}get count(){return this._issues.length}isEmpty(){return this._issues.length===0}outputForCLI(){return this._issues.map(issue=>issue.outputForCLI()).join("")}toObject(){return this._issues.map(issue=>issue.toObject())}toObjectWithDataAsString(){return this._issues.map(issue=>Object.assign(Object.assign({},issue.toObject()),{data:issue.dataToString().trim()}))}add(issue){this._issues.push(issue)}delete(IssueClass){this._issues=this._issues.filter(issue=>issue.constructor.name!==IssueClass.name)}getIssue(IssueClass){return this._issues.find(issue=>issue instanceof IssueClass)}getIssueByName(issueType){return this._issues.find(issue=>issue.constructor.name===issueType)}getAllIssues(){return this._issues}getAllIssueNames(){return this._issues.map(issue=>issue.constructor.name)}createIssue(IssueClass){const newIssue=new IssueClass;return this.add(newIssue),newIssue}getOrCreate(IssueClass){return this.getIssue(IssueClass)||this.createIssue(IssueClass)}shouldBlockSavingInCache(){return this._issues.some(issue=>issue.isCacheBlocker)}shouldBlockTagging(){return this._issues.some(issue=>issue.isTagBlocker)}filterNonTagBlocking(){return new IssuesList(this._issues.filter(issue=>issue.isTagBlocker))}toObjectIncludeDataAsString(){return this._issues.map(issue=>Object.assign(Object.assign({},issue.toObject()),{dataAsString:issue.dataToString()}))}serialize(){return this._issues.map(issue=>({type:issue.constructor.name,data:issue.serialize()}))}static deserialize(data){if(!Array.isArray(data))return new IssuesList;const issues=data.map(issue=>{const ClassName=issue.type;if(!Object.keys(exports.IssuesClasses).includes(ClassName))throw new Error(`issue type "${ClassName}" is not recognized.
672
672
  the following are permitted ${Object.keys(exports.IssuesClasses).join(", ")}`);const issueInstance=new exports.IssuesClasses[ClassName];return issueInstance.data=issueInstance.deserialize(issue.data),issueInstance});return new IssuesList(issues)}}exports.IssuesList=IssuesList},27842:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LegacyInsideHarmony=void 0;const component_issue_1=__webpack_require__(50581);class LegacyInsideHarmony extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="legacy component inside Harmony workspace",this.solution="remove the component and re-create it via Harmony",this.isTagBlocker=!0}outputForCLI(){return(0,component_issue_1.formatTitle)(this.descriptionWithSolution,!1)}}exports.LegacyInsideHarmony=LegacyInsideHarmony},2720:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MergeConfigHasConflict=void 0;const component_issue_1=__webpack_require__(50581);class MergeConfigHasConflict extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="merge-conflict file has unresolved conflicts",this.solution="edit the merge-conflict file in the workspace root and resolve the conflicts",this.isTagBlocker=!0}outputForCLI(){return(0,component_issue_1.formatTitle)(this.descriptionWithSolution,!1)}}exports.MergeConfigHasConflict=MergeConfigHasConflict},34904:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MissingDependenciesOnFs=void 0;const component_issue_1=__webpack_require__(50581);class MissingDependenciesOnFs extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="non-existing dependency files",this.solution="make sure all files exists on your workspace",this.data={}}}exports.MissingDependenciesOnFs=MissingDependenciesOnFs},47153:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MissingDists=void 0;const component_issue_1=__webpack_require__(50581);class MissingDists extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="missing dists",this.solution='run "bit compile"',this.isTagBlocker=!1}outputForCLI(){return(0,component_issue_1.formatTitle)(this.descriptionWithSolution,!1)}}exports.MissingDists=MissingDists},83813:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MissingLinksFromNodeModulesToSrc=void 0;const component_issue_1=__webpack_require__(50581);class MissingLinksFromNodeModulesToSrc extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="missing links from node_modules to source",this.solution='run "bit link"',this.isTagBlocker=!1}outputForCLI(){return(0,component_issue_1.formatTitle)(this.descriptionWithSolution,!1)}}exports.MissingLinksFromNodeModulesToSrc=MissingLinksFromNodeModulesToSrc},97331:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MissingManuallyConfiguredPackages=void 0;const component_issue_1=__webpack_require__(50581);class MissingManuallyConfiguredPackages extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="missing packages that were manually set",this.solution='run "bit install"',this.data=[]}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data.join(", ")}}exports.MissingManuallyConfiguredPackages=MissingManuallyConfiguredPackages},38568:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MissingPackagesDependenciesOnFs=void 0;const component_issue_1=__webpack_require__(50581);class MissingPackagesDependenciesOnFs extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="missing packages or links from node_modules to the source",this.solution='run "bit install --add-missing-deps" to fix both issues',this.data=[]}dataToString(){return this.data.map(d=>`${component_issue_1.ISSUE_FORMAT_SPACE}${d.filePath} -> ${this.formatDataFunction(d.missingPackages)}`).join(`
673
673
  `)}}exports.MissingPackagesDependenciesOnFs=MissingPackagesDependenciesOnFs},88821:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MultipleEnvs=void 0;const component_issue_1=__webpack_require__(50581);class MultipleEnvs extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="multiple envs",this.solution=`set the desired env by running "bit env set <component> <env>", if it doesn't work, run "bit aspect unset <component> <unwanted-env-id>". to keep troubleshooting run "bit aspect list <component-id>"`,this.isTagBlocker=!0}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data.join(", ")}}exports.MultipleEnvs=MultipleEnvs},57524:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.NonLoadedEnv=void 0;const component_issue_1=__webpack_require__(50581);class NonLoadedEnv extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="failed loading env",this.solution='run "bit install"',this.isTagBlocker=!0}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data}}exports.NonLoadedEnv=NonLoadedEnv},3185:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ParseErrors=void 0;const component_issue_1=__webpack_require__(50581);class ParseErrors extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="error found while parsing the file",this.solution="edit the file and fix the parsing error",this.data={}}}exports.ParseErrors=ParseErrors},68545:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RelativeComponentsAuthored=void 0;const component_id_1=__webpack_require__(99978),component_issue_1=__webpack_require__(50581);class RelativeComponentsAuthored extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="components with relative import statements found",this.solution='replace to module paths or use "bit link --rewire" to replace',this.data={},this.isCacheBlocker=!1,this.formatDataFunction=relativeComponentsAuthoredIssuesToString}serialize(){const obj=Object.keys(this.data).reduce((acc,fileName)=>(acc[fileName]=this.data[fileName].map(record=>({importSource:record.importSource,componentId:record.componentId.serialize(),relativePath:record.relativePath})),acc),{});return JSON.stringify(obj)}deserialize(dataStr){const data=JSON.parse(dataStr);return Object.keys(data).forEach(fileName=>{data[fileName]=data[fileName].map(record=>({importSource:record.importSource,componentId:component_id_1.ComponentID.deserialize(record.componentId),relativePath:record.relativePath}))}),data}}exports.RelativeComponentsAuthored=RelativeComponentsAuthored;function relativeComponentsAuthoredIssuesToString(relativeEntries){const stringifyEntry=entry=>`"${entry.importSource}" (${entry.componentId.toString()})`;return relativeEntries.map(stringifyEntry).join(", ")}},41420:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RelativeComponents=void 0;const component_issue_1=__webpack_require__(50581);class RelativeComponents extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="components with relative import statements found",this.solution="use module paths for imported components",this.data={},this.isCacheBlocker=!1}deserialize(data){return(0,component_issue_1.deserializeWithBitId)(data)}}exports.RelativeComponents=RelativeComponents},84981:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RemovedDependencies=void 0;const component_issue_1=__webpack_require__(50581);class RemovedDependencies extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="removed dependencies",this.solution='run "bit install <missing-dep>" or remove any unneeded references to that component from your code',this.isTagBlocker=!0}dataToString(){return component_issue_1.ISSUE_FORMAT_SPACE+this.data.join(", ")}}exports.RemovedDependencies=RemovedDependencies},5649:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResolveErrors=void 0;const component_issue_1=__webpack_require__(50581);class ResolveErrors extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="error found while resolving the file dependencies",this.solution="see the log for the full error",this.data={}}}exports.ResolveErrors=ResolveErrors},55088:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SelfReference=void 0;const component_issue_1=__webpack_require__(50581);class SelfReference extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="a component has an import statement that points to itself",this.solution="edit the file and change the import statement to a relative path",this.data={},this.isTagBlocker=!1}}exports.SelfReference=SelfReference},89695:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.UntrackedDependencies=exports.MISSING_NESTED_DEPS_SPACE=void 0;const chalk_1=__importDefault(__webpack_require__(23729)),component_issue_1=__webpack_require__(50581);exports.MISSING_NESTED_DEPS_SPACE=" ".repeat(component_issue_1.ISSUE_FORMAT_SPACE_COUNT+2);class UntrackedDependencies extends component_issue_1.ComponentIssue{constructor(){super(...arguments);this.description="untracked file dependencies",this.solution='use "bit add <file>" to track untracked files as components',this.data={}}dataToString(){return Object.keys(this.data).map(k=>{let space=component_issue_1.ISSUE_FORMAT_SPACE;return this.data[k].nested&&(space=exports.MISSING_NESTED_DEPS_SPACE),`${space}${k} -> ${untrackedFilesComponentIssueToString(this.data[k])}`}).join(`
674
- `)}}exports.UntrackedDependencies=UntrackedDependencies;function untrackedFilesComponentIssueToString(value){return value.untrackedFiles.map(curr=>curr.existing?`${chalk_1.default.yellow(curr.relativePath)}`:curr.relativePath).join(", ")}},24636:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.DetailedVersion=exports.SimpleVersion=void 0;var version_dropdown_placeholder_1=__webpack_require__(38052);Object.defineProperty(exports,"SimpleVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.SimpleVersion}}),Object.defineProperty(exports,"DetailedVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.DetailedVersion}});var version_dropdown_1=__webpack_require__(18827);Object.defineProperty(exports,"VersionDropdown",{enumerable:!0,get:function(){return version_dropdown_1.VersionDropdown}})},43272:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;var lane_info_1=__webpack_require__(89053);Object.defineProperty(exports,"LaneInfo",{enumerable:!0,get:function(){return lane_info_1.LaneInfo}})},89053:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;const lanes_ui_models_lanes_model_1=__webpack_require__(97223),react_1=__importDefault(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_elements_icon_1=__webpack_require__(6281),lane_info_module_scss_1=__importDefault(__webpack_require__(72154));function LaneInfo({id,currentLane}){const isCurrent=currentLane&&id.isEqual(currentLane.id);return react_1.default.createElement("div",{key:id.toString()},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href:lanes_ui_models_lanes_model_1.LanesModel.getLaneUrl(id),className:lane_info_module_scss_1.default.versionRow},react_1.default.createElement("span",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{className:lane_info_module_scss_1.default.laneIcon,of:"lane"}),id.toString())))}exports.LaneInfo=LaneInfo},38052:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DetailedVersion=exports.SimpleVersion=void 0;const react_1=__importDefault(__webpack_require__(59496)),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),semver=__importStar(__webpack_require__(9131)),evangelist_elements_icon_1=__webpack_require__(6281),design_ui_time_ago_1=__webpack_require__(69327),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),version_dropdown_placeholder_module_scss_1=__importDefault(__webpack_require__(97276));function SimpleVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,useCurrentVersionLog,showFullVersion,loading}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","useCurrentVersionLog","showFullVersion","loading"]);if(loading)return react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9});const formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.simple,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.SimpleVersion=SimpleVersion;function DetailedVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,loading,useCurrentVersionLog,showFullVersion}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","loading","useCurrentVersionLog","showFullVersion"]);const currentVersionLog=useCurrentVersionLog?.({skip:loading,version:currentVersion}),{displayName,message,username,email,date:_date,profileImage}=currentVersionLog||{},author=react_1.default.useMemo(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6),date=_date?new Date(+_date):void 0,timestamp=react_1.default.useMemo(()=>date?new Date(+date).toString():new Date().toString(),[date]);return loading?react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9}):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.detailed,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author??{},className:version_dropdown_placeholder_module_scss_1.default.versionUserAvatar,showTooltip:!0,onClick:rest.onClick}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),commitMessage(message,rest.onClick),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.versionTimestamp,onClick:rest.onClick},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp,onClick:rest.onClick})),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.DetailedVersion=DetailedVersion;function commitMessage(message,onClick){return!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.emptyMessage,onClick},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.commitMessage,onClick},message)}},18827:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.LOCAL_VERSION=void 0;const react_1=__importStar(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_surfaces_dropdown_1=__webpack_require__(47676),ui_foundation_ui_use_box_tab_1=__webpack_require__(11058),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),classnames_1=__importDefault(__webpack_require__(97754)),version_dropdown_module_scss_1=__importDefault(__webpack_require__(40926)),version_info_1=__webpack_require__(27085),lane_info_1=__webpack_require__(43272),version_dropdown_placeholder_1=__webpack_require__(38052);exports.LOCAL_VERSION="workspace",exports.VersionDropdown=react_1.default.memo(_VersionDropdown);const VersionMenu=react_1.default.memo(_VersionMenu);function _VersionDropdown(_a){var{currentVersion,latestVersion,localVersion,useCurrentVersionLog,hasMoreVersions,loading,overrideVersionHref,className,placeholderClassName,getActiveTabIndex,dropdownClassName,menuClassName,showVersionDetails=!0,disabled,PlaceholderComponent:_PlaceholderComponent,currentLane,useComponentVersions,lanes}=_a,rest=__rest(_a,["currentVersion","latestVersion","localVersion","useCurrentVersionLog","hasMoreVersions","loading","overrideVersionHref","className","placeholderClassName","getActiveTabIndex","dropdownClassName","menuClassName","showVersionDetails","disabled","PlaceholderComponent","currentLane","useComponentVersions","lanes"]);const[key,setKey]=(0,react_1.useState)(0),singleVersion=!hasMoreVersions,[open,setOpen]=(0,react_1.useState)(!1);react_1.default.useEffect(()=>{loading&&open&&setOpen(!1)},[loading]);const handlePlaceholderClicked=e=>{loading||e.target===e.currentTarget&&setOpen(o=>!o)},defaultPlaceholder=react_1.default.createElement(version_dropdown_placeholder_1.SimpleVersion,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}),PlaceholderComponent=_PlaceholderComponent?react_1.default.createElement(_PlaceholderComponent,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}):defaultPlaceholder;return disabled||singleVersion&&!loading?react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.noVersions,className)},PlaceholderComponent):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionDropdown,className)}),react_1.default.createElement(evangelist_surfaces_dropdown_1.Dropdown,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.dropdown,dropdownClassName),dropClass:(0,classnames_1.default)(version_dropdown_module_scss_1.default.menu,menuClassName),open,onClick:handlePlaceholderClicked,onClickOutside:()=>setOpen(!1),onChange:(_e,_open)=>_open&&setKey(x=>x+1),PlaceholderComponent:_a2=>{var{children}=_a2,other=__rest(_a2,["children"]);return react_1.default.createElement("div",Object.assign({},other,{className:placeholderClassName,onClick:handlePlaceholderClicked}),children)},placeholder:PlaceholderComponent},react_1.default.createElement(VersionMenu,{className:menuClassName,key,currentVersion,latestVersion,localVersion,overrideVersionHref,showVersionDetails,currentLane,getActiveTabIndex,lanes,useVersions:useComponentVersions,open})))}const defaultActiveTabIndex=(currentVersion,tabs=[],tags,snaps)=>(snaps||[]).some(snap=>snap.version===currentVersion)?tabs.findIndex(tab=>tab.name==="SNAP"):0,VERSION_TAB_NAMES=["TAG","SNAP","LANE"];function _VersionMenu(_a){var _b,_c,{currentVersion,localVersion,latestVersion,overrideVersionHref,showVersionDetails,useVersions,currentLane,lanes,getActiveTabIndex=defaultActiveTabIndex,loading:loadingFromProps,open}=_a,rest=__rest(_a,["currentVersion","localVersion","latestVersion","overrideVersionHref","showVersionDetails","useVersions","currentLane","lanes","getActiveTabIndex","loading","open"]);const{snaps,tags,loading:loadingVersions}=useVersions?.()||{},loading=loadingFromProps||loadingVersions,tabs=react_1.default.useMemo(()=>VERSION_TAB_NAMES.map(name=>{switch(name){case"SNAP":return{name,payload:snaps||[]};case"LANE":return{name,payload:lanes||[]};default:return{name,payload:tags||[]}}}).filter(tab=>tab.payload.length>0),[snaps?.length,tags?.length,lanes?.length,loading]),[activeTabIndex,setActiveTab]=react_1.default.useState(getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane)),activeTab=react_1.default.useMemo(()=>activeTabIndex!==void 0?tabs[activeTabIndex]:void 0,[activeTabIndex,tabs]);react_1.default.useEffect(()=>{if(!currentLane||tabs.length===0)return;const _activeTabIndex=getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane);_activeTabIndex!==activeTabIndex&&setActiveTab(_activeTabIndex)},[currentLane,tabs.length,tags?.length,snaps?.length,currentVersion,loading]);const multipleTabs=tabs.length>1,message=multipleTabs?"Switch to view tags, snaps, or lanes":`Switch between ${(_b=tabs[0])===null||_b===void 0?void 0:_b.name.toLocaleLowerCase()}s`,showTab=activeTabIndex!==void 0&&((_c=tabs[activeTabIndex])===null||_c===void 0?void 0:_c.payload.length)>0,_rowRenderer=react_1.default.useCallback(function({index}){const{name,payload=[]}=activeTab||{},item=payload[index];if(!item)return null;if(name==="LANE"){const lane=item;return react_1.default.createElement(lane_info_1.LaneInfo,Object.assign({key:lane.id.toString(),currentLane},lane))}const version=item;return react_1.default.createElement(version_info_1.VersionInfo,Object.assign({key:version.version,currentVersion,latestVersion,overrideVersionHref,showDetails:showVersionDetails},version))},[activeTab,currentVersion,latestVersion,showVersionDetails,currentLane?.id.toString(),showTab]),rowRenderer=react_1.default.useMemo(()=>showTab&&activeTab?_rowRenderer:()=>null,[showTab,activeTab,_rowRenderer]),ActiveTab=react_1.default.useMemo(()=>activeTab?.payload.map((payload,index)=>rowRenderer({index})),[activeTab]);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionMenuContainer,!open&&version_dropdown_module_scss_1.default.hide)}),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.top},loading&&react_1.default.createElement(base_ui_loaders_skeleton_1.LineSkeleton,{count:6,className:version_dropdown_module_scss_1.default.loader}),!loading&&react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.titleContainer,version_dropdown_module_scss_1.default.title)},message),!loading&&localVersion&&react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{href:"?",active:currentVersion===exports.LOCAL_VERSION,className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionRow,version_dropdown_module_scss_1.default.localVersion)},react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:{},className:version_dropdown_module_scss_1.default.versionUserAvatar}),react_1.default.createElement("span",{className:version_dropdown_module_scss_1.default.versionName},exports.LOCAL_VERSION)))),react_1.default.createElement("div",{className:(0,classnames_1.default)(multipleTabs&&version_dropdown_module_scss_1.default.tabs)},multipleTabs&&tabs.map(({name},index)=>react_1.default.createElement(ui_foundation_ui_use_box_tab_1.Tab,{className:version_dropdown_module_scss_1.default.tab,key:name,isActive:activeTabIndex===index,onClick:()=>setActiveTab(index)},name))),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.versionContainerRoot},ActiveTab))}},27085:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;var version_info_1=__webpack_require__(62078);Object.defineProperty(exports,"VersionInfo",{enumerable:!0,get:function(){return version_info_1.VersionInfo}})},62078:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;const design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),design_ui_time_ago_1=__webpack_require__(69327),component_ui_version_label_1=__webpack_require__(35447),react_1=__importStar(__webpack_require__(59496)),design_ui_avatar_1=__webpack_require__(7719),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),version_info_module_scss_1=__importDefault(__webpack_require__(63432));exports.VersionInfo=react_1.default.memo(react_1.default.forwardRef(_VersionInfo));function _VersionInfo({version,currentVersion,latestVersion,date,username,displayName,email,overrideVersionHref,showDetails,message,tag,profileImage},ref){const isCurrent=version===currentVersion,author=(0,react_1.useMemo)(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),timestamp=(0,react_1.useMemo)(()=>date?new Date(parseInt(date)).toString():new Date().toString(),[date]),currentVersionRef=(0,react_1.useRef)(null);(0,react_1.useEffect)(()=>{var _a;isCurrent&&((_a=currentVersionRef.current)===null||_a===void 0||_a.scrollIntoView({block:"nearest"}))},[isCurrent]);const href=overrideVersionHref?overrideVersionHref(version):`?version=${version}`,formattedVersion=(0,react_1.useMemo)(()=>tag?version:version.slice(0,6),[tag,version]),isLatest=version===latestVersion;return react_1.default.createElement("div",{ref:ref||currentVersionRef},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href,className:version_info_module_scss_1.default.versionRow},react_1.default.createElement("div",{className:version_info_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author,className:version_info_module_scss_1.default.versionUserAvatar,showTooltip:!0}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_info_module_scss_1.default.versionName)},formattedVersion),isLatest&&react_1.default.createElement(component_ui_version_label_1.VersionLabel,{status:"latest"}),react_1.default.createElement(CommitMessage,{message,showDetails})),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.versionTimestamp},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp}))))}function CommitMessage({message,showDetails}){return showDetails?!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.emptyMessage},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.commitMessage},message):null}},69301:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectEntry=void 0;class AspectEntry{constructor(id,legacyEntry){this.id=id,this.legacyEntry=legacyEntry}get legacy(){return this.legacyEntry}get isLegacy(){return!!this.config?.__legacy}get config(){return this.legacy.config}set config(config){this.legacy.config=config}get data(){return this.legacy.data}get isRemoved(){return this.legacy.isRemoved}set data(val){this.legacy.data=val}transform(newData){const newEntry=this.clone();return newEntry.data=newData,new AspectEntry(this.id,newEntry.legacy)}clone(){return new AspectEntry(this.id,this.legacyEntry.clone())}serialize(){return{id:this.id.toString(),config:this.config,data:this.data,icon:"https://static.bit.dev/extensions-icons/default.svg"}}}exports.AspectEntry=AspectEntry},11846:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;function _anyFs(){const data=__webpack_require__(21186);return _anyFs=function(){return data},data}function _eol(){const data=__webpack_require__(58225);return _eol=function(){return data},data}function _path(){const data=_interopRequireDefault(__webpack_require__(62005));return _path=function(){return data},data}function _toolboxPath(){const data=__webpack_require__(31461);return _toolboxPath=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}class ComponentFS extends _anyFs().MemoryFS{constructor(files){super();this.files=files}get hash(){return""}byRegex(extension){return this.files.filter(file=>file.path.match(extension))}byGlob(patterns){const{includePatterns,excludePatterns}=(0,_toolboxPath().splitPatterns)(patterns);return this.files.filter(file=>(0,_toolboxPath().matchPatterns)(file.relative,includePatterns,excludePatterns))}toObject(){return this.files.map(file=>({path:file.path,contents:file.contents}))}static fromVinyls(files){const fs=new ComponentFS(files);return files.forEach(file=>{let dirPath=file.relativeDir;dirPath.startsWith("/")||(dirPath=_path().default.join("/",dirPath)),fs.mkdirpSync(dirPath),fs.writeFileSync(`/${file.relative}`,(0,_eol().auto)(file.contents||""))}),fs}}exports.default=ComponentFS},87690:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentMap=void 0;class ComponentMap{constructor(hashMap){this.hashMap=hashMap}byComponent(component){return this.hashMap.get(component.id.toString())}get components(){return this.toArray().map(([component])=>component)}get(component){return this.hashMap.get(component.id.toString())}getValueByComponentId(componentId){const tuple=this.hashMap.get(componentId.toString());return tuple?tuple[1]:null}toArray(){return Array.from(this.hashMap.values())}map(predicate){const tuples=this.toArray().map(([component,value])=>{const newValue=predicate(value,component);return[component.id.toString(),[component,newValue]]});return new ComponentMap(new Map(tuples))}async asyncMap(predicate){const tuplesP=this.toArray().map(async([component,value])=>{const newValue=await predicate(value,component);return[component.id.toString(),[component,newValue]]}),tuples=await Promise.all(tuplesP);return new ComponentMap(new Map(tuples))}forEach(predicate){this.toArray().forEach(([component,value])=>{predicate(value,component)})}flattenValue(){return this.toArray().reduce((acc,[,value])=>(acc=acc.concat(value),acc),[])}filter(predicate){const asMap=this.toArray().filter(([,value])=>predicate(value)).map(([component,value])=>[component.id.toString(),[component,value]]);return new ComponentMap(new Map(asMap))}keys(){return this.hashMap.keys()}static create(rawMap){const newMap=rawMap.map(([component,data])=>[component.id.toString(),[component,data]]);return new ComponentMap(new Map(newMap))}static as(components,predicate){const tuples=components.map(component=>[component.id.toString(),[component,predicate(component)]]);return new ComponentMap(new Map(tuples))}static async asAsync(components,predicate){const tuples=await Promise.all(components.map(async component=>[component.id.toString(),[component,await predicate(component)]]));return new ComponentMap(new Map(tuples))}}exports.ComponentMap=ComponentMap},12178:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ComponentMap",{enumerable:!0,get:function(){return _componentMap().ComponentMap}});function _componentMap(){const data=__webpack_require__(87690);return _componentMap=function(){return data},data}},42259:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.ComponentAspect=void 0;function _harmony(){const data=__webpack_require__(55669);return _harmony=function(){return data},data}const ComponentAspect=exports.ComponentAspect=_harmony().Aspect.create({id:"teambit.component/component",dependencies:[],defaultConfig:{}});var _default=exports.default=ComponentAspect},60195:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Component=void 0;function _toolboxString(){const data=__webpack_require__(58315);return _toolboxString=function(){return data},data}function _bitError(){const data=__webpack_require__(74155);return _bitError=function(){return data},data}function _lodash(){const data=__webpack_require__(32699);return _lodash=function(){return data},data}function _tagMap(){const data=__webpack_require__(50310);return _tagMap=function(){return data},data}function _exceptions(){const data=__webpack_require__(54428);return _exceptions=function(){return data},data}class Component{constructor(id,head=null,_state,tags=new(_tagMap()).TagMap,factory){this.id=id,this.head=head,this._state=_state,this.tags=tags,this.factory=factory}get mainFile(){return this.state.mainFile}get state(){return this._state}set state(state){this._state=state}get config(){return this.state.config}get filesystem(){return this.state.filesystem}get buildStatus(){return this._state._consumer.buildStatus}get headTag(){if(!!this.head)return this.tags.byHash(this.head.hash)}get latest(){if(!!this.head)try{return this.tags.getLatest()}catch(err){if(err instanceof _exceptions().CouldNotFindLatest)return this.head.hash;throw err}}get(id){return this.state.aspects.get(id)?.serialize()}async getLogs(filter){const allLogs=await this.factory.getLogs(this.id,!1,filter?.head);if(!filter)return allLogs;const{type,limit,offset,sort}=filter,typeFilter=snap=>type==="tag"?snap.tag:type==="snap"?!snap.tag:!0;let filteredLogs=type&&allLogs.filter(typeFilter)||allLogs;return sort!=="asc"&&(filteredLogs=filteredLogs.reverse()),limit&&(filteredLogs=(0,_lodash().slice)(filteredLogs,offset,limit+(offset||0))),filteredLogs}stringify(){return JSON.stringify({id:this.id,head:this.head})}get displayName(){return this.id.name.split("-").map(token=>(0,_toolboxString().capitalize)(token)).join(" ")}tag(version){}isModified(){return this.factory.isModified(this)}isDeleted(){return this.state._consumer.isRemoved()}isOutdated(){if(!this.latest)return!1;const latestTag=this.tags.byVersion(this.latest);return latestTag?this.head?.hash!==latestTag?.hash:!1}isNew(){return Promise.resolve(this.head===null)}loadState(snapId){return this.factory.getState(this.id,snapId)}loadSnap(snapId){const snapToGet=snapId||this.head?.hash;if(!snapToGet)throw new(_bitError()).BitError("could not load snap for new components");return this.factory.getSnap(this.id,snapToGet)}snapsIterable(snapId,options={}){const snapToStart=snapId||this.head?.hash;let nextSnaps=[snapToStart],done;snapToStart||(done=!0);const iterator={next:async()=>{if(done)return{value:void 0,done};const currSnapId=nextSnaps.shift(),snap=await this.loadSnap(currSnapId);return snap.parents&&snap.parents.length&&(options.firstParentOnly?nextSnaps.push(snap.parents[0]):nextSnaps=nextSnaps.concat(snap.parents)),nextSnaps.length?options.stopFn&&(done=await options.stopFn(snap)):done=!0,{value:snap,done:void 0}}};return{[Symbol.asyncIterator]:()=>iterator}}async getClosestTag(snapToStartFrom){const tagsHashMap=this.tags.getHashMap(),stopFn=async snap=>!!tagsHashMap.has(snap.hash),iterable=this.snapsIterable(snapToStartFrom,{firstParentOnly:!0,stopFn}),snaps=[];for await(const snap of iterable)snaps.push(snap);if(snaps.length){const hashOfLastSnap=snaps[snaps.length-1].hash;return tagsHashMap.get(hashOfLastSnap)}}getTag(){const currentVersion=this.id.version;if(!!currentVersion)return this.tags.byVersion(currentVersion)||this.tags.byHash(currentVersion)}getSnapHash(){if(!this.id.hasVersion())return;const tag=this.tags.byVersion(this.id.version);return tag?tag.hash:this.id.version}checkout(version){}write(path,fs){}equals(component){return component.id.toString()===this.id.toString()}}exports.Component=Component},5075:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Config=void 0;class Config{constructor(consumerComponent){this.consumerComponent=consumerComponent}get main(){return this.consumerComponent.mainFile}get extensions(){return this.consumerComponent.extensions}}exports.Config=Config},90406:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CouldNotFindLatest=void 0;class CouldNotFindLatest extends Error{constructor(semverArray){super(`could not find latest semver in array: ${semverArray.join(", ")}`)}report(){return this.message}}exports.CouldNotFindLatest=CouldNotFindLatest},339:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostNotFound=void 0;class HostNotFound extends Error{constructor(hostName){super();this.hostName=hostName}toString(){return`[component] error: host '${this.hostName}' was not found`}}exports.HostNotFound=HostNotFound},54428:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"CouldNotFindLatest",{enumerable:!0,get:function(){return _couldNotFindLatest().CouldNotFindLatest}}),Object.defineProperty(exports,"HostNotFound",{enumerable:!0,get:function(){return _hostNotFound().HostNotFound}}),Object.defineProperty(exports,"MainFileNotFound",{enumerable:!0,get:function(){return _mainFileNotFound().MainFileNotFound}}),Object.defineProperty(exports,"NothingToSnap",{enumerable:!0,get:function(){return _nothingToSnap().default}});function _nothingToSnap(){const data=_interopRequireDefault(__webpack_require__(83277));return _nothingToSnap=function(){return data},data}function _hostNotFound(){const data=__webpack_require__(339);return _hostNotFound=function(){return data},data}function _couldNotFindLatest(){const data=__webpack_require__(90406);return _couldNotFindLatest=function(){return data},data}function _mainFileNotFound(){const data=__webpack_require__(58904);return _mainFileNotFound=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},58904:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MainFileNotFound=void 0;class MainFileNotFound extends Error{constructor(id,mainFile){super();this.id=id,this.mainFile=mainFile}toString(){return`[component] error: main file ${this.mainFile} for component ${this.id.toString()} was not found`}}exports.MainFileNotFound=MainFileNotFound},83277:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class NothingToSnap extends Error{}exports.default=NothingToSnap},72963:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentHostModel=void 0;function _ui(){const data=__webpack_require__(4744);return _ui=function(){return data},data}class ComponentHostModel{constructor(name,components){this.name=name,this.components=components}static from(data){return new ComponentHostModel(data.getHost.name,_ui().ComponentModel.fromArray(data.getHost.list))}}exports.ComponentHostModel=ComponentHostModel},23384:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={useComponentHost:!0};Object.defineProperty(exports,"useComponentHost",{enumerable:!0,get:function(){return _useComponentHost().useComponentHost}});function _useComponentHost(){const data=__webpack_require__(28796);return _useComponentHost=function(){return data},data}var _componentHostModel=__webpack_require__(72963);Object.keys(_componentHostModel).forEach(function(key){key==="default"||key==="__esModule"||Object.prototype.hasOwnProperty.call(_exportNames,key)||key in exports&&exports[key]===_componentHostModel[key]||Object.defineProperty(exports,key,{enumerable:!0,get:function(){return _componentHostModel[key]}})})},28796:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useComponentHost=useComponentHost;function _uiFoundationUiHooks(){const data=__webpack_require__(25338);return _uiFoundationUiHooks=function(){return data},data}function _client(){const data=__webpack_require__(97299);return _client=function(){return data},data}function _componentHostModel(){const data=__webpack_require__(72963);return _componentHostModel=function(){return data},data}const COMPONENT_HOST=(0,_client().gql)`
674
+ `)}}exports.UntrackedDependencies=UntrackedDependencies;function untrackedFilesComponentIssueToString(value){return value.untrackedFiles.map(curr=>curr.existing?`${chalk_1.default.yellow(curr.relativePath)}`:curr.relativePath).join(", ")}},24636:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.DetailedVersion=exports.SimpleVersion=void 0;var version_dropdown_placeholder_1=__webpack_require__(38052);Object.defineProperty(exports,"SimpleVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.SimpleVersion}}),Object.defineProperty(exports,"DetailedVersion",{enumerable:!0,get:function(){return version_dropdown_placeholder_1.DetailedVersion}});var version_dropdown_1=__webpack_require__(18827);Object.defineProperty(exports,"VersionDropdown",{enumerable:!0,get:function(){return version_dropdown_1.VersionDropdown}})},43272:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;var lane_info_1=__webpack_require__(89053);Object.defineProperty(exports,"LaneInfo",{enumerable:!0,get:function(){return lane_info_1.LaneInfo}})},89053:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LaneInfo=void 0;const lanes_ui_models_lanes_model_1=__webpack_require__(97223),react_1=__importDefault(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_elements_icon_1=__webpack_require__(6281),lane_info_module_scss_1=__importDefault(__webpack_require__(72154));function LaneInfo({id,currentLane}){const isCurrent=currentLane&&id.isEqual(currentLane.id);return react_1.default.createElement("div",{key:id.toString()},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href:lanes_ui_models_lanes_model_1.LanesModel.getLaneUrl(id),className:lane_info_module_scss_1.default.versionRow},react_1.default.createElement("span",null,react_1.default.createElement(evangelist_elements_icon_1.Icon,{className:lane_info_module_scss_1.default.laneIcon,of:"lane"}),id.toString())))}exports.LaneInfo=LaneInfo},38052:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DetailedVersion=exports.SimpleVersion=void 0;const react_1=__importDefault(__webpack_require__(59496)),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),semver=__importStar(__webpack_require__(9131)),evangelist_elements_icon_1=__webpack_require__(6281),design_ui_time_ago_1=__webpack_require__(69327),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),version_dropdown_placeholder_module_scss_1=__importDefault(__webpack_require__(97276));function SimpleVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,useCurrentVersionLog,showFullVersion,loading}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","useCurrentVersionLog","showFullVersion","loading"]);if(loading)return react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9});const formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.simple,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.SimpleVersion=SimpleVersion;function DetailedVersion(_a){var{currentVersion,className,disabled,hasMoreVersions,isTag=version=>semver.valid(version)!==null,loading,useCurrentVersionLog,showFullVersion}=_a,rest=__rest(_a,["currentVersion","className","disabled","hasMoreVersions","isTag","loading","useCurrentVersionLog","showFullVersion"]);const currentVersionLog=useCurrentVersionLog?.({skip:loading,version:currentVersion}),{displayName,message,username,email,date:_date,profileImage}=currentVersionLog||{},author=react_1.default.useMemo(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),formattedVersion=showFullVersion||isTag(currentVersion)?currentVersion:currentVersion?.slice(0,6),date=_date?new Date(+_date):void 0,timestamp=react_1.default.useMemo(()=>date?new Date(+date).toString():new Date().toString(),[date]);return loading?react_1.default.createElement(base_ui_loaders_skeleton_1.WordSkeleton,{className:version_dropdown_placeholder_module_scss_1.default.loader,length:9}):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.detailed,className,disabled&&version_dropdown_placeholder_module_scss_1.default.disabled)}),react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author??{},className:version_dropdown_placeholder_module_scss_1.default.versionUserAvatar,showTooltip:!0,onClick:rest.onClick}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_dropdown_placeholder_module_scss_1.default.versionName),onClick:rest.onClick},formattedVersion),commitMessage(message,rest.onClick),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.versionTimestamp,onClick:rest.onClick},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp,onClick:rest.onClick})),hasMoreVersions&&react_1.default.createElement(evangelist_elements_icon_1.Icon,{of:"fat-arrow-down",onClick:rest.onClick}))}exports.DetailedVersion=DetailedVersion;function commitMessage(message,onClick){return!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.emptyMessage,onClick},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_dropdown_placeholder_module_scss_1.default.commitMessage,onClick},message)}},18827:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__rest=this&&this.__rest||function(s,e){var t={};for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0&&(t[p]=s[p]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++)e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i])&&(t[p[i]]=s[p[i]]);return t},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionDropdown=exports.LOCAL_VERSION=void 0;const react_1=__importStar(__webpack_require__(59496)),design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),evangelist_surfaces_dropdown_1=__webpack_require__(47676),ui_foundation_ui_use_box_tab_1=__webpack_require__(11058),design_ui_avatar_1=__webpack_require__(7719),base_ui_loaders_skeleton_1=__webpack_require__(16623),classnames_1=__importDefault(__webpack_require__(97754)),version_dropdown_module_scss_1=__importDefault(__webpack_require__(40926)),version_info_1=__webpack_require__(27085),lane_info_1=__webpack_require__(43272),version_dropdown_placeholder_1=__webpack_require__(38052);exports.LOCAL_VERSION="workspace",exports.VersionDropdown=react_1.default.memo(_VersionDropdown);const VersionMenu=react_1.default.memo(_VersionMenu);function _VersionDropdown(_a){var{currentVersion,latestVersion,localVersion,useCurrentVersionLog,hasMoreVersions,loading,overrideVersionHref,className,placeholderClassName,getActiveTabIndex,dropdownClassName,menuClassName,showVersionDetails=!0,disabled,PlaceholderComponent:_PlaceholderComponent,currentLane,useComponentVersions,lanes}=_a,rest=__rest(_a,["currentVersion","latestVersion","localVersion","useCurrentVersionLog","hasMoreVersions","loading","overrideVersionHref","className","placeholderClassName","getActiveTabIndex","dropdownClassName","menuClassName","showVersionDetails","disabled","PlaceholderComponent","currentLane","useComponentVersions","lanes"]);const[key,setKey]=(0,react_1.useState)(0),singleVersion=!hasMoreVersions,[open,setOpen]=(0,react_1.useState)(!1);react_1.default.useEffect(()=>{loading&&open&&setOpen(!1)},[loading]);const handlePlaceholderClicked=e=>{loading||e.target===e.currentTarget&&setOpen(o=>!o)},defaultPlaceholder=react_1.default.createElement(version_dropdown_placeholder_1.SimpleVersion,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}),PlaceholderComponent=_PlaceholderComponent?react_1.default.createElement(_PlaceholderComponent,{useCurrentVersionLog,disabled,className:placeholderClassName,currentVersion,onClick:handlePlaceholderClicked,hasMoreVersions,loading,showFullVersion:currentVersion==="workspace"}):defaultPlaceholder;return disabled||singleVersion&&!loading?react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.noVersions,className)},PlaceholderComponent):react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionDropdown,className)}),react_1.default.createElement(evangelist_surfaces_dropdown_1.Dropdown,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.dropdown,dropdownClassName),dropClass:(0,classnames_1.default)(version_dropdown_module_scss_1.default.menu,menuClassName),open,onClick:handlePlaceholderClicked,onClickOutside:()=>setOpen(!1),onChange:(_e,_open)=>_open&&setKey(x=>x+1),PlaceholderComponent:_a2=>{var{children}=_a2,other=__rest(_a2,["children"]);return react_1.default.createElement("div",Object.assign({},other,{className:placeholderClassName,onClick:handlePlaceholderClicked}),children)},placeholder:PlaceholderComponent},react_1.default.createElement(VersionMenu,{className:menuClassName,key,currentVersion,latestVersion,localVersion,overrideVersionHref,showVersionDetails,currentLane,getActiveTabIndex,lanes,useVersions:useComponentVersions,open})))}const defaultActiveTabIndex=(currentVersion,tabs=[],tags,snaps)=>(snaps||[]).some(snap=>snap.version===currentVersion)?tabs.findIndex(tab=>tab.name==="SNAP"):0,VERSION_TAB_NAMES=["TAG","SNAP","LANE"];function _VersionMenu(_a){var _b,_c,{currentVersion,localVersion,latestVersion,overrideVersionHref,showVersionDetails,useVersions,currentLane,lanes,getActiveTabIndex=defaultActiveTabIndex,loading:loadingFromProps,open}=_a,rest=__rest(_a,["currentVersion","localVersion","latestVersion","overrideVersionHref","showVersionDetails","useVersions","currentLane","lanes","getActiveTabIndex","loading","open"]);const{snaps,tags,loading:loadingVersions}=useVersions?.()||{},loading=loadingFromProps||loadingVersions,tabs=react_1.default.useMemo(()=>VERSION_TAB_NAMES.map(name=>{switch(name){case"SNAP":return{name,payload:snaps||[]};case"LANE":return{name,payload:lanes||[]};default:return{name,payload:tags||[]}}}).filter(tab=>tab.payload.length>0),[snaps?.length,tags?.length,lanes?.length,loading]),[activeTabIndex,setActiveTab]=react_1.default.useState(getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane)),activeTab=react_1.default.useMemo(()=>activeTabIndex!==void 0?tabs[activeTabIndex]:void 0,[activeTabIndex,tabs]);react_1.default.useEffect(()=>{if(!currentLane||tabs.length===0)return;const _activeTabIndex=getActiveTabIndex(currentVersion,tabs,tags,snaps,currentLane);_activeTabIndex!==activeTabIndex&&setActiveTab(_activeTabIndex)},[currentLane,tabs.length,tags?.length,snaps?.length,currentVersion,loading]);const multipleTabs=tabs.length>1,message=multipleTabs?"Switch to view tags, snaps, or lanes":`Switch between ${(_b=tabs[0])===null||_b===void 0?void 0:_b.name.toLocaleLowerCase()}s`,showTab=activeTabIndex!==void 0&&((_c=tabs[activeTabIndex])===null||_c===void 0?void 0:_c.payload.length)>0,_rowRenderer=react_1.default.useCallback(function({index}){const{name,payload=[]}=activeTab||{},item=payload[index];if(!item)return null;if(name==="LANE"){const lane=item;return react_1.default.createElement(lane_info_1.LaneInfo,Object.assign({key:lane.id.toString(),currentLane},lane))}const version=item;return react_1.default.createElement(version_info_1.VersionInfo,Object.assign({key:version.version,currentVersion,latestVersion,overrideVersionHref,showDetails:showVersionDetails},version))},[activeTab,currentVersion,latestVersion,showVersionDetails,currentLane?.id.toString(),showTab]),rowRenderer=react_1.default.useMemo(()=>showTab&&activeTab?_rowRenderer:()=>null,[showTab,activeTab,_rowRenderer]),ActiveTab=react_1.default.useMemo(()=>activeTab?.payload.map((payload,index)=>rowRenderer({index})),[activeTab]);return react_1.default.createElement("div",Object.assign({},rest,{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionMenuContainer,!open&&version_dropdown_module_scss_1.default.hide)}),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.top},loading&&react_1.default.createElement(base_ui_loaders_skeleton_1.LineSkeleton,{count:6,className:version_dropdown_module_scss_1.default.loader}),!loading&&react_1.default.createElement("div",{className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.titleContainer,version_dropdown_module_scss_1.default.title)},message),!loading&&localVersion&&react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{href:"?",active:currentVersion===exports.LOCAL_VERSION,className:(0,classnames_1.default)(version_dropdown_module_scss_1.default.versionRow,version_dropdown_module_scss_1.default.localVersion)},react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:{},className:version_dropdown_module_scss_1.default.versionUserAvatar}),react_1.default.createElement("span",{className:version_dropdown_module_scss_1.default.versionName},exports.LOCAL_VERSION)))),react_1.default.createElement("div",{className:(0,classnames_1.default)(multipleTabs&&version_dropdown_module_scss_1.default.tabs)},multipleTabs&&tabs.map(({name},index)=>react_1.default.createElement(ui_foundation_ui_use_box_tab_1.Tab,{className:version_dropdown_module_scss_1.default.tab,key:name,isActive:activeTabIndex===index,onClick:()=>setActiveTab(index)},name))),react_1.default.createElement("div",{className:version_dropdown_module_scss_1.default.versionContainerRoot},ActiveTab))}},27085:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;var version_info_1=__webpack_require__(62078);Object.defineProperty(exports,"VersionInfo",{enumerable:!0,get:function(){return version_info_1.VersionInfo}})},62078:function(__unused_webpack_module,exports,__webpack_require__){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.VersionInfo=void 0;const design_ui_surfaces_menu_link_item_1=__webpack_require__(50419),design_ui_time_ago_1=__webpack_require__(69327),component_ui_version_label_1=__webpack_require__(35447),react_1=__importStar(__webpack_require__(59496)),design_ui_avatar_1=__webpack_require__(7719),design_ui_styles_ellipsis_1=__webpack_require__(25747),classnames_1=__importDefault(__webpack_require__(97754)),version_info_module_scss_1=__importDefault(__webpack_require__(63432));exports.VersionInfo=react_1.default.memo(react_1.default.forwardRef(_VersionInfo));function _VersionInfo({version,currentVersion,latestVersion,date,username,displayName,email,overrideVersionHref,showDetails,message,tag,profileImage},ref){const isCurrent=version===currentVersion,author=(0,react_1.useMemo)(()=>({displayName:displayName??"",email,name:username??"",profileImage}),[displayName,email,username,profileImage]),timestamp=(0,react_1.useMemo)(()=>date?new Date(parseInt(date)).toString():new Date().toString(),[date]),currentVersionRef=(0,react_1.useRef)(null);(0,react_1.useEffect)(()=>{var _a;isCurrent&&((_a=currentVersionRef.current)===null||_a===void 0||_a.scrollIntoView({block:"nearest"}))},[isCurrent]);const href=overrideVersionHref?overrideVersionHref(version):`?version=${version}`,formattedVersion=(0,react_1.useMemo)(()=>tag?version:version.slice(0,6),[tag,version]),isLatest=version===latestVersion;return react_1.default.createElement("div",{ref:ref||currentVersionRef},react_1.default.createElement(design_ui_surfaces_menu_link_item_1.MenuLinkItem,{active:isCurrent,href,className:version_info_module_scss_1.default.versionRow},react_1.default.createElement("div",{className:version_info_module_scss_1.default.version},react_1.default.createElement(design_ui_avatar_1.UserAvatar,{size:24,account:author,className:version_info_module_scss_1.default.versionUserAvatar,showTooltip:!0}),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:(0,classnames_1.default)(version_info_module_scss_1.default.versionName)},formattedVersion),isLatest&&react_1.default.createElement(component_ui_version_label_1.VersionLabel,{status:"latest"}),react_1.default.createElement(CommitMessage,{message,showDetails})),react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.versionTimestamp},react_1.default.createElement(design_ui_time_ago_1.TimeAgo,{date:timestamp}))))}function CommitMessage({message,showDetails}){return showDetails?!message||message===""?react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.emptyMessage},"No commit message"):react_1.default.createElement(design_ui_styles_ellipsis_1.Ellipsis,{className:version_info_module_scss_1.default.commitMessage},message):null}},69301:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AspectEntry=void 0;class AspectEntry{constructor(id,legacyEntry){this.id=id,this.legacyEntry=legacyEntry}get legacy(){return this.legacyEntry}get isLegacy(){return!!this.config?.__legacy}get config(){return this.legacy.config}set config(config){this.legacy.config=config}get data(){return this.legacy.data}get isRemoved(){return this.legacy.isRemoved}set data(val){this.legacy.data=val}transform(newData){const newEntry=this.clone();return newEntry.data=newData,new AspectEntry(this.id,newEntry.legacy)}clone(){return new AspectEntry(this.id,this.legacyEntry.clone())}serialize(){return{id:this.id.toString(),config:this.config,data:this.data,icon:"https://static.bit.dev/extensions-icons/default.svg"}}}exports.AspectEntry=AspectEntry},11846:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;function _anyFs(){const data=__webpack_require__(21186);return _anyFs=function(){return data},data}function _eol(){const data=__webpack_require__(58225);return _eol=function(){return data},data}function _path(){const data=_interopRequireDefault(__webpack_require__(62005));return _path=function(){return data},data}function _toolboxPath(){const data=__webpack_require__(31461);return _toolboxPath=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}class ComponentFS extends _anyFs().MemoryFS{constructor(files){super();this.files=files}get hash(){return""}byRegex(extension){return this.files.filter(file=>file.path.match(extension))}byGlob(patterns){const{includePatterns,excludePatterns}=(0,_toolboxPath().splitPatterns)(patterns);return this.files.filter(file=>(0,_toolboxPath().matchPatterns)(file.relative,includePatterns,excludePatterns))}toObject(){return this.files.map(file=>({path:file.path,contents:file.contents}))}static fromVinyls(files){const fs=new ComponentFS(files);return files.forEach(file=>{let dirPath=file.relativeDir;dirPath.startsWith("/")||(dirPath=_path().default.join("/",dirPath)),fs.mkdirpSync(dirPath),fs.writeFileSync(`/${file.relative}`,(0,_eol().auto)(file.contents||""))}),fs}}exports.default=ComponentFS},87690:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentMap=void 0;class ComponentMap{constructor(hashMap){this.hashMap=hashMap}byComponent(component){return this.hashMap.get(component.id.toString())}get components(){return this.toArray().map(([component])=>component)}get(component){return this.hashMap.get(component.id.toString())}getValueByComponentId(componentId){const tuple=this.hashMap.get(componentId.toString());return tuple?tuple[1]:null}toArray(){return Array.from(this.hashMap.values())}map(predicate){const tuples=this.toArray().map(([component,value])=>{const newValue=predicate(value,component);return[component.id.toString(),[component,newValue]]});return new ComponentMap(new Map(tuples))}async asyncMap(predicate){const tuplesP=this.toArray().map(async([component,value])=>{const newValue=await predicate(value,component);return[component.id.toString(),[component,newValue]]}),tuples=await Promise.all(tuplesP);return new ComponentMap(new Map(tuples))}forEach(predicate){this.toArray().forEach(([component,value])=>{predicate(value,component)})}flattenValue(){return this.toArray().reduce((acc,[,value])=>(acc=acc.concat(value),acc),[])}filter(predicate){const asMap=this.toArray().filter(([,value])=>predicate(value)).map(([component,value])=>[component.id.toString(),[component,value]]);return new ComponentMap(new Map(asMap))}keys(){return this.hashMap.keys()}static create(rawMap){const newMap=rawMap.map(([component,data])=>[component.id.toString(),[component,data]]);return new ComponentMap(new Map(newMap))}static as(components,predicate){const tuples=components.map(component=>[component.id.toString(),[component,predicate(component)]]);return new ComponentMap(new Map(tuples))}static async asAsync(components,predicate){const tuples=await Promise.all(components.map(async component=>[component.id.toString(),[component,await predicate(component)]]));return new ComponentMap(new Map(tuples))}}exports.ComponentMap=ComponentMap},12178:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ComponentMap",{enumerable:!0,get:function(){return _componentMap().ComponentMap}});function _componentMap(){const data=__webpack_require__(87690);return _componentMap=function(){return data},data}},42259:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.ComponentAspect=void 0;function _harmony(){const data=__webpack_require__(55669);return _harmony=function(){return data},data}const ComponentAspect=exports.ComponentAspect=_harmony().Aspect.create({id:"teambit.component/component",dependencies:[],defaultConfig:{}});var _default=exports.default=ComponentAspect},60195:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Component=void 0;function _toolboxString(){const data=__webpack_require__(58315);return _toolboxString=function(){return data},data}function _bitError(){const data=__webpack_require__(74155);return _bitError=function(){return data},data}function _lodash(){const data=__webpack_require__(32699);return _lodash=function(){return data},data}function _tagMap(){const data=__webpack_require__(50310);return _tagMap=function(){return data},data}function _exceptions(){const data=__webpack_require__(54428);return _exceptions=function(){return data},data}class Component{constructor(id,head=null,_state,tags=new(_tagMap()).TagMap,factory){this.id=id,this.head=head,this._state=_state,this.tags=tags,this.factory=factory}get mainFile(){return this.state.mainFile}get state(){return this._state}set state(state){this._state=state}get config(){return this.state.config}get filesystem(){return this.state.filesystem}get buildStatus(){return this._state._consumer.buildStatus}get headTag(){if(!!this.head)return this.tags.byHash(this.head.hash)}get latest(){if(!!this.head)try{return this.tags.getLatest()}catch(err){if(err instanceof _exceptions().CouldNotFindLatest)return this.head.hash;throw err}}get(id){return this.state.aspects.get(id)?.serialize()}async getLogs(filter){const allLogs=await this.factory.getLogs(this.id,!1,filter?.head);if(!filter)return allLogs;const{type,limit,offset,sort}=filter,typeFilter=snap=>type==="tag"?snap.tag:type==="snap"?!snap.tag:!0;let filteredLogs=type&&allLogs.filter(typeFilter)||allLogs;return sort!=="asc"&&(filteredLogs=filteredLogs.reverse()),limit&&(filteredLogs=(0,_lodash().slice)(filteredLogs,offset,limit+(offset||0))),filteredLogs}stringify(){return JSON.stringify({id:this.id,head:this.head})}get displayName(){return this.id.name.split("-").map(token=>(0,_toolboxString().capitalize)(token)).join(" ")}tag(version){}isModified(){return this.factory.isModified(this)}isDeleted(){return this.state._consumer.isRemoved()}isOutdated(){if(!this.latest)return!1;const latestTag=this.tags.byVersion(this.latest);return latestTag?this.head?.hash!==latestTag?.hash:!1}isNew(){return Promise.resolve(this.head===null)}loadState(snapId){return this.factory.getState(this.id,snapId)}loadSnap(snapId){const snapToGet=snapId||this.head?.hash;if(!snapToGet)throw new(_bitError()).BitError("could not load snap for new components");return this.factory.getSnap(this.id,snapToGet)}snapsIterable(snapId,options={}){const snapToStart=snapId||this.head?.hash;let nextSnaps=[snapToStart],done;snapToStart||(done=!0);const iterator={next:async()=>{if(done)return{value:void 0,done};const currSnapId=nextSnaps.shift(),snap=await this.loadSnap(currSnapId);return snap.parents&&snap.parents.length&&(options.firstParentOnly?nextSnaps.push(snap.parents[0]):nextSnaps=nextSnaps.concat(snap.parents)),nextSnaps.length?options.stopFn&&(done=await options.stopFn(snap)):done=!0,{value:snap,done:void 0}}};return{[Symbol.asyncIterator]:()=>iterator}}async getClosestTag(snapToStartFrom){const tagsHashMap=this.tags.getHashMap(),stopFn=async snap=>!!tagsHashMap.has(snap.hash),iterable=this.snapsIterable(snapToStartFrom,{firstParentOnly:!0,stopFn}),snaps=[];for await(const snap of iterable)snaps.push(snap);if(snaps.length){const hashOfLastSnap=snaps[snaps.length-1].hash;return tagsHashMap.get(hashOfLastSnap)}}getTag(){const currentVersion=this.id.version;if(!!currentVersion)return this.tags.byVersion(currentVersion)||this.tags.byHash(currentVersion)}getSnapHash(){if(!this.id.hasVersion())return;const tag=this.tags.byVersion(this.id.version);return tag?tag.hash:this.id.version}async getCurrentSnap(){const snap=this.getSnapHash();if(!!snap)return this.loadSnap(snap)}checkout(version){}write(path,fs){}equals(component){return component.id.toString()===this.id.toString()}}exports.Component=Component},5075:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Config=void 0;class Config{constructor(consumerComponent){this.consumerComponent=consumerComponent}get main(){return this.consumerComponent.mainFile}get extensions(){return this.consumerComponent.extensions}}exports.Config=Config},90406:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CouldNotFindLatest=void 0;class CouldNotFindLatest extends Error{constructor(semverArray){super(`could not find latest semver in array: ${semverArray.join(", ")}`)}report(){return this.message}}exports.CouldNotFindLatest=CouldNotFindLatest},339:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostNotFound=void 0;class HostNotFound extends Error{constructor(hostName){super();this.hostName=hostName}toString(){return`[component] error: host '${this.hostName}' was not found`}}exports.HostNotFound=HostNotFound},54428:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"CouldNotFindLatest",{enumerable:!0,get:function(){return _couldNotFindLatest().CouldNotFindLatest}}),Object.defineProperty(exports,"HostNotFound",{enumerable:!0,get:function(){return _hostNotFound().HostNotFound}}),Object.defineProperty(exports,"MainFileNotFound",{enumerable:!0,get:function(){return _mainFileNotFound().MainFileNotFound}}),Object.defineProperty(exports,"NothingToSnap",{enumerable:!0,get:function(){return _nothingToSnap().default}});function _nothingToSnap(){const data=_interopRequireDefault(__webpack_require__(83277));return _nothingToSnap=function(){return data},data}function _hostNotFound(){const data=__webpack_require__(339);return _hostNotFound=function(){return data},data}function _couldNotFindLatest(){const data=__webpack_require__(90406);return _couldNotFindLatest=function(){return data},data}function _mainFileNotFound(){const data=__webpack_require__(58904);return _mainFileNotFound=function(){return data},data}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},58904:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MainFileNotFound=void 0;class MainFileNotFound extends Error{constructor(id,mainFile){super();this.id=id,this.mainFile=mainFile}toString(){return`[component] error: main file ${this.mainFile} for component ${this.id.toString()} was not found`}}exports.MainFileNotFound=MainFileNotFound},83277:(__unused_webpack_module,exports)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class NothingToSnap extends Error{}exports.default=NothingToSnap},72963:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ComponentHostModel=void 0;function _ui(){const data=__webpack_require__(4744);return _ui=function(){return data},data}class ComponentHostModel{constructor(name,components){this.name=name,this.components=components}static from(data){return new ComponentHostModel(data.getHost.name,_ui().ComponentModel.fromArray(data.getHost.list))}}exports.ComponentHostModel=ComponentHostModel},23384:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={useComponentHost:!0};Object.defineProperty(exports,"useComponentHost",{enumerable:!0,get:function(){return _useComponentHost().useComponentHost}});function _useComponentHost(){const data=__webpack_require__(28796);return _useComponentHost=function(){return data},data}var _componentHostModel=__webpack_require__(72963);Object.keys(_componentHostModel).forEach(function(key){key==="default"||key==="__esModule"||Object.prototype.hasOwnProperty.call(_exportNames,key)||key in exports&&exports[key]===_componentHostModel[key]||Object.defineProperty(exports,key,{enumerable:!0,get:function(){return _componentHostModel[key]}})})},28796:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useComponentHost=useComponentHost;function _uiFoundationUiHooks(){const data=__webpack_require__(25338);return _uiFoundationUiHooks=function(){return data},data}function _client(){const data=__webpack_require__(97299);return _client=function(){return data},data}function _componentHostModel(){const data=__webpack_require__(72963);return _componentHostModel=function(){return data},data}const COMPONENT_HOST=(0,_client().gql)`
675
675
  {
676
676
  getHost {
677
677
  id # used for GQL caching