@teambit/importer 1.0.177 → 1.0.179
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.
- package/artifacts/__bit_junit.xml +1 -1
- package/artifacts/preview/teambit_scope_importer-preview.js +1 -1
- package/artifacts/schema.json +66 -66
- package/dist/dependents-getter.js +1 -1
- package/dist/dependents-getter.js.map +1 -1
- package/dist/import-components.js +3 -1
- package/dist/import-components.js.map +1 -1
- package/dist/{preview-1709176695075.js → preview-1709349444701.js} +2 -2
- package/package.json +14 -14
|
@@ -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.scope/importer@1.0.
|
|
3
|
+
<testsuite name="teambit.scope/importer@1.0.179" 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.scope/importer-preview"]=t():e["teambit.scope/importer-preview"]=t()}(self,(()=>(()=>{"use strict";var e={
|
|
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.scope/importer-preview"]=t():e["teambit.scope/importer-preview"]=t()}(self,(()=>(()=>{"use strict";var e={37706:(e,t,o)=>{var r={id:"teambit.scope/importer@1.0.179",homepage:"https://bit.cloud/teambit/scope/importer",exported:!0};function n(){const e=i(o(41594));return n=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,n.__bit_component=r,i.__bit_component=r;const p=()=>n().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},n().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/import.svg"}));p.__bit_component=r,t.Logo=p},41594:e=>{e.exports=React}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},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 r={};return(()=>{o.r(r),o.d(r,{compositions:()=>u,compositions_metadata:()=>l,overview:()=>f});var e={};o.r(e),o.d(e,{default:()=>d});var t=o(37706);o(41594);const n=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 r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},c.apply(this,arguments)}var s={},a="wrapper";function d(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,p);return(0,n.mdx)(a,c({},s,o,{components:t,mdxType:"MDXLayout"}),(0,n.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}d.isMDXComponent=!0;const u=[t],f=[e],l={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
|
package/artifacts/schema.json
CHANGED
|
@@ -3389,7 +3389,7 @@
|
|
|
3389
3389
|
"__schema": "FunctionLikeSchema",
|
|
3390
3390
|
"location": {
|
|
3391
3391
|
"filePath": "import-components.ts",
|
|
3392
|
-
"line":
|
|
3392
|
+
"line": 530,
|
|
3393
3393
|
"character": 3
|
|
3394
3394
|
},
|
|
3395
3395
|
"signature": "(method) ImportComponents._getCurrentVersions(ids: ComponentIdList): Promise<ImportedVersions>",
|
|
@@ -3399,7 +3399,7 @@
|
|
|
3399
3399
|
"__schema": "ParameterSchema",
|
|
3400
3400
|
"location": {
|
|
3401
3401
|
"filePath": "import-components.ts",
|
|
3402
|
-
"line":
|
|
3402
|
+
"line": 530,
|
|
3403
3403
|
"character": 29
|
|
3404
3404
|
},
|
|
3405
3405
|
"name": "ids",
|
|
@@ -3407,7 +3407,7 @@
|
|
|
3407
3407
|
"__schema": "TypeRefSchema",
|
|
3408
3408
|
"location": {
|
|
3409
3409
|
"filePath": "import-components.ts",
|
|
3410
|
-
"line":
|
|
3410
|
+
"line": 530,
|
|
3411
3411
|
"character": 34
|
|
3412
3412
|
},
|
|
3413
3413
|
"name": "ComponentIdList"
|
|
@@ -3420,7 +3420,7 @@
|
|
|
3420
3420
|
"__schema": "TypeRefSchema",
|
|
3421
3421
|
"location": {
|
|
3422
3422
|
"filePath": "import-components.ts",
|
|
3423
|
-
"line":
|
|
3423
|
+
"line": 530,
|
|
3424
3424
|
"character": 52
|
|
3425
3425
|
},
|
|
3426
3426
|
"name": "Promise",
|
|
@@ -3429,7 +3429,7 @@
|
|
|
3429
3429
|
"__schema": "TypeRefSchema",
|
|
3430
3430
|
"location": {
|
|
3431
3431
|
"filePath": "import-components.ts",
|
|
3432
|
-
"line":
|
|
3432
|
+
"line": 530,
|
|
3433
3433
|
"character": 60
|
|
3434
3434
|
},
|
|
3435
3435
|
"name": "ImportedVersions"
|
|
@@ -3444,14 +3444,14 @@
|
|
|
3444
3444
|
"__schema": "FunctionLikeSchema",
|
|
3445
3445
|
"location": {
|
|
3446
3446
|
"filePath": "import-components.ts",
|
|
3447
|
-
"line":
|
|
3447
|
+
"line": 544,
|
|
3448
3448
|
"character": 3
|
|
3449
3449
|
},
|
|
3450
3450
|
"doc": {
|
|
3451
3451
|
"__schema": "DocSchema",
|
|
3452
3452
|
"location": {
|
|
3453
3453
|
"filePath": "import-components.ts",
|
|
3454
|
-
"line":
|
|
3454
|
+
"line": 541,
|
|
3455
3455
|
"character": 3
|
|
3456
3456
|
},
|
|
3457
3457
|
"raw": "/**\n * get import details, includes the diff between the versions array before import and after import\n */",
|
|
@@ -3464,7 +3464,7 @@
|
|
|
3464
3464
|
"__schema": "ParameterSchema",
|
|
3465
3465
|
"location": {
|
|
3466
3466
|
"filePath": "import-components.ts",
|
|
3467
|
-
"line":
|
|
3467
|
+
"line": 545,
|
|
3468
3468
|
"character": 5
|
|
3469
3469
|
},
|
|
3470
3470
|
"name": "currentVersions",
|
|
@@ -3472,7 +3472,7 @@
|
|
|
3472
3472
|
"__schema": "TypeRefSchema",
|
|
3473
3473
|
"location": {
|
|
3474
3474
|
"filePath": "import-components.ts",
|
|
3475
|
-
"line":
|
|
3475
|
+
"line": 545,
|
|
3476
3476
|
"character": 22
|
|
3477
3477
|
},
|
|
3478
3478
|
"name": "ImportedVersions"
|
|
@@ -3484,7 +3484,7 @@
|
|
|
3484
3484
|
"__schema": "ParameterSchema",
|
|
3485
3485
|
"location": {
|
|
3486
3486
|
"filePath": "import-components.ts",
|
|
3487
|
-
"line":
|
|
3487
|
+
"line": 546,
|
|
3488
3488
|
"character": 5
|
|
3489
3489
|
},
|
|
3490
3490
|
"name": "components",
|
|
@@ -3492,14 +3492,14 @@
|
|
|
3492
3492
|
"__schema": "TypeArraySchema",
|
|
3493
3493
|
"location": {
|
|
3494
3494
|
"filePath": "import-components.ts",
|
|
3495
|
-
"line":
|
|
3495
|
+
"line": 546,
|
|
3496
3496
|
"character": 17
|
|
3497
3497
|
},
|
|
3498
3498
|
"type": {
|
|
3499
3499
|
"__schema": "TypeRefSchema",
|
|
3500
3500
|
"location": {
|
|
3501
3501
|
"filePath": "import-components.ts",
|
|
3502
|
-
"line":
|
|
3502
|
+
"line": 546,
|
|
3503
3503
|
"character": 17
|
|
3504
3504
|
},
|
|
3505
3505
|
"name": "VersionDependencies"
|
|
@@ -3513,7 +3513,7 @@
|
|
|
3513
3513
|
"__schema": "TypeRefSchema",
|
|
3514
3514
|
"location": {
|
|
3515
3515
|
"filePath": "import-components.ts",
|
|
3516
|
-
"line":
|
|
3516
|
+
"line": 547,
|
|
3517
3517
|
"character": 6
|
|
3518
3518
|
},
|
|
3519
3519
|
"name": "Promise",
|
|
@@ -3522,14 +3522,14 @@
|
|
|
3522
3522
|
"__schema": "TypeArraySchema",
|
|
3523
3523
|
"location": {
|
|
3524
3524
|
"filePath": "import-components.ts",
|
|
3525
|
-
"line":
|
|
3525
|
+
"line": 547,
|
|
3526
3526
|
"character": 14
|
|
3527
3527
|
},
|
|
3528
3528
|
"type": {
|
|
3529
3529
|
"__schema": "TypeRefSchema",
|
|
3530
3530
|
"location": {
|
|
3531
3531
|
"filePath": "import-components.ts",
|
|
3532
|
-
"line":
|
|
3532
|
+
"line": 547,
|
|
3533
3533
|
"character": 14
|
|
3534
3534
|
},
|
|
3535
3535
|
"name": "ImportDetails"
|
|
@@ -3545,7 +3545,7 @@
|
|
|
3545
3545
|
"__schema": "FunctionLikeSchema",
|
|
3546
3546
|
"location": {
|
|
3547
3547
|
"filePath": "import-components.ts",
|
|
3548
|
-
"line":
|
|
3548
|
+
"line": 588,
|
|
3549
3549
|
"character": 3
|
|
3550
3550
|
},
|
|
3551
3551
|
"signature": "(method) ImportComponents._throwForPotentialIssues(ids: ComponentIdList): Promise<void>",
|
|
@@ -3555,7 +3555,7 @@
|
|
|
3555
3555
|
"__schema": "ParameterSchema",
|
|
3556
3556
|
"location": {
|
|
3557
3557
|
"filePath": "import-components.ts",
|
|
3558
|
-
"line":
|
|
3558
|
+
"line": 588,
|
|
3559
3559
|
"character": 34
|
|
3560
3560
|
},
|
|
3561
3561
|
"name": "ids",
|
|
@@ -3563,7 +3563,7 @@
|
|
|
3563
3563
|
"__schema": "TypeRefSchema",
|
|
3564
3564
|
"location": {
|
|
3565
3565
|
"filePath": "import-components.ts",
|
|
3566
|
-
"line":
|
|
3566
|
+
"line": 588,
|
|
3567
3567
|
"character": 39
|
|
3568
3568
|
},
|
|
3569
3569
|
"name": "ComponentIdList"
|
|
@@ -3576,7 +3576,7 @@
|
|
|
3576
3576
|
"__schema": "TypeRefSchema",
|
|
3577
3577
|
"location": {
|
|
3578
3578
|
"filePath": "import-components.ts",
|
|
3579
|
-
"line":
|
|
3579
|
+
"line": 588,
|
|
3580
3580
|
"character": 57
|
|
3581
3581
|
},
|
|
3582
3582
|
"name": "Promise",
|
|
@@ -3585,7 +3585,7 @@
|
|
|
3585
3585
|
"__schema": "KeywordTypeSchema",
|
|
3586
3586
|
"location": {
|
|
3587
3587
|
"filePath": "import-components.ts",
|
|
3588
|
-
"line":
|
|
3588
|
+
"line": 588,
|
|
3589
3589
|
"character": 65
|
|
3590
3590
|
},
|
|
3591
3591
|
"name": "void"
|
|
@@ -3600,7 +3600,7 @@
|
|
|
3600
3600
|
"__schema": "FunctionLikeSchema",
|
|
3601
3601
|
"location": {
|
|
3602
3602
|
"filePath": "import-components.ts",
|
|
3603
|
-
"line":
|
|
3603
|
+
"line": 593,
|
|
3604
3604
|
"character": 3
|
|
3605
3605
|
},
|
|
3606
3606
|
"signature": "(method) ImportComponents._throwForModifiedOrNewComponents(ids: ComponentIdList): Promise<void>",
|
|
@@ -3610,7 +3610,7 @@
|
|
|
3610
3610
|
"__schema": "ParameterSchema",
|
|
3611
3611
|
"location": {
|
|
3612
3612
|
"filePath": "import-components.ts",
|
|
3613
|
-
"line":
|
|
3613
|
+
"line": 593,
|
|
3614
3614
|
"character": 42
|
|
3615
3615
|
},
|
|
3616
3616
|
"name": "ids",
|
|
@@ -3618,7 +3618,7 @@
|
|
|
3618
3618
|
"__schema": "TypeRefSchema",
|
|
3619
3619
|
"location": {
|
|
3620
3620
|
"filePath": "import-components.ts",
|
|
3621
|
-
"line":
|
|
3621
|
+
"line": 593,
|
|
3622
3622
|
"character": 47
|
|
3623
3623
|
},
|
|
3624
3624
|
"name": "ComponentIdList"
|
|
@@ -3631,7 +3631,7 @@
|
|
|
3631
3631
|
"__schema": "TypeRefSchema",
|
|
3632
3632
|
"location": {
|
|
3633
3633
|
"filePath": "import-components.ts",
|
|
3634
|
-
"line":
|
|
3634
|
+
"line": 593,
|
|
3635
3635
|
"character": 65
|
|
3636
3636
|
},
|
|
3637
3637
|
"name": "Promise",
|
|
@@ -3640,7 +3640,7 @@
|
|
|
3640
3640
|
"__schema": "KeywordTypeSchema",
|
|
3641
3641
|
"location": {
|
|
3642
3642
|
"filePath": "import-components.ts",
|
|
3643
|
-
"line":
|
|
3643
|
+
"line": 593,
|
|
3644
3644
|
"character": 73
|
|
3645
3645
|
},
|
|
3646
3646
|
"name": "void"
|
|
@@ -3655,14 +3655,14 @@
|
|
|
3655
3655
|
"__schema": "FunctionLikeSchema",
|
|
3656
3656
|
"location": {
|
|
3657
3657
|
"filePath": "import-components.ts",
|
|
3658
|
-
"line":
|
|
3658
|
+
"line": 616,
|
|
3659
3659
|
"character": 3
|
|
3660
3660
|
},
|
|
3661
3661
|
"doc": {
|
|
3662
3662
|
"__schema": "DocSchema",
|
|
3663
3663
|
"location": {
|
|
3664
3664
|
"filePath": "import-components.ts",
|
|
3665
|
-
"line":
|
|
3665
|
+
"line": 611,
|
|
3666
3666
|
"character": 3
|
|
3667
3667
|
},
|
|
3668
3668
|
"raw": "/**\n * Model Component id() calculation uses id.toString() for the hash.\n * If an imported component has scopereadonly name equals to a local name, both will have the exact same\n * hash and they'll override each other.\n */",
|
|
@@ -3675,7 +3675,7 @@
|
|
|
3675
3675
|
"__schema": "ParameterSchema",
|
|
3676
3676
|
"location": {
|
|
3677
3677
|
"filePath": "import-components.ts",
|
|
3678
|
-
"line":
|
|
3678
|
+
"line": 616,
|
|
3679
3679
|
"character": 43
|
|
3680
3680
|
},
|
|
3681
3681
|
"name": "ids",
|
|
@@ -3683,7 +3683,7 @@
|
|
|
3683
3683
|
"__schema": "TypeRefSchema",
|
|
3684
3684
|
"location": {
|
|
3685
3685
|
"filePath": "import-components.ts",
|
|
3686
|
-
"line":
|
|
3686
|
+
"line": 616,
|
|
3687
3687
|
"character": 48
|
|
3688
3688
|
},
|
|
3689
3689
|
"name": "ComponentIdList"
|
|
@@ -3696,7 +3696,7 @@
|
|
|
3696
3696
|
"__schema": "KeywordTypeSchema",
|
|
3697
3697
|
"location": {
|
|
3698
3698
|
"filePath": "import-components.ts",
|
|
3699
|
-
"line":
|
|
3699
|
+
"line": 616,
|
|
3700
3700
|
"character": 66
|
|
3701
3701
|
},
|
|
3702
3702
|
"name": "void"
|
|
@@ -3707,7 +3707,7 @@
|
|
|
3707
3707
|
"__schema": "FunctionLikeSchema",
|
|
3708
3708
|
"location": {
|
|
3709
3709
|
"filePath": "import-components.ts",
|
|
3710
|
-
"line":
|
|
3710
|
+
"line": 627,
|
|
3711
3711
|
"character": 3
|
|
3712
3712
|
},
|
|
3713
3713
|
"signature": "(method) ImportComponents._getMergeStatus(component: Component): Promise<ComponentMergeStatus>",
|
|
@@ -3717,7 +3717,7 @@
|
|
|
3717
3717
|
"__schema": "ParameterSchema",
|
|
3718
3718
|
"location": {
|
|
3719
3719
|
"filePath": "import-components.ts",
|
|
3720
|
-
"line":
|
|
3720
|
+
"line": 627,
|
|
3721
3721
|
"character": 25
|
|
3722
3722
|
},
|
|
3723
3723
|
"name": "component",
|
|
@@ -3725,7 +3725,7 @@
|
|
|
3725
3725
|
"__schema": "TypeRefSchema",
|
|
3726
3726
|
"location": {
|
|
3727
3727
|
"filePath": "import-components.ts",
|
|
3728
|
-
"line":
|
|
3728
|
+
"line": 627,
|
|
3729
3729
|
"character": 36
|
|
3730
3730
|
},
|
|
3731
3731
|
"name": "Component"
|
|
@@ -3738,7 +3738,7 @@
|
|
|
3738
3738
|
"__schema": "TypeRefSchema",
|
|
3739
3739
|
"location": {
|
|
3740
3740
|
"filePath": "import-components.ts",
|
|
3741
|
-
"line":
|
|
3741
|
+
"line": 627,
|
|
3742
3742
|
"character": 48
|
|
3743
3743
|
},
|
|
3744
3744
|
"name": "Promise",
|
|
@@ -3747,7 +3747,7 @@
|
|
|
3747
3747
|
"__schema": "TypeRefSchema",
|
|
3748
3748
|
"location": {
|
|
3749
3749
|
"filePath": "import-components.ts",
|
|
3750
|
-
"line":
|
|
3750
|
+
"line": 627,
|
|
3751
3751
|
"character": 56
|
|
3752
3752
|
},
|
|
3753
3753
|
"name": "ComponentMergeStatus"
|
|
@@ -3762,14 +3762,14 @@
|
|
|
3762
3762
|
"__schema": "FunctionLikeSchema",
|
|
3763
3763
|
"location": {
|
|
3764
3764
|
"filePath": "import-components.ts",
|
|
3765
|
-
"line":
|
|
3765
|
+
"line": 664,
|
|
3766
3766
|
"character": 3
|
|
3767
3767
|
},
|
|
3768
3768
|
"doc": {
|
|
3769
3769
|
"__schema": "DocSchema",
|
|
3770
3770
|
"location": {
|
|
3771
3771
|
"filePath": "import-components.ts",
|
|
3772
|
-
"line":
|
|
3772
|
+
"line": 654,
|
|
3773
3773
|
"character": 3
|
|
3774
3774
|
},
|
|
3775
3775
|
"raw": "/**\n * 1) when there are conflicts and the strategy is \"ours\", don't write the imported component to\n * the filesystem, only update bitmap.\n *\n * 2) when there are conflicts and the strategy is \"theirs\", override the local changes by the\n * imported component. (similar to --override)\n *\n * 3) when there is no conflict or there are conflicts and the strategy is manual, write the files\n * according to the merge result. (done by applyModifiedVersion())\n */",
|
|
@@ -3782,7 +3782,7 @@
|
|
|
3782
3782
|
"__schema": "ParameterSchema",
|
|
3783
3783
|
"location": {
|
|
3784
3784
|
"filePath": "import-components.ts",
|
|
3785
|
-
"line":
|
|
3785
|
+
"line": 664,
|
|
3786
3786
|
"character": 41
|
|
3787
3787
|
},
|
|
3788
3788
|
"name": "componentMergeStatus",
|
|
@@ -3790,7 +3790,7 @@
|
|
|
3790
3790
|
"__schema": "TypeRefSchema",
|
|
3791
3791
|
"location": {
|
|
3792
3792
|
"filePath": "import-components.ts",
|
|
3793
|
-
"line":
|
|
3793
|
+
"line": 664,
|
|
3794
3794
|
"character": 63
|
|
3795
3795
|
},
|
|
3796
3796
|
"name": "ComponentMergeStatus"
|
|
@@ -3803,7 +3803,7 @@
|
|
|
3803
3803
|
"__schema": "TypeUnionSchema",
|
|
3804
3804
|
"location": {
|
|
3805
3805
|
"filePath": "import-components.ts",
|
|
3806
|
-
"line":
|
|
3806
|
+
"line": 664,
|
|
3807
3807
|
"character": 86
|
|
3808
3808
|
},
|
|
3809
3809
|
"types": [
|
|
@@ -3811,7 +3811,7 @@
|
|
|
3811
3811
|
"__schema": "TypeRefSchema",
|
|
3812
3812
|
"location": {
|
|
3813
3813
|
"filePath": "import-components.ts",
|
|
3814
|
-
"line":
|
|
3814
|
+
"line": 664,
|
|
3815
3815
|
"character": 86
|
|
3816
3816
|
},
|
|
3817
3817
|
"name": "FilesStatus"
|
|
@@ -3820,7 +3820,7 @@
|
|
|
3820
3820
|
"__schema": "LiteralTypeSchema",
|
|
3821
3821
|
"location": {
|
|
3822
3822
|
"filePath": "import-components.ts",
|
|
3823
|
-
"line":
|
|
3823
|
+
"line": 664,
|
|
3824
3824
|
"character": 100
|
|
3825
3825
|
},
|
|
3826
3826
|
"name": "null"
|
|
@@ -3829,7 +3829,7 @@
|
|
|
3829
3829
|
"__schema": "KeywordTypeSchema",
|
|
3830
3830
|
"location": {
|
|
3831
3831
|
"filePath": "import-components.ts",
|
|
3832
|
-
"line":
|
|
3832
|
+
"line": 664,
|
|
3833
3833
|
"character": 107
|
|
3834
3834
|
},
|
|
3835
3835
|
"name": "undefined"
|
|
@@ -3842,14 +3842,14 @@
|
|
|
3842
3842
|
"__schema": "FunctionLikeSchema",
|
|
3843
3843
|
"location": {
|
|
3844
3844
|
"filePath": "import-components.ts",
|
|
3845
|
-
"line":
|
|
3845
|
+
"line": 704,
|
|
3846
3846
|
"character": 3
|
|
3847
3847
|
},
|
|
3848
3848
|
"doc": {
|
|
3849
3849
|
"__schema": "DocSchema",
|
|
3850
3850
|
"location": {
|
|
3851
3851
|
"filePath": "import-components.ts",
|
|
3852
|
-
"line":
|
|
3852
|
+
"line": 700,
|
|
3853
3853
|
"character": 3
|
|
3854
3854
|
},
|
|
3855
3855
|
"raw": "/**\n * update the component files if they are modified and there is a merge strategy.\n * returns only the components that need to be written to the filesystem\n */",
|
|
@@ -3862,7 +3862,7 @@
|
|
|
3862
3862
|
"__schema": "ParameterSchema",
|
|
3863
3863
|
"location": {
|
|
3864
3864
|
"filePath": "import-components.ts",
|
|
3865
|
-
"line":
|
|
3865
|
+
"line": 704,
|
|
3866
3866
|
"character": 53
|
|
3867
3867
|
},
|
|
3868
3868
|
"name": "components",
|
|
@@ -3870,14 +3870,14 @@
|
|
|
3870
3870
|
"__schema": "TypeArraySchema",
|
|
3871
3871
|
"location": {
|
|
3872
3872
|
"filePath": "import-components.ts",
|
|
3873
|
-
"line":
|
|
3873
|
+
"line": 704,
|
|
3874
3874
|
"character": 65
|
|
3875
3875
|
},
|
|
3876
3876
|
"type": {
|
|
3877
3877
|
"__schema": "TypeRefSchema",
|
|
3878
3878
|
"location": {
|
|
3879
3879
|
"filePath": "import-components.ts",
|
|
3880
|
-
"line":
|
|
3880
|
+
"line": 704,
|
|
3881
3881
|
"character": 65
|
|
3882
3882
|
},
|
|
3883
3883
|
"name": "Component"
|
|
@@ -3891,7 +3891,7 @@
|
|
|
3891
3891
|
"__schema": "TypeRefSchema",
|
|
3892
3892
|
"location": {
|
|
3893
3893
|
"filePath": "import-components.ts",
|
|
3894
|
-
"line":
|
|
3894
|
+
"line": 704,
|
|
3895
3895
|
"character": 79
|
|
3896
3896
|
},
|
|
3897
3897
|
"name": "Promise",
|
|
@@ -3900,14 +3900,14 @@
|
|
|
3900
3900
|
"__schema": "TypeArraySchema",
|
|
3901
3901
|
"location": {
|
|
3902
3902
|
"filePath": "import-components.ts",
|
|
3903
|
-
"line":
|
|
3903
|
+
"line": 704,
|
|
3904
3904
|
"character": 87
|
|
3905
3905
|
},
|
|
3906
3906
|
"type": {
|
|
3907
3907
|
"__schema": "TypeRefSchema",
|
|
3908
3908
|
"location": {
|
|
3909
3909
|
"filePath": "import-components.ts",
|
|
3910
|
-
"line":
|
|
3910
|
+
"line": 704,
|
|
3911
3911
|
"character": 87
|
|
3912
3912
|
},
|
|
3913
3913
|
"name": "Component"
|
|
@@ -3923,7 +3923,7 @@
|
|
|
3923
3923
|
"__schema": "FunctionLikeSchema",
|
|
3924
3924
|
"location": {
|
|
3925
3925
|
"filePath": "import-components.ts",
|
|
3926
|
-
"line":
|
|
3926
|
+
"line": 733,
|
|
3927
3927
|
"character": 3
|
|
3928
3928
|
},
|
|
3929
3929
|
"signature": "(method) ImportComponents._shouldSaveLaneData(): boolean",
|
|
@@ -3933,7 +3933,7 @@
|
|
|
3933
3933
|
"__schema": "KeywordTypeSchema",
|
|
3934
3934
|
"location": {
|
|
3935
3935
|
"filePath": "import-components.ts",
|
|
3936
|
-
"line":
|
|
3936
|
+
"line": 733,
|
|
3937
3937
|
"character": 26
|
|
3938
3938
|
},
|
|
3939
3939
|
"name": "boolean"
|
|
@@ -3944,7 +3944,7 @@
|
|
|
3944
3944
|
"__schema": "FunctionLikeSchema",
|
|
3945
3945
|
"location": {
|
|
3946
3946
|
"filePath": "import-components.ts",
|
|
3947
|
-
"line":
|
|
3947
|
+
"line": 740,
|
|
3948
3948
|
"character": 3
|
|
3949
3949
|
},
|
|
3950
3950
|
"signature": "(method) ImportComponents._saveLaneDataIfNeeded(components: Component[]): Promise<void>",
|
|
@@ -3954,7 +3954,7 @@
|
|
|
3954
3954
|
"__schema": "ParameterSchema",
|
|
3955
3955
|
"location": {
|
|
3956
3956
|
"filePath": "import-components.ts",
|
|
3957
|
-
"line":
|
|
3957
|
+
"line": 740,
|
|
3958
3958
|
"character": 31
|
|
3959
3959
|
},
|
|
3960
3960
|
"name": "components",
|
|
@@ -3962,14 +3962,14 @@
|
|
|
3962
3962
|
"__schema": "TypeArraySchema",
|
|
3963
3963
|
"location": {
|
|
3964
3964
|
"filePath": "import-components.ts",
|
|
3965
|
-
"line":
|
|
3965
|
+
"line": 740,
|
|
3966
3966
|
"character": 43
|
|
3967
3967
|
},
|
|
3968
3968
|
"type": {
|
|
3969
3969
|
"__schema": "TypeRefSchema",
|
|
3970
3970
|
"location": {
|
|
3971
3971
|
"filePath": "import-components.ts",
|
|
3972
|
-
"line":
|
|
3972
|
+
"line": 740,
|
|
3973
3973
|
"character": 43
|
|
3974
3974
|
},
|
|
3975
3975
|
"name": "Component"
|
|
@@ -3983,7 +3983,7 @@
|
|
|
3983
3983
|
"__schema": "TypeRefSchema",
|
|
3984
3984
|
"location": {
|
|
3985
3985
|
"filePath": "import-components.ts",
|
|
3986
|
-
"line":
|
|
3986
|
+
"line": 740,
|
|
3987
3987
|
"character": 57
|
|
3988
3988
|
},
|
|
3989
3989
|
"name": "Promise",
|
|
@@ -3992,7 +3992,7 @@
|
|
|
3992
3992
|
"__schema": "KeywordTypeSchema",
|
|
3993
3993
|
"location": {
|
|
3994
3994
|
"filePath": "import-components.ts",
|
|
3995
|
-
"line":
|
|
3995
|
+
"line": 740,
|
|
3996
3996
|
"character": 65
|
|
3997
3997
|
},
|
|
3998
3998
|
"name": "void"
|
|
@@ -4007,7 +4007,7 @@
|
|
|
4007
4007
|
"__schema": "FunctionLikeSchema",
|
|
4008
4008
|
"location": {
|
|
4009
4009
|
"filePath": "import-components.ts",
|
|
4010
|
-
"line":
|
|
4010
|
+
"line": 765,
|
|
4011
4011
|
"character": 3
|
|
4012
4012
|
},
|
|
4013
4013
|
"signature": "(method) ImportComponents._writeToFileSystem(components: Component[]): Promise<ComponentWriterResults>",
|
|
@@ -4017,7 +4017,7 @@
|
|
|
4017
4017
|
"__schema": "ParameterSchema",
|
|
4018
4018
|
"location": {
|
|
4019
4019
|
"filePath": "import-components.ts",
|
|
4020
|
-
"line":
|
|
4020
|
+
"line": 765,
|
|
4021
4021
|
"character": 28
|
|
4022
4022
|
},
|
|
4023
4023
|
"name": "components",
|
|
@@ -4025,14 +4025,14 @@
|
|
|
4025
4025
|
"__schema": "TypeArraySchema",
|
|
4026
4026
|
"location": {
|
|
4027
4027
|
"filePath": "import-components.ts",
|
|
4028
|
-
"line":
|
|
4028
|
+
"line": 765,
|
|
4029
4029
|
"character": 40
|
|
4030
4030
|
},
|
|
4031
4031
|
"type": {
|
|
4032
4032
|
"__schema": "TypeRefSchema",
|
|
4033
4033
|
"location": {
|
|
4034
4034
|
"filePath": "import-components.ts",
|
|
4035
|
-
"line":
|
|
4035
|
+
"line": 765,
|
|
4036
4036
|
"character": 40
|
|
4037
4037
|
},
|
|
4038
4038
|
"name": "Component"
|
|
@@ -4046,7 +4046,7 @@
|
|
|
4046
4046
|
"__schema": "TypeRefSchema",
|
|
4047
4047
|
"location": {
|
|
4048
4048
|
"filePath": "import-components.ts",
|
|
4049
|
-
"line":
|
|
4049
|
+
"line": 765,
|
|
4050
4050
|
"character": 54
|
|
4051
4051
|
},
|
|
4052
4052
|
"name": "Promise",
|
|
@@ -4055,7 +4055,7 @@
|
|
|
4055
4055
|
"__schema": "TypeRefSchema",
|
|
4056
4056
|
"location": {
|
|
4057
4057
|
"filePath": "import-components.ts",
|
|
4058
|
-
"line":
|
|
4058
|
+
"line": 765,
|
|
4059
4059
|
"character": 62
|
|
4060
4060
|
},
|
|
4061
4061
|
"name": "ComponentWriterResults"
|
|
@@ -5519,7 +5519,7 @@
|
|
|
5519
5519
|
"componentId": {
|
|
5520
5520
|
"scope": "teambit.scope",
|
|
5521
5521
|
"name": "importer",
|
|
5522
|
-
"version": "1.0.
|
|
5522
|
+
"version": "1.0.179"
|
|
5523
5523
|
},
|
|
5524
5524
|
"taggedModuleExports": []
|
|
5525
5525
|
}
|
|
@@ -64,7 +64,7 @@ class DependentsGetter {
|
|
|
64
64
|
silent
|
|
65
65
|
} = this.options;
|
|
66
66
|
const graph = await this.graph.getGraphIds();
|
|
67
|
-
const sourceIds =
|
|
67
|
+
const sourceIds = this.workspace.listIds();
|
|
68
68
|
const getIdsForThrough = () => {
|
|
69
69
|
if (!this.options.dependentsVia) return undefined;
|
|
70
70
|
return this.options.dependentsVia.split(',').map(idStr => idStr.trim()).map(id => _componentId().ComponentID.fromString(id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_yesno","data","_interopRequireDefault","require","_enquirer","_lodash","_chalk","_componentId","_bitError","obj","__esModule","default","SHOW_ALL_PATHS_LIMIT","SCROLL_LIMIT","DependentsGetter","constructor","logger","workspace","graph","options","getDependents","targetCompIds","setStatusLine","silent","getGraphIds","sourceIds","listIds","getIdsForThrough","dependentsVia","undefined","split","map","idStr","trim","id","ComponentID","fromString","allPaths","findAllPathsFromSourcesToTargets","selectedPaths","promptDependents","uniqAsStrings","uniq","flat","ids","idsToFilterOut","ComponentIdList","fromArray","forEach","hasWithoutVersion","sameIds","filter","idString","startsWith","toStringWithoutVersion","idToImport","length","changeVersion","push","idsStr","toString","debug","clearStatusLine","question","join","ok","yesno","BitError","totalToShow","promptLevelByLevel","firstItems","slice","choices","path","name","value","tooManyPathsMsg","chalk","yellow","result","prompt","footer","indicator","state","choice","enabled","message","cyan","pointer","styles","dark","white","em","bgBlack","whiteBright","success","type","validate","j","down","k","up","names","cancel","Object","values","selectDependents","Error","finalPath","console","getPrompt","level","totalPaths","AutoComplete","limit","dim","header","getLevel","withinPaths","compact","sort","processLevel","paths","previousLevel","pathsWithinThisLevel","nextLevel","consoleSuccess","promptNextLevel","resultNextLevel","run","exports"],"sources":["dependents-getter.ts"],"sourcesContent":["import yesno from 'yesno';\n// @ts-ignore AutoComplete is actually there, the d.ts is probably outdated\nimport { prompt, AutoComplete } from 'enquirer';\nimport { compact, uniq } from 'lodash';\nimport chalk from 'chalk';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { GraphMain } from '@teambit/graph';\nimport { Logger } from '@teambit/logger';\nimport { Workspace } from '@teambit/workspace';\nimport { BitError } from '@teambit/bit-error';\nimport { ImportOptions } from './import-components';\n\nconst SHOW_ALL_PATHS_LIMIT = 10;\nconst SCROLL_LIMIT = 20;\n\nexport class DependentsGetter {\n constructor(\n private logger: Logger,\n private workspace: Workspace,\n private graph: GraphMain,\n private options: ImportOptions\n ) {}\n\n async getDependents(targetCompIds: ComponentID[]): Promise<ComponentID[]> {\n this.logger.setStatusLine('finding dependents');\n const { silent } = this.options;\n const graph = await this.graph.getGraphIds();\n const sourceIds = await this.workspace.listIds();\n const getIdsForThrough = () => {\n if (!this.options.dependentsVia) return undefined;\n return this.options.dependentsVia\n .split(',')\n .map((idStr) => idStr.trim())\n .map((id) => ComponentID.fromString(id));\n };\n const allPaths = graph.findAllPathsFromSourcesToTargets(sourceIds, targetCompIds, getIdsForThrough());\n const selectedPaths = silent ? allPaths : await this.promptDependents(allPaths);\n const uniqAsStrings = uniq(selectedPaths.flat());\n\n const ids: ComponentID[] = [];\n const idsToFilterOut = ComponentIdList.fromArray([...sourceIds, ...targetCompIds]);\n uniqAsStrings.forEach((idStr) => {\n const id = ComponentID.fromString(idStr);\n if (idsToFilterOut.hasWithoutVersion(id)) return;\n const sameIds = uniqAsStrings.filter((idString) => idString.startsWith(`${id.toStringWithoutVersion()}@`));\n const idToImport = sameIds.length === 1 ? id : id.changeVersion(undefined);\n ids.push(idToImport);\n idsToFilterOut.push(idToImport);\n });\n\n const idsStr = ids.map((id) => id.toString());\n\n this.logger.debug(`found ${ids.length} component for --dependents flag`, idsStr);\n if (!this.options.silent) {\n this.logger.clearStatusLine();\n const question = idsStr.length\n ? `found the following ${ids.length} components for --dependents flag:\\n${idsStr.join('\\n')}`\n : 'unable to find dependents for the given component (probably the workspace components using it directly)';\n const ok = await yesno({\n question: `${question}\\nWould you like to continue with the import? [yes(y)/no(n)]`,\n });\n if (!ok) {\n throw new BitError('import was aborted');\n }\n }\n\n return ids;\n }\n\n private async promptDependents(allPaths: string[][]): Promise<string[][]> {\n if (!allPaths.length) return [];\n this.logger.clearStatusLine();\n\n const totalToShow = SHOW_ALL_PATHS_LIMIT;\n if (allPaths.length >= totalToShow) {\n return this.promptLevelByLevel(allPaths);\n }\n const firstItems = allPaths.slice(0, totalToShow);\n const choices = firstItems.map((path) => {\n const name = path.join(' -> ');\n return { name, value: path };\n });\n const tooManyPathsMsg =\n allPaths.length > totalToShow\n ? `${chalk.yellow(\n `\\nfound ${allPaths.length} paths, showing the shortest ${totalToShow}. if the desired path is not shown, use the --dependents-via flag`\n )}`\n : '';\n const result = await prompt<{ selectDependents: Record<string, string[]> }>({\n choices,\n footer: '\\nEnter to start importing. Ctrl+C to cancel.',\n indicator: (state: any, choice: any) => ` ${choice.enabled ? '●' : '○'}`,\n message:\n 'Choose which path to include ' +\n `(Press ${chalk.cyan('<space>')} to select, ` +\n `${chalk.cyan('<a>')} to toggle all, ` +\n `${chalk.cyan('<i>')} to invert selection)${tooManyPathsMsg}`,\n name: 'selectDependents',\n pointer: '❯',\n styles: {\n dark: chalk.white,\n em: chalk.bgBlack.whiteBright,\n success: chalk.white,\n },\n type: 'multiselect',\n validate(value: string[]) {\n if (value.length === 0) {\n return 'You must choose at least one path.';\n }\n return true;\n },\n j() {\n return this.down();\n },\n k() {\n return this.up();\n },\n result(names: string[]) {\n // This is needed in order to have the values of the choices in the answer object.\n // Otherwise, only the names of the selected choices would've been included.\n return this.map(names);\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n } as any);\n\n return Object.values(result.selectDependents);\n }\n\n private async promptLevelByLevel(allPaths: string[][]): Promise<string[][]> {\n if (allPaths.length < SHOW_ALL_PATHS_LIMIT) {\n throw new Error(`expected to have at least ${SHOW_ALL_PATHS_LIMIT} paths`);\n }\n const finalPath: string[] = [];\n this.logger\n .console(`found ${allPaths.length} available paths from the workspace components to the target components.\nthe following prompts will guide you to choose the desired path to import.`);\n\n const getPrompt = (choices: string[], level: number, totalPaths: number) => {\n return new AutoComplete({\n name: 'comp',\n message: `Choose which component to include`,\n limit: SCROLL_LIMIT,\n footer() {\n return choices.length >= SCROLL_LIMIT ? chalk.dim('(Scroll up and down to reveal more choices)') : '';\n },\n header() {\n if (level === 1) return '';\n return `total ${totalPaths} paths left (out of ${allPaths.length})`;\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n choices,\n });\n };\n\n const getLevel = (level: number, withinPaths: string[][]): string[] => {\n return compact(uniq(withinPaths.map((path) => path[level]))).sort();\n };\n\n const processLevel = async (level: number, paths: string[][], previousLevel?: string): Promise<string[]> => {\n const pathsWithinThisLevel = previousLevel ? paths.filter((path) => path[level] === previousLevel) : paths;\n const nextLevel = getLevel(level + 1, pathsWithinThisLevel);\n if (!nextLevel.length) {\n return finalPath;\n }\n if (nextLevel.length === 1) {\n finalPath.push(nextLevel[0]);\n this.logger.consoleSuccess(`${nextLevel[0]} (auto-selected)`);\n return processLevel(level + 1, pathsWithinThisLevel, nextLevel[0]);\n }\n const promptNextLevel = getPrompt(nextLevel, level + 1, pathsWithinThisLevel.length);\n const resultNextLevel = await promptNextLevel.run();\n finalPath.push(resultNextLevel);\n return processLevel(level + 1, pathsWithinThisLevel, resultNextLevel);\n };\n\n const result = await processLevel(0, allPaths);\n\n return [result];\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_yesno","data","_interopRequireDefault","require","_enquirer","_lodash","_chalk","_componentId","_bitError","obj","__esModule","default","SHOW_ALL_PATHS_LIMIT","SCROLL_LIMIT","DependentsGetter","constructor","logger","workspace","graph","options","getDependents","targetCompIds","setStatusLine","silent","getGraphIds","sourceIds","listIds","getIdsForThrough","dependentsVia","undefined","split","map","idStr","trim","id","ComponentID","fromString","allPaths","findAllPathsFromSourcesToTargets","selectedPaths","promptDependents","uniqAsStrings","uniq","flat","ids","idsToFilterOut","ComponentIdList","fromArray","forEach","hasWithoutVersion","sameIds","filter","idString","startsWith","toStringWithoutVersion","idToImport","length","changeVersion","push","idsStr","toString","debug","clearStatusLine","question","join","ok","yesno","BitError","totalToShow","promptLevelByLevel","firstItems","slice","choices","path","name","value","tooManyPathsMsg","chalk","yellow","result","prompt","footer","indicator","state","choice","enabled","message","cyan","pointer","styles","dark","white","em","bgBlack","whiteBright","success","type","validate","j","down","k","up","names","cancel","Object","values","selectDependents","Error","finalPath","console","getPrompt","level","totalPaths","AutoComplete","limit","dim","header","getLevel","withinPaths","compact","sort","processLevel","paths","previousLevel","pathsWithinThisLevel","nextLevel","consoleSuccess","promptNextLevel","resultNextLevel","run","exports"],"sources":["dependents-getter.ts"],"sourcesContent":["import yesno from 'yesno';\n// @ts-ignore AutoComplete is actually there, the d.ts is probably outdated\nimport { prompt, AutoComplete } from 'enquirer';\nimport { compact, uniq } from 'lodash';\nimport chalk from 'chalk';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { GraphMain } from '@teambit/graph';\nimport { Logger } from '@teambit/logger';\nimport { Workspace } from '@teambit/workspace';\nimport { BitError } from '@teambit/bit-error';\nimport { ImportOptions } from './import-components';\n\nconst SHOW_ALL_PATHS_LIMIT = 10;\nconst SCROLL_LIMIT = 20;\n\nexport class DependentsGetter {\n constructor(\n private logger: Logger,\n private workspace: Workspace,\n private graph: GraphMain,\n private options: ImportOptions\n ) {}\n\n async getDependents(targetCompIds: ComponentID[]): Promise<ComponentID[]> {\n this.logger.setStatusLine('finding dependents');\n const { silent } = this.options;\n const graph = await this.graph.getGraphIds();\n const sourceIds = this.workspace.listIds();\n const getIdsForThrough = () => {\n if (!this.options.dependentsVia) return undefined;\n return this.options.dependentsVia\n .split(',')\n .map((idStr) => idStr.trim())\n .map((id) => ComponentID.fromString(id));\n };\n const allPaths = graph.findAllPathsFromSourcesToTargets(sourceIds, targetCompIds, getIdsForThrough());\n const selectedPaths = silent ? allPaths : await this.promptDependents(allPaths);\n const uniqAsStrings = uniq(selectedPaths.flat());\n\n const ids: ComponentID[] = [];\n const idsToFilterOut = ComponentIdList.fromArray([...sourceIds, ...targetCompIds]);\n uniqAsStrings.forEach((idStr) => {\n const id = ComponentID.fromString(idStr);\n if (idsToFilterOut.hasWithoutVersion(id)) return;\n const sameIds = uniqAsStrings.filter((idString) => idString.startsWith(`${id.toStringWithoutVersion()}@`));\n const idToImport = sameIds.length === 1 ? id : id.changeVersion(undefined);\n ids.push(idToImport);\n idsToFilterOut.push(idToImport);\n });\n\n const idsStr = ids.map((id) => id.toString());\n\n this.logger.debug(`found ${ids.length} component for --dependents flag`, idsStr);\n if (!this.options.silent) {\n this.logger.clearStatusLine();\n const question = idsStr.length\n ? `found the following ${ids.length} components for --dependents flag:\\n${idsStr.join('\\n')}`\n : 'unable to find dependents for the given component (probably the workspace components using it directly)';\n const ok = await yesno({\n question: `${question}\\nWould you like to continue with the import? [yes(y)/no(n)]`,\n });\n if (!ok) {\n throw new BitError('import was aborted');\n }\n }\n\n return ids;\n }\n\n private async promptDependents(allPaths: string[][]): Promise<string[][]> {\n if (!allPaths.length) return [];\n this.logger.clearStatusLine();\n\n const totalToShow = SHOW_ALL_PATHS_LIMIT;\n if (allPaths.length >= totalToShow) {\n return this.promptLevelByLevel(allPaths);\n }\n const firstItems = allPaths.slice(0, totalToShow);\n const choices = firstItems.map((path) => {\n const name = path.join(' -> ');\n return { name, value: path };\n });\n const tooManyPathsMsg =\n allPaths.length > totalToShow\n ? `${chalk.yellow(\n `\\nfound ${allPaths.length} paths, showing the shortest ${totalToShow}. if the desired path is not shown, use the --dependents-via flag`\n )}`\n : '';\n const result = await prompt<{ selectDependents: Record<string, string[]> }>({\n choices,\n footer: '\\nEnter to start importing. Ctrl+C to cancel.',\n indicator: (state: any, choice: any) => ` ${choice.enabled ? '●' : '○'}`,\n message:\n 'Choose which path to include ' +\n `(Press ${chalk.cyan('<space>')} to select, ` +\n `${chalk.cyan('<a>')} to toggle all, ` +\n `${chalk.cyan('<i>')} to invert selection)${tooManyPathsMsg}`,\n name: 'selectDependents',\n pointer: '❯',\n styles: {\n dark: chalk.white,\n em: chalk.bgBlack.whiteBright,\n success: chalk.white,\n },\n type: 'multiselect',\n validate(value: string[]) {\n if (value.length === 0) {\n return 'You must choose at least one path.';\n }\n return true;\n },\n j() {\n return this.down();\n },\n k() {\n return this.up();\n },\n result(names: string[]) {\n // This is needed in order to have the values of the choices in the answer object.\n // Otherwise, only the names of the selected choices would've been included.\n return this.map(names);\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n } as any);\n\n return Object.values(result.selectDependents);\n }\n\n private async promptLevelByLevel(allPaths: string[][]): Promise<string[][]> {\n if (allPaths.length < SHOW_ALL_PATHS_LIMIT) {\n throw new Error(`expected to have at least ${SHOW_ALL_PATHS_LIMIT} paths`);\n }\n const finalPath: string[] = [];\n this.logger\n .console(`found ${allPaths.length} available paths from the workspace components to the target components.\nthe following prompts will guide you to choose the desired path to import.`);\n\n const getPrompt = (choices: string[], level: number, totalPaths: number) => {\n return new AutoComplete({\n name: 'comp',\n message: `Choose which component to include`,\n limit: SCROLL_LIMIT,\n footer() {\n return choices.length >= SCROLL_LIMIT ? chalk.dim('(Scroll up and down to reveal more choices)') : '';\n },\n header() {\n if (level === 1) return '';\n return `total ${totalPaths} paths left (out of ${allPaths.length})`;\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n choices,\n });\n };\n\n const getLevel = (level: number, withinPaths: string[][]): string[] => {\n return compact(uniq(withinPaths.map((path) => path[level]))).sort();\n };\n\n const processLevel = async (level: number, paths: string[][], previousLevel?: string): Promise<string[]> => {\n const pathsWithinThisLevel = previousLevel ? paths.filter((path) => path[level] === previousLevel) : paths;\n const nextLevel = getLevel(level + 1, pathsWithinThisLevel);\n if (!nextLevel.length) {\n return finalPath;\n }\n if (nextLevel.length === 1) {\n finalPath.push(nextLevel[0]);\n this.logger.consoleSuccess(`${nextLevel[0]} (auto-selected)`);\n return processLevel(level + 1, pathsWithinThisLevel, nextLevel[0]);\n }\n const promptNextLevel = getPrompt(nextLevel, level + 1, pathsWithinThisLevel.length);\n const resultNextLevel = await promptNextLevel.run();\n finalPath.push(resultNextLevel);\n return processLevel(level + 1, pathsWithinThisLevel, resultNextLevel);\n };\n\n const result = await processLevel(0, allPaths);\n\n return [result];\n }\n}\n"],"mappings":"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"}
|
|
@@ -446,7 +446,9 @@ bit import ${idsFromRemote.map(id => id.toStringWithoutVersion()).join(' ')}`);
|
|
|
446
446
|
return emptyResult;
|
|
447
447
|
}
|
|
448
448
|
if (!this.options.objectsOnly) {
|
|
449
|
-
|
|
449
|
+
const flagUsed = this.options.merge ? '--merge' : '--override';
|
|
450
|
+
throw new Error(`bit import with no ids and ${flagUsed} flag is not supported.
|
|
451
|
+
to write the components from .bitmap file according to the their remote, please use "bit checkout reset --all"`);
|
|
450
452
|
}
|
|
451
453
|
const versionDependenciesArr = await this._importComponentsObjects(componentsIdsToImport, {
|
|
452
454
|
fromOriginalScope: this.options.fromOriginalScope
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","_pMapSeries","_interopRequireDefault","_listScope","_componentId","_loaderMessages","_utils","_hasWildcard","_checkout","_mergeVersion","_componentsPendingMerge","_scopeComponentsImporter","_versionDependencies","_featureToggle","_componentVersion","_lodash","_dependentsGetter","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","ImportComponents","constructor","workspace","graph","componentWriter","envs","logger","options","consumer","scope","remoteLane","lanes","importComponents","result","setStatusLine","BEFORE_IMPORT_ACTION","startTime","process","hrtime","ids","length","importObjectsOnLane","consoleSuccess","importSpecificComponents","importAccordingToBitMap","objectsOnly","Error","lane","bitIds","getBitIds","debug","id","toString","beforeImportVersions","_getCurrentVersions","versionDependenciesArr","_importComponentsObjects","mergeAndSaveLaneObject","returnCompleteResults","writtenComponents","componentWriterResults","importDetails","_getImportDetails","missingIds","keys","importedComps","map","c","component","toStringWithoutVersion","forEach","compIdStr","found","includes","push","importedIds","v","flat","importedDeps","allDependenciesIds","installationError","compilationError","workspaceConfigUpdateResult","join","_throwForPotentialIssues","components","multipleVersionDependenciesToConsumer","objects","_fetchDivergeData","_throwForDivergedHistory","throwForComponentsFromAnotherLane","filteredComponents","_filterComponentsByFilters","_writeToFileSystem","_saveLaneDataIfNeeded","mergeLaneResults","sources","mergeLane","mergedLane","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","filterEnvs","filteredP","currentEnv","calculateEnvIdFromExtensions","extensions","currentEnvWithoutVersion","split","undefined","filtered","compact","Promise","all","modelComponent","getModelComponent","setDivergeData","divergeData","merge","divergedComponents","filter","getDivergeData","isDiverged","snapsLocal","snapsOnSourceOnly","snapsRemote","snapsOnTargetOnly","ComponentsPendingMerge","currentLaneId","getCurrentLaneId","currentRemoteLane","toLaneId","currentLane","getCurrentLaneObject","idsFromAnotherLane","bitId","isOnCurrentLane","isPartOfLaneHistory","isPartOfMainHistory","isIdOnMain","BitError","fromOriginalScope","ignoreMissingHead","scopeComponentsImporter","ScopeComponentsImporter","getInstance","importWithoutDeps","toVersionLatest","cache","includeVersionHistory","fetchHeadIfLocalIsBehind","allHistory","collectParents","includeUnexported","isLaneFromRemote","reason","results","importManyFromOriginalScopes","importMany","preferDependencyGraph","fetchDeps","reFetchUnBuiltVersion","throwForSeederNotFound","getBitIdsForLanes","bitIdsFromLane","toComponentIds","ComponentIdList","bitMapIds","bitMap","getAllBitIds","bitMapIdsToImport","hasScope","has","idsWithWildcard","hasWildcard","idsWithoutWildcard","idsWithoutWildcardPreferFromLane","idStr","getIdFromStr","fromLane","searchWithoutVersion","hasVersion","pMapSeries","idsFromRemote","getRemoteBitIdsByWildcards","includeDeprecated","existingOnLanes","hasWithoutVersion","startsWith","resolveComponentIdFromPackageName","ComponentID","fromString","getBitIdsForNonLanes","shouldImportDependents","importDependents","dependentsVia","importDependenciesDirectly","dependenciesIds","getFlattenedDepsUnique","dependentsGetter","DependentsGetter","dependents","getDependents","uniqFromArray","remoteComps","scopeImporter","getManyRemoteComponents","versions","getVersions","getFlattened","flattenedDependencies","flattenedDeps","flattened","withLatest","removeMultipleVersionsKeepLatest","grouped","toGroupByIdWithoutVersion","latestVersions","latest","getLatestVersionNumber","changeVersion","LATEST_VERSION","override","componentsIdsToImport","getIdsToImportFromBitmap","emptyResult","_throwForModifiedOrNewComponents","allIds","getAllBitIdsFromAllLanes","fromArray","versionsP","getModelComponentIfExist","listVersions","fromPairs","currentVersions","detailsP","afterImportVersions","versionDifference","difference","getStatus","filesStatus","mergeStatus","deprecated","Boolean","isDeprecated","version","removed","isRemoved","latestVersion","getHeadRegardlessOfLaneAsTagOrHash","status","missingDeps","getMissingDependencies","_throwForDifferentComponentWithSameName","trackOnly","componentsStatuses","getManyComponentsStatuses","modifiedComponents","modified","newlyCreated","existingId","getParsedIdIfExist","_getMergeStatus","componentStatus","getComponentStatusById","mergeResults","componentModel","existingBitMapBitId","getComponentId","ignoreVersion","fsComponent","loadComponent","currentlyUsedVersion","baseComponent","loadVersion","otherComponent","threeWayMerge","otherLabel","currentComponent","currentLabel","_updateComponentFilesPerMergeStrategy","componentMergeStatus","files","hasConflicts","mergeStrategy","MergeOptions","ours","file","pathNormalizeToLinux","relative","FileStatus","unchanged","updateComponentId","hasChanged","theirs","updated","modifiedFiles","applyModifiedVersion","updateAllComponentsAccordingToMergeStrategy","componentsStatusP","componentsStatus","componentWithConflict","find","getMergeStrategyInteractive","componentsToWrite","unchangedFiles","_shouldSaveLaneData","isOnLane","idsFromRemoteLanes","comp","existOnRemoteLane","saveInLane","setOnLanesOnly","ref","getRef","addComponent","head","manyComponentsWriterOpts","writeToPath","writeConfig","skipDependencyInstallation","installNpmPackages","skipWriteConfigFiles","writeConfigFiles","verbose","throwForExistingDir","skipWritingToFs","shouldUpdateWorkspaceConfig","isFeatureEnabled","UPDATE_DEPS_ON_IMPORT","reasonForBitmapChange","writeMany","exports"],"sources":["import-components.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport pMapSeries from 'p-map-series';\nimport { getRemoteBitIdsByWildcards } from '@teambit/legacy/dist/api/consumer/lib/list-scope';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { BEFORE_IMPORT_ACTION } from '@teambit/legacy/dist/cli/loader/loader-messages';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Lane, ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { getLatestVersionNumber, pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport Component from '@teambit/legacy/dist/consumer/component';\nimport { applyModifiedVersion } from '@teambit/checkout';\nimport {\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n threeWayMerge,\n} from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/merge-version';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport ComponentsPendingMerge from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-merge';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport VersionDependencies, {\n multipleVersionDependenciesToConsumer,\n} from '@teambit/legacy/dist/scope/version-dependencies';\nimport { GraphMain } from '@teambit/graph';\nimport { UPDATE_DEPS_ON_IMPORT, isFeatureEnabled } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentWriterMain, ComponentWriterResults, ManyComponentsWriterParams } from '@teambit/component-writer';\nimport { LATEST_VERSION } from '@teambit/component-version';\nimport { EnvsMain } from '@teambit/envs';\nimport { compact, difference, fromPairs } from 'lodash';\nimport { FilesStatus } from '@teambit/merging';\nimport { WorkspaceConfigUpdateResult } from '@teambit/config-merger';\nimport { Logger } from '@teambit/logger';\nimport { DependentsGetter } from './dependents-getter';\n\nexport type ImportOptions = {\n ids: string[]; // array might be empty\n verbose?: boolean;\n merge?: boolean;\n mergeStrategy?: MergeStrategy;\n filterEnvs?: string[];\n writeToPath?: string;\n writeConfig?: boolean;\n override?: boolean;\n installNpmPackages: boolean; // default: true\n writeConfigFiles: boolean; // default: true\n objectsOnly?: boolean;\n importDependenciesDirectly?: boolean; // default: false, normally it imports them as packages, not as imported\n importDependents?: boolean;\n dependentsVia?: string;\n silent?: boolean; // don't show prompt for --dependents flag\n fromOriginalScope?: boolean; // default: false, otherwise, it fetches flattened dependencies from their dependents\n saveInLane?: boolean; // save the imported component on the current lane (won't be available on main)\n lanes?: {\n laneId: LaneId;\n remoteLane?: Lane; // it can be an empty array when a lane is a local lane and doesn't exist on the remote\n };\n allHistory?: boolean;\n fetchDeps?: boolean; // by default, if a component was tagged with > 0.0.900, it has the flattened-deps-graph in the object\n trackOnly?: boolean;\n includeDeprecated?: boolean;\n isLaneFromRemote?: boolean; // whether the `lanes.lane` object is coming directly from the remote.\n};\ntype ComponentMergeStatus = {\n component: Component;\n mergeResults: MergeResultsThreeWay | null | undefined;\n};\ntype ImportedVersions = { [id: string]: string[] };\nexport type ImportStatus = 'added' | 'updated' | 'up to date';\nexport type ImportDetails = {\n id: string;\n versions: string[];\n latestVersion: string | null;\n status: ImportStatus;\n filesStatus: FilesStatus | null | undefined;\n missingDeps: ComponentID[];\n deprecated: boolean;\n removed?: boolean;\n};\nexport type ImportResult = {\n importedIds: ComponentID[];\n importedDeps: ComponentID[];\n writtenComponents?: Component[];\n importDetails: ImportDetails[];\n cancellationMessage?: string;\n installationError?: Error;\n compilationError?: Error;\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n missingIds?: string[]; // in case the import is configured to not throw when missing\n lane?: Lane;\n};\n\nexport default class ImportComponents {\n consumer: Consumer;\n scope: Scope;\n mergeStatus: { [id: string]: FilesStatus };\n private remoteLane: Lane | undefined;\n private divergeData: Array<ModelComponent> = [];\n constructor(\n private workspace: Workspace,\n private graph: GraphMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n private logger: Logger,\n public options: ImportOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.scope = this.consumer.scope;\n this.remoteLane = this.options.lanes?.remoteLane;\n }\n\n async importComponents(): Promise<ImportResult> {\n let result;\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION);\n const startTime = process.hrtime();\n if (this.options.lanes && !this.options.ids.length) {\n result = await this.importObjectsOnLane();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n if (this.options.ids.length) {\n result = await this.importSpecificComponents();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n result = await this.importAccordingToBitMap();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n\n async importObjectsOnLane(): Promise<ImportResult> {\n if (!this.options.objectsOnly) {\n throw new Error(`importObjectsOnLane should have objectsOnly=true`);\n }\n const lane = this.remoteLane;\n const bitIds: ComponentIdList = await this.getBitIds();\n lane\n ? this.logger.debug(`importObjectsOnLane, Lane: ${lane.id()}, Ids: ${bitIds.toString()}`)\n : this.logger.debug(\n `importObjectsOnLane, the lane does not exist on the remote. importing only the main components`\n );\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane,\n });\n\n if (lane) {\n await this.mergeAndSaveLaneObject(lane);\n }\n\n return this.returnCompleteResults(beforeImportVersions, versionDependenciesArr);\n }\n\n private async returnCompleteResults(\n beforeImportVersions: ImportedVersions,\n versionDependenciesArr: VersionDependencies[],\n writtenComponents?: Component[],\n componentWriterResults?: ComponentWriterResults\n ): Promise<ImportResult> {\n const importDetails = await this._getImportDetails(beforeImportVersions, versionDependenciesArr);\n const missingIds: string[] = [];\n if (Object.keys(beforeImportVersions).length > versionDependenciesArr.length) {\n const importedComps = versionDependenciesArr.map((c) => c.component.id.toStringWithoutVersion());\n Object.keys(beforeImportVersions).forEach((compIdStr) => {\n const found = importedComps.includes(compIdStr);\n if (!found) missingIds.push(compIdStr);\n });\n }\n\n return {\n importedIds: versionDependenciesArr.map((v) => v.component.id).flat(),\n importedDeps: versionDependenciesArr.map((v) => v.allDependenciesIds).flat(),\n writtenComponents,\n importDetails,\n installationError: componentWriterResults?.installationError,\n compilationError: componentWriterResults?.compilationError,\n workspaceConfigUpdateResult: componentWriterResults?.workspaceConfigUpdateResult,\n missingIds,\n lane: this.remoteLane,\n };\n }\n\n async importSpecificComponents(): Promise<ImportResult> {\n this.logger.debug(`importSpecificComponents, Ids: ${this.options.ids.join(', ')}`);\n const bitIds: ComponentIdList = await this.getBitIds();\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n await this._throwForPotentialIssues(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane: this.remoteLane,\n });\n if (this.remoteLane && this.options.objectsOnly) {\n await this.mergeAndSaveLaneObject(this.remoteLane);\n }\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n await this._fetchDivergeData(components);\n this._throwForDivergedHistory();\n await this.throwForComponentsFromAnotherLane(components.map((c) => c.id));\n const filteredComponents = await this._filterComponentsByFilters(components);\n componentWriterResults = await this._writeToFileSystem(filteredComponents);\n await this._saveLaneDataIfNeeded(filteredComponents);\n writtenComponents = filteredComponents;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private async mergeAndSaveLaneObject(lane: Lane) {\n const mergeLaneResults = await this.scope.sources.mergeLane(lane, true);\n const mergedLane = mergeLaneResults.mergeLane;\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergedLane);\n await this.scope.lanes.saveLane(mergedLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'import (merge from remote)',\n });\n }\n\n private async _filterComponentsByFilters(components: Component[]): Promise<Component[]> {\n if (!this.options.filterEnvs) return components;\n const filteredP = components.map(async (component) => {\n // If the id was requested explicitly, we don't want to filter it out\n if (this.options.ids) {\n if (\n this.options.ids.includes(component.id.toStringWithoutVersion()) ||\n this.options.ids.includes(component.id.toString())\n ) {\n return component;\n }\n }\n const currentEnv = await this.envs.calculateEnvIdFromExtensions(component.extensions);\n const currentEnvWithoutVersion = currentEnv.split('@')[0];\n if (\n this.options.filterEnvs?.includes(currentEnv) ||\n this.options.filterEnvs?.includes(currentEnvWithoutVersion)\n ) {\n return component;\n }\n return undefined;\n });\n const filtered = compact(await Promise.all(filteredP));\n return filtered;\n }\n\n async _fetchDivergeData(components: Component[]) {\n if (this.options.objectsOnly) {\n // no need for it when importing objects only. if it's enabled, in case when on a lane and a non-lane\n // component is in bitmap using an older version, it throws \"getDivergeData: unable to find Version X of Y\"\n return;\n }\n await Promise.all(\n components.map(async (component) => {\n const modelComponent = await this.scope.getModelComponent(component.id);\n await modelComponent.setDivergeData(this.scope.objects, undefined, false);\n this.divergeData.push(modelComponent);\n })\n );\n }\n\n _throwForDivergedHistory() {\n if (this.options.merge || this.options.objectsOnly) return;\n const divergedComponents = this.divergeData.filter((modelComponent) =>\n modelComponent.getDivergeData().isDiverged()\n );\n if (divergedComponents.length) {\n const divergeData = divergedComponents.map((modelComponent) => ({\n id: modelComponent.id(),\n snapsLocal: modelComponent.getDivergeData().snapsOnSourceOnly.length,\n snapsRemote: modelComponent.getDivergeData().snapsOnTargetOnly.length,\n }));\n throw new ComponentsPendingMerge(divergeData);\n }\n }\n\n private async throwForComponentsFromAnotherLane(bitIds: ComponentID[]) {\n if (this.options.objectsOnly) return;\n const currentLaneId = this.workspace.getCurrentLaneId();\n const currentRemoteLane = this.remoteLane?.toLaneId().isEqual(currentLaneId) ? this.remoteLane : undefined;\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idsFromAnotherLane: ComponentID[] = [];\n if (currentRemoteLane) {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isOnCurrentLane =\n (await this.scope.isPartOfLaneHistory(bitId, currentRemoteLane)) ||\n (currentLane && (await this.scope.isPartOfLaneHistory(bitId, currentLane))) ||\n (await this.scope.isPartOfMainHistory(bitId));\n if (!isOnCurrentLane) idsFromAnotherLane.push(bitId);\n })\n );\n } else {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isIdOnMain = await this.scope.isPartOfMainHistory(bitId);\n if (!isIdOnMain) idsFromAnotherLane.push(bitId);\n })\n );\n }\n if (idsFromAnotherLane.length) {\n throw new BitError(`unable to import the following component(s) as they belong to other lane(s):\n${idsFromAnotherLane.map((id) => id.toString()).join(', ')}\nif you need this specific snap, find the lane this snap is belong to, then run \"bit lane merge <lane-id> [component-id]\" to merge this component from the lane.\nif you just want to get a quick look into this snap, create a new workspace and import it by running \"bit lane import <lane-id> --pattern <component-id>\"`);\n }\n }\n\n private async _importComponentsObjects(\n ids: ComponentIdList,\n {\n fromOriginalScope = false,\n lane,\n ignoreMissingHead = false,\n }: {\n fromOriginalScope?: boolean;\n lane?: Lane;\n ignoreMissingHead?: boolean;\n }\n ): Promise<VersionDependencies[]> {\n const scopeComponentsImporter = ScopeComponentsImporter.getInstance(this.scope);\n await scopeComponentsImporter.importWithoutDeps(ids.toVersionLatest(), {\n cache: false,\n lane,\n includeVersionHistory: true,\n fetchHeadIfLocalIsBehind: !this.options.allHistory,\n collectParents: this.options.allHistory,\n // in case a user is merging a lane into a new workspace, then, locally main has head, but remotely the head is\n // empty, until it's exported. going to the remote and asking this component will throw an error if ignoreMissingHead is false\n ignoreMissingHead: true,\n includeUnexported: this.options.isLaneFromRemote,\n reason: `of their latest on ${lane ? `lane ${lane.id()}` : 'main'}`,\n });\n\n this.logger.setStatusLine(`import ${ids.length} components with their dependencies (if missing)`);\n const results = fromOriginalScope\n ? await scopeComponentsImporter.importManyFromOriginalScopes(ids)\n : await scopeComponentsImporter.importMany({\n ids,\n ignoreMissingHead,\n lane,\n preferDependencyGraph: !this.options.fetchDeps,\n // when user is running \"bit import\", we want to re-fetch if it wasn't built. todo: check if this can be disabled when not needed\n reFetchUnBuiltVersion: true,\n // it's possible that .bitmap is not in sync and has local tags that don't exist on the remote. later, we\n // add them to \"missingIds\" of \"importResult\" and show them to the user\n throwForSeederNotFound: false,\n reason: this.options.fetchDeps\n ? 'for getting all dependencies'\n : `for getting dependencies of components that don't have dependency-graph`,\n });\n\n return results;\n }\n\n /**\n * consider the following use cases:\n * 1) no ids were provided. it should import all the lanes components objects AND main components objects\n * (otherwise, if main components are not imported and are missing, then bit-status complains about it)\n * 2) ids are provided with wildcards. we assume the user wants only the ids that are available on the lane.\n * because a user may entered \"bit import scope/*\" and this scope has many component on the lane and many not on the lane.\n * we want to bring only the components on the lane.\n * 3) ids are provided without wildcards. here, the user knows exactly what's needed and it's ok to get the ids from\n * main if not found on the lane.\n */\n private async getBitIdsForLanes(): Promise<ComponentID[]> {\n if (!this.options.lanes) {\n throw new Error(`getBitIdsForLanes: this.options.lanes must be set`);\n }\n const bitIdsFromLane = this.remoteLane?.toComponentIds() || new ComponentIdList();\n\n if (!this.options.ids.length) {\n const bitMapIds = this.consumer.bitMap.getAllBitIds();\n const bitMapIdsToImport = bitMapIds.filter((id) => id.hasScope() && !bitIdsFromLane.has(id));\n bitIdsFromLane.push(...bitMapIdsToImport);\n\n return bitIdsFromLane;\n }\n\n const idsWithWildcard = this.options.ids.filter((id) => hasWildcard(id));\n const idsWithoutWildcard = this.options.ids.filter((id) => !hasWildcard(id));\n const idsWithoutWildcardPreferFromLane = await Promise.all(\n idsWithoutWildcard.map(async (idStr) => {\n const id = await this.getIdFromStr(idStr);\n const fromLane = bitIdsFromLane.searchWithoutVersion(id);\n return fromLane && !id.hasVersion() ? fromLane : id;\n })\n );\n\n const bitIds: ComponentID[] = [...idsWithoutWildcardPreferFromLane];\n\n if (!idsWithWildcard) {\n return bitIds;\n }\n\n await pMapSeries(idsWithWildcard, async (idStr: string) => {\n const idsFromRemote = await getRemoteBitIdsByWildcards(idStr, this.options.includeDeprecated);\n const existingOnLanes = idsFromRemote.filter((id) => bitIdsFromLane.hasWithoutVersion(id));\n if (!existingOnLanes.length) {\n throw new BitError(`the id with the the wildcard \"${idStr}\" has been parsed to multiple component ids.\nhowever, none of them existing on the lane \"${this.remoteLane?.id()}\".\nin case you intend to import these components from main, please run the following:\nbit import ${idsFromRemote.map((id) => id.toStringWithoutVersion()).join(' ')}`);\n }\n bitIds.push(...existingOnLanes);\n });\n\n return bitIds;\n }\n\n private async getIdFromStr(id: string): Promise<ComponentID> {\n if (id.startsWith('@')) return this.workspace.resolveComponentIdFromPackageName(id);\n return ComponentID.fromString(id); // we don't support importing without a scope name\n }\n\n private async getBitIdsForNonLanes() {\n const bitIds: ComponentID[] = [];\n await Promise.all(\n this.options.ids.map(async (idStr: string) => {\n if (hasWildcard(idStr)) {\n const ids = await getRemoteBitIdsByWildcards(idStr, this.options.includeDeprecated);\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST\n bitIds.push(...ids);\n } else {\n const id = await this.getIdFromStr(idStr);\n bitIds.push(id);\n }\n })\n );\n\n return bitIds;\n }\n\n private async getBitIds(): Promise<ComponentIdList> {\n const bitIds: ComponentID[] = this.options.lanes\n ? await this.getBitIdsForLanes()\n : await this.getBitIdsForNonLanes();\n const shouldImportDependents = this.options.importDependents || this.options.dependentsVia;\n if (this.options.importDependenciesDirectly || shouldImportDependents) {\n if (this.options.importDependenciesDirectly) {\n const dependenciesIds = await this.getFlattenedDepsUnique(bitIds);\n bitIds.push(...dependenciesIds);\n }\n if (shouldImportDependents) {\n const dependentsGetter = new DependentsGetter(this.logger, this.workspace, this.graph, this.options);\n const dependents = await dependentsGetter.getDependents(bitIds);\n bitIds.push(...dependents);\n }\n }\n return ComponentIdList.uniqFromArray(bitIds);\n }\n\n private async getFlattenedDepsUnique(bitIds: ComponentID[]): Promise<ComponentID[]> {\n const remoteComps = await this.scope.scopeImporter.getManyRemoteComponents(bitIds);\n const versions = remoteComps.getVersions();\n const getFlattened = (): ComponentIdList => {\n if (versions.length === 1) return versions[0].flattenedDependencies;\n const flattenedDeps = versions.map((v) => v.flattenedDependencies).flat();\n return ComponentIdList.uniqFromArray(flattenedDeps);\n };\n const flattened = getFlattened();\n const withLatest = this.removeMultipleVersionsKeepLatest(flattened);\n return withLatest;\n }\n\n private removeMultipleVersionsKeepLatest(flattened: ComponentIdList): ComponentID[] {\n const grouped = flattened.toGroupByIdWithoutVersion();\n const latestVersions = Object.keys(grouped).map((key) => {\n const ids = grouped[key];\n if (ids.length === 1) return ids[0];\n const latest = getLatestVersionNumber(ids, ids[0].changeVersion(LATEST_VERSION));\n return latest;\n });\n\n return latestVersions;\n }\n\n async importAccordingToBitMap(): Promise<ImportResult> {\n this.options.objectsOnly = !this.options.merge && !this.options.override;\n const componentsIdsToImport = this.getIdsToImportFromBitmap();\n const emptyResult = {\n importedIds: [],\n importedDeps: [],\n importDetails: [],\n };\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n await this._throwForModifiedOrNewComponents(componentsIdsToImport);\n const beforeImportVersions = await this._getCurrentVersions(componentsIdsToImport);\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n if (!this.options.objectsOnly) {\n throw new Error(`bit import with no ids and --merge flag was not implemented yet`);\n }\n const versionDependenciesArr = await this._importComponentsObjects(componentsIdsToImport, {\n fromOriginalScope: this.options.fromOriginalScope,\n });\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n componentWriterResults = await this._writeToFileSystem(components);\n writtenComponents = components;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private getIdsToImportFromBitmap() {\n const allIds = this.consumer.bitMap.getAllBitIdsFromAllLanes();\n return ComponentIdList.fromArray(allIds.filter((id) => id.hasScope()));\n }\n\n async _getCurrentVersions(ids: ComponentIdList): Promise<ImportedVersions> {\n const versionsP = ids.map(async (id) => {\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id.changeVersion(undefined));\n const idStr = id.toStringWithoutVersion();\n if (!modelComponent) return [idStr, []];\n return [idStr, modelComponent.listVersions()];\n });\n const versions = await Promise.all(versionsP);\n return fromPairs(versions);\n }\n\n /**\n * get import details, includes the diff between the versions array before import and after import\n */\n async _getImportDetails(\n currentVersions: ImportedVersions,\n components: VersionDependencies[]\n ): Promise<ImportDetails[]> {\n const detailsP = components.map(async (component) => {\n const id = component.component.id;\n const idStr = id.toStringWithoutVersion();\n const beforeImportVersions = currentVersions[idStr];\n if (!beforeImportVersions) {\n throw new Error(\n `_getImportDetails failed finding ${idStr} in currentVersions, which has ${Object.keys(currentVersions).join(\n ', '\n )}`\n );\n }\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id);\n if (!modelComponent) throw new BitError(`imported component ${idStr} was not found in the model`);\n const afterImportVersions = modelComponent.listVersions();\n const versionDifference: string[] = difference(afterImportVersions, beforeImportVersions);\n const getStatus = (): ImportStatus => {\n if (!versionDifference.length) return 'up to date';\n if (!beforeImportVersions.length) return 'added';\n return 'updated';\n };\n const filesStatus = this.mergeStatus && this.mergeStatus[idStr] ? this.mergeStatus[idStr] : null;\n const deprecated = Boolean(await modelComponent.isDeprecated(this.scope.objects, id.version));\n const removed = await component.component.component.isRemoved(this.scope.objects);\n const latestVersion = modelComponent.getHeadRegardlessOfLaneAsTagOrHash(true);\n return {\n id: idStr,\n versions: versionDifference,\n latestVersion: versionDifference.includes(latestVersion) ? latestVersion : null,\n status: getStatus(),\n filesStatus,\n missingDeps: this.options.fetchDeps ? component.getMissingDependencies() : [],\n deprecated,\n removed,\n };\n });\n const importDetails: ImportDetails[] = await Promise.all(detailsP);\n\n return importDetails;\n }\n\n async _throwForPotentialIssues(ids: ComponentIdList): Promise<void> {\n await this._throwForModifiedOrNewComponents(ids);\n this._throwForDifferentComponentWithSameName(ids);\n }\n\n async _throwForModifiedOrNewComponents(ids: ComponentIdList): Promise<void> {\n // the typical objectsOnly option is when a user cloned a project with components tagged to the source code, but\n // doesn't have the model objects. in that case, calling getComponentStatusById() may return an error as it relies\n // on the model objects when there are dependencies\n if (this.options.override || this.options.objectsOnly || this.options.merge || this.options.trackOnly) return;\n const componentsStatuses = await this.workspace.getManyComponentsStatuses(ids);\n const modifiedComponents = componentsStatuses\n .filter(({ status }) => status.modified || status.newlyCreated)\n .map((c) => c.id);\n if (modifiedComponents.length) {\n throw new BitError(\n `unable to import the following components due to local changes, use --merge flag to merge your local changes or --override to override them\\n${modifiedComponents.join(\n '\\n'\n )} `\n );\n }\n }\n\n /**\n * Model Component id() calculation uses id.toString() for the hash.\n * If an imported component has scopereadonly name equals to a local name, both will have the exact same\n * hash and they'll override each other.\n */\n _throwForDifferentComponentWithSameName(ids: ComponentIdList): void {\n ids.forEach((id: ComponentID) => {\n const existingId = this.consumer.getParsedIdIfExist(id.toStringWithoutVersion());\n if (existingId && !existingId.hasScope()) {\n throw new BitError(`unable to import ${id.toString()}. the component name conflicted with your local component with the same name.\n it's fine to have components with the same name as long as their scope names are different.\n Make sure to export your component first to get a scope and then try importing again`);\n }\n });\n }\n\n async _getMergeStatus(component: Component): Promise<ComponentMergeStatus> {\n const componentStatus = await this.workspace.getComponentStatusById(component.id);\n const mergeStatus: ComponentMergeStatus = { component, mergeResults: null };\n if (!componentStatus.modified) return mergeStatus;\n const componentModel = await this.consumer.scope.getModelComponent(component.id);\n const existingBitMapBitId = this.consumer.bitMap.getComponentId(component.id, { ignoreVersion: true });\n const fsComponent = await this.consumer.loadComponent(existingBitMapBitId);\n const currentlyUsedVersion = existingBitMapBitId.version;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const baseComponent: Version = await componentModel.loadVersion(currentlyUsedVersion, this.consumer.scope.objects);\n const otherComponent: Version = await componentModel.loadVersion(\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n component.id.version,\n this.consumer.scope.objects\n );\n const mergeResults = await threeWayMerge({\n scope: this.consumer.scope,\n otherComponent,\n otherLabel: component.id.version as string,\n currentComponent: fsComponent,\n currentLabel: `${currentlyUsedVersion} modified`,\n baseComponent,\n });\n mergeStatus.mergeResults = mergeResults;\n return mergeStatus;\n }\n\n /**\n * 1) when there are conflicts and the strategy is \"ours\", don't write the imported component to\n * the filesystem, only update bitmap.\n *\n * 2) when there are conflicts and the strategy is \"theirs\", override the local changes by the\n * imported component. (similar to --override)\n *\n * 3) when there is no conflict or there are conflicts and the strategy is manual, write the files\n * according to the merge result. (done by applyModifiedVersion())\n */\n _updateComponentFilesPerMergeStrategy(componentMergeStatus: ComponentMergeStatus): FilesStatus | null | undefined {\n const mergeResults = componentMergeStatus.mergeResults;\n if (!mergeResults) return null;\n const component = componentMergeStatus.component;\n const files = component.files;\n\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.ours) {\n const filesStatus = {};\n // don't write the files to the filesystem, only bump the bitmap version.\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n this.consumer.bitMap.updateComponentId(component.id);\n this.consumer.bitMap.hasChanged = true;\n return filesStatus;\n }\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.theirs) {\n const filesStatus = {};\n // the local changes will be overridden (as if the user entered --override flag for this component)\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.updated;\n });\n return filesStatus;\n }\n const { filesStatus, modifiedFiles } = applyModifiedVersion(\n component.files,\n mergeResults,\n this.options.mergeStrategy\n );\n component.files = modifiedFiles;\n\n return filesStatus;\n }\n\n /**\n * update the component files if they are modified and there is a merge strategy.\n * returns only the components that need to be written to the filesystem\n */\n async updateAllComponentsAccordingToMergeStrategy(components: Component[]): Promise<Component[]> {\n if (!this.options.merge) return components;\n const componentsStatusP = components.map((component: Component) => {\n return this._getMergeStatus(component);\n });\n const componentsStatus = await Promise.all(componentsStatusP);\n const componentWithConflict = componentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !this.options.mergeStrategy) {\n this.options.mergeStrategy = await getMergeStrategyInteractive();\n }\n this.mergeStatus = {};\n\n const componentsToWrite = componentsStatus.map((componentStatus) => {\n const filesStatus: FilesStatus | null | undefined = this._updateComponentFilesPerMergeStrategy(componentStatus);\n const component = componentStatus.component;\n if (!filesStatus) return component;\n this.mergeStatus[component.id.toStringWithoutVersion()] = filesStatus;\n const unchangedFiles = Object.keys(filesStatus).filter((file) => filesStatus[file] === FileStatus.unchanged);\n if (unchangedFiles.length === Object.keys(filesStatus).length) {\n // all files are unchanged\n return null;\n }\n return component;\n });\n return compact(componentsToWrite);\n }\n\n _shouldSaveLaneData(): boolean {\n if (this.options.objectsOnly) {\n return false;\n }\n return this.consumer.isOnLane();\n }\n\n async _saveLaneDataIfNeeded(components: Component[]): Promise<void> {\n if (!this._shouldSaveLaneData()) {\n return;\n }\n const currentLane = await this.consumer.getCurrentLaneObject();\n if (!currentLane) {\n return; // user on main\n }\n const idsFromRemoteLanes = this.remoteLane?.toComponentIds() || new ComponentIdList();\n await Promise.all(\n components.map(async (comp) => {\n const existOnRemoteLane = idsFromRemoteLanes.has(comp.id);\n if (!existOnRemoteLane && !this.options.saveInLane) {\n this.consumer.bitMap.setOnLanesOnly(comp.id, false);\n return;\n }\n const modelComponent = await this.scope.getModelComponent(comp.id);\n const ref = modelComponent.getRef(comp.id.version as string);\n if (!ref) throw new Error(`_saveLaneDataIfNeeded unable to get ref for ${comp.id.toString()}`);\n currentLane.addComponent({ id: comp.id, head: ref });\n })\n );\n await this.scope.lanes.saveLane(currentLane, { laneHistoryMsg: 'import components' });\n }\n\n async _writeToFileSystem(components: Component[]): Promise<ComponentWriterResults> {\n const componentsToWrite = await this.updateAllComponentsAccordingToMergeStrategy(components);\n const manyComponentsWriterOpts: ManyComponentsWriterParams = {\n components: componentsToWrite,\n writeToPath: this.options.writeToPath,\n writeConfig: this.options.writeConfig,\n skipDependencyInstallation: !this.options.installNpmPackages,\n skipWriteConfigFiles: !this.options.writeConfigFiles,\n verbose: this.options.verbose,\n throwForExistingDir: !this.options.override,\n skipWritingToFs: this.options.trackOnly,\n shouldUpdateWorkspaceConfig: isFeatureEnabled(UPDATE_DEPS_ON_IMPORT),\n reasonForBitmapChange: 'import',\n };\n return this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_pMapSeries","_interopRequireDefault","_listScope","_componentId","_loaderMessages","_utils","_hasWildcard","_checkout","_mergeVersion","_componentsPendingMerge","_scopeComponentsImporter","_versionDependencies","_featureToggle","_componentVersion","_lodash","_dependentsGetter","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","ImportComponents","constructor","workspace","graph","componentWriter","envs","logger","options","consumer","scope","remoteLane","lanes","importComponents","result","setStatusLine","BEFORE_IMPORT_ACTION","startTime","process","hrtime","ids","length","importObjectsOnLane","consoleSuccess","importSpecificComponents","importAccordingToBitMap","objectsOnly","Error","lane","bitIds","getBitIds","debug","id","toString","beforeImportVersions","_getCurrentVersions","versionDependenciesArr","_importComponentsObjects","mergeAndSaveLaneObject","returnCompleteResults","writtenComponents","componentWriterResults","importDetails","_getImportDetails","missingIds","keys","importedComps","map","c","component","toStringWithoutVersion","forEach","compIdStr","found","includes","push","importedIds","v","flat","importedDeps","allDependenciesIds","installationError","compilationError","workspaceConfigUpdateResult","join","_throwForPotentialIssues","components","multipleVersionDependenciesToConsumer","objects","_fetchDivergeData","_throwForDivergedHistory","throwForComponentsFromAnotherLane","filteredComponents","_filterComponentsByFilters","_writeToFileSystem","_saveLaneDataIfNeeded","mergeLaneResults","sources","mergeLane","mergedLane","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","filterEnvs","filteredP","currentEnv","calculateEnvIdFromExtensions","extensions","currentEnvWithoutVersion","split","undefined","filtered","compact","Promise","all","modelComponent","getModelComponent","setDivergeData","divergeData","merge","divergedComponents","filter","getDivergeData","isDiverged","snapsLocal","snapsOnSourceOnly","snapsRemote","snapsOnTargetOnly","ComponentsPendingMerge","currentLaneId","getCurrentLaneId","currentRemoteLane","toLaneId","currentLane","getCurrentLaneObject","idsFromAnotherLane","bitId","isOnCurrentLane","isPartOfLaneHistory","isPartOfMainHistory","isIdOnMain","BitError","fromOriginalScope","ignoreMissingHead","scopeComponentsImporter","ScopeComponentsImporter","getInstance","importWithoutDeps","toVersionLatest","cache","includeVersionHistory","fetchHeadIfLocalIsBehind","allHistory","collectParents","includeUnexported","isLaneFromRemote","reason","results","importManyFromOriginalScopes","importMany","preferDependencyGraph","fetchDeps","reFetchUnBuiltVersion","throwForSeederNotFound","getBitIdsForLanes","bitIdsFromLane","toComponentIds","ComponentIdList","bitMapIds","bitMap","getAllBitIds","bitMapIdsToImport","hasScope","has","idsWithWildcard","hasWildcard","idsWithoutWildcard","idsWithoutWildcardPreferFromLane","idStr","getIdFromStr","fromLane","searchWithoutVersion","hasVersion","pMapSeries","idsFromRemote","getRemoteBitIdsByWildcards","includeDeprecated","existingOnLanes","hasWithoutVersion","startsWith","resolveComponentIdFromPackageName","ComponentID","fromString","getBitIdsForNonLanes","shouldImportDependents","importDependents","dependentsVia","importDependenciesDirectly","dependenciesIds","getFlattenedDepsUnique","dependentsGetter","DependentsGetter","dependents","getDependents","uniqFromArray","remoteComps","scopeImporter","getManyRemoteComponents","versions","getVersions","getFlattened","flattenedDependencies","flattenedDeps","flattened","withLatest","removeMultipleVersionsKeepLatest","grouped","toGroupByIdWithoutVersion","latestVersions","latest","getLatestVersionNumber","changeVersion","LATEST_VERSION","override","componentsIdsToImport","getIdsToImportFromBitmap","emptyResult","_throwForModifiedOrNewComponents","flagUsed","allIds","getAllBitIdsFromAllLanes","fromArray","versionsP","getModelComponentIfExist","listVersions","fromPairs","currentVersions","detailsP","afterImportVersions","versionDifference","difference","getStatus","filesStatus","mergeStatus","deprecated","Boolean","isDeprecated","version","removed","isRemoved","latestVersion","getHeadRegardlessOfLaneAsTagOrHash","status","missingDeps","getMissingDependencies","_throwForDifferentComponentWithSameName","trackOnly","componentsStatuses","getManyComponentsStatuses","modifiedComponents","modified","newlyCreated","existingId","getParsedIdIfExist","_getMergeStatus","componentStatus","getComponentStatusById","mergeResults","componentModel","existingBitMapBitId","getComponentId","ignoreVersion","fsComponent","loadComponent","currentlyUsedVersion","baseComponent","loadVersion","otherComponent","threeWayMerge","otherLabel","currentComponent","currentLabel","_updateComponentFilesPerMergeStrategy","componentMergeStatus","files","hasConflicts","mergeStrategy","MergeOptions","ours","file","pathNormalizeToLinux","relative","FileStatus","unchanged","updateComponentId","hasChanged","theirs","updated","modifiedFiles","applyModifiedVersion","updateAllComponentsAccordingToMergeStrategy","componentsStatusP","componentsStatus","componentWithConflict","find","getMergeStrategyInteractive","componentsToWrite","unchangedFiles","_shouldSaveLaneData","isOnLane","idsFromRemoteLanes","comp","existOnRemoteLane","saveInLane","setOnLanesOnly","ref","getRef","addComponent","head","manyComponentsWriterOpts","writeToPath","writeConfig","skipDependencyInstallation","installNpmPackages","skipWriteConfigFiles","writeConfigFiles","verbose","throwForExistingDir","skipWritingToFs","shouldUpdateWorkspaceConfig","isFeatureEnabled","UPDATE_DEPS_ON_IMPORT","reasonForBitmapChange","writeMany","exports"],"sources":["import-components.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport pMapSeries from 'p-map-series';\nimport { getRemoteBitIdsByWildcards } from '@teambit/legacy/dist/api/consumer/lib/list-scope';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { BEFORE_IMPORT_ACTION } from '@teambit/legacy/dist/cli/loader/loader-messages';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Lane, ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { getLatestVersionNumber, pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport Component from '@teambit/legacy/dist/consumer/component';\nimport { applyModifiedVersion } from '@teambit/checkout';\nimport {\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n threeWayMerge,\n} from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/merge-version';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport ComponentsPendingMerge from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-merge';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport VersionDependencies, {\n multipleVersionDependenciesToConsumer,\n} from '@teambit/legacy/dist/scope/version-dependencies';\nimport { GraphMain } from '@teambit/graph';\nimport { UPDATE_DEPS_ON_IMPORT, isFeatureEnabled } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentWriterMain, ComponentWriterResults, ManyComponentsWriterParams } from '@teambit/component-writer';\nimport { LATEST_VERSION } from '@teambit/component-version';\nimport { EnvsMain } from '@teambit/envs';\nimport { compact, difference, fromPairs } from 'lodash';\nimport { FilesStatus } from '@teambit/merging';\nimport { WorkspaceConfigUpdateResult } from '@teambit/config-merger';\nimport { Logger } from '@teambit/logger';\nimport { DependentsGetter } from './dependents-getter';\n\nexport type ImportOptions = {\n ids: string[]; // array might be empty\n verbose?: boolean;\n merge?: boolean;\n mergeStrategy?: MergeStrategy;\n filterEnvs?: string[];\n writeToPath?: string;\n writeConfig?: boolean;\n override?: boolean;\n installNpmPackages: boolean; // default: true\n writeConfigFiles: boolean; // default: true\n objectsOnly?: boolean;\n importDependenciesDirectly?: boolean; // default: false, normally it imports them as packages, not as imported\n importDependents?: boolean;\n dependentsVia?: string;\n silent?: boolean; // don't show prompt for --dependents flag\n fromOriginalScope?: boolean; // default: false, otherwise, it fetches flattened dependencies from their dependents\n saveInLane?: boolean; // save the imported component on the current lane (won't be available on main)\n lanes?: {\n laneId: LaneId;\n remoteLane?: Lane; // it can be an empty array when a lane is a local lane and doesn't exist on the remote\n };\n allHistory?: boolean;\n fetchDeps?: boolean; // by default, if a component was tagged with > 0.0.900, it has the flattened-deps-graph in the object\n trackOnly?: boolean;\n includeDeprecated?: boolean;\n isLaneFromRemote?: boolean; // whether the `lanes.lane` object is coming directly from the remote.\n};\ntype ComponentMergeStatus = {\n component: Component;\n mergeResults: MergeResultsThreeWay | null | undefined;\n};\ntype ImportedVersions = { [id: string]: string[] };\nexport type ImportStatus = 'added' | 'updated' | 'up to date';\nexport type ImportDetails = {\n id: string;\n versions: string[];\n latestVersion: string | null;\n status: ImportStatus;\n filesStatus: FilesStatus | null | undefined;\n missingDeps: ComponentID[];\n deprecated: boolean;\n removed?: boolean;\n};\nexport type ImportResult = {\n importedIds: ComponentID[];\n importedDeps: ComponentID[];\n writtenComponents?: Component[];\n importDetails: ImportDetails[];\n cancellationMessage?: string;\n installationError?: Error;\n compilationError?: Error;\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n missingIds?: string[]; // in case the import is configured to not throw when missing\n lane?: Lane;\n};\n\nexport default class ImportComponents {\n consumer: Consumer;\n scope: Scope;\n mergeStatus: { [id: string]: FilesStatus };\n private remoteLane: Lane | undefined;\n private divergeData: Array<ModelComponent> = [];\n constructor(\n private workspace: Workspace,\n private graph: GraphMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n private logger: Logger,\n public options: ImportOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.scope = this.consumer.scope;\n this.remoteLane = this.options.lanes?.remoteLane;\n }\n\n async importComponents(): Promise<ImportResult> {\n let result;\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION);\n const startTime = process.hrtime();\n if (this.options.lanes && !this.options.ids.length) {\n result = await this.importObjectsOnLane();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n if (this.options.ids.length) {\n result = await this.importSpecificComponents();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n result = await this.importAccordingToBitMap();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n\n async importObjectsOnLane(): Promise<ImportResult> {\n if (!this.options.objectsOnly) {\n throw new Error(`importObjectsOnLane should have objectsOnly=true`);\n }\n const lane = this.remoteLane;\n const bitIds: ComponentIdList = await this.getBitIds();\n lane\n ? this.logger.debug(`importObjectsOnLane, Lane: ${lane.id()}, Ids: ${bitIds.toString()}`)\n : this.logger.debug(\n `importObjectsOnLane, the lane does not exist on the remote. importing only the main components`\n );\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane,\n });\n\n if (lane) {\n await this.mergeAndSaveLaneObject(lane);\n }\n\n return this.returnCompleteResults(beforeImportVersions, versionDependenciesArr);\n }\n\n private async returnCompleteResults(\n beforeImportVersions: ImportedVersions,\n versionDependenciesArr: VersionDependencies[],\n writtenComponents?: Component[],\n componentWriterResults?: ComponentWriterResults\n ): Promise<ImportResult> {\n const importDetails = await this._getImportDetails(beforeImportVersions, versionDependenciesArr);\n const missingIds: string[] = [];\n if (Object.keys(beforeImportVersions).length > versionDependenciesArr.length) {\n const importedComps = versionDependenciesArr.map((c) => c.component.id.toStringWithoutVersion());\n Object.keys(beforeImportVersions).forEach((compIdStr) => {\n const found = importedComps.includes(compIdStr);\n if (!found) missingIds.push(compIdStr);\n });\n }\n\n return {\n importedIds: versionDependenciesArr.map((v) => v.component.id).flat(),\n importedDeps: versionDependenciesArr.map((v) => v.allDependenciesIds).flat(),\n writtenComponents,\n importDetails,\n installationError: componentWriterResults?.installationError,\n compilationError: componentWriterResults?.compilationError,\n workspaceConfigUpdateResult: componentWriterResults?.workspaceConfigUpdateResult,\n missingIds,\n lane: this.remoteLane,\n };\n }\n\n async importSpecificComponents(): Promise<ImportResult> {\n this.logger.debug(`importSpecificComponents, Ids: ${this.options.ids.join(', ')}`);\n const bitIds: ComponentIdList = await this.getBitIds();\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n await this._throwForPotentialIssues(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane: this.remoteLane,\n });\n if (this.remoteLane && this.options.objectsOnly) {\n await this.mergeAndSaveLaneObject(this.remoteLane);\n }\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n await this._fetchDivergeData(components);\n this._throwForDivergedHistory();\n await this.throwForComponentsFromAnotherLane(components.map((c) => c.id));\n const filteredComponents = await this._filterComponentsByFilters(components);\n componentWriterResults = await this._writeToFileSystem(filteredComponents);\n await this._saveLaneDataIfNeeded(filteredComponents);\n writtenComponents = filteredComponents;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private async mergeAndSaveLaneObject(lane: Lane) {\n const mergeLaneResults = await this.scope.sources.mergeLane(lane, true);\n const mergedLane = mergeLaneResults.mergeLane;\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergedLane);\n await this.scope.lanes.saveLane(mergedLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'import (merge from remote)',\n });\n }\n\n private async _filterComponentsByFilters(components: Component[]): Promise<Component[]> {\n if (!this.options.filterEnvs) return components;\n const filteredP = components.map(async (component) => {\n // If the id was requested explicitly, we don't want to filter it out\n if (this.options.ids) {\n if (\n this.options.ids.includes(component.id.toStringWithoutVersion()) ||\n this.options.ids.includes(component.id.toString())\n ) {\n return component;\n }\n }\n const currentEnv = await this.envs.calculateEnvIdFromExtensions(component.extensions);\n const currentEnvWithoutVersion = currentEnv.split('@')[0];\n if (\n this.options.filterEnvs?.includes(currentEnv) ||\n this.options.filterEnvs?.includes(currentEnvWithoutVersion)\n ) {\n return component;\n }\n return undefined;\n });\n const filtered = compact(await Promise.all(filteredP));\n return filtered;\n }\n\n async _fetchDivergeData(components: Component[]) {\n if (this.options.objectsOnly) {\n // no need for it when importing objects only. if it's enabled, in case when on a lane and a non-lane\n // component is in bitmap using an older version, it throws \"getDivergeData: unable to find Version X of Y\"\n return;\n }\n await Promise.all(\n components.map(async (component) => {\n const modelComponent = await this.scope.getModelComponent(component.id);\n await modelComponent.setDivergeData(this.scope.objects, undefined, false);\n this.divergeData.push(modelComponent);\n })\n );\n }\n\n _throwForDivergedHistory() {\n if (this.options.merge || this.options.objectsOnly) return;\n const divergedComponents = this.divergeData.filter((modelComponent) =>\n modelComponent.getDivergeData().isDiverged()\n );\n if (divergedComponents.length) {\n const divergeData = divergedComponents.map((modelComponent) => ({\n id: modelComponent.id(),\n snapsLocal: modelComponent.getDivergeData().snapsOnSourceOnly.length,\n snapsRemote: modelComponent.getDivergeData().snapsOnTargetOnly.length,\n }));\n throw new ComponentsPendingMerge(divergeData);\n }\n }\n\n private async throwForComponentsFromAnotherLane(bitIds: ComponentID[]) {\n if (this.options.objectsOnly) return;\n const currentLaneId = this.workspace.getCurrentLaneId();\n const currentRemoteLane = this.remoteLane?.toLaneId().isEqual(currentLaneId) ? this.remoteLane : undefined;\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idsFromAnotherLane: ComponentID[] = [];\n if (currentRemoteLane) {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isOnCurrentLane =\n (await this.scope.isPartOfLaneHistory(bitId, currentRemoteLane)) ||\n (currentLane && (await this.scope.isPartOfLaneHistory(bitId, currentLane))) ||\n (await this.scope.isPartOfMainHistory(bitId));\n if (!isOnCurrentLane) idsFromAnotherLane.push(bitId);\n })\n );\n } else {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isIdOnMain = await this.scope.isPartOfMainHistory(bitId);\n if (!isIdOnMain) idsFromAnotherLane.push(bitId);\n })\n );\n }\n if (idsFromAnotherLane.length) {\n throw new BitError(`unable to import the following component(s) as they belong to other lane(s):\n${idsFromAnotherLane.map((id) => id.toString()).join(', ')}\nif you need this specific snap, find the lane this snap is belong to, then run \"bit lane merge <lane-id> [component-id]\" to merge this component from the lane.\nif you just want to get a quick look into this snap, create a new workspace and import it by running \"bit lane import <lane-id> --pattern <component-id>\"`);\n }\n }\n\n private async _importComponentsObjects(\n ids: ComponentIdList,\n {\n fromOriginalScope = false,\n lane,\n ignoreMissingHead = false,\n }: {\n fromOriginalScope?: boolean;\n lane?: Lane;\n ignoreMissingHead?: boolean;\n }\n ): Promise<VersionDependencies[]> {\n const scopeComponentsImporter = ScopeComponentsImporter.getInstance(this.scope);\n await scopeComponentsImporter.importWithoutDeps(ids.toVersionLatest(), {\n cache: false,\n lane,\n includeVersionHistory: true,\n fetchHeadIfLocalIsBehind: !this.options.allHistory,\n collectParents: this.options.allHistory,\n // in case a user is merging a lane into a new workspace, then, locally main has head, but remotely the head is\n // empty, until it's exported. going to the remote and asking this component will throw an error if ignoreMissingHead is false\n ignoreMissingHead: true,\n includeUnexported: this.options.isLaneFromRemote,\n reason: `of their latest on ${lane ? `lane ${lane.id()}` : 'main'}`,\n });\n\n this.logger.setStatusLine(`import ${ids.length} components with their dependencies (if missing)`);\n const results = fromOriginalScope\n ? await scopeComponentsImporter.importManyFromOriginalScopes(ids)\n : await scopeComponentsImporter.importMany({\n ids,\n ignoreMissingHead,\n lane,\n preferDependencyGraph: !this.options.fetchDeps,\n // when user is running \"bit import\", we want to re-fetch if it wasn't built. todo: check if this can be disabled when not needed\n reFetchUnBuiltVersion: true,\n // it's possible that .bitmap is not in sync and has local tags that don't exist on the remote. later, we\n // add them to \"missingIds\" of \"importResult\" and show them to the user\n throwForSeederNotFound: false,\n reason: this.options.fetchDeps\n ? 'for getting all dependencies'\n : `for getting dependencies of components that don't have dependency-graph`,\n });\n\n return results;\n }\n\n /**\n * consider the following use cases:\n * 1) no ids were provided. it should import all the lanes components objects AND main components objects\n * (otherwise, if main components are not imported and are missing, then bit-status complains about it)\n * 2) ids are provided with wildcards. we assume the user wants only the ids that are available on the lane.\n * because a user may entered \"bit import scope/*\" and this scope has many component on the lane and many not on the lane.\n * we want to bring only the components on the lane.\n * 3) ids are provided without wildcards. here, the user knows exactly what's needed and it's ok to get the ids from\n * main if not found on the lane.\n */\n private async getBitIdsForLanes(): Promise<ComponentID[]> {\n if (!this.options.lanes) {\n throw new Error(`getBitIdsForLanes: this.options.lanes must be set`);\n }\n const bitIdsFromLane = this.remoteLane?.toComponentIds() || new ComponentIdList();\n\n if (!this.options.ids.length) {\n const bitMapIds = this.consumer.bitMap.getAllBitIds();\n const bitMapIdsToImport = bitMapIds.filter((id) => id.hasScope() && !bitIdsFromLane.has(id));\n bitIdsFromLane.push(...bitMapIdsToImport);\n\n return bitIdsFromLane;\n }\n\n const idsWithWildcard = this.options.ids.filter((id) => hasWildcard(id));\n const idsWithoutWildcard = this.options.ids.filter((id) => !hasWildcard(id));\n const idsWithoutWildcardPreferFromLane = await Promise.all(\n idsWithoutWildcard.map(async (idStr) => {\n const id = await this.getIdFromStr(idStr);\n const fromLane = bitIdsFromLane.searchWithoutVersion(id);\n return fromLane && !id.hasVersion() ? fromLane : id;\n })\n );\n\n const bitIds: ComponentID[] = [...idsWithoutWildcardPreferFromLane];\n\n if (!idsWithWildcard) {\n return bitIds;\n }\n\n await pMapSeries(idsWithWildcard, async (idStr: string) => {\n const idsFromRemote = await getRemoteBitIdsByWildcards(idStr, this.options.includeDeprecated);\n const existingOnLanes = idsFromRemote.filter((id) => bitIdsFromLane.hasWithoutVersion(id));\n if (!existingOnLanes.length) {\n throw new BitError(`the id with the the wildcard \"${idStr}\" has been parsed to multiple component ids.\nhowever, none of them existing on the lane \"${this.remoteLane?.id()}\".\nin case you intend to import these components from main, please run the following:\nbit import ${idsFromRemote.map((id) => id.toStringWithoutVersion()).join(' ')}`);\n }\n bitIds.push(...existingOnLanes);\n });\n\n return bitIds;\n }\n\n private async getIdFromStr(id: string): Promise<ComponentID> {\n if (id.startsWith('@')) return this.workspace.resolveComponentIdFromPackageName(id);\n return ComponentID.fromString(id); // we don't support importing without a scope name\n }\n\n private async getBitIdsForNonLanes() {\n const bitIds: ComponentID[] = [];\n await Promise.all(\n this.options.ids.map(async (idStr: string) => {\n if (hasWildcard(idStr)) {\n const ids = await getRemoteBitIdsByWildcards(idStr, this.options.includeDeprecated);\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST\n bitIds.push(...ids);\n } else {\n const id = await this.getIdFromStr(idStr);\n bitIds.push(id);\n }\n })\n );\n\n return bitIds;\n }\n\n private async getBitIds(): Promise<ComponentIdList> {\n const bitIds: ComponentID[] = this.options.lanes\n ? await this.getBitIdsForLanes()\n : await this.getBitIdsForNonLanes();\n const shouldImportDependents = this.options.importDependents || this.options.dependentsVia;\n if (this.options.importDependenciesDirectly || shouldImportDependents) {\n if (this.options.importDependenciesDirectly) {\n const dependenciesIds = await this.getFlattenedDepsUnique(bitIds);\n bitIds.push(...dependenciesIds);\n }\n if (shouldImportDependents) {\n const dependentsGetter = new DependentsGetter(this.logger, this.workspace, this.graph, this.options);\n const dependents = await dependentsGetter.getDependents(bitIds);\n bitIds.push(...dependents);\n }\n }\n return ComponentIdList.uniqFromArray(bitIds);\n }\n\n private async getFlattenedDepsUnique(bitIds: ComponentID[]): Promise<ComponentID[]> {\n const remoteComps = await this.scope.scopeImporter.getManyRemoteComponents(bitIds);\n const versions = remoteComps.getVersions();\n const getFlattened = (): ComponentIdList => {\n if (versions.length === 1) return versions[0].flattenedDependencies;\n const flattenedDeps = versions.map((v) => v.flattenedDependencies).flat();\n return ComponentIdList.uniqFromArray(flattenedDeps);\n };\n const flattened = getFlattened();\n const withLatest = this.removeMultipleVersionsKeepLatest(flattened);\n return withLatest;\n }\n\n private removeMultipleVersionsKeepLatest(flattened: ComponentIdList): ComponentID[] {\n const grouped = flattened.toGroupByIdWithoutVersion();\n const latestVersions = Object.keys(grouped).map((key) => {\n const ids = grouped[key];\n if (ids.length === 1) return ids[0];\n const latest = getLatestVersionNumber(ids, ids[0].changeVersion(LATEST_VERSION));\n return latest;\n });\n\n return latestVersions;\n }\n\n async importAccordingToBitMap(): Promise<ImportResult> {\n this.options.objectsOnly = !this.options.merge && !this.options.override;\n const componentsIdsToImport = this.getIdsToImportFromBitmap();\n const emptyResult = {\n importedIds: [],\n importedDeps: [],\n importDetails: [],\n };\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n await this._throwForModifiedOrNewComponents(componentsIdsToImport);\n const beforeImportVersions = await this._getCurrentVersions(componentsIdsToImport);\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n if (!this.options.objectsOnly) {\n const flagUsed = this.options.merge ? '--merge' : '--override';\n throw new Error(`bit import with no ids and ${flagUsed} flag is not supported.\nto write the components from .bitmap file according to the their remote, please use \"bit checkout reset --all\"`);\n }\n const versionDependenciesArr = await this._importComponentsObjects(componentsIdsToImport, {\n fromOriginalScope: this.options.fromOriginalScope,\n });\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n componentWriterResults = await this._writeToFileSystem(components);\n writtenComponents = components;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private getIdsToImportFromBitmap() {\n const allIds = this.consumer.bitMap.getAllBitIdsFromAllLanes();\n return ComponentIdList.fromArray(allIds.filter((id) => id.hasScope()));\n }\n\n async _getCurrentVersions(ids: ComponentIdList): Promise<ImportedVersions> {\n const versionsP = ids.map(async (id) => {\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id.changeVersion(undefined));\n const idStr = id.toStringWithoutVersion();\n if (!modelComponent) return [idStr, []];\n return [idStr, modelComponent.listVersions()];\n });\n const versions = await Promise.all(versionsP);\n return fromPairs(versions);\n }\n\n /**\n * get import details, includes the diff between the versions array before import and after import\n */\n async _getImportDetails(\n currentVersions: ImportedVersions,\n components: VersionDependencies[]\n ): Promise<ImportDetails[]> {\n const detailsP = components.map(async (component) => {\n const id = component.component.id;\n const idStr = id.toStringWithoutVersion();\n const beforeImportVersions = currentVersions[idStr];\n if (!beforeImportVersions) {\n throw new Error(\n `_getImportDetails failed finding ${idStr} in currentVersions, which has ${Object.keys(currentVersions).join(\n ', '\n )}`\n );\n }\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id);\n if (!modelComponent) throw new BitError(`imported component ${idStr} was not found in the model`);\n const afterImportVersions = modelComponent.listVersions();\n const versionDifference: string[] = difference(afterImportVersions, beforeImportVersions);\n const getStatus = (): ImportStatus => {\n if (!versionDifference.length) return 'up to date';\n if (!beforeImportVersions.length) return 'added';\n return 'updated';\n };\n const filesStatus = this.mergeStatus && this.mergeStatus[idStr] ? this.mergeStatus[idStr] : null;\n const deprecated = Boolean(await modelComponent.isDeprecated(this.scope.objects, id.version));\n const removed = await component.component.component.isRemoved(this.scope.objects);\n const latestVersion = modelComponent.getHeadRegardlessOfLaneAsTagOrHash(true);\n return {\n id: idStr,\n versions: versionDifference,\n latestVersion: versionDifference.includes(latestVersion) ? latestVersion : null,\n status: getStatus(),\n filesStatus,\n missingDeps: this.options.fetchDeps ? component.getMissingDependencies() : [],\n deprecated,\n removed,\n };\n });\n const importDetails: ImportDetails[] = await Promise.all(detailsP);\n\n return importDetails;\n }\n\n async _throwForPotentialIssues(ids: ComponentIdList): Promise<void> {\n await this._throwForModifiedOrNewComponents(ids);\n this._throwForDifferentComponentWithSameName(ids);\n }\n\n async _throwForModifiedOrNewComponents(ids: ComponentIdList): Promise<void> {\n // the typical objectsOnly option is when a user cloned a project with components tagged to the source code, but\n // doesn't have the model objects. in that case, calling getComponentStatusById() may return an error as it relies\n // on the model objects when there are dependencies\n if (this.options.override || this.options.objectsOnly || this.options.merge || this.options.trackOnly) return;\n const componentsStatuses = await this.workspace.getManyComponentsStatuses(ids);\n const modifiedComponents = componentsStatuses\n .filter(({ status }) => status.modified || status.newlyCreated)\n .map((c) => c.id);\n if (modifiedComponents.length) {\n throw new BitError(\n `unable to import the following components due to local changes, use --merge flag to merge your local changes or --override to override them\\n${modifiedComponents.join(\n '\\n'\n )} `\n );\n }\n }\n\n /**\n * Model Component id() calculation uses id.toString() for the hash.\n * If an imported component has scopereadonly name equals to a local name, both will have the exact same\n * hash and they'll override each other.\n */\n _throwForDifferentComponentWithSameName(ids: ComponentIdList): void {\n ids.forEach((id: ComponentID) => {\n const existingId = this.consumer.getParsedIdIfExist(id.toStringWithoutVersion());\n if (existingId && !existingId.hasScope()) {\n throw new BitError(`unable to import ${id.toString()}. the component name conflicted with your local component with the same name.\n it's fine to have components with the same name as long as their scope names are different.\n Make sure to export your component first to get a scope and then try importing again`);\n }\n });\n }\n\n async _getMergeStatus(component: Component): Promise<ComponentMergeStatus> {\n const componentStatus = await this.workspace.getComponentStatusById(component.id);\n const mergeStatus: ComponentMergeStatus = { component, mergeResults: null };\n if (!componentStatus.modified) return mergeStatus;\n const componentModel = await this.consumer.scope.getModelComponent(component.id);\n const existingBitMapBitId = this.consumer.bitMap.getComponentId(component.id, { ignoreVersion: true });\n const fsComponent = await this.consumer.loadComponent(existingBitMapBitId);\n const currentlyUsedVersion = existingBitMapBitId.version;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const baseComponent: Version = await componentModel.loadVersion(currentlyUsedVersion, this.consumer.scope.objects);\n const otherComponent: Version = await componentModel.loadVersion(\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n component.id.version,\n this.consumer.scope.objects\n );\n const mergeResults = await threeWayMerge({\n scope: this.consumer.scope,\n otherComponent,\n otherLabel: component.id.version as string,\n currentComponent: fsComponent,\n currentLabel: `${currentlyUsedVersion} modified`,\n baseComponent,\n });\n mergeStatus.mergeResults = mergeResults;\n return mergeStatus;\n }\n\n /**\n * 1) when there are conflicts and the strategy is \"ours\", don't write the imported component to\n * the filesystem, only update bitmap.\n *\n * 2) when there are conflicts and the strategy is \"theirs\", override the local changes by the\n * imported component. (similar to --override)\n *\n * 3) when there is no conflict or there are conflicts and the strategy is manual, write the files\n * according to the merge result. (done by applyModifiedVersion())\n */\n _updateComponentFilesPerMergeStrategy(componentMergeStatus: ComponentMergeStatus): FilesStatus | null | undefined {\n const mergeResults = componentMergeStatus.mergeResults;\n if (!mergeResults) return null;\n const component = componentMergeStatus.component;\n const files = component.files;\n\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.ours) {\n const filesStatus = {};\n // don't write the files to the filesystem, only bump the bitmap version.\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n this.consumer.bitMap.updateComponentId(component.id);\n this.consumer.bitMap.hasChanged = true;\n return filesStatus;\n }\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.theirs) {\n const filesStatus = {};\n // the local changes will be overridden (as if the user entered --override flag for this component)\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.updated;\n });\n return filesStatus;\n }\n const { filesStatus, modifiedFiles } = applyModifiedVersion(\n component.files,\n mergeResults,\n this.options.mergeStrategy\n );\n component.files = modifiedFiles;\n\n return filesStatus;\n }\n\n /**\n * update the component files if they are modified and there is a merge strategy.\n * returns only the components that need to be written to the filesystem\n */\n async updateAllComponentsAccordingToMergeStrategy(components: Component[]): Promise<Component[]> {\n if (!this.options.merge) return components;\n const componentsStatusP = components.map((component: Component) => {\n return this._getMergeStatus(component);\n });\n const componentsStatus = await Promise.all(componentsStatusP);\n const componentWithConflict = componentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !this.options.mergeStrategy) {\n this.options.mergeStrategy = await getMergeStrategyInteractive();\n }\n this.mergeStatus = {};\n\n const componentsToWrite = componentsStatus.map((componentStatus) => {\n const filesStatus: FilesStatus | null | undefined = this._updateComponentFilesPerMergeStrategy(componentStatus);\n const component = componentStatus.component;\n if (!filesStatus) return component;\n this.mergeStatus[component.id.toStringWithoutVersion()] = filesStatus;\n const unchangedFiles = Object.keys(filesStatus).filter((file) => filesStatus[file] === FileStatus.unchanged);\n if (unchangedFiles.length === Object.keys(filesStatus).length) {\n // all files are unchanged\n return null;\n }\n return component;\n });\n return compact(componentsToWrite);\n }\n\n _shouldSaveLaneData(): boolean {\n if (this.options.objectsOnly) {\n return false;\n }\n return this.consumer.isOnLane();\n }\n\n async _saveLaneDataIfNeeded(components: Component[]): Promise<void> {\n if (!this._shouldSaveLaneData()) {\n return;\n }\n const currentLane = await this.consumer.getCurrentLaneObject();\n if (!currentLane) {\n return; // user on main\n }\n const idsFromRemoteLanes = this.remoteLane?.toComponentIds() || new ComponentIdList();\n await Promise.all(\n components.map(async (comp) => {\n const existOnRemoteLane = idsFromRemoteLanes.has(comp.id);\n if (!existOnRemoteLane && !this.options.saveInLane) {\n this.consumer.bitMap.setOnLanesOnly(comp.id, false);\n return;\n }\n const modelComponent = await this.scope.getModelComponent(comp.id);\n const ref = modelComponent.getRef(comp.id.version as string);\n if (!ref) throw new Error(`_saveLaneDataIfNeeded unable to get ref for ${comp.id.toString()}`);\n currentLane.addComponent({ id: comp.id, head: ref });\n })\n );\n await this.scope.lanes.saveLane(currentLane, { laneHistoryMsg: 'import components' });\n }\n\n async _writeToFileSystem(components: Component[]): Promise<ComponentWriterResults> {\n const componentsToWrite = await this.updateAllComponentsAccordingToMergeStrategy(components);\n const manyComponentsWriterOpts: ManyComponentsWriterParams = {\n components: componentsToWrite,\n writeToPath: this.options.writeToPath,\n writeConfig: this.options.writeConfig,\n skipDependencyInstallation: !this.options.installNpmPackages,\n skipWriteConfigFiles: !this.options.writeConfigFiles,\n verbose: this.options.verbose,\n throwForExistingDir: !this.options.override,\n skipWritingToFs: this.options.trackOnly,\n shouldUpdateWorkspaceConfig: isFeatureEnabled(UPDATE_DEPS_ON_IMPORT),\n reasonForBitmapChange: 'import',\n };\n return this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_importer@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_importer@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_importer@1.0.179/dist/importer.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.scope_importer@1.0.179/dist/importer.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/importer",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.179",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/scope/importer",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.scope",
|
|
8
8
|
"name": "importer",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.179"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "2.4.2",
|
|
@@ -20,18 +20,18 @@
|
|
|
20
20
|
"@teambit/lane-id": "0.0.311",
|
|
21
21
|
"@teambit/harmony": "0.4.6",
|
|
22
22
|
"@teambit/legacy-bit-id": "1.1.1",
|
|
23
|
-
"@teambit/graph": "1.0.
|
|
24
|
-
"@teambit/logger": "0.0.
|
|
25
|
-
"@teambit/workspace": "1.0.
|
|
26
|
-
"@teambit/cli": "0.0.
|
|
27
|
-
"@teambit/checkout": "1.0.
|
|
28
|
-
"@teambit/component-writer": "1.0.
|
|
29
|
-
"@teambit/config-merger": "0.0.
|
|
30
|
-
"@teambit/envs": "1.0.
|
|
31
|
-
"@teambit/merging": "1.0.
|
|
32
|
-
"@teambit/dependency-resolver": "1.0.
|
|
33
|
-
"@teambit/install": "1.0.
|
|
34
|
-
"@teambit/scope": "1.0.
|
|
23
|
+
"@teambit/graph": "1.0.179",
|
|
24
|
+
"@teambit/logger": "0.0.945",
|
|
25
|
+
"@teambit/workspace": "1.0.179",
|
|
26
|
+
"@teambit/cli": "0.0.852",
|
|
27
|
+
"@teambit/checkout": "1.0.179",
|
|
28
|
+
"@teambit/component-writer": "1.0.179",
|
|
29
|
+
"@teambit/config-merger": "0.0.46",
|
|
30
|
+
"@teambit/envs": "1.0.179",
|
|
31
|
+
"@teambit/merging": "1.0.179",
|
|
32
|
+
"@teambit/dependency-resolver": "1.0.179",
|
|
33
|
+
"@teambit/install": "1.0.179",
|
|
34
|
+
"@teambit/scope": "1.0.179"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/lodash": "4.14.165",
|