@teambit/aspect-loader 1.0.411 → 1.0.413

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="1" failures="0" errors="0" skipped="0">
3
- <testsuite name="teambit.harmony/aspect-loader@1.0.411" tests="1" failures="0" errors="0" skipped="0">
4
- <testcase classname="dist/core-aspects.spec.js" name="should include the namespace in the aspect name" time="0.044"/>
3
+ <testsuite name="teambit.harmony/aspect-loader@1.0.413" tests="1" failures="0" errors="0" skipped="0">
4
+ <testcase classname="dist/core-aspects.spec.js" name="should include the namespace in the aspect name" time="0.033"/>
5
5
  </testsuite>
6
6
  </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.harmony/aspect-loader-preview"]=t():e["teambit.harmony/aspect-loader-preview"]=t()}(self,(()=>(()=>{"use strict";var e={41786:(e,t,o)=>{var r={id:"teambit.harmony/aspect-loader@1.0.411",homepage:"https://bit.cloud/teambit/harmony/aspect-loader",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 a=()=>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/aspect-loader.svg"}));a.__bit_component=r,t.Logo=a},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={};o.r(r),o.d(r,{compositions:()=>f,compositions_metadata:()=>y,overview:()=>m});var n={};o.r(n),o.d(n,{default:()=>u});var i=o(41786);o(41594);const a=MdxJsReact,c=TeambitMdxUiMdxScopeContext;var s=["components"];function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},p.apply(null,arguments)}var l={},d="wrapper";function u(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={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;o[r]=e[r]}return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.includes(o)||{}.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,s);return(0,a.mdx)(d,p({},l,o,{components:t,mdxType:"MDXLayout"}),(0,a.mdx)(c.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}u.isMDXComponent=!0;const f=[i],m=[n],y={compositions:[{displayName:"Logo",identifier:"Logo"}]};return r})()));
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.harmony/aspect-loader-preview"]=t():e["teambit.harmony/aspect-loader-preview"]=t()}(self,(()=>(()=>{"use strict";var e={90476:(e,t,o)=>{var r={id:"teambit.harmony/aspect-loader@1.0.413",homepage:"https://bit.cloud/teambit/harmony/aspect-loader",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 a=()=>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/aspect-loader.svg"}));a.__bit_component=r,t.Logo=a},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={};o.r(r),o.d(r,{compositions:()=>f,compositions_metadata:()=>y,overview:()=>m});var n={};o.r(n),o.d(n,{default:()=>u});var i=o(90476);o(41594);const a=MdxJsReact,c=TeambitMdxUiMdxScopeContext;var s=["components"];function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},p.apply(null,arguments)}var l={},d="wrapper";function u(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={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;o[r]=e[r]}return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.includes(o)||{}.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,s);return(0,a.mdx)(d,p({},l,o,{components:t,mdxType:"MDXLayout"}),(0,a.mdx)(c.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}u.isMDXComponent=!0;const f=[i],m=[n],y={compositions:[{displayName:"Logo",identifier:"Logo"}]};return r})()));
@@ -3030,7 +3030,7 @@
3030
3030
  "line": 816,
3031
3031
  "character": 3
3032
3032
  },
3033
- "signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<void>",
3033
+ "signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<Record<string, string>>",
3034
3034
  "name": "loadAspectFromPath",
3035
3035
  "params": [
3036
3036
  {
@@ -3063,13 +3063,44 @@
3063
3063
  }
3064
3064
  ],
3065
3065
  "returnType": {
3066
- "__schema": "InferenceTypeSchema",
3066
+ "__schema": "TypeRefSchema",
3067
3067
  "location": {
3068
3068
  "filePath": "aspect-loader.main.runtime.ts",
3069
3069
  "line": 816,
3070
- "character": 3
3070
+ "character": 60
3071
3071
  },
3072
- "type": "Promise<void>"
3072
+ "name": "Promise",
3073
+ "typeArgs": [
3074
+ {
3075
+ "__schema": "TypeRefSchema",
3076
+ "location": {
3077
+ "filePath": "aspect-loader.main.runtime.ts",
3078
+ "line": 816,
3079
+ "character": 68
3080
+ },
3081
+ "name": "Record",
3082
+ "typeArgs": [
3083
+ {
3084
+ "__schema": "KeywordTypeSchema",
3085
+ "location": {
3086
+ "filePath": "aspect-loader.main.runtime.ts",
3087
+ "line": 816,
3088
+ "character": 75
3089
+ },
3090
+ "name": "string"
3091
+ },
3092
+ {
3093
+ "__schema": "KeywordTypeSchema",
3094
+ "location": {
3095
+ "filePath": "aspect-loader.main.runtime.ts",
3096
+ "line": 816,
3097
+ "character": 83
3098
+ },
3099
+ "name": "string"
3100
+ }
3101
+ ]
3102
+ }
3103
+ ]
3073
3104
  },
3074
3105
  "modifiers": [
3075
3106
  "public",
@@ -3080,7 +3111,7 @@
3080
3111
  "__schema": "FunctionLikeSchema",
3081
3112
  "location": {
3082
3113
  "filePath": "aspect-loader.main.runtime.ts",
3083
- "line": 846,
3114
+ "line": 852,
3084
3115
  "character": 3
3085
3116
  },
3086
3117
  "signature": "(method) AspectLoaderMain.resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]>",
@@ -3090,7 +3121,7 @@
3090
3121
  "__schema": "ParameterSchema",
3091
3122
  "location": {
3092
3123
  "filePath": "aspect-loader.main.runtime.ts",
3093
- "line": 846,
3124
+ "line": 852,
3094
3125
  "character": 36
3095
3126
  },
3096
3127
  "name": "ids",
@@ -3098,14 +3129,14 @@
3098
3129
  "__schema": "TypeArraySchema",
3099
3130
  "location": {
3100
3131
  "filePath": "aspect-loader.main.runtime.ts",
3101
- "line": 846,
3132
+ "line": 852,
3102
3133
  "character": 41
3103
3134
  },
3104
3135
  "type": {
3105
3136
  "__schema": "KeywordTypeSchema",
3106
3137
  "location": {
3107
3138
  "filePath": "aspect-loader.main.runtime.ts",
3108
- "line": 846,
3139
+ "line": 852,
3109
3140
  "character": 41
3110
3141
  },
3111
3142
  "name": "string"
@@ -3118,7 +3149,7 @@
3118
3149
  "__schema": "ParameterSchema",
3119
3150
  "location": {
3120
3151
  "filePath": "aspect-loader.main.runtime.ts",
3121
- "line": 846,
3152
+ "line": 852,
3122
3153
  "character": 51
3123
3154
  },
3124
3155
  "name": "runtime",
@@ -3126,7 +3157,7 @@
3126
3157
  "__schema": "KeywordTypeSchema",
3127
3158
  "location": {
3128
3159
  "filePath": "aspect-loader.main.runtime.ts",
3129
- "line": 846,
3160
+ "line": 852,
3130
3161
  "character": 61
3131
3162
  },
3132
3163
  "name": "string"
@@ -3139,7 +3170,7 @@
3139
3170
  "__schema": "TypeRefSchema",
3140
3171
  "location": {
3141
3172
  "filePath": "aspect-loader.main.runtime.ts",
3142
- "line": 846,
3173
+ "line": 852,
3143
3174
  "character": 70
3144
3175
  },
3145
3176
  "name": "Promise",
@@ -3148,14 +3179,14 @@
3148
3179
  "__schema": "TypeArraySchema",
3149
3180
  "location": {
3150
3181
  "filePath": "aspect-loader.main.runtime.ts",
3151
- "line": 846,
3182
+ "line": 852,
3152
3183
  "character": 78
3153
3184
  },
3154
3185
  "type": {
3155
3186
  "__schema": "TypeRefSchema",
3156
3187
  "location": {
3157
3188
  "filePath": "aspect-loader.main.runtime.ts",
3158
- "line": 846,
3189
+ "line": 852,
3159
3190
  "character": 78
3160
3191
  },
3161
3192
  "name": "AspectDefinition"
@@ -3172,7 +3203,7 @@
3172
3203
  "__schema": "VariableLikeSchema",
3173
3204
  "location": {
3174
3205
  "filePath": "aspect-loader.main.runtime.ts",
3175
- "line": 865,
3206
+ "line": 870,
3176
3207
  "character": 3
3177
3208
  },
3178
3209
  "signature": "(property) AspectLoaderMain.runtime: RuntimeDefinition",
@@ -3181,7 +3212,7 @@
3181
3212
  "__schema": "InferenceTypeSchema",
3182
3213
  "location": {
3183
3214
  "filePath": "aspect-loader.main.runtime.ts",
3184
- "line": 865,
3215
+ "line": 870,
3185
3216
  "character": 3
3186
3217
  },
3187
3218
  "type": "RuntimeDefinition"
@@ -3193,7 +3224,7 @@
3193
3224
  "__schema": "VariableLikeSchema",
3194
3225
  "location": {
3195
3226
  "filePath": "aspect-loader.main.runtime.ts",
3196
- "line": 866,
3227
+ "line": 871,
3197
3228
  "character": 3
3198
3229
  },
3199
3230
  "signature": "(property) AspectLoaderMain.dependencies: Aspect[]",
@@ -3202,7 +3233,7 @@
3202
3233
  "__schema": "InferenceTypeSchema",
3203
3234
  "location": {
3204
3235
  "filePath": "aspect-loader.main.runtime.ts",
3205
- "line": 866,
3236
+ "line": 871,
3206
3237
  "character": 3
3207
3238
  },
3208
3239
  "type": "Aspect[]"
@@ -3214,7 +3245,7 @@
3214
3245
  "__schema": "VariableLikeSchema",
3215
3246
  "location": {
3216
3247
  "filePath": "aspect-loader.main.runtime.ts",
3217
- "line": 867,
3248
+ "line": 872,
3218
3249
  "character": 3
3219
3250
  },
3220
3251
  "signature": "(property) AspectLoaderMain.slots: (((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]",
@@ -3223,7 +3254,7 @@
3223
3254
  "__schema": "InferenceTypeSchema",
3224
3255
  "location": {
3225
3256
  "filePath": "aspect-loader.main.runtime.ts",
3226
- "line": 867,
3257
+ "line": 872,
3227
3258
  "character": 3
3228
3259
  },
3229
3260
  "type": "(((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]"
@@ -3235,7 +3266,7 @@
3235
3266
  "__schema": "FunctionLikeSchema",
3236
3267
  "location": {
3237
3268
  "filePath": "aspect-loader.main.runtime.ts",
3238
- "line": 873,
3269
+ "line": 878,
3239
3270
  "character": 3
3240
3271
  },
3241
3272
  "signature": "(method) AspectLoaderMain.provider([loggerExt, envs, graphql]: [LoggerMain, EnvsMain, GraphqlMain], config: any, [onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot]: [\n OnAspectLoadErrorSlot,\n OnLoadRequireableExtensionSlot,\n PluginDefinitionSlot\n], harmony: Harmony): Promise<AspectLoaderMain>",
@@ -3245,7 +3276,7 @@
3245
3276
  "__schema": "ParameterSchema",
3246
3277
  "location": {
3247
3278
  "filePath": "aspect-loader.main.runtime.ts",
3248
- "line": 874,
3279
+ "line": 879,
3249
3280
  "character": 5
3250
3281
  },
3251
3282
  "name": "[ loggerExt, envs, graphql ]",
@@ -3253,7 +3284,7 @@
3253
3284
  "__schema": "TupleTypeSchema",
3254
3285
  "location": {
3255
3286
  "filePath": "aspect-loader.main.runtime.ts",
3256
- "line": 874,
3287
+ "line": 879,
3257
3288
  "character": 33
3258
3289
  },
3259
3290
  "elements": [
@@ -3261,7 +3292,7 @@
3261
3292
  "__schema": "TypeRefSchema",
3262
3293
  "location": {
3263
3294
  "filePath": "aspect-loader.main.runtime.ts",
3264
- "line": 874,
3295
+ "line": 879,
3265
3296
  "character": 34
3266
3297
  },
3267
3298
  "name": "LoggerMain"
@@ -3270,7 +3301,7 @@
3270
3301
  "__schema": "TypeRefSchema",
3271
3302
  "location": {
3272
3303
  "filePath": "aspect-loader.main.runtime.ts",
3273
- "line": 874,
3304
+ "line": 879,
3274
3305
  "character": 46
3275
3306
  },
3276
3307
  "name": "EnvsMain"
@@ -3279,7 +3310,7 @@
3279
3310
  "__schema": "TypeRefSchema",
3280
3311
  "location": {
3281
3312
  "filePath": "aspect-loader.main.runtime.ts",
3282
- "line": 874,
3313
+ "line": 879,
3283
3314
  "character": 56
3284
3315
  },
3285
3316
  "name": "GraphqlMain"
@@ -3293,7 +3324,7 @@
3293
3324
  "__schema": "ParameterSchema",
3294
3325
  "location": {
3295
3326
  "filePath": "aspect-loader.main.runtime.ts",
3296
- "line": 875,
3327
+ "line": 880,
3297
3328
  "character": 5
3298
3329
  },
3299
3330
  "name": "config",
@@ -3301,7 +3332,7 @@
3301
3332
  "__schema": "InferenceTypeSchema",
3302
3333
  "location": {
3303
3334
  "filePath": "aspect-loader.main.runtime.ts",
3304
- "line": 875,
3335
+ "line": 880,
3305
3336
  "character": 5
3306
3337
  },
3307
3338
  "type": "any"
@@ -3313,7 +3344,7 @@
3313
3344
  "__schema": "ParameterSchema",
3314
3345
  "location": {
3315
3346
  "filePath": "aspect-loader.main.runtime.ts",
3316
- "line": 876,
3347
+ "line": 881,
3317
3348
  "character": 5
3318
3349
  },
3319
3350
  "name": "[ onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot ]",
@@ -3321,7 +3352,7 @@
3321
3352
  "__schema": "TupleTypeSchema",
3322
3353
  "location": {
3323
3354
  "filePath": "aspect-loader.main.runtime.ts",
3324
- "line": 876,
3355
+ "line": 881,
3325
3356
  "character": 74
3326
3357
  },
3327
3358
  "elements": [
@@ -3329,7 +3360,7 @@
3329
3360
  "__schema": "TypeRefSchema",
3330
3361
  "location": {
3331
3362
  "filePath": "aspect-loader.main.runtime.ts",
3332
- "line": 877,
3363
+ "line": 882,
3333
3364
  "character": 7
3334
3365
  },
3335
3366
  "name": "OnAspectLoadErrorSlot"
@@ -3338,7 +3369,7 @@
3338
3369
  "__schema": "TypeRefSchema",
3339
3370
  "location": {
3340
3371
  "filePath": "aspect-loader.main.runtime.ts",
3341
- "line": 878,
3372
+ "line": 883,
3342
3373
  "character": 7
3343
3374
  },
3344
3375
  "name": "OnLoadRequireableExtensionSlot"
@@ -3347,7 +3378,7 @@
3347
3378
  "__schema": "TypeRefSchema",
3348
3379
  "location": {
3349
3380
  "filePath": "aspect-loader.main.runtime.ts",
3350
- "line": 879,
3381
+ "line": 884,
3351
3382
  "character": 7
3352
3383
  },
3353
3384
  "name": "PluginDefinitionSlot"
@@ -3361,7 +3392,7 @@
3361
3392
  "__schema": "ParameterSchema",
3362
3393
  "location": {
3363
3394
  "filePath": "aspect-loader.main.runtime.ts",
3364
- "line": 881,
3395
+ "line": 886,
3365
3396
  "character": 5
3366
3397
  },
3367
3398
  "name": "harmony",
@@ -3369,7 +3400,7 @@
3369
3400
  "__schema": "TypeRefSchema",
3370
3401
  "location": {
3371
3402
  "filePath": "aspect-loader.main.runtime.ts",
3372
- "line": 881,
3403
+ "line": 886,
3373
3404
  "character": 14
3374
3405
  },
3375
3406
  "name": "Harmony"
@@ -3382,7 +3413,7 @@
3382
3413
  "__schema": "InferenceTypeSchema",
3383
3414
  "location": {
3384
3415
  "filePath": "aspect-loader.main.runtime.ts",
3385
- "line": 873,
3416
+ "line": 878,
3386
3417
  "character": 3
3387
3418
  },
3388
3419
  "type": "Promise<AspectLoaderMain>"
@@ -9148,7 +9179,7 @@
9148
9179
  "line": 816,
9149
9180
  "character": 3
9150
9181
  },
9151
- "signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<void>",
9182
+ "signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<Record<string, string>>",
9152
9183
  "name": "loadAspectFromPath",
9153
9184
  "params": [
9154
9185
  {
@@ -9181,13 +9212,44 @@
9181
9212
  }
9182
9213
  ],
9183
9214
  "returnType": {
9184
- "__schema": "InferenceTypeSchema",
9215
+ "__schema": "TypeRefSchema",
9185
9216
  "location": {
9186
9217
  "filePath": "aspect-loader.main.runtime.ts",
9187
9218
  "line": 816,
9188
- "character": 3
9219
+ "character": 60
9189
9220
  },
9190
- "type": "Promise<void>"
9221
+ "name": "Promise",
9222
+ "typeArgs": [
9223
+ {
9224
+ "__schema": "TypeRefSchema",
9225
+ "location": {
9226
+ "filePath": "aspect-loader.main.runtime.ts",
9227
+ "line": 816,
9228
+ "character": 68
9229
+ },
9230
+ "name": "Record",
9231
+ "typeArgs": [
9232
+ {
9233
+ "__schema": "KeywordTypeSchema",
9234
+ "location": {
9235
+ "filePath": "aspect-loader.main.runtime.ts",
9236
+ "line": 816,
9237
+ "character": 75
9238
+ },
9239
+ "name": "string"
9240
+ },
9241
+ {
9242
+ "__schema": "KeywordTypeSchema",
9243
+ "location": {
9244
+ "filePath": "aspect-loader.main.runtime.ts",
9245
+ "line": 816,
9246
+ "character": 83
9247
+ },
9248
+ "name": "string"
9249
+ }
9250
+ ]
9251
+ }
9252
+ ]
9191
9253
  },
9192
9254
  "modifiers": [
9193
9255
  "public",
@@ -9198,7 +9260,7 @@
9198
9260
  "__schema": "FunctionLikeSchema",
9199
9261
  "location": {
9200
9262
  "filePath": "aspect-loader.main.runtime.ts",
9201
- "line": 846,
9263
+ "line": 852,
9202
9264
  "character": 3
9203
9265
  },
9204
9266
  "signature": "(method) AspectLoaderMain.resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]>",
@@ -9208,7 +9270,7 @@
9208
9270
  "__schema": "ParameterSchema",
9209
9271
  "location": {
9210
9272
  "filePath": "aspect-loader.main.runtime.ts",
9211
- "line": 846,
9273
+ "line": 852,
9212
9274
  "character": 36
9213
9275
  },
9214
9276
  "name": "ids",
@@ -9216,14 +9278,14 @@
9216
9278
  "__schema": "TypeArraySchema",
9217
9279
  "location": {
9218
9280
  "filePath": "aspect-loader.main.runtime.ts",
9219
- "line": 846,
9281
+ "line": 852,
9220
9282
  "character": 41
9221
9283
  },
9222
9284
  "type": {
9223
9285
  "__schema": "KeywordTypeSchema",
9224
9286
  "location": {
9225
9287
  "filePath": "aspect-loader.main.runtime.ts",
9226
- "line": 846,
9288
+ "line": 852,
9227
9289
  "character": 41
9228
9290
  },
9229
9291
  "name": "string"
@@ -9236,7 +9298,7 @@
9236
9298
  "__schema": "ParameterSchema",
9237
9299
  "location": {
9238
9300
  "filePath": "aspect-loader.main.runtime.ts",
9239
- "line": 846,
9301
+ "line": 852,
9240
9302
  "character": 51
9241
9303
  },
9242
9304
  "name": "runtime",
@@ -9244,7 +9306,7 @@
9244
9306
  "__schema": "KeywordTypeSchema",
9245
9307
  "location": {
9246
9308
  "filePath": "aspect-loader.main.runtime.ts",
9247
- "line": 846,
9309
+ "line": 852,
9248
9310
  "character": 61
9249
9311
  },
9250
9312
  "name": "string"
@@ -9257,7 +9319,7 @@
9257
9319
  "__schema": "TypeRefSchema",
9258
9320
  "location": {
9259
9321
  "filePath": "aspect-loader.main.runtime.ts",
9260
- "line": 846,
9322
+ "line": 852,
9261
9323
  "character": 70
9262
9324
  },
9263
9325
  "name": "Promise",
@@ -9266,14 +9328,14 @@
9266
9328
  "__schema": "TypeArraySchema",
9267
9329
  "location": {
9268
9330
  "filePath": "aspect-loader.main.runtime.ts",
9269
- "line": 846,
9331
+ "line": 852,
9270
9332
  "character": 78
9271
9333
  },
9272
9334
  "type": {
9273
9335
  "__schema": "TypeRefSchema",
9274
9336
  "location": {
9275
9337
  "filePath": "aspect-loader.main.runtime.ts",
9276
- "line": 846,
9338
+ "line": 852,
9277
9339
  "character": 78
9278
9340
  },
9279
9341
  "name": "AspectDefinition"
@@ -9290,7 +9352,7 @@
9290
9352
  "__schema": "VariableLikeSchema",
9291
9353
  "location": {
9292
9354
  "filePath": "aspect-loader.main.runtime.ts",
9293
- "line": 865,
9355
+ "line": 870,
9294
9356
  "character": 3
9295
9357
  },
9296
9358
  "signature": "(property) AspectLoaderMain.runtime: RuntimeDefinition",
@@ -9299,7 +9361,7 @@
9299
9361
  "__schema": "InferenceTypeSchema",
9300
9362
  "location": {
9301
9363
  "filePath": "aspect-loader.main.runtime.ts",
9302
- "line": 865,
9364
+ "line": 870,
9303
9365
  "character": 3
9304
9366
  },
9305
9367
  "type": "RuntimeDefinition"
@@ -9311,7 +9373,7 @@
9311
9373
  "__schema": "VariableLikeSchema",
9312
9374
  "location": {
9313
9375
  "filePath": "aspect-loader.main.runtime.ts",
9314
- "line": 866,
9376
+ "line": 871,
9315
9377
  "character": 3
9316
9378
  },
9317
9379
  "signature": "(property) AspectLoaderMain.dependencies: Aspect[]",
@@ -9320,7 +9382,7 @@
9320
9382
  "__schema": "InferenceTypeSchema",
9321
9383
  "location": {
9322
9384
  "filePath": "aspect-loader.main.runtime.ts",
9323
- "line": 866,
9385
+ "line": 871,
9324
9386
  "character": 3
9325
9387
  },
9326
9388
  "type": "Aspect[]"
@@ -9332,7 +9394,7 @@
9332
9394
  "__schema": "VariableLikeSchema",
9333
9395
  "location": {
9334
9396
  "filePath": "aspect-loader.main.runtime.ts",
9335
- "line": 867,
9397
+ "line": 872,
9336
9398
  "character": 3
9337
9399
  },
9338
9400
  "signature": "(property) AspectLoaderMain.slots: (((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]",
@@ -9341,7 +9403,7 @@
9341
9403
  "__schema": "InferenceTypeSchema",
9342
9404
  "location": {
9343
9405
  "filePath": "aspect-loader.main.runtime.ts",
9344
- "line": 867,
9406
+ "line": 872,
9345
9407
  "character": 3
9346
9408
  },
9347
9409
  "type": "(((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]"
@@ -9353,7 +9415,7 @@
9353
9415
  "__schema": "FunctionLikeSchema",
9354
9416
  "location": {
9355
9417
  "filePath": "aspect-loader.main.runtime.ts",
9356
- "line": 873,
9418
+ "line": 878,
9357
9419
  "character": 3
9358
9420
  },
9359
9421
  "signature": "(method) AspectLoaderMain.provider([loggerExt, envs, graphql]: [LoggerMain, EnvsMain, GraphqlMain], config: any, [onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot]: [\n OnAspectLoadErrorSlot,\n OnLoadRequireableExtensionSlot,\n PluginDefinitionSlot\n], harmony: Harmony): Promise<AspectLoaderMain>",
@@ -9363,7 +9425,7 @@
9363
9425
  "__schema": "ParameterSchema",
9364
9426
  "location": {
9365
9427
  "filePath": "aspect-loader.main.runtime.ts",
9366
- "line": 874,
9428
+ "line": 879,
9367
9429
  "character": 5
9368
9430
  },
9369
9431
  "name": "[ loggerExt, envs, graphql ]",
@@ -9371,7 +9433,7 @@
9371
9433
  "__schema": "TupleTypeSchema",
9372
9434
  "location": {
9373
9435
  "filePath": "aspect-loader.main.runtime.ts",
9374
- "line": 874,
9436
+ "line": 879,
9375
9437
  "character": 33
9376
9438
  },
9377
9439
  "elements": [
@@ -9379,7 +9441,7 @@
9379
9441
  "__schema": "TypeRefSchema",
9380
9442
  "location": {
9381
9443
  "filePath": "aspect-loader.main.runtime.ts",
9382
- "line": 874,
9444
+ "line": 879,
9383
9445
  "character": 34
9384
9446
  },
9385
9447
  "name": "LoggerMain"
@@ -9388,7 +9450,7 @@
9388
9450
  "__schema": "TypeRefSchema",
9389
9451
  "location": {
9390
9452
  "filePath": "aspect-loader.main.runtime.ts",
9391
- "line": 874,
9453
+ "line": 879,
9392
9454
  "character": 46
9393
9455
  },
9394
9456
  "name": "EnvsMain"
@@ -9397,7 +9459,7 @@
9397
9459
  "__schema": "TypeRefSchema",
9398
9460
  "location": {
9399
9461
  "filePath": "aspect-loader.main.runtime.ts",
9400
- "line": 874,
9462
+ "line": 879,
9401
9463
  "character": 56
9402
9464
  },
9403
9465
  "name": "GraphqlMain"
@@ -9411,7 +9473,7 @@
9411
9473
  "__schema": "ParameterSchema",
9412
9474
  "location": {
9413
9475
  "filePath": "aspect-loader.main.runtime.ts",
9414
- "line": 875,
9476
+ "line": 880,
9415
9477
  "character": 5
9416
9478
  },
9417
9479
  "name": "config",
@@ -9419,7 +9481,7 @@
9419
9481
  "__schema": "InferenceTypeSchema",
9420
9482
  "location": {
9421
9483
  "filePath": "aspect-loader.main.runtime.ts",
9422
- "line": 875,
9484
+ "line": 880,
9423
9485
  "character": 5
9424
9486
  },
9425
9487
  "type": "any"
@@ -9431,7 +9493,7 @@
9431
9493
  "__schema": "ParameterSchema",
9432
9494
  "location": {
9433
9495
  "filePath": "aspect-loader.main.runtime.ts",
9434
- "line": 876,
9496
+ "line": 881,
9435
9497
  "character": 5
9436
9498
  },
9437
9499
  "name": "[ onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot ]",
@@ -9439,7 +9501,7 @@
9439
9501
  "__schema": "TupleTypeSchema",
9440
9502
  "location": {
9441
9503
  "filePath": "aspect-loader.main.runtime.ts",
9442
- "line": 876,
9504
+ "line": 881,
9443
9505
  "character": 74
9444
9506
  },
9445
9507
  "elements": [
@@ -9447,7 +9509,7 @@
9447
9509
  "__schema": "TypeRefSchema",
9448
9510
  "location": {
9449
9511
  "filePath": "aspect-loader.main.runtime.ts",
9450
- "line": 877,
9512
+ "line": 882,
9451
9513
  "character": 7
9452
9514
  },
9453
9515
  "name": "OnAspectLoadErrorSlot"
@@ -9456,7 +9518,7 @@
9456
9518
  "__schema": "TypeRefSchema",
9457
9519
  "location": {
9458
9520
  "filePath": "aspect-loader.main.runtime.ts",
9459
- "line": 878,
9521
+ "line": 883,
9460
9522
  "character": 7
9461
9523
  },
9462
9524
  "name": "OnLoadRequireableExtensionSlot"
@@ -9465,7 +9527,7 @@
9465
9527
  "__schema": "TypeRefSchema",
9466
9528
  "location": {
9467
9529
  "filePath": "aspect-loader.main.runtime.ts",
9468
- "line": 879,
9530
+ "line": 884,
9469
9531
  "character": 7
9470
9532
  },
9471
9533
  "name": "PluginDefinitionSlot"
@@ -9479,7 +9541,7 @@
9479
9541
  "__schema": "ParameterSchema",
9480
9542
  "location": {
9481
9543
  "filePath": "aspect-loader.main.runtime.ts",
9482
- "line": 881,
9544
+ "line": 886,
9483
9545
  "character": 5
9484
9546
  },
9485
9547
  "name": "harmony",
@@ -9487,7 +9549,7 @@
9487
9549
  "__schema": "TypeRefSchema",
9488
9550
  "location": {
9489
9551
  "filePath": "aspect-loader.main.runtime.ts",
9490
- "line": 881,
9552
+ "line": 886,
9491
9553
  "character": 14
9492
9554
  },
9493
9555
  "name": "Harmony"
@@ -9500,7 +9562,7 @@
9500
9562
  "__schema": "InferenceTypeSchema",
9501
9563
  "location": {
9502
9564
  "filePath": "aspect-loader.main.runtime.ts",
9503
- "line": 873,
9565
+ "line": 878,
9504
9566
  "character": 3
9505
9567
  },
9506
9568
  "type": "Promise<AspectLoaderMain>"
@@ -9518,7 +9580,7 @@
9518
9580
  "__schema": "UnImplementedSchema",
9519
9581
  "location": {
9520
9582
  "filePath": "aspect-loader.main.runtime.ts",
9521
- "line": 902,
9583
+ "line": 907,
9522
9584
  "character": 16
9523
9585
  },
9524
9586
  "name": "AspectLoaderMain",
@@ -9613,7 +9675,7 @@
9613
9675
  "__schema": "UnImplementedSchema",
9614
9676
  "location": {
9615
9677
  "filePath": "aspect-loader.main.runtime.ts",
9616
- "line": 900,
9678
+ "line": 905,
9617
9679
  "character": 1
9618
9680
  },
9619
9681
  "name": "AspectLoaderAspect.addRuntime(AspectLoaderMain);",
@@ -11130,7 +11192,7 @@
11130
11192
  "componentId": {
11131
11193
  "scope": "teambit.harmony",
11132
11194
  "name": "aspect-loader",
11133
- "version": "1.0.411"
11195
+ "version": "1.0.413"
11134
11196
  },
11135
11197
  "taggedModuleExports": []
11136
11198
  }
@@ -194,7 +194,7 @@ export declare class AspectLoaderMain {
194
194
  registerPlugins(pluginDefs: PluginDefinition[]): void;
195
195
  loadExtensionsByManifests(extensionsManifests: Array<ExtensionManifest | Aspect>, context?: LoadExtByManifestContext, options?: LoadExtByManifestOptions): Promise<void>;
196
196
  private generateManifestGraph;
197
- loadAspectFromPath(localAspects: string[]): Promise<void>;
197
+ loadAspectFromPath(localAspects: string[]): Promise<Record<string, string>>;
198
198
  private parseLocalAspect;
199
199
  private findRuntime;
200
200
  resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]>;
@@ -798,27 +798,33 @@ class AspectLoaderMain {
798
798
  return graph;
799
799
  }
800
800
  async loadAspectFromPath(localAspects) {
801
+ const res = {};
801
802
  const dirPaths = this.parseLocalAspect(localAspects);
802
- const manifests = dirPaths.map(dirPath => {
803
+ const manifests = dirPaths.map(([dirPath, localAspect]) => {
803
804
  const scopeRuntime = this.findRuntime(dirPath, 'scope');
804
805
  if (scopeRuntime) {
805
806
  // eslint-disable-next-line global-require, import/no-dynamic-require
806
807
  const module = require((0, _path().join)(dirPath, 'dist', scopeRuntime));
807
- return module.default || module;
808
+ const manifest = module.default || module;
809
+ res[manifest.id] = localAspect;
810
+ return manifest;
808
811
  }
809
812
  // eslint-disable-next-line global-require, import/no-dynamic-require
810
813
  const module = require(dirPath);
811
- return module.default || module;
814
+ const manifest = module.default || module;
815
+ res[manifest.id] = localAspect;
816
+ return manifest;
812
817
  });
813
818
  await this.loadExtensionsByManifests(manifests, undefined, {
814
819
  throwOnError: true
815
820
  });
821
+ return res;
816
822
  }
817
823
  parseLocalAspect(localAspects) {
818
- const dirPaths = localAspects.map(localAspect => (0, _path().resolve)(localAspect.replace('file://', '')));
819
- const nonExistsDirPaths = dirPaths.filter(path => !(0, _fsExtra().existsSync)(path));
824
+ const dirPaths = localAspects.map(localAspect => [(0, _path().resolve)(localAspect.replace('file://', '')), localAspect]);
825
+ const nonExistsDirPaths = dirPaths.filter(([path]) => !(0, _fsExtra().existsSync)(path));
820
826
  nonExistsDirPaths.forEach(path => this.logger.warn(`no such file or directory: ${path}`));
821
- const existsDirPaths = dirPaths.filter(path => (0, _fsExtra().existsSync)(path));
827
+ const existsDirPaths = dirPaths.filter(([path]) => (0, _fsExtra().existsSync)(path));
822
828
  return existsDirPaths;
823
829
  }
824
830
  findRuntime(dirPath, runtime) {
@@ -826,7 +832,7 @@ class AspectLoaderMain {
826
832
  return files.find(path => path.includes(`${runtime}.runtime.js`));
827
833
  }
828
834
  async resolveLocalAspects(ids, runtime) {
829
- const dirs = this.parseLocalAspect(ids);
835
+ const dirs = this.parseLocalAspect(ids).map(([dir]) => dir);
830
836
  return dirs.map(dir => {
831
837
  const srcRuntimeManifest = runtime ? this.findRuntime(dir, runtime) : undefined;
832
838
  const srcAspectFilePath = runtime ? this.findAspectFile(dir) : undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","require","_toolboxPerformance","_nodeUtils","_interopRequireDefault","_fsExtra","_graph","_componentId","_scope","_constants","_cli","_harmony","_bitError","_logger","_compilationModules","_envs","_bit","_scope2","_graphql","_pMapSeries","_lodash","_aspectDefinition","_aspectLoader","_constants2","_isEsmModule","_exceptions","_coreAspects","_plugins","_aspectLoader2","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","AspectLoaderMain","constructor","logger","envs","harmony","onAspectLoadErrorSlot","onLoadRequireableExtensionSlot","pluginSlot","Set","getCoreAspectsPackagesAndIds","allCoreAspectsIds","getCoreAspectIds","coreAspectsPackagesAndIds","id","packageName","getCoreAspectPackageName","getCompiler","component","env","getEnv","registerOnAspectLoadErrorSlot","onAspectLoadError","register","registerOnLoadRequireableExtensionSlot","onLoadRequireableExtension","triggerOnAspectLoadError","err","entries","toArray","isFixed","mapSeries","onAspectFailFunc","result","getRuntimePath","modulePath","runtime","runtimeFile","filesystem","files","find","file","relative","includes","compiler","join","dist","getDistPathBySrcPath","info","distPath","DEFAULT_DIST_DIRNAME","replaceFileExtToJs","getAspectFilePath","aspectFile","isAspectLoaded","failedAspects","get","getDescriptor","instance","iconFn","icon","undefined","addInMemoryConfiguredAspect","aspectId","inMemoryConfiguredAspects","getConfiguredAspects","configuredAspects","Array","from","config","raw","iMemoryConfiguredAspects","concat","getNotLoadedConfiguredExtensions","harmonyExtensions","extensionsIds","loadedExtensions","extId","extensions","loaded","extensionsToLoad","difference","loadDefinition","props","AspectDefinition","coreAspects","isCoreAspect","ids","setCoreAspects","aspects","map","aspect","_reserved","getCoreEnvsIds","envsIds","allIds","intersection","isCoreEnv","getUserAspects","coreAspectIds","getCoreAspectDefs","runtimeName","defs","Promise","all","rawDef","getAspectDef","def","runtimePath","resolveAspects","components","resolver","promises","resolvedAspect","aspectPath","aspectFilePath","aspectDefs","compact","mainAspect","_mainAspect","setMainAspect","failedLoadAspect","resetFailedLoadAspects","addFailure","cloneManifest","manifest","cloned","assign","create","getPrototypeOf","provider","addRuntime","getRuntime","doRequire","requireableExtension","runSubscribers","idStr","toString","runOnLoadRequireableExtensionSubscribers","loadRequireableExtensions","requireableExtensions","throwOnError","manifests","getManifestsFromRequireableExtensions","loadExtensionsByManifests","manifestsP","firstErr","warn","errAfterReLoad","error","handleExtensionLoadingError","addFailedToLoadExt","errorMsg","message","split","msg","UNABLE_TO_LOAD_EXTENSION","console","CannotLoadExtension","printWarningIfFirstTime","isLoaderStarted","envId","showAsFailure","alreadyShownWarning","has","add","consoleFailure","consoleWarning","updatedManifest","onLoadRequireableExtensionFunc","getPluginDefs","flatten","values","getPlugins","componentPath","getPluginsFromDefs","isEsmModule","path","loadEsm","NativeCompileCache","uninstall","esmLoader","Plugins","bind","pluginFileResolver","getPluginFiles","hasPluginFiles","isEmpty","searchDistFile","rootDir","relativePath","replaceNotFound","defaultDistDir","fileExtension","extname","fileNames","ext","replace","RegExp","defaultDistPath","fileName","found","existsSync","jsFileName","finalPath","endsWith","distFile","isAspect","isValidAspect","isAspectComponent","isUsingAspectEnv","loadAspectsFromGlobalScope","aspectIds","globalScope","LegacyScope","ensure","GLOBAL_SCOPE","ensureDir","legacyGlobalsSnapshot","takeLegacyGlobalsSnapshot","globalScopeHarmony","loadBit","scope","ScopeAspect","aspectLoader","AspectLoaderAspect","ComponentID","fromString","hasVersions","every","hasVersion","useCache","import","reason","getMany","resolvedAspects","getResolvedAspects","workspaceName","code","resolvedAspectsAgain","skipIfExists","filterAspectDefs","allDefs","componentIds","filterOpts","coreIds","stringIds","toStringWithoutVersion","afterExclusion","excludeCore","isCore","getId","isTarget","uniqDefs","uniqBy","filterByRuntime","requestedOnly","componentIdsString","getAspectIdFromAspectFile","module","isObject","prepareManifests","MainRuntime","Error","Aspect","registerPlugins","pluginDefs","extensionsManifests","context","seeders","options","hideMissingModuleError","ignoreErrors","unifyErrorsByExtId","neededFor","defaultLoadExtByManifestOptions","mergedOptions","isValid","preparedManifests","getOnlyDeclaredDependenciesManifests","manifestGraph","generateManifestGraph","nodes","seeder","successors","flat","seederNodes","node","allNodes","nodesUniq","n","attr","relevantManifests","load","needToPrint","some","failedToLoadExt","parsedId","tryFromString","fullName","warning","UNABLE_TO_LOAD_EXTENSION_FROM_LIST","BitError","graph","Graph","setNode","Node","deps","dependencies","dep","setEdge","Edge","loadAspectFromPath","localAspects","dirPaths","parseLocalAspect","dirPath","scopeRuntime","findRuntime","localAspect","resolve","nonExistsDirPaths","existsDirPaths","readdirSync","resolveLocalAspects","dirs","dir","srcRuntimeManifest","srcAspectFilePath","findAspectFile","runtimeManifest","loggerExt","graphql","createLogger","aspectLoaderSchema","getEnvPlugin","exports","LoggerAspect","EnvsAspect","GraphqlAspect","Slot","withType","_default"],"sources":["aspect-loader.main.runtime.ts"],"sourcesContent":["import { join, resolve, extname } from 'path';\nimport { NativeCompileCache } from '@teambit/toolbox.performance.v8-cache';\nimport esmLoader from '@teambit/node.utils.esm-loader';\n// import findRoot from 'find-root';\nimport { readdirSync, existsSync } from 'fs-extra';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { ComponentID } from '@teambit/component-id';\nimport LegacyScope from '@teambit/legacy/dist/scope/scope';\nimport { GLOBAL_SCOPE, DEFAULT_DIST_DIRNAME } from '@teambit/legacy/dist/constants';\nimport { MainRuntime } from '@teambit/cli';\nimport { ExtensionManifest, Harmony, Aspect, SlotRegistry, Slot } from '@teambit/harmony';\nimport { BitError } from '@teambit/bit-error';\nimport type { LoggerMain } from '@teambit/logger';\nimport { Component, FilterAspectsOptions } from '@teambit/component';\nimport { Logger, LoggerAspect } from '@teambit/logger';\nimport { RequireableComponent } from '@teambit/harmony.modules.requireable-component';\nimport { replaceFileExtToJs } from '@teambit/compilation.modules.babel-compiler';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { LegacyGlobal, loadBit, takeLegacyGlobalsSnapshot } from '@teambit/bit';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport mapSeries from 'p-map-series';\nimport { difference, compact, flatten, intersection, uniqBy, some, isEmpty, isObject } from 'lodash';\nimport { AspectDefinition, AspectDefinitionProps } from './aspect-definition';\nimport { PluginDefinition } from './plugin-definition';\nimport { AspectLoaderAspect } from './aspect-loader.aspect';\nimport { UNABLE_TO_LOAD_EXTENSION, UNABLE_TO_LOAD_EXTENSION_FROM_LIST } from './constants';\nimport { isEsmModule } from './is-esm-module';\nimport { CannotLoadExtension } from './exceptions';\nimport { getAspectDef, getCoreAspectPackageName } from './core-aspects';\nimport { Plugins } from './plugins';\nimport { aspectLoaderSchema } from './aspect-loader.graphql';\n\nexport type PluginDefinitionSlot = SlotRegistry<PluginDefinition[]>;\n\nexport type AspectDescriptor = {\n /**\n * name of the extension.\n */\n id: string;\n\n /**\n * icon of the extension.\n */\n icon?: string;\n};\n\nexport type AspectResolver = (component: Component) => Promise<ResolvedAspect | undefined>;\n\nexport type ResolvedAspect = {\n aspectPath: string;\n runtimePath: string | null;\n aspectFilePath: string | null;\n};\n\nexport type LoadExtByManifestContext = {\n seeders?: string[];\n neededFor?: string;\n};\n\nexport type LoadExtByManifestOptions = {\n throwOnError?: boolean;\n hideMissingModuleError?: boolean;\n ignoreErrors?: boolean;\n /**\n * If this is enabled then we will show loading error only once for a given extension\n * (even if it was actually try to load it few times by different components for example)\n */\n unifyErrorsByExtId?: boolean;\n};\n\ntype OnAspectLoadError = (err: Error, component: Component) => Promise<boolean>;\nexport type OnAspectLoadErrorSlot = SlotRegistry<OnAspectLoadError>;\n\nexport type OnAspectLoadErrorHandler = (err: Error, component: Component) => Promise<boolean>;\n\nexport type OnLoadRequireableExtension = (\n requireableExtension: RequireableComponent,\n manifest: ExtensionManifest | Aspect\n) => Promise<ExtensionManifest | Aspect>;\n/**\n * A slot which run during loading the requirable extension (after first manifest calculation)\n */\nexport type OnLoadRequireableExtensionSlot = SlotRegistry<OnLoadRequireableExtension>;\n\nexport type MainAspect = {\n /**\n * path to the main aspect.\n */\n path: string;\n\n /**\n * version of the aspect.\n */\n version: string | undefined;\n\n /**\n * package name of the aspect\n */\n packageName: string | undefined;\n\n /**\n * reference to aspect manifest.\n */\n aspect: Aspect;\n\n /**\n * The name of the aspect (without the scope prefix)\n */\n name: string;\n\n /**\n * The name of the aspect\n */\n id: string;\n};\n\nexport class AspectLoaderMain {\n private inMemoryConfiguredAspects: string[] = [];\n private failedToLoadExt = new Set<string>();\n private alreadyShownWarning = new Set<string>();\n\n constructor(\n private logger: Logger,\n private envs: EnvsMain,\n private harmony: Harmony,\n private onAspectLoadErrorSlot: OnAspectLoadErrorSlot,\n private onLoadRequireableExtensionSlot: OnLoadRequireableExtensionSlot,\n private pluginSlot: PluginDefinitionSlot\n ) {}\n\n getCoreAspectsPackagesAndIds(): Record<string, string> {\n const allCoreAspectsIds = this.getCoreAspectIds();\n const coreAspectsPackagesAndIds = {};\n\n allCoreAspectsIds.forEach((id) => {\n const packageName = getCoreAspectPackageName(id);\n coreAspectsPackagesAndIds[packageName] = id;\n });\n\n return coreAspectsPackagesAndIds;\n }\n\n private getCompiler(component: Component) {\n const env = this.envs.getEnv(component)?.env;\n return env?.getCompiler();\n }\n\n registerOnAspectLoadErrorSlot(onAspectLoadError: OnAspectLoadError) {\n this.onAspectLoadErrorSlot.register(onAspectLoadError);\n }\n\n registerOnLoadRequireableExtensionSlot(onLoadRequireableExtension: OnLoadRequireableExtension) {\n this.onLoadRequireableExtensionSlot.register(onLoadRequireableExtension);\n }\n\n /**\n * returns whether the aspect-load issue has been fixed.\n */\n async triggerOnAspectLoadError(err: Error, component: Component): Promise<boolean> {\n const entries = this.onAspectLoadErrorSlot.toArray(); // e.g. [ [ 'teambit.bit/compiler', [Function: bound onAspectLoadError] ] ]\n let isFixed = false;\n await mapSeries(entries, async ([, onAspectFailFunc]) => {\n const result = await onAspectFailFunc(err, component);\n if (result) isFixed = true;\n });\n\n return isFixed;\n }\n\n async getRuntimePath(component: Component, modulePath: string, runtime: string): Promise<string | null> {\n const runtimeFile = component.filesystem.files.find((file: any) => {\n return file.relative.includes(`.${runtime}.runtime`);\n });\n\n // @david we should add a compiler api for this.\n if (!runtimeFile) return null;\n try {\n const compiler = this.getCompiler(component);\n\n if (!compiler) {\n return join(modulePath, runtimeFile.relative);\n }\n\n const dist = compiler.getDistPathBySrcPath(runtimeFile.relative);\n return join(modulePath, dist);\n } catch (e) {\n this.logger.info(`got an error during get runtime path, probably the env is not loaded yet ${e}`);\n // TODO: we are manually adding the dist here and replace the file name to handle case when\n // we load aspects from scope, and their env in the same iteration, but we get into the aspect before its\n // env, so it's env doesn't exist yet\n // we should make sure to first load the env correctly before loading the aspect\n const distPath = join(modulePath, DEFAULT_DIST_DIRNAME, replaceFileExtToJs(runtimeFile.relative));\n return distPath;\n }\n }\n\n async getAspectFilePath(component: Component, modulePath: string): Promise<string | null> {\n const aspectFile = component.filesystem.files.find((file: any) => {\n return file.relative.includes(`.aspect.ts`) || file.relative.includes(`.aspect.js`);\n });\n\n // @david we should add a compiler api for this.\n if (!aspectFile) return null;\n try {\n const compiler = this.getCompiler(component);\n\n if (!compiler) {\n return join(modulePath, aspectFile.relative);\n }\n\n const dist = compiler.getDistPathBySrcPath(aspectFile.relative);\n return join(modulePath, dist);\n } catch (e) {\n this.logger.info(`got an error during get runtime path, probably the env is not loaded yet ${e}`);\n // TODO: we are manually adding the dist here and replace the file name to handle case when\n // we load aspects from scope, and their env in the same iteration, but we get into the aspect before its\n // env, so it's env doesn't exist yet\n // we should make sure to first load the env correctly before loading the aspect\n const distPath = join(modulePath, DEFAULT_DIST_DIRNAME, replaceFileExtToJs(aspectFile.relative));\n return distPath;\n }\n }\n\n isAspectLoaded(id: string) {\n if (this.failedAspects.includes(id)) return true;\n try {\n return this.harmony.get(id);\n } catch (err: any) {\n return false;\n }\n }\n\n getDescriptor(id: string): AspectDescriptor | undefined {\n try {\n const instance = this.harmony.get<any>(id);\n const iconFn = instance.icon;\n\n const icon = iconFn ? iconFn.apply(instance) : undefined;\n\n return {\n id,\n icon,\n };\n } catch (err) {\n return undefined;\n }\n }\n\n /**\n * This is used when adding aspects to workspace.jsonc during the process (like in bit use command)\n * and we want to make sure that follow operation (like bit install) will recognize those aspects\n * but the harmony config is already in memory.\n * Probably a better to do it is to make sure we can re-load the config somehow\n * ideally by adding the config class in harmony a reload API\n * @param aspectId\n */\n addInMemoryConfiguredAspect(aspectId: string): void {\n this.inMemoryConfiguredAspects.push(aspectId);\n }\n\n /**\n * get all the configured aspects in the config file (workspace.jsonc / scope.jsonc)\n */\n getConfiguredAspects(): string[] {\n const configuredAspects = Array.from(this.harmony.config.raw.keys());\n const iMemoryConfiguredAspects = this.inMemoryConfiguredAspects;\n return configuredAspects.concat(iMemoryConfiguredAspects);\n }\n getNotLoadedConfiguredExtensions() {\n const configuredAspects = this.getConfiguredAspects();\n const harmonyExtensions = this.harmony.extensionsIds;\n const loadedExtensions = harmonyExtensions.filter((extId) => {\n return this.harmony.extensions.get(extId)?.loaded;\n });\n const extensionsToLoad = difference(configuredAspects, loadedExtensions);\n return extensionsToLoad;\n }\n\n loadDefinition(props: AspectDefinitionProps): AspectDefinition {\n return AspectDefinition.from(props);\n }\n\n private _coreAspects: Aspect[] = [];\n\n get coreAspects() {\n return this._coreAspects;\n }\n\n isCoreAspect(id: string) {\n const ids = this.getCoreAspectIds();\n return ids.includes(id);\n }\n\n setCoreAspects(aspects: Aspect[]) {\n this._coreAspects = aspects;\n return this;\n }\n\n getCoreAspectIds() {\n const ids = this.coreAspects.map((aspect) => aspect.id);\n return ids.concat(this._reserved);\n }\n\n /**\n * Get all the core envs ids which is still register in the bit manifest as core aspect\n */\n getCoreEnvsIds(): string[] {\n const envsIds = this.envs.getCoreEnvsIds();\n const allIds = this.getCoreAspectIds();\n return intersection(allIds, envsIds);\n }\n\n isCoreEnv(id: string): boolean {\n const ids = this.getCoreEnvsIds();\n return ids.includes(id);\n }\n\n private _reserved = ['teambit.harmony/bit', 'teambit.harmony/config'];\n\n getUserAspects(): string[] {\n const coreAspectIds = this.getCoreAspectIds();\n return difference(this.harmony.extensionsIds, coreAspectIds);\n }\n\n async getCoreAspectDefs(runtimeName?: string) {\n const defs = await Promise.all(\n this.coreAspects.map(async (aspect) => {\n const id = aspect.id;\n const rawDef = await getAspectDef(id, runtimeName);\n return this.loadDefinition(rawDef);\n })\n );\n\n return defs.filter((def) => def.runtimePath);\n }\n\n async resolveAspects(components: Component[], resolver: AspectResolver): Promise<AspectDefinition[]> {\n const promises = components.map(async (component) => {\n const resolvedAspect = await resolver(component);\n if (!resolvedAspect) return undefined;\n return new AspectDefinition(\n resolvedAspect.aspectPath,\n resolvedAspect.aspectFilePath,\n resolvedAspect.runtimePath,\n component\n );\n });\n\n const aspectDefs = await Promise.all(promises);\n // return aspectDefs.filter((def) => def.runtimePath);\n return compact(aspectDefs);\n }\n\n private _mainAspect: MainAspect;\n\n get mainAspect() {\n return this._mainAspect;\n }\n\n setMainAspect(mainAspect: MainAspect) {\n this._mainAspect = mainAspect;\n return this;\n }\n\n private failedLoadAspect: string[] = [];\n\n get failedAspects() {\n return this.failedLoadAspect;\n }\n\n public resetFailedLoadAspects() {\n this.failedLoadAspect = [];\n }\n\n private addFailure(id: string): void {\n if (this.failedAspects.includes(id)) return;\n this.failedLoadAspect.push(id);\n }\n\n cloneManifest(manifest: any) {\n const cloned = Object.assign(Object.create(Object.getPrototypeOf(manifest)), manifest);\n cloned.provider = manifest.provider;\n cloned.addRuntime = manifest.addRuntime;\n cloned.getRuntime = manifest.getRuntime;\n return cloned;\n }\n\n /**\n * run \"require\" of the component code to get the manifest\n */\n async doRequire(\n requireableExtension: RequireableComponent,\n runSubscribers = true\n ): Promise<ExtensionManifest | Aspect> {\n const idStr = requireableExtension.component.id.toString();\n const aspect = await requireableExtension.require();\n const manifest = aspect.default || aspect;\n manifest.id = idStr;\n // It's important to clone deep the manifest here to prevent mutate dependencies of other manifests as they point to the same location in memory\n const cloned = this.cloneManifest(manifest);\n if (runSubscribers) return this.runOnLoadRequireableExtensionSubscribers(requireableExtension, cloned);\n return cloned;\n }\n\n /**\n * in case the extension failed to load, prefer to throw an error, unless `throwOnError` param\n * passed as `false`.\n * there are cases when throwing an error blocks the user from doing anything else. for example,\n * when a user develops an extension and deletes the node-modules, the extension on the workspace\n * cannot be loaded anymore until \"bit compile\" is running. however, if this function throws an\n * error, it'll throw for \"bit compile\" as well, which blocks the user.\n * for the CI, it is important to throw an error because errors on console can be ignored.\n * for now, when loading the extension from the workspace the throwOnError is passed as false.\n * when loading from the scope (CI) it should be true.\n *\n * the console printing here is done directly by \"console.error\" and not by the logger. the reason\n * is that the logger.console only prints when the loader started (which, btw, happens after\n * entering this function, so it can't work) and here we want it to be printed regardless of the\n * rules of starting the loader. e.g. if by mistake the CI got it as throwOnError=false, it's ok\n * to break the output by the console.error.\n *\n * @todo: this is not the final word however about throwing/non throwing errors here.\n * in some cases, such as \"bit tag\", it's better not to tag if an extension changes the model.\n */\n async loadRequireableExtensions(requireableExtensions: RequireableComponent[], throwOnError = false): Promise<void> {\n const manifests = await this.getManifestsFromRequireableExtensions(requireableExtensions, throwOnError);\n return this.loadExtensionsByManifests(manifests, undefined, { throwOnError });\n }\n\n async getManifestsFromRequireableExtensions(\n requireableExtensions: RequireableComponent[],\n throwOnError = false,\n runSubscribers = true\n ): Promise<Array<ExtensionManifest | Aspect>> {\n const manifestsP = mapSeries(requireableExtensions, async (requireableExtension) => {\n if (!requireableExtensions) return undefined;\n const idStr = requireableExtension.component.id.toString();\n try {\n return await this.doRequire(requireableExtension, runSubscribers);\n } catch (firstErr: any) {\n this.addFailure(idStr);\n this.logger.warn(`failed loading an aspect \"${idStr}\", will try to fix and reload`, firstErr);\n const isFixed = await this.triggerOnAspectLoadError(firstErr, requireableExtension.component);\n let errAfterReLoad;\n if (isFixed) {\n this.logger.info(`the loading issue might be fixed now, re-loading ${idStr}`);\n try {\n return await this.doRequire(requireableExtension);\n } catch (err: any) {\n this.logger.warn(`re-load of the aspect \"${idStr}\" failed as well`, err);\n errAfterReLoad = err;\n }\n }\n const error = errAfterReLoad || firstErr;\n this.handleExtensionLoadingError(error, idStr, throwOnError);\n }\n return undefined;\n });\n const manifests = await manifestsP;\n\n // Remove empty manifests as a result of loading issue\n return compact(manifests);\n }\n\n handleExtensionLoadingError(error: Error, idStr: string, throwOnError: boolean) {\n this.envs.addFailedToLoadExt(idStr);\n const errorMsg = error.message.split('\\n')[0]; // show only the first line if the error is long (e.g. happens with MODULE_NOT_FOUND errors)\n const msg = UNABLE_TO_LOAD_EXTENSION(idStr, errorMsg);\n if (throwOnError) {\n // @ts-ignore\n this.logger.console(error);\n throw new CannotLoadExtension(idStr, error);\n }\n this.logger.error(msg, error);\n this.printWarningIfFirstTime(idStr, msg, this.logger.isLoaderStarted);\n }\n\n private printWarningIfFirstTime(envId: string, msg: string, showAsFailure: boolean) {\n if (!this.alreadyShownWarning.has(envId)) {\n this.alreadyShownWarning.add(envId);\n if (showAsFailure) {\n this.logger.consoleFailure(msg);\n } else {\n this.logger.consoleWarning(msg);\n }\n }\n }\n\n async runOnLoadRequireableExtensionSubscribers(\n requireableExtension: RequireableComponent,\n manifest: ExtensionManifest | Aspect\n ): Promise<ExtensionManifest | Aspect> {\n let updatedManifest = manifest;\n const entries = this.onLoadRequireableExtensionSlot.toArray();\n await mapSeries(entries, async ([, onLoadRequireableExtensionFunc]) => {\n updatedManifest = await onLoadRequireableExtensionFunc(requireableExtension, updatedManifest);\n });\n return updatedManifest;\n }\n\n getPluginDefs() {\n return flatten(this.pluginSlot.values());\n }\n\n getPlugins(component: Component, componentPath: string): Plugins {\n const defs = this.getPluginDefs();\n return this.getPluginsFromDefs(component, componentPath, defs);\n }\n\n async isEsmModule(path: string) {\n return isEsmModule(path);\n }\n\n async loadEsm(path: string) {\n NativeCompileCache.uninstall();\n return esmLoader(path);\n }\n\n getPluginsFromDefs(component: Component, componentPath: string, defs: PluginDefinition[]): Plugins {\n return Plugins.from(\n component,\n defs,\n this.triggerOnAspectLoadError.bind(this),\n this.logger,\n this.pluginFileResolver.call(this, component, componentPath)\n );\n }\n\n getPluginFiles(component: Component, componentPath: string): string[] {\n const defs = this.getPluginDefs();\n return Plugins.files(component, defs, this.pluginFileResolver.call(this, component, componentPath));\n }\n\n hasPluginFiles(component: Component): boolean {\n const defs = this.getPluginDefs();\n const files = Plugins.files(component, defs);\n return !isEmpty(files);\n }\n\n private searchDistFile(rootDir: string, relativePath: string, replaceNotFound = false) {\n const defaultDistDir = join(rootDir, 'dist');\n const fileExtension = extname(relativePath);\n const fileNames = ['ts', 'js', 'tsx', 'jsx'].map((ext) =>\n relativePath.replace(new RegExp(`${fileExtension}$`), `.${ext}`)\n );\n const defaultDistPath = fileNames.map((fileName) => join(defaultDistDir, fileName));\n const found = defaultDistPath.find((distPath) => existsSync(distPath));\n if (found) return found;\n if (!replaceNotFound) return null;\n const jsFileName = relativePath.replace(new RegExp(`${fileExtension}$`), `.js`);\n const finalPath = join(defaultDistDir, jsFileName);\n return finalPath;\n }\n\n pluginFileResolver(component: Component, rootDir: string) {\n return (relativePath: string) => {\n const replaceNotFound = relativePath.endsWith('.ts') || relativePath.endsWith('.tsx');\n\n try {\n const compiler = this.getCompiler(component);\n if (!compiler) {\n const distFile = this.searchDistFile(rootDir, relativePath, replaceNotFound);\n return distFile || join(rootDir, relativePath);\n }\n\n const dist = compiler.getDistPathBySrcPath(relativePath);\n return join(rootDir, dist);\n } catch (err) {\n // This might happen for example when loading an env from the global scope, and the env of the env / aspect is not a core one\n this.logger.info(\n `pluginFileResolver: got an error during get compiler for component ${component.id.toString()}, probably the env is not loaded yet ${err}`\n );\n const distFile = this.searchDistFile(rootDir, relativePath, replaceNotFound);\n return distFile || join(rootDir, relativePath);\n }\n };\n }\n\n isAspect(manifest: any) {\n return !!(manifest.addRuntime && manifest.getRuntime);\n }\n\n isValidAspect(manifest: any): boolean {\n return this.isAspect(manifest) || manifest.provider;\n }\n\n isAspectComponent(component: Component): boolean {\n return this.envs.isUsingAspectEnv(component);\n }\n\n /**\n * get or create a global scope, import the non-core aspects, load bit from that scope, create\n * capsules for the aspects and load them from the capsules.\n */\n async loadAspectsFromGlobalScope(\n aspectIds: string[]\n ): Promise<{ components: Component[]; globalScopeHarmony: Harmony; legacyGlobalsSnapshot: LegacyGlobal[] }> {\n const globalScope = await LegacyScope.ensure(GLOBAL_SCOPE, 'global-scope');\n await globalScope.ensureDir();\n const legacyGlobalsSnapshot = takeLegacyGlobalsSnapshot();\n const globalScopeHarmony = await loadBit(globalScope.path);\n const scope = globalScopeHarmony.get<ScopeMain>(ScopeAspect.id);\n const aspectLoader = globalScopeHarmony.get<AspectLoaderMain>(AspectLoaderAspect.id);\n const ids = aspectIds.map((id) => ComponentID.fromString(id));\n const hasVersions = ids.every((id) => id.hasVersion());\n const useCache = hasVersions; // if all components has versions, try to use the cached aspects\n await scope.import(ids, { useCache, reason: 'to load aspects from global scope' });\n const components = await scope.getMany(ids, true);\n\n // don't use `await scope.loadAspectsFromCapsules(components, true);`\n // it won't work for globalScope because `this !== scope.aspectLoader` (this instance\n // is not the same as the aspectLoader instance Scope has)\n const resolvedAspects = await scope.getResolvedAspects(components, { workspaceName: 'global-scope' });\n try {\n await aspectLoader.loadRequireableExtensions(resolvedAspects, true);\n } catch (err: any) {\n if (err?.error?.code === 'MODULE_NOT_FOUND') {\n const resolvedAspectsAgain = await scope.getResolvedAspects(components, {\n skipIfExists: false,\n workspaceName: 'global-scope',\n });\n await aspectLoader.loadRequireableExtensions(resolvedAspectsAgain, true);\n } else {\n throw err;\n }\n }\n\n return { components, globalScopeHarmony, legacyGlobalsSnapshot };\n }\n\n filterAspectDefs(\n allDefs: AspectDefinition[],\n componentIds: ComponentID[],\n runtimeName: string | undefined,\n filterOpts: FilterAspectsOptions = {}\n ) {\n const coreIds = this.getCoreAspectIds();\n const stringIds = componentIds.map((id) => id.toStringWithoutVersion());\n const afterExclusion = filterOpts.excludeCore\n ? allDefs.filter((def) => {\n const isCore = coreIds.includes(def.getId || '');\n const id = ComponentID.fromString(def.getId || '');\n const isTarget = stringIds.includes(id.toStringWithoutVersion());\n if (isTarget) return true;\n return !isCore;\n })\n : allDefs;\n\n const uniqDefs = uniqBy(afterExclusion, (def) => `${def.aspectPath}-${def.runtimePath}`);\n let defs = uniqDefs;\n if (runtimeName && filterOpts.filterByRuntime) {\n defs = defs.filter((def) => def.runtimePath);\n }\n\n if (componentIds && componentIds.length && filterOpts.requestedOnly) {\n const componentIdsString = componentIds.map((id) => id.toString());\n defs = defs.filter((def) => {\n return (\n (def.id && componentIdsString.includes(def.id)) ||\n (def.component && componentIdsString.includes(def.component?.id.toString()))\n );\n });\n }\n\n return defs;\n }\n\n getAspectIdFromAspectFile(aspectFilePath: string): string | undefined {\n try {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = aspectFilePath ? require(aspectFilePath) : undefined;\n let manifest = module.default || module;\n if (this.isAspect(manifest)) {\n return manifest.id;\n }\n if (isObject(manifest)) {\n if (isEmpty(manifest)) {\n this.logger.warn(\n `getAspectIdFromAspectFile - aspect at ${aspectFilePath} missing exports. couldn't calculate the manifest`\n );\n return undefined;\n }\n if (Object.keys(manifest).length > 1) {\n this.logger.warn(\n `getAspectIdFromAspectFile - aspect at ${aspectFilePath} exports too many keys. couldn't calculate the manifest`\n );\n return undefined;\n }\n manifest = Object.values(manifest)[0];\n if (this.isAspect(manifest)) {\n return manifest.id;\n }\n }\n this.logger.warn(`getAspectIdFromAspectFile - aspect at ${aspectFilePath} is not a valid aspect`);\n return undefined;\n } catch (err) {\n this.logger.warn(`getAspectIdFromAspectFile - couldn't require the aspect file ${aspectFilePath}. err: ${err}`);\n return undefined;\n }\n }\n\n private prepareManifests(manifests: Array<ExtensionManifest | Aspect>): Aspect[] {\n return manifests.map((manifest: any) => {\n if (this.isAspect(manifest)) return manifest as Aspect;\n manifest.runtime = MainRuntime;\n if (!manifest.id) throw new Error('manifest must have static id');\n const aspect = Aspect.create({\n id: manifest.id,\n });\n aspect.addRuntime(manifest);\n return aspect;\n });\n }\n\n /**\n * register a plugin.\n */\n registerPlugins(pluginDefs: PluginDefinition[]) {\n this.pluginSlot.register(pluginDefs);\n }\n\n async loadExtensionsByManifests(\n extensionsManifests: Array<ExtensionManifest | Aspect>,\n context: LoadExtByManifestContext = {\n seeders: [],\n },\n options: LoadExtByManifestOptions = {\n throwOnError: true,\n hideMissingModuleError: false,\n ignoreErrors: false,\n unifyErrorsByExtId: true,\n }\n ) {\n const neededFor = context.neededFor;\n const seeders = context.seeders || [];\n const defaultLoadExtByManifestOptions = {\n throwOnError: true,\n hideMissingModuleError: false,\n ignoreErrors: false,\n unifyErrorsByExtId: true,\n };\n const mergedOptions = { ...defaultLoadExtByManifestOptions, ...options };\n try {\n const manifests = extensionsManifests.filter((manifest) => {\n const isValid = this.isValidAspect(manifest);\n if (!isValid) this.logger.warn(`${manifest.id} is invalid. please make sure the extension is valid.`);\n return isValid;\n });\n const preparedManifests = this.prepareManifests(manifests);\n // don't let harmony load all aspects. if seeders were sent, find their manifests, check for their static\n // dependencies, and load only them.\n const getOnlyDeclaredDependenciesManifests = () => {\n if (!seeders.length || seeders.length === preparedManifests.length) {\n return preparedManifests;\n }\n const manifestGraph = this.generateManifestGraph(preparedManifests);\n const nodes = seeders.map((seeder) => manifestGraph.successors(seeder)).flat();\n const seederNodes = compact(seeders.map((seeder) => manifestGraph.node(seeder)));\n const allNodes = [...nodes, ...seederNodes];\n const nodesUniq = uniqBy(allNodes, 'id');\n return nodesUniq.map((n) => n.attr);\n };\n const relevantManifests = getOnlyDeclaredDependenciesManifests();\n // @ts-ignore TODO: fix this\n await this.harmony.load(relevantManifests);\n } catch (e: any) {\n const ids = extensionsManifests.map((manifest) => manifest.id || 'unknown');\n if (mergedOptions.unifyErrorsByExtId) {\n const needToPrint = some(ids, (id) => !this.failedToLoadExt.has(id));\n if (!needToPrint) return;\n ids.forEach((id) => {\n this.failedToLoadExt.add(id);\n this.envs.addFailedToLoadExt(id);\n const parsedId = ComponentID.tryFromString(id);\n if (parsedId) {\n this.failedToLoadExt.add(parsedId.fullName);\n this.envs.addFailedToLoadExt(parsedId.fullName);\n }\n });\n }\n if (mergedOptions.ignoreErrors) return;\n if ((e.code === 'MODULE_NOT_FOUND' || e.code === 'ERR_MODULE_NOT_FOUND') && mergedOptions.hideMissingModuleError)\n return;\n // TODO: improve texts\n const errorMsg = e.message.split('\\n')[0];\n const warning = UNABLE_TO_LOAD_EXTENSION_FROM_LIST(ids, errorMsg, neededFor);\n this.logger.error(warning, e);\n if (this.logger.isLoaderStarted) {\n if (mergedOptions.throwOnError) throw new BitError(warning);\n this.logger.consoleFailure(warning);\n } else {\n this.logger.consoleWarning(warning);\n this.logger.consoleWarning(e);\n }\n if (mergedOptions.throwOnError) {\n throw e;\n }\n }\n }\n\n private generateManifestGraph(manifests: Aspect[]) {\n const graph = new Graph<Aspect, string>();\n manifests.forEach((manifest) => graph.setNode(new Node(manifest.id, manifest)));\n manifests.forEach((manifest) => {\n const deps = manifest.getRuntime(MainRuntime)?.dependencies?.map((dep) => dep.id);\n deps?.forEach((dep) => {\n if (graph.node(dep)) {\n graph.setEdge(new Edge(manifest.id, dep, 'dep'));\n }\n });\n });\n return graph;\n }\n\n public async loadAspectFromPath(localAspects: string[]) {\n const dirPaths = this.parseLocalAspect(localAspects);\n const manifests = dirPaths.map((dirPath) => {\n const scopeRuntime = this.findRuntime(dirPath, 'scope');\n if (scopeRuntime) {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = require(join(dirPath, 'dist', scopeRuntime));\n return module.default || module;\n }\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = require(dirPath);\n return module.default || module;\n });\n\n await this.loadExtensionsByManifests(manifests, undefined, { throwOnError: true });\n }\n\n private parseLocalAspect(localAspects: string[]) {\n const dirPaths = localAspects.map((localAspect) => resolve(localAspect.replace('file://', '')));\n const nonExistsDirPaths = dirPaths.filter((path) => !existsSync(path));\n nonExistsDirPaths.forEach((path) => this.logger.warn(`no such file or directory: ${path}`));\n const existsDirPaths = dirPaths.filter((path) => existsSync(path));\n return existsDirPaths;\n }\n\n private findRuntime(dirPath: string, runtime: string) {\n const files = readdirSync(join(dirPath, 'dist'));\n return files.find((path) => path.includes(`${runtime}.runtime.js`));\n }\n\n public async resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]> {\n const dirs = this.parseLocalAspect(ids);\n\n return dirs.map((dir) => {\n const srcRuntimeManifest = runtime ? this.findRuntime(dir, runtime) : undefined;\n const srcAspectFilePath = runtime ? this.findAspectFile(dir) : undefined;\n const aspectFilePath = srcAspectFilePath ? join(dir, 'dist', srcAspectFilePath) : null;\n const runtimeManifest = srcRuntimeManifest ? join(dir, 'dist', srcRuntimeManifest) : null;\n const aspectId = aspectFilePath ? this.getAspectIdFromAspectFile(aspectFilePath) : undefined;\n\n return new AspectDefinition(dir, aspectFilePath, runtimeManifest, undefined, aspectId, true);\n });\n }\n\n private findAspectFile(dirPath: string) {\n const files = readdirSync(join(dirPath, 'dist'));\n return files.find((path) => path.includes(`.aspect.js`));\n }\n\n static runtime = MainRuntime;\n static dependencies = [LoggerAspect, EnvsAspect, GraphqlAspect];\n static slots = [\n Slot.withType<OnAspectLoadError>(),\n Slot.withType<OnLoadRequireableExtension>(),\n Slot.withType<PluginDefinition[]>(),\n ];\n\n static async provider(\n [loggerExt, envs, graphql]: [LoggerMain, EnvsMain, GraphqlMain],\n config,\n [onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot]: [\n OnAspectLoadErrorSlot,\n OnLoadRequireableExtensionSlot,\n PluginDefinitionSlot\n ],\n harmony: Harmony\n ) {\n const logger = loggerExt.createLogger(AspectLoaderAspect.id);\n const aspectLoader = new AspectLoaderMain(\n logger,\n envs,\n harmony,\n onAspectLoadErrorSlot,\n onLoadRequireableExtensionSlot,\n pluginSlot\n );\n\n graphql.register(aspectLoaderSchema(aspectLoader));\n aspectLoader.registerPlugins([envs.getEnvPlugin()]);\n\n return aspectLoader;\n }\n}\n\nAspectLoaderAspect.addRuntime(AspectLoaderMain);\n\nexport default AspectLoaderMain;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_path","data","require","_toolboxPerformance","_nodeUtils","_interopRequireDefault","_fsExtra","_graph","_componentId","_scope","_constants","_cli","_harmony","_bitError","_logger","_compilationModules","_envs","_bit","_scope2","_graphql","_pMapSeries","_lodash","_aspectDefinition","_aspectLoader","_constants2","_isEsmModule","_exceptions","_coreAspects","_plugins","_aspectLoader2","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","AspectLoaderMain","constructor","logger","envs","harmony","onAspectLoadErrorSlot","onLoadRequireableExtensionSlot","pluginSlot","Set","getCoreAspectsPackagesAndIds","allCoreAspectsIds","getCoreAspectIds","coreAspectsPackagesAndIds","id","packageName","getCoreAspectPackageName","getCompiler","component","env","getEnv","registerOnAspectLoadErrorSlot","onAspectLoadError","register","registerOnLoadRequireableExtensionSlot","onLoadRequireableExtension","triggerOnAspectLoadError","err","entries","toArray","isFixed","mapSeries","onAspectFailFunc","result","getRuntimePath","modulePath","runtime","runtimeFile","filesystem","files","find","file","relative","includes","compiler","join","dist","getDistPathBySrcPath","info","distPath","DEFAULT_DIST_DIRNAME","replaceFileExtToJs","getAspectFilePath","aspectFile","isAspectLoaded","failedAspects","get","getDescriptor","instance","iconFn","icon","undefined","addInMemoryConfiguredAspect","aspectId","inMemoryConfiguredAspects","getConfiguredAspects","configuredAspects","Array","from","config","raw","iMemoryConfiguredAspects","concat","getNotLoadedConfiguredExtensions","harmonyExtensions","extensionsIds","loadedExtensions","extId","extensions","loaded","extensionsToLoad","difference","loadDefinition","props","AspectDefinition","coreAspects","isCoreAspect","ids","setCoreAspects","aspects","map","aspect","_reserved","getCoreEnvsIds","envsIds","allIds","intersection","isCoreEnv","getUserAspects","coreAspectIds","getCoreAspectDefs","runtimeName","defs","Promise","all","rawDef","getAspectDef","def","runtimePath","resolveAspects","components","resolver","promises","resolvedAspect","aspectPath","aspectFilePath","aspectDefs","compact","mainAspect","_mainAspect","setMainAspect","failedLoadAspect","resetFailedLoadAspects","addFailure","cloneManifest","manifest","cloned","assign","create","getPrototypeOf","provider","addRuntime","getRuntime","doRequire","requireableExtension","runSubscribers","idStr","toString","runOnLoadRequireableExtensionSubscribers","loadRequireableExtensions","requireableExtensions","throwOnError","manifests","getManifestsFromRequireableExtensions","loadExtensionsByManifests","manifestsP","firstErr","warn","errAfterReLoad","error","handleExtensionLoadingError","addFailedToLoadExt","errorMsg","message","split","msg","UNABLE_TO_LOAD_EXTENSION","console","CannotLoadExtension","printWarningIfFirstTime","isLoaderStarted","envId","showAsFailure","alreadyShownWarning","has","add","consoleFailure","consoleWarning","updatedManifest","onLoadRequireableExtensionFunc","getPluginDefs","flatten","values","getPlugins","componentPath","getPluginsFromDefs","isEsmModule","path","loadEsm","NativeCompileCache","uninstall","esmLoader","Plugins","bind","pluginFileResolver","getPluginFiles","hasPluginFiles","isEmpty","searchDistFile","rootDir","relativePath","replaceNotFound","defaultDistDir","fileExtension","extname","fileNames","ext","replace","RegExp","defaultDistPath","fileName","found","existsSync","jsFileName","finalPath","endsWith","distFile","isAspect","isValidAspect","isAspectComponent","isUsingAspectEnv","loadAspectsFromGlobalScope","aspectIds","globalScope","LegacyScope","ensure","GLOBAL_SCOPE","ensureDir","legacyGlobalsSnapshot","takeLegacyGlobalsSnapshot","globalScopeHarmony","loadBit","scope","ScopeAspect","aspectLoader","AspectLoaderAspect","ComponentID","fromString","hasVersions","every","hasVersion","useCache","import","reason","getMany","resolvedAspects","getResolvedAspects","workspaceName","code","resolvedAspectsAgain","skipIfExists","filterAspectDefs","allDefs","componentIds","filterOpts","coreIds","stringIds","toStringWithoutVersion","afterExclusion","excludeCore","isCore","getId","isTarget","uniqDefs","uniqBy","filterByRuntime","requestedOnly","componentIdsString","getAspectIdFromAspectFile","module","isObject","prepareManifests","MainRuntime","Error","Aspect","registerPlugins","pluginDefs","extensionsManifests","context","seeders","options","hideMissingModuleError","ignoreErrors","unifyErrorsByExtId","neededFor","defaultLoadExtByManifestOptions","mergedOptions","isValid","preparedManifests","getOnlyDeclaredDependenciesManifests","manifestGraph","generateManifestGraph","nodes","seeder","successors","flat","seederNodes","node","allNodes","nodesUniq","n","attr","relevantManifests","load","needToPrint","some","failedToLoadExt","parsedId","tryFromString","fullName","warning","UNABLE_TO_LOAD_EXTENSION_FROM_LIST","BitError","graph","Graph","setNode","Node","deps","dependencies","dep","setEdge","Edge","loadAspectFromPath","localAspects","res","dirPaths","parseLocalAspect","dirPath","localAspect","scopeRuntime","findRuntime","resolve","nonExistsDirPaths","existsDirPaths","readdirSync","resolveLocalAspects","dirs","dir","srcRuntimeManifest","srcAspectFilePath","findAspectFile","runtimeManifest","loggerExt","graphql","createLogger","aspectLoaderSchema","getEnvPlugin","exports","LoggerAspect","EnvsAspect","GraphqlAspect","Slot","withType","_default"],"sources":["aspect-loader.main.runtime.ts"],"sourcesContent":["import { join, resolve, extname } from 'path';\nimport { NativeCompileCache } from '@teambit/toolbox.performance.v8-cache';\nimport esmLoader from '@teambit/node.utils.esm-loader';\n// import findRoot from 'find-root';\nimport { readdirSync, existsSync } from 'fs-extra';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { ComponentID } from '@teambit/component-id';\nimport LegacyScope from '@teambit/legacy/dist/scope/scope';\nimport { GLOBAL_SCOPE, DEFAULT_DIST_DIRNAME } from '@teambit/legacy/dist/constants';\nimport { MainRuntime } from '@teambit/cli';\nimport { ExtensionManifest, Harmony, Aspect, SlotRegistry, Slot } from '@teambit/harmony';\nimport { BitError } from '@teambit/bit-error';\nimport type { LoggerMain } from '@teambit/logger';\nimport { Component, FilterAspectsOptions } from '@teambit/component';\nimport { Logger, LoggerAspect } from '@teambit/logger';\nimport { RequireableComponent } from '@teambit/harmony.modules.requireable-component';\nimport { replaceFileExtToJs } from '@teambit/compilation.modules.babel-compiler';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { LegacyGlobal, loadBit, takeLegacyGlobalsSnapshot } from '@teambit/bit';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport mapSeries from 'p-map-series';\nimport { difference, compact, flatten, intersection, uniqBy, some, isEmpty, isObject } from 'lodash';\nimport { AspectDefinition, AspectDefinitionProps } from './aspect-definition';\nimport { PluginDefinition } from './plugin-definition';\nimport { AspectLoaderAspect } from './aspect-loader.aspect';\nimport { UNABLE_TO_LOAD_EXTENSION, UNABLE_TO_LOAD_EXTENSION_FROM_LIST } from './constants';\nimport { isEsmModule } from './is-esm-module';\nimport { CannotLoadExtension } from './exceptions';\nimport { getAspectDef, getCoreAspectPackageName } from './core-aspects';\nimport { Plugins } from './plugins';\nimport { aspectLoaderSchema } from './aspect-loader.graphql';\n\nexport type PluginDefinitionSlot = SlotRegistry<PluginDefinition[]>;\n\nexport type AspectDescriptor = {\n /**\n * name of the extension.\n */\n id: string;\n\n /**\n * icon of the extension.\n */\n icon?: string;\n};\n\nexport type AspectResolver = (component: Component) => Promise<ResolvedAspect | undefined>;\n\nexport type ResolvedAspect = {\n aspectPath: string;\n runtimePath: string | null;\n aspectFilePath: string | null;\n};\n\nexport type LoadExtByManifestContext = {\n seeders?: string[];\n neededFor?: string;\n};\n\nexport type LoadExtByManifestOptions = {\n throwOnError?: boolean;\n hideMissingModuleError?: boolean;\n ignoreErrors?: boolean;\n /**\n * If this is enabled then we will show loading error only once for a given extension\n * (even if it was actually try to load it few times by different components for example)\n */\n unifyErrorsByExtId?: boolean;\n};\n\ntype OnAspectLoadError = (err: Error, component: Component) => Promise<boolean>;\nexport type OnAspectLoadErrorSlot = SlotRegistry<OnAspectLoadError>;\n\nexport type OnAspectLoadErrorHandler = (err: Error, component: Component) => Promise<boolean>;\n\nexport type OnLoadRequireableExtension = (\n requireableExtension: RequireableComponent,\n manifest: ExtensionManifest | Aspect\n) => Promise<ExtensionManifest | Aspect>;\n/**\n * A slot which run during loading the requirable extension (after first manifest calculation)\n */\nexport type OnLoadRequireableExtensionSlot = SlotRegistry<OnLoadRequireableExtension>;\n\nexport type MainAspect = {\n /**\n * path to the main aspect.\n */\n path: string;\n\n /**\n * version of the aspect.\n */\n version: string | undefined;\n\n /**\n * package name of the aspect\n */\n packageName: string | undefined;\n\n /**\n * reference to aspect manifest.\n */\n aspect: Aspect;\n\n /**\n * The name of the aspect (without the scope prefix)\n */\n name: string;\n\n /**\n * The name of the aspect\n */\n id: string;\n};\n\nexport class AspectLoaderMain {\n private inMemoryConfiguredAspects: string[] = [];\n private failedToLoadExt = new Set<string>();\n private alreadyShownWarning = new Set<string>();\n\n constructor(\n private logger: Logger,\n private envs: EnvsMain,\n private harmony: Harmony,\n private onAspectLoadErrorSlot: OnAspectLoadErrorSlot,\n private onLoadRequireableExtensionSlot: OnLoadRequireableExtensionSlot,\n private pluginSlot: PluginDefinitionSlot\n ) {}\n\n getCoreAspectsPackagesAndIds(): Record<string, string> {\n const allCoreAspectsIds = this.getCoreAspectIds();\n const coreAspectsPackagesAndIds = {};\n\n allCoreAspectsIds.forEach((id) => {\n const packageName = getCoreAspectPackageName(id);\n coreAspectsPackagesAndIds[packageName] = id;\n });\n\n return coreAspectsPackagesAndIds;\n }\n\n private getCompiler(component: Component) {\n const env = this.envs.getEnv(component)?.env;\n return env?.getCompiler();\n }\n\n registerOnAspectLoadErrorSlot(onAspectLoadError: OnAspectLoadError) {\n this.onAspectLoadErrorSlot.register(onAspectLoadError);\n }\n\n registerOnLoadRequireableExtensionSlot(onLoadRequireableExtension: OnLoadRequireableExtension) {\n this.onLoadRequireableExtensionSlot.register(onLoadRequireableExtension);\n }\n\n /**\n * returns whether the aspect-load issue has been fixed.\n */\n async triggerOnAspectLoadError(err: Error, component: Component): Promise<boolean> {\n const entries = this.onAspectLoadErrorSlot.toArray(); // e.g. [ [ 'teambit.bit/compiler', [Function: bound onAspectLoadError] ] ]\n let isFixed = false;\n await mapSeries(entries, async ([, onAspectFailFunc]) => {\n const result = await onAspectFailFunc(err, component);\n if (result) isFixed = true;\n });\n\n return isFixed;\n }\n\n async getRuntimePath(component: Component, modulePath: string, runtime: string): Promise<string | null> {\n const runtimeFile = component.filesystem.files.find((file: any) => {\n return file.relative.includes(`.${runtime}.runtime`);\n });\n\n // @david we should add a compiler api for this.\n if (!runtimeFile) return null;\n try {\n const compiler = this.getCompiler(component);\n\n if (!compiler) {\n return join(modulePath, runtimeFile.relative);\n }\n\n const dist = compiler.getDistPathBySrcPath(runtimeFile.relative);\n return join(modulePath, dist);\n } catch (e) {\n this.logger.info(`got an error during get runtime path, probably the env is not loaded yet ${e}`);\n // TODO: we are manually adding the dist here and replace the file name to handle case when\n // we load aspects from scope, and their env in the same iteration, but we get into the aspect before its\n // env, so it's env doesn't exist yet\n // we should make sure to first load the env correctly before loading the aspect\n const distPath = join(modulePath, DEFAULT_DIST_DIRNAME, replaceFileExtToJs(runtimeFile.relative));\n return distPath;\n }\n }\n\n async getAspectFilePath(component: Component, modulePath: string): Promise<string | null> {\n const aspectFile = component.filesystem.files.find((file: any) => {\n return file.relative.includes(`.aspect.ts`) || file.relative.includes(`.aspect.js`);\n });\n\n // @david we should add a compiler api for this.\n if (!aspectFile) return null;\n try {\n const compiler = this.getCompiler(component);\n\n if (!compiler) {\n return join(modulePath, aspectFile.relative);\n }\n\n const dist = compiler.getDistPathBySrcPath(aspectFile.relative);\n return join(modulePath, dist);\n } catch (e) {\n this.logger.info(`got an error during get runtime path, probably the env is not loaded yet ${e}`);\n // TODO: we are manually adding the dist here and replace the file name to handle case when\n // we load aspects from scope, and their env in the same iteration, but we get into the aspect before its\n // env, so it's env doesn't exist yet\n // we should make sure to first load the env correctly before loading the aspect\n const distPath = join(modulePath, DEFAULT_DIST_DIRNAME, replaceFileExtToJs(aspectFile.relative));\n return distPath;\n }\n }\n\n isAspectLoaded(id: string) {\n if (this.failedAspects.includes(id)) return true;\n try {\n return this.harmony.get(id);\n } catch (err: any) {\n return false;\n }\n }\n\n getDescriptor(id: string): AspectDescriptor | undefined {\n try {\n const instance = this.harmony.get<any>(id);\n const iconFn = instance.icon;\n\n const icon = iconFn ? iconFn.apply(instance) : undefined;\n\n return {\n id,\n icon,\n };\n } catch (err) {\n return undefined;\n }\n }\n\n /**\n * This is used when adding aspects to workspace.jsonc during the process (like in bit use command)\n * and we want to make sure that follow operation (like bit install) will recognize those aspects\n * but the harmony config is already in memory.\n * Probably a better to do it is to make sure we can re-load the config somehow\n * ideally by adding the config class in harmony a reload API\n * @param aspectId\n */\n addInMemoryConfiguredAspect(aspectId: string): void {\n this.inMemoryConfiguredAspects.push(aspectId);\n }\n\n /**\n * get all the configured aspects in the config file (workspace.jsonc / scope.jsonc)\n */\n getConfiguredAspects(): string[] {\n const configuredAspects = Array.from(this.harmony.config.raw.keys());\n const iMemoryConfiguredAspects = this.inMemoryConfiguredAspects;\n return configuredAspects.concat(iMemoryConfiguredAspects);\n }\n getNotLoadedConfiguredExtensions() {\n const configuredAspects = this.getConfiguredAspects();\n const harmonyExtensions = this.harmony.extensionsIds;\n const loadedExtensions = harmonyExtensions.filter((extId) => {\n return this.harmony.extensions.get(extId)?.loaded;\n });\n const extensionsToLoad = difference(configuredAspects, loadedExtensions);\n return extensionsToLoad;\n }\n\n loadDefinition(props: AspectDefinitionProps): AspectDefinition {\n return AspectDefinition.from(props);\n }\n\n private _coreAspects: Aspect[] = [];\n\n get coreAspects() {\n return this._coreAspects;\n }\n\n isCoreAspect(id: string) {\n const ids = this.getCoreAspectIds();\n return ids.includes(id);\n }\n\n setCoreAspects(aspects: Aspect[]) {\n this._coreAspects = aspects;\n return this;\n }\n\n getCoreAspectIds() {\n const ids = this.coreAspects.map((aspect) => aspect.id);\n return ids.concat(this._reserved);\n }\n\n /**\n * Get all the core envs ids which is still register in the bit manifest as core aspect\n */\n getCoreEnvsIds(): string[] {\n const envsIds = this.envs.getCoreEnvsIds();\n const allIds = this.getCoreAspectIds();\n return intersection(allIds, envsIds);\n }\n\n isCoreEnv(id: string): boolean {\n const ids = this.getCoreEnvsIds();\n return ids.includes(id);\n }\n\n private _reserved = ['teambit.harmony/bit', 'teambit.harmony/config'];\n\n getUserAspects(): string[] {\n const coreAspectIds = this.getCoreAspectIds();\n return difference(this.harmony.extensionsIds, coreAspectIds);\n }\n\n async getCoreAspectDefs(runtimeName?: string) {\n const defs = await Promise.all(\n this.coreAspects.map(async (aspect) => {\n const id = aspect.id;\n const rawDef = await getAspectDef(id, runtimeName);\n return this.loadDefinition(rawDef);\n })\n );\n\n return defs.filter((def) => def.runtimePath);\n }\n\n async resolveAspects(components: Component[], resolver: AspectResolver): Promise<AspectDefinition[]> {\n const promises = components.map(async (component) => {\n const resolvedAspect = await resolver(component);\n if (!resolvedAspect) return undefined;\n return new AspectDefinition(\n resolvedAspect.aspectPath,\n resolvedAspect.aspectFilePath,\n resolvedAspect.runtimePath,\n component\n );\n });\n\n const aspectDefs = await Promise.all(promises);\n // return aspectDefs.filter((def) => def.runtimePath);\n return compact(aspectDefs);\n }\n\n private _mainAspect: MainAspect;\n\n get mainAspect() {\n return this._mainAspect;\n }\n\n setMainAspect(mainAspect: MainAspect) {\n this._mainAspect = mainAspect;\n return this;\n }\n\n private failedLoadAspect: string[] = [];\n\n get failedAspects() {\n return this.failedLoadAspect;\n }\n\n public resetFailedLoadAspects() {\n this.failedLoadAspect = [];\n }\n\n private addFailure(id: string): void {\n if (this.failedAspects.includes(id)) return;\n this.failedLoadAspect.push(id);\n }\n\n cloneManifest(manifest: any) {\n const cloned = Object.assign(Object.create(Object.getPrototypeOf(manifest)), manifest);\n cloned.provider = manifest.provider;\n cloned.addRuntime = manifest.addRuntime;\n cloned.getRuntime = manifest.getRuntime;\n return cloned;\n }\n\n /**\n * run \"require\" of the component code to get the manifest\n */\n async doRequire(\n requireableExtension: RequireableComponent,\n runSubscribers = true\n ): Promise<ExtensionManifest | Aspect> {\n const idStr = requireableExtension.component.id.toString();\n const aspect = await requireableExtension.require();\n const manifest = aspect.default || aspect;\n manifest.id = idStr;\n // It's important to clone deep the manifest here to prevent mutate dependencies of other manifests as they point to the same location in memory\n const cloned = this.cloneManifest(manifest);\n if (runSubscribers) return this.runOnLoadRequireableExtensionSubscribers(requireableExtension, cloned);\n return cloned;\n }\n\n /**\n * in case the extension failed to load, prefer to throw an error, unless `throwOnError` param\n * passed as `false`.\n * there are cases when throwing an error blocks the user from doing anything else. for example,\n * when a user develops an extension and deletes the node-modules, the extension on the workspace\n * cannot be loaded anymore until \"bit compile\" is running. however, if this function throws an\n * error, it'll throw for \"bit compile\" as well, which blocks the user.\n * for the CI, it is important to throw an error because errors on console can be ignored.\n * for now, when loading the extension from the workspace the throwOnError is passed as false.\n * when loading from the scope (CI) it should be true.\n *\n * the console printing here is done directly by \"console.error\" and not by the logger. the reason\n * is that the logger.console only prints when the loader started (which, btw, happens after\n * entering this function, so it can't work) and here we want it to be printed regardless of the\n * rules of starting the loader. e.g. if by mistake the CI got it as throwOnError=false, it's ok\n * to break the output by the console.error.\n *\n * @todo: this is not the final word however about throwing/non throwing errors here.\n * in some cases, such as \"bit tag\", it's better not to tag if an extension changes the model.\n */\n async loadRequireableExtensions(requireableExtensions: RequireableComponent[], throwOnError = false): Promise<void> {\n const manifests = await this.getManifestsFromRequireableExtensions(requireableExtensions, throwOnError);\n return this.loadExtensionsByManifests(manifests, undefined, { throwOnError });\n }\n\n async getManifestsFromRequireableExtensions(\n requireableExtensions: RequireableComponent[],\n throwOnError = false,\n runSubscribers = true\n ): Promise<Array<ExtensionManifest | Aspect>> {\n const manifestsP = mapSeries(requireableExtensions, async (requireableExtension) => {\n if (!requireableExtensions) return undefined;\n const idStr = requireableExtension.component.id.toString();\n try {\n return await this.doRequire(requireableExtension, runSubscribers);\n } catch (firstErr: any) {\n this.addFailure(idStr);\n this.logger.warn(`failed loading an aspect \"${idStr}\", will try to fix and reload`, firstErr);\n const isFixed = await this.triggerOnAspectLoadError(firstErr, requireableExtension.component);\n let errAfterReLoad;\n if (isFixed) {\n this.logger.info(`the loading issue might be fixed now, re-loading ${idStr}`);\n try {\n return await this.doRequire(requireableExtension);\n } catch (err: any) {\n this.logger.warn(`re-load of the aspect \"${idStr}\" failed as well`, err);\n errAfterReLoad = err;\n }\n }\n const error = errAfterReLoad || firstErr;\n this.handleExtensionLoadingError(error, idStr, throwOnError);\n }\n return undefined;\n });\n const manifests = await manifestsP;\n\n // Remove empty manifests as a result of loading issue\n return compact(manifests);\n }\n\n handleExtensionLoadingError(error: Error, idStr: string, throwOnError: boolean) {\n this.envs.addFailedToLoadExt(idStr);\n const errorMsg = error.message.split('\\n')[0]; // show only the first line if the error is long (e.g. happens with MODULE_NOT_FOUND errors)\n const msg = UNABLE_TO_LOAD_EXTENSION(idStr, errorMsg);\n if (throwOnError) {\n // @ts-ignore\n this.logger.console(error);\n throw new CannotLoadExtension(idStr, error);\n }\n this.logger.error(msg, error);\n this.printWarningIfFirstTime(idStr, msg, this.logger.isLoaderStarted);\n }\n\n private printWarningIfFirstTime(envId: string, msg: string, showAsFailure: boolean) {\n if (!this.alreadyShownWarning.has(envId)) {\n this.alreadyShownWarning.add(envId);\n if (showAsFailure) {\n this.logger.consoleFailure(msg);\n } else {\n this.logger.consoleWarning(msg);\n }\n }\n }\n\n async runOnLoadRequireableExtensionSubscribers(\n requireableExtension: RequireableComponent,\n manifest: ExtensionManifest | Aspect\n ): Promise<ExtensionManifest | Aspect> {\n let updatedManifest = manifest;\n const entries = this.onLoadRequireableExtensionSlot.toArray();\n await mapSeries(entries, async ([, onLoadRequireableExtensionFunc]) => {\n updatedManifest = await onLoadRequireableExtensionFunc(requireableExtension, updatedManifest);\n });\n return updatedManifest;\n }\n\n getPluginDefs() {\n return flatten(this.pluginSlot.values());\n }\n\n getPlugins(component: Component, componentPath: string): Plugins {\n const defs = this.getPluginDefs();\n return this.getPluginsFromDefs(component, componentPath, defs);\n }\n\n async isEsmModule(path: string) {\n return isEsmModule(path);\n }\n\n async loadEsm(path: string) {\n NativeCompileCache.uninstall();\n return esmLoader(path);\n }\n\n getPluginsFromDefs(component: Component, componentPath: string, defs: PluginDefinition[]): Plugins {\n return Plugins.from(\n component,\n defs,\n this.triggerOnAspectLoadError.bind(this),\n this.logger,\n this.pluginFileResolver.call(this, component, componentPath)\n );\n }\n\n getPluginFiles(component: Component, componentPath: string): string[] {\n const defs = this.getPluginDefs();\n return Plugins.files(component, defs, this.pluginFileResolver.call(this, component, componentPath));\n }\n\n hasPluginFiles(component: Component): boolean {\n const defs = this.getPluginDefs();\n const files = Plugins.files(component, defs);\n return !isEmpty(files);\n }\n\n private searchDistFile(rootDir: string, relativePath: string, replaceNotFound = false) {\n const defaultDistDir = join(rootDir, 'dist');\n const fileExtension = extname(relativePath);\n const fileNames = ['ts', 'js', 'tsx', 'jsx'].map((ext) =>\n relativePath.replace(new RegExp(`${fileExtension}$`), `.${ext}`)\n );\n const defaultDistPath = fileNames.map((fileName) => join(defaultDistDir, fileName));\n const found = defaultDistPath.find((distPath) => existsSync(distPath));\n if (found) return found;\n if (!replaceNotFound) return null;\n const jsFileName = relativePath.replace(new RegExp(`${fileExtension}$`), `.js`);\n const finalPath = join(defaultDistDir, jsFileName);\n return finalPath;\n }\n\n pluginFileResolver(component: Component, rootDir: string) {\n return (relativePath: string) => {\n const replaceNotFound = relativePath.endsWith('.ts') || relativePath.endsWith('.tsx');\n\n try {\n const compiler = this.getCompiler(component);\n if (!compiler) {\n const distFile = this.searchDistFile(rootDir, relativePath, replaceNotFound);\n return distFile || join(rootDir, relativePath);\n }\n\n const dist = compiler.getDistPathBySrcPath(relativePath);\n return join(rootDir, dist);\n } catch (err) {\n // This might happen for example when loading an env from the global scope, and the env of the env / aspect is not a core one\n this.logger.info(\n `pluginFileResolver: got an error during get compiler for component ${component.id.toString()}, probably the env is not loaded yet ${err}`\n );\n const distFile = this.searchDistFile(rootDir, relativePath, replaceNotFound);\n return distFile || join(rootDir, relativePath);\n }\n };\n }\n\n isAspect(manifest: any) {\n return !!(manifest.addRuntime && manifest.getRuntime);\n }\n\n isValidAspect(manifest: any): boolean {\n return this.isAspect(manifest) || manifest.provider;\n }\n\n isAspectComponent(component: Component): boolean {\n return this.envs.isUsingAspectEnv(component);\n }\n\n /**\n * get or create a global scope, import the non-core aspects, load bit from that scope, create\n * capsules for the aspects and load them from the capsules.\n */\n async loadAspectsFromGlobalScope(\n aspectIds: string[]\n ): Promise<{ components: Component[]; globalScopeHarmony: Harmony; legacyGlobalsSnapshot: LegacyGlobal[] }> {\n const globalScope = await LegacyScope.ensure(GLOBAL_SCOPE, 'global-scope');\n await globalScope.ensureDir();\n const legacyGlobalsSnapshot = takeLegacyGlobalsSnapshot();\n const globalScopeHarmony = await loadBit(globalScope.path);\n const scope = globalScopeHarmony.get<ScopeMain>(ScopeAspect.id);\n const aspectLoader = globalScopeHarmony.get<AspectLoaderMain>(AspectLoaderAspect.id);\n const ids = aspectIds.map((id) => ComponentID.fromString(id));\n const hasVersions = ids.every((id) => id.hasVersion());\n const useCache = hasVersions; // if all components has versions, try to use the cached aspects\n await scope.import(ids, { useCache, reason: 'to load aspects from global scope' });\n const components = await scope.getMany(ids, true);\n\n // don't use `await scope.loadAspectsFromCapsules(components, true);`\n // it won't work for globalScope because `this !== scope.aspectLoader` (this instance\n // is not the same as the aspectLoader instance Scope has)\n const resolvedAspects = await scope.getResolvedAspects(components, { workspaceName: 'global-scope' });\n try {\n await aspectLoader.loadRequireableExtensions(resolvedAspects, true);\n } catch (err: any) {\n if (err?.error?.code === 'MODULE_NOT_FOUND') {\n const resolvedAspectsAgain = await scope.getResolvedAspects(components, {\n skipIfExists: false,\n workspaceName: 'global-scope',\n });\n await aspectLoader.loadRequireableExtensions(resolvedAspectsAgain, true);\n } else {\n throw err;\n }\n }\n\n return { components, globalScopeHarmony, legacyGlobalsSnapshot };\n }\n\n filterAspectDefs(\n allDefs: AspectDefinition[],\n componentIds: ComponentID[],\n runtimeName: string | undefined,\n filterOpts: FilterAspectsOptions = {}\n ) {\n const coreIds = this.getCoreAspectIds();\n const stringIds = componentIds.map((id) => id.toStringWithoutVersion());\n const afterExclusion = filterOpts.excludeCore\n ? allDefs.filter((def) => {\n const isCore = coreIds.includes(def.getId || '');\n const id = ComponentID.fromString(def.getId || '');\n const isTarget = stringIds.includes(id.toStringWithoutVersion());\n if (isTarget) return true;\n return !isCore;\n })\n : allDefs;\n\n const uniqDefs = uniqBy(afterExclusion, (def) => `${def.aspectPath}-${def.runtimePath}`);\n let defs = uniqDefs;\n if (runtimeName && filterOpts.filterByRuntime) {\n defs = defs.filter((def) => def.runtimePath);\n }\n\n if (componentIds && componentIds.length && filterOpts.requestedOnly) {\n const componentIdsString = componentIds.map((id) => id.toString());\n defs = defs.filter((def) => {\n return (\n (def.id && componentIdsString.includes(def.id)) ||\n (def.component && componentIdsString.includes(def.component?.id.toString()))\n );\n });\n }\n\n return defs;\n }\n\n getAspectIdFromAspectFile(aspectFilePath: string): string | undefined {\n try {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = aspectFilePath ? require(aspectFilePath) : undefined;\n let manifest = module.default || module;\n if (this.isAspect(manifest)) {\n return manifest.id;\n }\n if (isObject(manifest)) {\n if (isEmpty(manifest)) {\n this.logger.warn(\n `getAspectIdFromAspectFile - aspect at ${aspectFilePath} missing exports. couldn't calculate the manifest`\n );\n return undefined;\n }\n if (Object.keys(manifest).length > 1) {\n this.logger.warn(\n `getAspectIdFromAspectFile - aspect at ${aspectFilePath} exports too many keys. couldn't calculate the manifest`\n );\n return undefined;\n }\n manifest = Object.values(manifest)[0];\n if (this.isAspect(manifest)) {\n return manifest.id;\n }\n }\n this.logger.warn(`getAspectIdFromAspectFile - aspect at ${aspectFilePath} is not a valid aspect`);\n return undefined;\n } catch (err) {\n this.logger.warn(`getAspectIdFromAspectFile - couldn't require the aspect file ${aspectFilePath}. err: ${err}`);\n return undefined;\n }\n }\n\n private prepareManifests(manifests: Array<ExtensionManifest | Aspect>): Aspect[] {\n return manifests.map((manifest: any) => {\n if (this.isAspect(manifest)) return manifest as Aspect;\n manifest.runtime = MainRuntime;\n if (!manifest.id) throw new Error('manifest must have static id');\n const aspect = Aspect.create({\n id: manifest.id,\n });\n aspect.addRuntime(manifest);\n return aspect;\n });\n }\n\n /**\n * register a plugin.\n */\n registerPlugins(pluginDefs: PluginDefinition[]) {\n this.pluginSlot.register(pluginDefs);\n }\n\n async loadExtensionsByManifests(\n extensionsManifests: Array<ExtensionManifest | Aspect>,\n context: LoadExtByManifestContext = {\n seeders: [],\n },\n options: LoadExtByManifestOptions = {\n throwOnError: true,\n hideMissingModuleError: false,\n ignoreErrors: false,\n unifyErrorsByExtId: true,\n }\n ) {\n const neededFor = context.neededFor;\n const seeders = context.seeders || [];\n const defaultLoadExtByManifestOptions = {\n throwOnError: true,\n hideMissingModuleError: false,\n ignoreErrors: false,\n unifyErrorsByExtId: true,\n };\n const mergedOptions = { ...defaultLoadExtByManifestOptions, ...options };\n try {\n const manifests = extensionsManifests.filter((manifest) => {\n const isValid = this.isValidAspect(manifest);\n if (!isValid) this.logger.warn(`${manifest.id} is invalid. please make sure the extension is valid.`);\n return isValid;\n });\n const preparedManifests = this.prepareManifests(manifests);\n // don't let harmony load all aspects. if seeders were sent, find their manifests, check for their static\n // dependencies, and load only them.\n const getOnlyDeclaredDependenciesManifests = () => {\n if (!seeders.length || seeders.length === preparedManifests.length) {\n return preparedManifests;\n }\n const manifestGraph = this.generateManifestGraph(preparedManifests);\n const nodes = seeders.map((seeder) => manifestGraph.successors(seeder)).flat();\n const seederNodes = compact(seeders.map((seeder) => manifestGraph.node(seeder)));\n const allNodes = [...nodes, ...seederNodes];\n const nodesUniq = uniqBy(allNodes, 'id');\n return nodesUniq.map((n) => n.attr);\n };\n const relevantManifests = getOnlyDeclaredDependenciesManifests();\n // @ts-ignore TODO: fix this\n await this.harmony.load(relevantManifests);\n } catch (e: any) {\n const ids = extensionsManifests.map((manifest) => manifest.id || 'unknown');\n if (mergedOptions.unifyErrorsByExtId) {\n const needToPrint = some(ids, (id) => !this.failedToLoadExt.has(id));\n if (!needToPrint) return;\n ids.forEach((id) => {\n this.failedToLoadExt.add(id);\n this.envs.addFailedToLoadExt(id);\n const parsedId = ComponentID.tryFromString(id);\n if (parsedId) {\n this.failedToLoadExt.add(parsedId.fullName);\n this.envs.addFailedToLoadExt(parsedId.fullName);\n }\n });\n }\n if (mergedOptions.ignoreErrors) return;\n if ((e.code === 'MODULE_NOT_FOUND' || e.code === 'ERR_MODULE_NOT_FOUND') && mergedOptions.hideMissingModuleError)\n return;\n // TODO: improve texts\n const errorMsg = e.message.split('\\n')[0];\n const warning = UNABLE_TO_LOAD_EXTENSION_FROM_LIST(ids, errorMsg, neededFor);\n this.logger.error(warning, e);\n if (this.logger.isLoaderStarted) {\n if (mergedOptions.throwOnError) throw new BitError(warning);\n this.logger.consoleFailure(warning);\n } else {\n this.logger.consoleWarning(warning);\n this.logger.consoleWarning(e);\n }\n if (mergedOptions.throwOnError) {\n throw e;\n }\n }\n }\n\n private generateManifestGraph(manifests: Aspect[]) {\n const graph = new Graph<Aspect, string>();\n manifests.forEach((manifest) => graph.setNode(new Node(manifest.id, manifest)));\n manifests.forEach((manifest) => {\n const deps = manifest.getRuntime(MainRuntime)?.dependencies?.map((dep) => dep.id);\n deps?.forEach((dep) => {\n if (graph.node(dep)) {\n graph.setEdge(new Edge(manifest.id, dep, 'dep'));\n }\n });\n });\n return graph;\n }\n\n public async loadAspectFromPath(localAspects: string[]): Promise<Record<string, string>> {\n const res = {};\n const dirPaths = this.parseLocalAspect(localAspects);\n const manifests = dirPaths.map(([dirPath, localAspect]) => {\n const scopeRuntime = this.findRuntime(dirPath, 'scope');\n if (scopeRuntime) {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = require(join(dirPath, 'dist', scopeRuntime));\n const manifest = module.default || module;\n res[manifest.id] = localAspect;\n return manifest;\n }\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const module = require(dirPath);\n const manifest = module.default || module;\n res[manifest.id] = localAspect;\n return manifest;\n });\n\n await this.loadExtensionsByManifests(manifests, undefined, { throwOnError: true });\n return res;\n }\n\n private parseLocalAspect(localAspects: string[]) {\n const dirPaths = localAspects.map((localAspect) => [resolve(localAspect.replace('file://', '')), localAspect]);\n const nonExistsDirPaths = dirPaths.filter(([path]) => !existsSync(path));\n nonExistsDirPaths.forEach((path) => this.logger.warn(`no such file or directory: ${path}`));\n const existsDirPaths = dirPaths.filter(([path]) => existsSync(path));\n return existsDirPaths;\n }\n\n private findRuntime(dirPath: string, runtime: string) {\n const files = readdirSync(join(dirPath, 'dist'));\n return files.find((path) => path.includes(`${runtime}.runtime.js`));\n }\n\n public async resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]> {\n const dirs = this.parseLocalAspect(ids).map(([dir]) => dir);\n return dirs.map((dir) => {\n const srcRuntimeManifest = runtime ? this.findRuntime(dir, runtime) : undefined;\n const srcAspectFilePath = runtime ? this.findAspectFile(dir) : undefined;\n const aspectFilePath = srcAspectFilePath ? join(dir, 'dist', srcAspectFilePath) : null;\n const runtimeManifest = srcRuntimeManifest ? join(dir, 'dist', srcRuntimeManifest) : null;\n const aspectId = aspectFilePath ? this.getAspectIdFromAspectFile(aspectFilePath) : undefined;\n\n return new AspectDefinition(dir, aspectFilePath, runtimeManifest, undefined, aspectId, true);\n });\n }\n\n private findAspectFile(dirPath: string) {\n const files = readdirSync(join(dirPath, 'dist'));\n return files.find((path) => path.includes(`.aspect.js`));\n }\n\n static runtime = MainRuntime;\n static dependencies = [LoggerAspect, EnvsAspect, GraphqlAspect];\n static slots = [\n Slot.withType<OnAspectLoadError>(),\n Slot.withType<OnLoadRequireableExtension>(),\n Slot.withType<PluginDefinition[]>(),\n ];\n\n static async provider(\n [loggerExt, envs, graphql]: [LoggerMain, EnvsMain, GraphqlMain],\n config,\n [onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot]: [\n OnAspectLoadErrorSlot,\n OnLoadRequireableExtensionSlot,\n PluginDefinitionSlot\n ],\n harmony: Harmony\n ) {\n const logger = loggerExt.createLogger(AspectLoaderAspect.id);\n const aspectLoader = new AspectLoaderMain(\n logger,\n envs,\n harmony,\n onAspectLoadErrorSlot,\n onLoadRequireableExtensionSlot,\n pluginSlot\n );\n\n graphql.register(aspectLoaderSchema(aspectLoader));\n aspectLoader.registerPlugins([envs.getEnvPlugin()]);\n\n return aspectLoader;\n }\n}\n\nAspectLoaderAspect.addRuntime(AspectLoaderMain);\n\nexport default AspectLoaderMain;\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.411/dist/aspect-loader.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.411/dist/aspect-loader.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.413/dist/aspect-loader.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.413/dist/aspect-loader.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/aspect-loader",
3
- "version": "1.0.411",
3
+ "version": "1.0.413",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/aspect-loader",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "aspect-loader",
9
- "version": "1.0.411"
9
+ "version": "1.0.413"
10
10
  },
11
11
  "dependencies": {
12
12
  "graphql-tag": "2.12.1",
@@ -22,29 +22,29 @@
22
22
  "@teambit/node.utils.esm-loader": "0.0.6",
23
23
  "@teambit/bvm.config": "0.2.6",
24
24
  "@teambit/bvm.path": "0.1.2",
25
- "@teambit/component": "1.0.411",
26
- "@teambit/graphql": "1.0.411",
27
- "@teambit/bit": "1.8.62",
28
- "@teambit/cli": "0.0.988",
25
+ "@teambit/component": "1.0.413",
26
+ "@teambit/graphql": "1.0.413",
27
+ "@teambit/bit": "1.8.64",
28
+ "@teambit/cli": "0.0.990",
29
29
  "@teambit/compilation.modules.babel-compiler": "0.0.139",
30
- "@teambit/envs": "1.0.411",
30
+ "@teambit/envs": "1.0.413",
31
31
  "@teambit/harmony.modules.requireable-component": "0.0.497",
32
- "@teambit/logger": "0.0.1081",
33
- "@teambit/scope": "1.0.411",
32
+ "@teambit/logger": "0.0.1083",
33
+ "@teambit/scope": "1.0.413",
34
34
  "@teambit/toolbox.performance.v8-cache": "0.0.33"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/fs-extra": "9.0.7",
38
38
  "@types/lodash": "4.14.165",
39
- "@types/chai": "4.2.15",
40
39
  "chai": "4.3.0",
41
40
  "@types/find-root": "1.1.2",
42
41
  "@types/mocha": "9.1.0",
43
- "@teambit/harmony.envs.core-aspect-env": "0.0.47"
42
+ "@teambit/harmony.envs.core-aspect-env": "0.0.59"
44
43
  },
45
44
  "peerDependencies": {
46
45
  "react": "^17.0.0 || ^18.0.0",
47
46
  "@types/react": "^17.0.73",
47
+ "@types/chai": "4.3.19",
48
48
  "@teambit/legacy": "1.0.624"
49
49
  },
50
50
  "license": "Apache-2.0",