@teambit/component-log 1.0.281 → 1.0.283

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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.component/component-log@1.0.281" tests="0" failures="0" errors="0" skipped="0"/>
3
+ <testsuite name="teambit.component/component-log@1.0.283" tests="0" failures="0" errors="0" skipped="0"/>
4
4
  </testsuites>
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.component/component-log-preview"]=t():e["teambit.component/component-log-preview"]=t()}(self,(()=>(()=>{"use strict";var e={53896:(e,t,o)=>{var n={id:"teambit.component/component-log@1.0.281",homepage:"https://bit.cloud/teambit/component/component-log",exported:!0};function r(){const e=i(o(41594));return r=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,r.__bit_component=n,i.__bit_component=n;const p=()=>r().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},r().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/component-log.svg"}));p.__bit_component=n,t.Logo=p},41594:e=>{e.exports=React}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{o.r(n),o.d(n,{compositions:()=>d,compositions_metadata:()=>f,overview:()=>u});var e={};o.r(e),o.d(e,{default:()=>l});var t=o(53896);o(41594);const r=MdxJsReact,i=TeambitMdxUiMdxScopeContext;var p=["components"];function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},c.apply(this,arguments)}var a={},s="wrapper";function l(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;o[n]=e[n]}return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}(e,p);return(0,r.mdx)(s,c({},a,o,{components:t,mdxType:"MDXLayout"}),(0,r.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}l.isMDXComponent=!0;const d=[t],u=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),n})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.component/component-log-preview"]=t():e["teambit.component/component-log-preview"]=t()}(self,(()=>(()=>{"use strict";var e={42962:(e,t,o)=>{var n={id:"teambit.component/component-log@1.0.283",homepage:"https://bit.cloud/teambit/component/component-log",exported:!0};function r(){const e=i(o(41594));return r=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,r.__bit_component=n,i.__bit_component=n;const c=()=>r().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},r().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/component-log.svg"}));c.__bit_component=n,t.Logo=c},41594:e=>{e.exports=React}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{o.r(n),o.d(n,{compositions:()=>u,compositions_metadata:()=>f,overview:()=>d});var e={};o.r(e),o.d(e,{default:()=>l});var t=o(42962);o(41594);const r=MdxJsReact,i=TeambitMdxUiMdxScopeContext;var c=["components"];function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)({}).hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},p.apply(null,arguments)}var a={},s="wrapper";function l(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;o[n]=e[n]}return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||{}.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}(e,c);return(0,r.mdx)(s,p({},a,o,{components:t,mdxType:"MDXLayout"}),(0,r.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}l.isMDXComponent=!0;const u=[t],d=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),n})()));
@@ -1903,7 +1903,7 @@
1903
1903
  "componentId": {
1904
1904
  "scope": "teambit.component",
1905
1905
  "name": "component-log",
1906
- "version": "1.0.281"
1906
+ "version": "1.0.283"
1907
1907
  },
1908
1908
  "taggedModuleExports": []
1909
1909
  }
@@ -11,7 +11,7 @@ function _react() {
11
11
  };
12
12
  return data;
13
13
  }
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
15
  const Logo = () => /*#__PURE__*/_react().default.createElement("div", {
16
16
  style: {
17
17
  height: '100%',
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["component-log.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/component-log.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAA2D,CAAE,CACzF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","e","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["component-log.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/component-log.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAA2D,CAAE,CACzF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA","ignoreList":[]}
@@ -116,8 +116,8 @@ function _logFileCmd() {
116
116
  };
117
117
  return data;
118
118
  }
119
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
120
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
119
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
120
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
121
121
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
122
122
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
123
123
  class ComponentLogMain {
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_componentId","_path","_interopRequireDefault","_moment","_pMap","_workspace","_lodash","_pMapSeries","_path2","_componentsDiff","_chalk","_getRemoteByName","_componentLog","_logCmd","_snapGraph","_logFileCmd","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","ComponentLogMain","constructor","workspace","getLogs","id","isRemote","shortHash","shortMessage","consumer","bitId","ComponentID","fromString","remote","getRemoteByName","scope","log","OutsideWorkspaceError","componentId","resolveComponentId","logs","forEach","date","moment","Date","parseInt","format","undefined","message","split","getLogsWithParents","fullHash","fullMessage","graph","buildSnapGraph","sorted","toposort","map","node","stringifyLogInfoOneLine","attr","getChangedFilesFromParent","modelComp","getBitObjectModelComponent","versionObj","getBitObjectVersion","version","firstParent","parents","parentObj","toString","compDir","componentDir","ignoreVersion","results","compact","files","file","parentFile","find","f","relativePath","isEqual","filePath","path","join","hash","parentHash","filesOnParentOnly","filter","length","push","getFileHistoryHashes","getComponentIdByPath","rootDir","filePathAsLinux","pathNormalizeToLinux","filePathRelativeInComponent","replace","pMap","logItem","fileInComp","fileHash","getFileHashFromParent","parent","parentFileInComp","fileHashesFromParent","Promise","all","getParentFileHash","includes","tag","username","email","parentFileHash","concurrency","getFileLog","Error","relative","lastFile","pMapSeries","component","get","changeVersion","filesystem","lastResult","lastHash","toSourceAsLinuxEOL","diff","getFilesDiff","fileDiff","diffOutput","logInfo","chalk","yellow","provider","cli","componentLog","register","LogCmd","LogFileCmd","exports","CLIAspect","WorkspaceAspect","MainRuntime","ComponentLogAspect","addRuntime"],"sources":["component-log.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ComponentID } from '@teambit/component-id';\nimport { LegacyComponentLog as ComponentLog } from '@teambit/legacy-component-log';\nimport path from 'path';\nimport moment from 'moment';\nimport pMap from 'p-map';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { compact } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport { Version } from '@teambit/legacy/dist/scope/models';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils/path';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { getFilesDiff } from '@teambit/legacy/dist/consumer/component-ops/components-diff';\nimport chalk from 'chalk';\nimport getRemoteByName from '@teambit/legacy/dist/remotes/get-remote-by-name';\nimport { ComponentLogAspect } from './component-log.aspect';\nimport LogCmd from './log-cmd';\nimport { buildSnapGraph } from './snap-graph';\nimport { LogFileCmd } from './log-file-cmd';\n\nexport type FileLog = {\n hash: string;\n tag?: string;\n username?: string;\n email?: string;\n date: string;\n message: string;\n fileHash: string;\n parentFileHash?: string;\n fileDiff?: string;\n};\n\nexport type FileHashDiffFromParent = {\n filePath: string; // path OS absolute\n hash?: string; // if undefined, the file was deleted in this snap\n parentHash?: string; // if undefined, the file was added in this snap\n};\n\nexport class ComponentLogMain {\n constructor(private workspace: Workspace | undefined) {}\n\n /**\n * get component log sorted by the timestamp in ascending order (from the earliest to the latest)\n */\n async getLogs(id: string, isRemote?: boolean, shortHash = false, shortMessage = false): Promise<ComponentLog[]> {\n if (isRemote) {\n const consumer = this.workspace?.consumer;\n const bitId = ComponentID.fromString(id);\n const remote = await getRemoteByName(bitId.scope as string, consumer);\n return remote.log(bitId);\n }\n if (!this.workspace) throw new OutsideWorkspaceError();\n const componentId = await this.workspace.resolveComponentId(id);\n const logs = await this.workspace.scope.getLogs(componentId, shortHash);\n logs.forEach((log) => {\n log.date = log.date ? moment(new Date(parseInt(log.date))).format('YYYY-MM-DD HH:mm:ss') : undefined;\n log.message = shortMessage ? log.message.split('\\n')[0] : log.message;\n });\n return logs;\n }\n\n async getLogsWithParents(id: string, fullHash = false, fullMessage = false) {\n const logs = await this.getLogs(id, false, !fullHash, !fullMessage);\n const graph = buildSnapGraph(logs);\n const sorted = graph.toposort();\n return sorted.map((node) => this.stringifyLogInfoOneLine(node.attr));\n }\n\n async getChangedFilesFromParent(id: string): Promise<FileHashDiffFromParent[]> {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.resolveComponentId(id);\n const modelComp = await workspace.scope.getBitObjectModelComponent(componentId, true);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const versionObj = (await workspace.scope.getBitObjectVersion(modelComp!, componentId.version!, true)) as Version;\n const firstParent = versionObj.parents[0];\n const parentObj = firstParent\n ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n ((await workspace.scope.getBitObjectVersion(modelComp!, firstParent.toString(), true)) as Version)\n : null;\n const compDir = workspace.componentDir(componentId, { ignoreVersion: true });\n const results: FileHashDiffFromParent[] = compact(\n versionObj.files.map((file) => {\n const parentFile = parentObj?.files.find((f) => f.relativePath === file.relativePath);\n if (parentFile?.file.isEqual(file.file)) return null;\n return {\n filePath: path.join(compDir, file.relativePath),\n hash: file.file.toString(),\n parentHash: parentFile?.file.toString(),\n };\n })\n );\n const filesOnParentOnly = (parentObj?.files || []).filter(\n (parentFile) => !versionObj.files.find((file) => file.relativePath === parentFile.relativePath)\n );\n if (filesOnParentOnly.length) {\n results.push(\n ...filesOnParentOnly.map((file) => ({\n filePath: file.relativePath,\n hash: undefined,\n parentHash: file.file.toString(),\n }))\n );\n }\n\n return results;\n }\n\n async getFileHistoryHashes(filePath: string): Promise<FileLog[]> {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.getComponentIdByPath(filePath);\n if (!componentId) {\n // filePath could be from the component dir but the file is not part of the bit-component (such as component.json)\n return [];\n }\n\n const rootDir = workspace.componentDir(componentId, undefined);\n\n const logs = await this.getLogs(componentId.toString());\n\n const filePathAsLinux = pathNormalizeToLinux(filePath);\n const filePathRelativeInComponent = filePathAsLinux.replace(`${rootDir}/`, '');\n\n const modelComp = await workspace.scope.getBitObjectModelComponent(componentId);\n if (!modelComp) return []; // probably a new component\n const results: FileLog[] = [];\n await pMap(\n logs,\n async (logItem) => {\n const versionObj = await workspace.scope.getBitObjectVersion(modelComp, logItem.hash, true);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const fileInComp = versionObj!.files.find((f) => f.relativePath === filePathRelativeInComponent);\n if (!fileInComp) return;\n const fileHash = fileInComp.file.toString();\n const getFileHashFromParent = async (parent: Ref) => {\n const parentObj = parent\n ? await workspace.scope.getBitObjectVersion(modelComp, parent.toString(), true)\n : undefined;\n\n const parentFileInComp = parentObj\n ? parentObj.files.find((f) => f.relativePath === filePathRelativeInComponent)\n : undefined;\n\n return parentFileInComp?.file.toString();\n };\n const fileHashesFromParent = versionObj ? await Promise.all(versionObj.parents.map(getFileHashFromParent)) : [];\n\n const getParentFileHash = () => {\n if (fileHashesFromParent.length === 0) return undefined;\n if (fileHashesFromParent.length === 1) return fileHashesFromParent[0];\n // if one parent has it, it means that this merge-snap didn't change the file.\n if (fileHashesFromParent.includes(fileHash)) return fileHash;\n return fileHashesFromParent[0];\n };\n\n results.push({\n hash: logItem.hash,\n tag: logItem.tag,\n username: logItem.username,\n email: logItem.email,\n date: logItem.date || '<N/A>',\n message: logItem.message,\n fileHash,\n parentFileHash: getParentFileHash(),\n });\n },\n { concurrency: 100 }\n );\n\n // remove entries that their fileHash is the same as their parent.\n return results.filter((r) => r.fileHash !== r.parentFileHash);\n }\n\n async getFileLog(filePath: string) {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.getComponentIdByPath(filePath);\n if (!componentId) throw new Error(`unable to find component for file ${filePath}`);\n\n const rootDir = workspace.componentDir(componentId, undefined, { relative: true });\n\n const logs = await this.getLogs(componentId.toString());\n\n const filePathAsLinux = pathNormalizeToLinux(filePath);\n const filePathRelativeInComponent = filePathAsLinux.replace(`${rootDir}/`, '');\n\n const results: FileLog[] = [];\n let lastFile;\n await pMapSeries(logs, async (logItem) => {\n const component = await workspace.get(componentId.changeVersion(logItem.tag || logItem.hash));\n const fileInComp = component.filesystem.files.find((f) => f.relative === filePathRelativeInComponent);\n const lastResult = results[results.length - 1];\n const lastHash = lastResult?.fileHash;\n let fileHash: string;\n if (!fileInComp) {\n if (!lastHash) return;\n fileHash = '<REMOVED>';\n } else {\n fileHash = fileInComp.toSourceAsLinuxEOL().hash().toString();\n }\n if (fileHash === lastHash) return;\n\n let diff;\n if (lastFile && fileInComp) {\n diff = await getFilesDiff([lastFile], [fileInComp], logItem.hash, lastResult.hash, undefined);\n }\n\n lastFile = fileInComp;\n\n results.push({\n hash: logItem.hash,\n tag: logItem.tag,\n username: logItem.username,\n email: logItem.email,\n date: logItem.date || '<N/A>',\n message: logItem.message,\n fileDiff: diff?.length ? diff[0].diffOutput : undefined,\n fileHash,\n });\n });\n return results;\n }\n\n private stringifyLogInfoOneLine(logInfo: ComponentLogInfo) {\n const parents = logInfo.parents.length ? `Parent(s): ${logInfo.parents.join(', ')}` : '<N/A>';\n return `${chalk.yellow(logInfo.hash)} ${logInfo.username || ''} ${logInfo.date || ''} ${\n logInfo.message\n }, ${parents}`;\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace]: [CLIMain, Workspace]) {\n const componentLog = new ComponentLogMain(workspace);\n cli.register(new LogCmd(componentLog), new LogFileCmd(componentLog));\n return componentLog;\n }\n}\n\nComponentLogAspect.addRuntime(ComponentLogMain);\n\nexport type ComponentLogInfo = {\n hash: string;\n message: string;\n onLane?: boolean;\n parents: string[];\n username?: string;\n email?: string;\n date?: string;\n tag?: string;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_componentId","_path","_interopRequireDefault","_moment","_pMap","_workspace","_lodash","_pMapSeries","_path2","_componentsDiff","_chalk","_getRemoteByName","_componentLog","_logCmd","_snapGraph","_logFileCmd","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ComponentLogMain","constructor","workspace","getLogs","id","isRemote","shortHash","shortMessage","consumer","bitId","ComponentID","fromString","remote","getRemoteByName","scope","log","OutsideWorkspaceError","componentId","resolveComponentId","logs","forEach","date","moment","Date","parseInt","format","undefined","message","split","getLogsWithParents","fullHash","fullMessage","graph","buildSnapGraph","sorted","toposort","map","node","stringifyLogInfoOneLine","attr","getChangedFilesFromParent","modelComp","getBitObjectModelComponent","versionObj","getBitObjectVersion","version","firstParent","parents","parentObj","toString","compDir","componentDir","ignoreVersion","results","compact","files","file","parentFile","find","f","relativePath","isEqual","filePath","path","join","hash","parentHash","filesOnParentOnly","filter","length","push","getFileHistoryHashes","getComponentIdByPath","rootDir","filePathAsLinux","pathNormalizeToLinux","filePathRelativeInComponent","replace","pMap","logItem","fileInComp","fileHash","getFileHashFromParent","parent","parentFileInComp","fileHashesFromParent","Promise","all","getParentFileHash","includes","tag","username","email","parentFileHash","concurrency","getFileLog","Error","relative","lastFile","pMapSeries","component","get","changeVersion","filesystem","lastResult","lastHash","toSourceAsLinuxEOL","diff","getFilesDiff","fileDiff","diffOutput","logInfo","chalk","yellow","provider","cli","componentLog","register","LogCmd","LogFileCmd","exports","CLIAspect","WorkspaceAspect","MainRuntime","ComponentLogAspect","addRuntime"],"sources":["component-log.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ComponentID } from '@teambit/component-id';\nimport { LegacyComponentLog as ComponentLog } from '@teambit/legacy-component-log';\nimport path from 'path';\nimport moment from 'moment';\nimport pMap from 'p-map';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { compact } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport { Version } from '@teambit/legacy/dist/scope/models';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils/path';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { getFilesDiff } from '@teambit/legacy/dist/consumer/component-ops/components-diff';\nimport chalk from 'chalk';\nimport getRemoteByName from '@teambit/legacy/dist/remotes/get-remote-by-name';\nimport { ComponentLogAspect } from './component-log.aspect';\nimport LogCmd from './log-cmd';\nimport { buildSnapGraph } from './snap-graph';\nimport { LogFileCmd } from './log-file-cmd';\n\nexport type FileLog = {\n hash: string;\n tag?: string;\n username?: string;\n email?: string;\n date: string;\n message: string;\n fileHash: string;\n parentFileHash?: string;\n fileDiff?: string;\n};\n\nexport type FileHashDiffFromParent = {\n filePath: string; // path OS absolute\n hash?: string; // if undefined, the file was deleted in this snap\n parentHash?: string; // if undefined, the file was added in this snap\n};\n\nexport class ComponentLogMain {\n constructor(private workspace: Workspace | undefined) {}\n\n /**\n * get component log sorted by the timestamp in ascending order (from the earliest to the latest)\n */\n async getLogs(id: string, isRemote?: boolean, shortHash = false, shortMessage = false): Promise<ComponentLog[]> {\n if (isRemote) {\n const consumer = this.workspace?.consumer;\n const bitId = ComponentID.fromString(id);\n const remote = await getRemoteByName(bitId.scope as string, consumer);\n return remote.log(bitId);\n }\n if (!this.workspace) throw new OutsideWorkspaceError();\n const componentId = await this.workspace.resolveComponentId(id);\n const logs = await this.workspace.scope.getLogs(componentId, shortHash);\n logs.forEach((log) => {\n log.date = log.date ? moment(new Date(parseInt(log.date))).format('YYYY-MM-DD HH:mm:ss') : undefined;\n log.message = shortMessage ? log.message.split('\\n')[0] : log.message;\n });\n return logs;\n }\n\n async getLogsWithParents(id: string, fullHash = false, fullMessage = false) {\n const logs = await this.getLogs(id, false, !fullHash, !fullMessage);\n const graph = buildSnapGraph(logs);\n const sorted = graph.toposort();\n return sorted.map((node) => this.stringifyLogInfoOneLine(node.attr));\n }\n\n async getChangedFilesFromParent(id: string): Promise<FileHashDiffFromParent[]> {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.resolveComponentId(id);\n const modelComp = await workspace.scope.getBitObjectModelComponent(componentId, true);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const versionObj = (await workspace.scope.getBitObjectVersion(modelComp!, componentId.version!, true)) as Version;\n const firstParent = versionObj.parents[0];\n const parentObj = firstParent\n ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n ((await workspace.scope.getBitObjectVersion(modelComp!, firstParent.toString(), true)) as Version)\n : null;\n const compDir = workspace.componentDir(componentId, { ignoreVersion: true });\n const results: FileHashDiffFromParent[] = compact(\n versionObj.files.map((file) => {\n const parentFile = parentObj?.files.find((f) => f.relativePath === file.relativePath);\n if (parentFile?.file.isEqual(file.file)) return null;\n return {\n filePath: path.join(compDir, file.relativePath),\n hash: file.file.toString(),\n parentHash: parentFile?.file.toString(),\n };\n })\n );\n const filesOnParentOnly = (parentObj?.files || []).filter(\n (parentFile) => !versionObj.files.find((file) => file.relativePath === parentFile.relativePath)\n );\n if (filesOnParentOnly.length) {\n results.push(\n ...filesOnParentOnly.map((file) => ({\n filePath: file.relativePath,\n hash: undefined,\n parentHash: file.file.toString(),\n }))\n );\n }\n\n return results;\n }\n\n async getFileHistoryHashes(filePath: string): Promise<FileLog[]> {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.getComponentIdByPath(filePath);\n if (!componentId) {\n // filePath could be from the component dir but the file is not part of the bit-component (such as component.json)\n return [];\n }\n\n const rootDir = workspace.componentDir(componentId, undefined);\n\n const logs = await this.getLogs(componentId.toString());\n\n const filePathAsLinux = pathNormalizeToLinux(filePath);\n const filePathRelativeInComponent = filePathAsLinux.replace(`${rootDir}/`, '');\n\n const modelComp = await workspace.scope.getBitObjectModelComponent(componentId);\n if (!modelComp) return []; // probably a new component\n const results: FileLog[] = [];\n await pMap(\n logs,\n async (logItem) => {\n const versionObj = await workspace.scope.getBitObjectVersion(modelComp, logItem.hash, true);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const fileInComp = versionObj!.files.find((f) => f.relativePath === filePathRelativeInComponent);\n if (!fileInComp) return;\n const fileHash = fileInComp.file.toString();\n const getFileHashFromParent = async (parent: Ref) => {\n const parentObj = parent\n ? await workspace.scope.getBitObjectVersion(modelComp, parent.toString(), true)\n : undefined;\n\n const parentFileInComp = parentObj\n ? parentObj.files.find((f) => f.relativePath === filePathRelativeInComponent)\n : undefined;\n\n return parentFileInComp?.file.toString();\n };\n const fileHashesFromParent = versionObj ? await Promise.all(versionObj.parents.map(getFileHashFromParent)) : [];\n\n const getParentFileHash = () => {\n if (fileHashesFromParent.length === 0) return undefined;\n if (fileHashesFromParent.length === 1) return fileHashesFromParent[0];\n // if one parent has it, it means that this merge-snap didn't change the file.\n if (fileHashesFromParent.includes(fileHash)) return fileHash;\n return fileHashesFromParent[0];\n };\n\n results.push({\n hash: logItem.hash,\n tag: logItem.tag,\n username: logItem.username,\n email: logItem.email,\n date: logItem.date || '<N/A>',\n message: logItem.message,\n fileHash,\n parentFileHash: getParentFileHash(),\n });\n },\n { concurrency: 100 }\n );\n\n // remove entries that their fileHash is the same as their parent.\n return results.filter((r) => r.fileHash !== r.parentFileHash);\n }\n\n async getFileLog(filePath: string) {\n const workspace = this.workspace;\n if (!workspace) throw new OutsideWorkspaceError();\n const componentId = await workspace.getComponentIdByPath(filePath);\n if (!componentId) throw new Error(`unable to find component for file ${filePath}`);\n\n const rootDir = workspace.componentDir(componentId, undefined, { relative: true });\n\n const logs = await this.getLogs(componentId.toString());\n\n const filePathAsLinux = pathNormalizeToLinux(filePath);\n const filePathRelativeInComponent = filePathAsLinux.replace(`${rootDir}/`, '');\n\n const results: FileLog[] = [];\n let lastFile;\n await pMapSeries(logs, async (logItem) => {\n const component = await workspace.get(componentId.changeVersion(logItem.tag || logItem.hash));\n const fileInComp = component.filesystem.files.find((f) => f.relative === filePathRelativeInComponent);\n const lastResult = results[results.length - 1];\n const lastHash = lastResult?.fileHash;\n let fileHash: string;\n if (!fileInComp) {\n if (!lastHash) return;\n fileHash = '<REMOVED>';\n } else {\n fileHash = fileInComp.toSourceAsLinuxEOL().hash().toString();\n }\n if (fileHash === lastHash) return;\n\n let diff;\n if (lastFile && fileInComp) {\n diff = await getFilesDiff([lastFile], [fileInComp], logItem.hash, lastResult.hash, undefined);\n }\n\n lastFile = fileInComp;\n\n results.push({\n hash: logItem.hash,\n tag: logItem.tag,\n username: logItem.username,\n email: logItem.email,\n date: logItem.date || '<N/A>',\n message: logItem.message,\n fileDiff: diff?.length ? diff[0].diffOutput : undefined,\n fileHash,\n });\n });\n return results;\n }\n\n private stringifyLogInfoOneLine(logInfo: ComponentLogInfo) {\n const parents = logInfo.parents.length ? `Parent(s): ${logInfo.parents.join(', ')}` : '<N/A>';\n return `${chalk.yellow(logInfo.hash)} ${logInfo.username || ''} ${logInfo.date || ''} ${\n logInfo.message\n }, ${parents}`;\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace]: [CLIMain, Workspace]) {\n const componentLog = new ComponentLogMain(workspace);\n cli.register(new LogCmd(componentLog), new LogFileCmd(componentLog));\n return componentLog;\n }\n}\n\nComponentLogAspect.addRuntime(ComponentLogMain);\n\nexport type ComponentLogInfo = {\n hash: string;\n message: string;\n onLane?: boolean;\n parents: string[];\n username?: string;\n email?: string;\n date?: string;\n tag?: string;\n};\n"],"mappings":"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","ignoreList":[]}
package/dist/log-cmd.js CHANGED
@@ -20,8 +20,8 @@ function _cliTable() {
20
20
  };
21
21
  return data;
22
22
  }
23
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
25
25
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
26
26
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
27
27
  class LogCmd {
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","LogCmd","constructor","componentLog","name","description","report","id","remote","parents","oneLine","fullHash","fullMessage","logs","getLogsWithParents","join","getLogs","logOneLine","reverse","map","paintLog","json","exports","paintAuthor","email","username","c","white","log","message","date","tag","hash","deleted","deprecated","deletedStr","red","deprecatedStr","yellow","title","getEmptyTableWithoutStyle","Table","chars","top","bottom","left","mid","right","middle","style","table","push","toString"],"sources":["log-cmd.ts"],"sourcesContent":["import c from 'chalk';\nimport Table from 'cli-table';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { LegacyComponentLog } from '@teambit/legacy-component-log';\nimport { ComponentLogMain } from './component-log.main.runtime';\n\nexport default class LogCmd implements Command {\n name = 'log <id>';\n description = 'show components(s) version history';\n helpUrl = 'reference/components/navigating-history';\n extendedDescription: string;\n group = 'info';\n alias = '';\n options = [\n ['r', 'remote', 'show log of a remote component'],\n ['', 'parents', 'show parents and lanes data'],\n ['o', 'one-line', 'show each log entry in one line'],\n ['f', 'full-hash', 'show full hash of the snap (default to the first 9 characters for --one-line/--parents flags)'],\n ['m', 'full-message', 'show full message of the snap (default to the first line for --one-line/--parents flags)'],\n ['j', 'json', 'json format'],\n ] as CommandOptions;\n remoteOp = true; // should support log against remote\n skipWorkspace = true;\n arguments = [{ name: 'id', description: 'component-id or component-name' }];\n\n constructor(private componentLog: ComponentLogMain) {}\n\n async report(\n [id]: [string],\n {\n remote = false,\n parents = false,\n oneLine = false,\n fullHash = false,\n fullMessage,\n }: { remote: boolean; parents: boolean; oneLine?: boolean; fullHash?: boolean; fullMessage?: boolean }\n ) {\n if (!parents && !oneLine) {\n fullHash = true;\n fullMessage = true;\n }\n if (parents) {\n const logs = await this.componentLog.getLogsWithParents(id, fullHash, fullMessage);\n return logs.join('\\n');\n }\n const logs = await this.componentLog.getLogs(id, remote, !fullHash, !fullMessage);\n if (oneLine) {\n return logOneLine(logs.reverse());\n }\n // reverse to show from the latest to earliest\n return logs.reverse().map(paintLog).join('\\n');\n }\n\n async json([id]: [string], { remote = false, parents = false }: { remote: boolean; parents: boolean }) {\n if (parents) {\n return this.componentLog.getLogsWithParents(id);\n }\n return this.componentLog.getLogs(id, remote);\n }\n}\n\nexport function paintAuthor(email: string | null | undefined, username: string | null | undefined) {\n if (email && username) {\n return c.white(`author: ${username} <${email}>\\n`);\n }\n if (email && !username) {\n return c.white(`author: <${email}>\\n`);\n }\n if (!email && username) {\n return c.white(`author: ${username}\\n`);\n }\n\n return '';\n}\n\nfunction paintLog(log: LegacyComponentLog): string {\n const { message, date, tag, hash, username, email, deleted, deprecated } = log;\n const deletedStr = deleted ? c.red(' [deleted]') : '';\n const deprecatedStr = !deleted && deprecated ? c.yellow(' [deprecated]') : '';\n const title = tag ? `tag ${tag} (${hash})${deletedStr}${deprecatedStr}\\n` : `snap ${hash}\\n`;\n return (\n c.yellow(title) +\n paintAuthor(email, username) +\n (date ? c.white(`date: ${date}\\n`) : '') +\n (message ? c.white(`\\n ${message}\\n`) : '')\n );\n}\n\n/**\n * table with no style and no borders, just to align the columns.\n */\nexport function getEmptyTableWithoutStyle() {\n return new Table({\n chars: {\n top: '',\n 'top-mid': '',\n 'top-left': '',\n 'top-right': '',\n bottom: '',\n 'bottom-mid': '',\n 'bottom-left': '',\n 'bottom-right': '',\n left: '',\n 'left-mid': '',\n mid: '',\n 'mid-mid': '',\n right: '',\n 'right-mid': '',\n middle: ' ',\n },\n style: { 'padding-left': 0, 'padding-right': 0 },\n });\n}\n\nfunction logOneLine(logs: LegacyComponentLog[]) {\n const table = getEmptyTableWithoutStyle();\n\n logs.map(({ hash, tag, username, date, message }) =>\n table.push([hash, tag || '', username || '', date || '', message || ''])\n );\n\n return table.toString();\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LogCmd","constructor","componentLog","name","description","report","id","remote","parents","oneLine","fullHash","fullMessage","logs","getLogsWithParents","join","getLogs","logOneLine","reverse","map","paintLog","json","exports","paintAuthor","email","username","c","white","log","message","date","tag","hash","deleted","deprecated","deletedStr","red","deprecatedStr","yellow","title","getEmptyTableWithoutStyle","Table","chars","top","bottom","left","mid","right","middle","style","table","push","toString"],"sources":["log-cmd.ts"],"sourcesContent":["import c from 'chalk';\nimport Table from 'cli-table';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { LegacyComponentLog } from '@teambit/legacy-component-log';\nimport { ComponentLogMain } from './component-log.main.runtime';\n\nexport default class LogCmd implements Command {\n name = 'log <id>';\n description = 'show components(s) version history';\n helpUrl = 'reference/components/navigating-history';\n extendedDescription: string;\n group = 'info';\n alias = '';\n options = [\n ['r', 'remote', 'show log of a remote component'],\n ['', 'parents', 'show parents and lanes data'],\n ['o', 'one-line', 'show each log entry in one line'],\n ['f', 'full-hash', 'show full hash of the snap (default to the first 9 characters for --one-line/--parents flags)'],\n ['m', 'full-message', 'show full message of the snap (default to the first line for --one-line/--parents flags)'],\n ['j', 'json', 'json format'],\n ] as CommandOptions;\n remoteOp = true; // should support log against remote\n skipWorkspace = true;\n arguments = [{ name: 'id', description: 'component-id or component-name' }];\n\n constructor(private componentLog: ComponentLogMain) {}\n\n async report(\n [id]: [string],\n {\n remote = false,\n parents = false,\n oneLine = false,\n fullHash = false,\n fullMessage,\n }: { remote: boolean; parents: boolean; oneLine?: boolean; fullHash?: boolean; fullMessage?: boolean }\n ) {\n if (!parents && !oneLine) {\n fullHash = true;\n fullMessage = true;\n }\n if (parents) {\n const logs = await this.componentLog.getLogsWithParents(id, fullHash, fullMessage);\n return logs.join('\\n');\n }\n const logs = await this.componentLog.getLogs(id, remote, !fullHash, !fullMessage);\n if (oneLine) {\n return logOneLine(logs.reverse());\n }\n // reverse to show from the latest to earliest\n return logs.reverse().map(paintLog).join('\\n');\n }\n\n async json([id]: [string], { remote = false, parents = false }: { remote: boolean; parents: boolean }) {\n if (parents) {\n return this.componentLog.getLogsWithParents(id);\n }\n return this.componentLog.getLogs(id, remote);\n }\n}\n\nexport function paintAuthor(email: string | null | undefined, username: string | null | undefined) {\n if (email && username) {\n return c.white(`author: ${username} <${email}>\\n`);\n }\n if (email && !username) {\n return c.white(`author: <${email}>\\n`);\n }\n if (!email && username) {\n return c.white(`author: ${username}\\n`);\n }\n\n return '';\n}\n\nfunction paintLog(log: LegacyComponentLog): string {\n const { message, date, tag, hash, username, email, deleted, deprecated } = log;\n const deletedStr = deleted ? c.red(' [deleted]') : '';\n const deprecatedStr = !deleted && deprecated ? c.yellow(' [deprecated]') : '';\n const title = tag ? `tag ${tag} (${hash})${deletedStr}${deprecatedStr}\\n` : `snap ${hash}\\n`;\n return (\n c.yellow(title) +\n paintAuthor(email, username) +\n (date ? c.white(`date: ${date}\\n`) : '') +\n (message ? c.white(`\\n ${message}\\n`) : '')\n );\n}\n\n/**\n * table with no style and no borders, just to align the columns.\n */\nexport function getEmptyTableWithoutStyle() {\n return new Table({\n chars: {\n top: '',\n 'top-mid': '',\n 'top-left': '',\n 'top-right': '',\n bottom: '',\n 'bottom-mid': '',\n 'bottom-left': '',\n 'bottom-right': '',\n left: '',\n 'left-mid': '',\n mid: '',\n 'mid-mid': '',\n right: '',\n 'right-mid': '',\n middle: ' ',\n },\n style: { 'padding-left': 0, 'padding-right': 0 },\n });\n}\n\nfunction logOneLine(logs: LegacyComponentLog[]) {\n const table = getEmptyTableWithoutStyle();\n\n logs.map(({ hash, tag, username, date, message }) =>\n table.push([hash, tag || '', username || '', date || '', message || ''])\n );\n\n return table.toString();\n}\n"],"mappings":"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","ignoreList":[]}
@@ -18,8 +18,8 @@ function _logCmd() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
23
23
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
24
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
25
25
  class LogFileCmd {
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_logCmd","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","LogFileCmd","constructor","componentLog","name","description","report","filePath","oneLine","results","getFileLog","table","getEmptyTableWithoutStyle","forEach","hash","tag","username","date","message","fileHash","push","toString","output","map","email","fileDiff","title","author","paintAuthor","body","chalk","green","split","line","join","yellow","white","exports"],"sources":["log-file-cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { ComponentLogMain } from './component-log.main.runtime';\nimport { getEmptyTableWithoutStyle, paintAuthor } from './log-cmd';\n\nexport class LogFileCmd implements Command {\n name = 'log-file <filepath>';\n description = 'EXPERIMENTAL. show file history';\n group = 'info';\n alias = '';\n options = [['o', 'one-line', 'show each log entry in one line']] as CommandOptions;\n arguments = [{ name: 'filepath', description: 'file path relative to the workspace' }];\n\n constructor(private componentLog: ComponentLogMain) {}\n\n async report([filePath]: [string], { oneLine = false }: { oneLine?: boolean }) {\n const results = await this.componentLog.getFileLog(filePath);\n if (oneLine) {\n const table = getEmptyTableWithoutStyle();\n results.forEach(({ hash, tag, username, date, message, fileHash }) => {\n table.push([hash, tag || '', username || '', date, message, fileHash]);\n });\n return table.toString();\n }\n const output = results.map(({ hash, tag, username, email, date, message, fileDiff }) => {\n const title = tag ? `tag ${tag} (${hash})\\n` : `snap ${hash}\\n`;\n const author = paintAuthor(email, username);\n const body = (fileDiff || chalk.green('<FILE-ADDED>'))\n .split('\\n')\n .map((line) => ` ${line}`)\n .join('\\n');\n return (\n chalk.yellow(title) +\n author +\n (date ? chalk.white(`date: ${date}\\n`) : '') +\n (message ? chalk.white(`message: ${message}\\n\\n`) : '\\n') +\n body\n );\n });\n return output.join('\\n');\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_logCmd","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LogFileCmd","constructor","componentLog","name","description","report","filePath","oneLine","results","getFileLog","table","getEmptyTableWithoutStyle","forEach","hash","tag","username","date","message","fileHash","push","toString","output","map","email","fileDiff","title","author","paintAuthor","body","chalk","green","split","line","join","yellow","white","exports"],"sources":["log-file-cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { ComponentLogMain } from './component-log.main.runtime';\nimport { getEmptyTableWithoutStyle, paintAuthor } from './log-cmd';\n\nexport class LogFileCmd implements Command {\n name = 'log-file <filepath>';\n description = 'EXPERIMENTAL. show file history';\n group = 'info';\n alias = '';\n options = [['o', 'one-line', 'show each log entry in one line']] as CommandOptions;\n arguments = [{ name: 'filepath', description: 'file path relative to the workspace' }];\n\n constructor(private componentLog: ComponentLogMain) {}\n\n async report([filePath]: [string], { oneLine = false }: { oneLine?: boolean }) {\n const results = await this.componentLog.getFileLog(filePath);\n if (oneLine) {\n const table = getEmptyTableWithoutStyle();\n results.forEach(({ hash, tag, username, date, message, fileHash }) => {\n table.push([hash, tag || '', username || '', date, message, fileHash]);\n });\n return table.toString();\n }\n const output = results.map(({ hash, tag, username, email, date, message, fileDiff }) => {\n const title = tag ? `tag ${tag} (${hash})\\n` : `snap ${hash}\\n`;\n const author = paintAuthor(email, username);\n const body = (fileDiff || chalk.green('<FILE-ADDED>'))\n .split('\\n')\n .map((line) => ` ${line}`)\n .join('\\n');\n return (\n chalk.yellow(title) +\n author +\n (date ? chalk.white(`date: ${date}\\n`) : '') +\n (message ? chalk.white(`message: ${message}\\n\\n`) : '\\n') +\n body\n );\n });\n return output.join('\\n');\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_component-log@1.0.281/dist/component-log.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_component-log@1.0.281/dist/component-log.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_component-log@1.0.283/dist/component-log.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.component_component-log@1.0.283/dist/component-log.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/component-log",
3
- "version": "1.0.281",
3
+ "version": "1.0.283",
4
4
  "homepage": "https://bit.cloud/teambit/component/component-log",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "component-log",
9
- "version": "1.0.281"
9
+ "version": "1.0.283"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -20,7 +20,7 @@
20
20
  "@teambit/graph.cleargraph": "0.0.8",
21
21
  "@teambit/cli": "0.0.865",
22
22
  "@teambit/legacy-component-log": "0.0.403",
23
- "@teambit/workspace": "1.0.281"
23
+ "@teambit/workspace": "1.0.283"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@types/lodash": "4.14.165",