@teambit/aspect-loader 1.0.384 → 1.0.385
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/__bit_junit.xml +2 -2
- package/artifacts/preview/teambit_harmony_aspect_loader-preview.js +1 -1
- package/artifacts/schema.json +75 -75
- package/dist/aspect-loader.main.runtime.js +6 -6
- package/dist/aspect-loader.main.runtime.js.map +1 -1
- package/dist/{preview-1724123961957.js → preview-1724210355889.js} +2 -2
- package/package.json +9 -9
|
@@ -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.
|
|
4
|
-
<testcase classname="dist/core-aspects.spec.js" name="should include the namespace in the aspect name" time="0.
|
|
3
|
+
<testsuite name="teambit.harmony/aspect-loader@1.0.385" 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={
|
|
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={1057:(e,t,o)=>{var r={id:"teambit.harmony/aspect-loader@1.0.385",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(1057);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})()));
|
package/artifacts/schema.json
CHANGED
|
@@ -3026,7 +3026,7 @@
|
|
|
3026
3026
|
"__schema": "FunctionLikeSchema",
|
|
3027
3027
|
"location": {
|
|
3028
3028
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3029
|
-
"line":
|
|
3029
|
+
"line": 816,
|
|
3030
3030
|
"character": 3
|
|
3031
3031
|
},
|
|
3032
3032
|
"signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<void>",
|
|
@@ -3036,7 +3036,7 @@
|
|
|
3036
3036
|
"__schema": "ParameterSchema",
|
|
3037
3037
|
"location": {
|
|
3038
3038
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3039
|
-
"line":
|
|
3039
|
+
"line": 816,
|
|
3040
3040
|
"character": 35
|
|
3041
3041
|
},
|
|
3042
3042
|
"name": "localAspects",
|
|
@@ -3044,14 +3044,14 @@
|
|
|
3044
3044
|
"__schema": "TypeArraySchema",
|
|
3045
3045
|
"location": {
|
|
3046
3046
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3047
|
-
"line":
|
|
3047
|
+
"line": 816,
|
|
3048
3048
|
"character": 49
|
|
3049
3049
|
},
|
|
3050
3050
|
"type": {
|
|
3051
3051
|
"__schema": "KeywordTypeSchema",
|
|
3052
3052
|
"location": {
|
|
3053
3053
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3054
|
-
"line":
|
|
3054
|
+
"line": 816,
|
|
3055
3055
|
"character": 49
|
|
3056
3056
|
},
|
|
3057
3057
|
"name": "string"
|
|
@@ -3065,7 +3065,7 @@
|
|
|
3065
3065
|
"__schema": "InferenceTypeSchema",
|
|
3066
3066
|
"location": {
|
|
3067
3067
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3068
|
-
"line":
|
|
3068
|
+
"line": 816,
|
|
3069
3069
|
"character": 3
|
|
3070
3070
|
},
|
|
3071
3071
|
"type": "Promise<void>"
|
|
@@ -3079,7 +3079,7 @@
|
|
|
3079
3079
|
"__schema": "FunctionLikeSchema",
|
|
3080
3080
|
"location": {
|
|
3081
3081
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3082
|
-
"line":
|
|
3082
|
+
"line": 846,
|
|
3083
3083
|
"character": 3
|
|
3084
3084
|
},
|
|
3085
3085
|
"signature": "(method) AspectLoaderMain.resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]>",
|
|
@@ -3089,7 +3089,7 @@
|
|
|
3089
3089
|
"__schema": "ParameterSchema",
|
|
3090
3090
|
"location": {
|
|
3091
3091
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3092
|
-
"line":
|
|
3092
|
+
"line": 846,
|
|
3093
3093
|
"character": 36
|
|
3094
3094
|
},
|
|
3095
3095
|
"name": "ids",
|
|
@@ -3097,14 +3097,14 @@
|
|
|
3097
3097
|
"__schema": "TypeArraySchema",
|
|
3098
3098
|
"location": {
|
|
3099
3099
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3100
|
-
"line":
|
|
3100
|
+
"line": 846,
|
|
3101
3101
|
"character": 41
|
|
3102
3102
|
},
|
|
3103
3103
|
"type": {
|
|
3104
3104
|
"__schema": "KeywordTypeSchema",
|
|
3105
3105
|
"location": {
|
|
3106
3106
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3107
|
-
"line":
|
|
3107
|
+
"line": 846,
|
|
3108
3108
|
"character": 41
|
|
3109
3109
|
},
|
|
3110
3110
|
"name": "string"
|
|
@@ -3117,7 +3117,7 @@
|
|
|
3117
3117
|
"__schema": "ParameterSchema",
|
|
3118
3118
|
"location": {
|
|
3119
3119
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3120
|
-
"line":
|
|
3120
|
+
"line": 846,
|
|
3121
3121
|
"character": 51
|
|
3122
3122
|
},
|
|
3123
3123
|
"name": "runtime",
|
|
@@ -3125,7 +3125,7 @@
|
|
|
3125
3125
|
"__schema": "KeywordTypeSchema",
|
|
3126
3126
|
"location": {
|
|
3127
3127
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3128
|
-
"line":
|
|
3128
|
+
"line": 846,
|
|
3129
3129
|
"character": 61
|
|
3130
3130
|
},
|
|
3131
3131
|
"name": "string"
|
|
@@ -3138,7 +3138,7 @@
|
|
|
3138
3138
|
"__schema": "TypeRefSchema",
|
|
3139
3139
|
"location": {
|
|
3140
3140
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3141
|
-
"line":
|
|
3141
|
+
"line": 846,
|
|
3142
3142
|
"character": 70
|
|
3143
3143
|
},
|
|
3144
3144
|
"name": "Promise",
|
|
@@ -3147,14 +3147,14 @@
|
|
|
3147
3147
|
"__schema": "TypeArraySchema",
|
|
3148
3148
|
"location": {
|
|
3149
3149
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3150
|
-
"line":
|
|
3150
|
+
"line": 846,
|
|
3151
3151
|
"character": 78
|
|
3152
3152
|
},
|
|
3153
3153
|
"type": {
|
|
3154
3154
|
"__schema": "TypeRefSchema",
|
|
3155
3155
|
"location": {
|
|
3156
3156
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3157
|
-
"line":
|
|
3157
|
+
"line": 846,
|
|
3158
3158
|
"character": 78
|
|
3159
3159
|
},
|
|
3160
3160
|
"name": "AspectDefinition"
|
|
@@ -3171,7 +3171,7 @@
|
|
|
3171
3171
|
"__schema": "VariableLikeSchema",
|
|
3172
3172
|
"location": {
|
|
3173
3173
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3174
|
-
"line":
|
|
3174
|
+
"line": 865,
|
|
3175
3175
|
"character": 3
|
|
3176
3176
|
},
|
|
3177
3177
|
"signature": "(property) AspectLoaderMain.runtime: RuntimeDefinition",
|
|
@@ -3180,7 +3180,7 @@
|
|
|
3180
3180
|
"__schema": "InferenceTypeSchema",
|
|
3181
3181
|
"location": {
|
|
3182
3182
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3183
|
-
"line":
|
|
3183
|
+
"line": 865,
|
|
3184
3184
|
"character": 3
|
|
3185
3185
|
},
|
|
3186
3186
|
"type": "RuntimeDefinition"
|
|
@@ -3192,7 +3192,7 @@
|
|
|
3192
3192
|
"__schema": "VariableLikeSchema",
|
|
3193
3193
|
"location": {
|
|
3194
3194
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3195
|
-
"line":
|
|
3195
|
+
"line": 866,
|
|
3196
3196
|
"character": 3
|
|
3197
3197
|
},
|
|
3198
3198
|
"signature": "(property) AspectLoaderMain.dependencies: Aspect[]",
|
|
@@ -3201,7 +3201,7 @@
|
|
|
3201
3201
|
"__schema": "InferenceTypeSchema",
|
|
3202
3202
|
"location": {
|
|
3203
3203
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3204
|
-
"line":
|
|
3204
|
+
"line": 866,
|
|
3205
3205
|
"character": 3
|
|
3206
3206
|
},
|
|
3207
3207
|
"type": "Aspect[]"
|
|
@@ -3213,7 +3213,7 @@
|
|
|
3213
3213
|
"__schema": "VariableLikeSchema",
|
|
3214
3214
|
"location": {
|
|
3215
3215
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3216
|
-
"line":
|
|
3216
|
+
"line": 867,
|
|
3217
3217
|
"character": 3
|
|
3218
3218
|
},
|
|
3219
3219
|
"signature": "(property) AspectLoaderMain.slots: (((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]",
|
|
@@ -3222,7 +3222,7 @@
|
|
|
3222
3222
|
"__schema": "InferenceTypeSchema",
|
|
3223
3223
|
"location": {
|
|
3224
3224
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3225
|
-
"line":
|
|
3225
|
+
"line": 867,
|
|
3226
3226
|
"character": 3
|
|
3227
3227
|
},
|
|
3228
3228
|
"type": "(((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]"
|
|
@@ -3234,7 +3234,7 @@
|
|
|
3234
3234
|
"__schema": "FunctionLikeSchema",
|
|
3235
3235
|
"location": {
|
|
3236
3236
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3237
|
-
"line":
|
|
3237
|
+
"line": 873,
|
|
3238
3238
|
"character": 3
|
|
3239
3239
|
},
|
|
3240
3240
|
"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>",
|
|
@@ -3244,7 +3244,7 @@
|
|
|
3244
3244
|
"__schema": "ParameterSchema",
|
|
3245
3245
|
"location": {
|
|
3246
3246
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3247
|
-
"line":
|
|
3247
|
+
"line": 874,
|
|
3248
3248
|
"character": 5
|
|
3249
3249
|
},
|
|
3250
3250
|
"name": "[ loggerExt, envs, graphql ]",
|
|
@@ -3252,7 +3252,7 @@
|
|
|
3252
3252
|
"__schema": "TupleTypeSchema",
|
|
3253
3253
|
"location": {
|
|
3254
3254
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3255
|
-
"line":
|
|
3255
|
+
"line": 874,
|
|
3256
3256
|
"character": 33
|
|
3257
3257
|
},
|
|
3258
3258
|
"elements": [
|
|
@@ -3260,7 +3260,7 @@
|
|
|
3260
3260
|
"__schema": "TypeRefSchema",
|
|
3261
3261
|
"location": {
|
|
3262
3262
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3263
|
-
"line":
|
|
3263
|
+
"line": 874,
|
|
3264
3264
|
"character": 34
|
|
3265
3265
|
},
|
|
3266
3266
|
"name": "LoggerMain"
|
|
@@ -3269,7 +3269,7 @@
|
|
|
3269
3269
|
"__schema": "TypeRefSchema",
|
|
3270
3270
|
"location": {
|
|
3271
3271
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3272
|
-
"line":
|
|
3272
|
+
"line": 874,
|
|
3273
3273
|
"character": 46
|
|
3274
3274
|
},
|
|
3275
3275
|
"name": "EnvsMain"
|
|
@@ -3278,7 +3278,7 @@
|
|
|
3278
3278
|
"__schema": "TypeRefSchema",
|
|
3279
3279
|
"location": {
|
|
3280
3280
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3281
|
-
"line":
|
|
3281
|
+
"line": 874,
|
|
3282
3282
|
"character": 56
|
|
3283
3283
|
},
|
|
3284
3284
|
"name": "GraphqlMain"
|
|
@@ -3292,7 +3292,7 @@
|
|
|
3292
3292
|
"__schema": "ParameterSchema",
|
|
3293
3293
|
"location": {
|
|
3294
3294
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3295
|
-
"line":
|
|
3295
|
+
"line": 875,
|
|
3296
3296
|
"character": 5
|
|
3297
3297
|
},
|
|
3298
3298
|
"name": "config",
|
|
@@ -3300,7 +3300,7 @@
|
|
|
3300
3300
|
"__schema": "InferenceTypeSchema",
|
|
3301
3301
|
"location": {
|
|
3302
3302
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3303
|
-
"line":
|
|
3303
|
+
"line": 875,
|
|
3304
3304
|
"character": 5
|
|
3305
3305
|
},
|
|
3306
3306
|
"type": "any"
|
|
@@ -3312,7 +3312,7 @@
|
|
|
3312
3312
|
"__schema": "ParameterSchema",
|
|
3313
3313
|
"location": {
|
|
3314
3314
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3315
|
-
"line":
|
|
3315
|
+
"line": 876,
|
|
3316
3316
|
"character": 5
|
|
3317
3317
|
},
|
|
3318
3318
|
"name": "[ onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot ]",
|
|
@@ -3320,7 +3320,7 @@
|
|
|
3320
3320
|
"__schema": "TupleTypeSchema",
|
|
3321
3321
|
"location": {
|
|
3322
3322
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3323
|
-
"line":
|
|
3323
|
+
"line": 876,
|
|
3324
3324
|
"character": 74
|
|
3325
3325
|
},
|
|
3326
3326
|
"elements": [
|
|
@@ -3328,7 +3328,7 @@
|
|
|
3328
3328
|
"__schema": "TypeRefSchema",
|
|
3329
3329
|
"location": {
|
|
3330
3330
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3331
|
-
"line":
|
|
3331
|
+
"line": 877,
|
|
3332
3332
|
"character": 7
|
|
3333
3333
|
},
|
|
3334
3334
|
"name": "OnAspectLoadErrorSlot"
|
|
@@ -3337,7 +3337,7 @@
|
|
|
3337
3337
|
"__schema": "TypeRefSchema",
|
|
3338
3338
|
"location": {
|
|
3339
3339
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3340
|
-
"line":
|
|
3340
|
+
"line": 878,
|
|
3341
3341
|
"character": 7
|
|
3342
3342
|
},
|
|
3343
3343
|
"name": "OnLoadRequireableExtensionSlot"
|
|
@@ -3346,7 +3346,7 @@
|
|
|
3346
3346
|
"__schema": "TypeRefSchema",
|
|
3347
3347
|
"location": {
|
|
3348
3348
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3349
|
-
"line":
|
|
3349
|
+
"line": 879,
|
|
3350
3350
|
"character": 7
|
|
3351
3351
|
},
|
|
3352
3352
|
"name": "PluginDefinitionSlot"
|
|
@@ -3360,7 +3360,7 @@
|
|
|
3360
3360
|
"__schema": "ParameterSchema",
|
|
3361
3361
|
"location": {
|
|
3362
3362
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3363
|
-
"line":
|
|
3363
|
+
"line": 881,
|
|
3364
3364
|
"character": 5
|
|
3365
3365
|
},
|
|
3366
3366
|
"name": "harmony",
|
|
@@ -3368,7 +3368,7 @@
|
|
|
3368
3368
|
"__schema": "TypeRefSchema",
|
|
3369
3369
|
"location": {
|
|
3370
3370
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3371
|
-
"line":
|
|
3371
|
+
"line": 881,
|
|
3372
3372
|
"character": 14
|
|
3373
3373
|
},
|
|
3374
3374
|
"name": "Harmony"
|
|
@@ -3381,7 +3381,7 @@
|
|
|
3381
3381
|
"__schema": "InferenceTypeSchema",
|
|
3382
3382
|
"location": {
|
|
3383
3383
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
3384
|
-
"line":
|
|
3384
|
+
"line": 873,
|
|
3385
3385
|
"character": 3
|
|
3386
3386
|
},
|
|
3387
3387
|
"type": "Promise<AspectLoaderMain>"
|
|
@@ -9129,7 +9129,7 @@
|
|
|
9129
9129
|
"__schema": "FunctionLikeSchema",
|
|
9130
9130
|
"location": {
|
|
9131
9131
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9132
|
-
"line":
|
|
9132
|
+
"line": 816,
|
|
9133
9133
|
"character": 3
|
|
9134
9134
|
},
|
|
9135
9135
|
"signature": "(method) AspectLoaderMain.loadAspectFromPath(localAspects: string[]): Promise<void>",
|
|
@@ -9139,7 +9139,7 @@
|
|
|
9139
9139
|
"__schema": "ParameterSchema",
|
|
9140
9140
|
"location": {
|
|
9141
9141
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9142
|
-
"line":
|
|
9142
|
+
"line": 816,
|
|
9143
9143
|
"character": 35
|
|
9144
9144
|
},
|
|
9145
9145
|
"name": "localAspects",
|
|
@@ -9147,14 +9147,14 @@
|
|
|
9147
9147
|
"__schema": "TypeArraySchema",
|
|
9148
9148
|
"location": {
|
|
9149
9149
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9150
|
-
"line":
|
|
9150
|
+
"line": 816,
|
|
9151
9151
|
"character": 49
|
|
9152
9152
|
},
|
|
9153
9153
|
"type": {
|
|
9154
9154
|
"__schema": "KeywordTypeSchema",
|
|
9155
9155
|
"location": {
|
|
9156
9156
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9157
|
-
"line":
|
|
9157
|
+
"line": 816,
|
|
9158
9158
|
"character": 49
|
|
9159
9159
|
},
|
|
9160
9160
|
"name": "string"
|
|
@@ -9168,7 +9168,7 @@
|
|
|
9168
9168
|
"__schema": "InferenceTypeSchema",
|
|
9169
9169
|
"location": {
|
|
9170
9170
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9171
|
-
"line":
|
|
9171
|
+
"line": 816,
|
|
9172
9172
|
"character": 3
|
|
9173
9173
|
},
|
|
9174
9174
|
"type": "Promise<void>"
|
|
@@ -9182,7 +9182,7 @@
|
|
|
9182
9182
|
"__schema": "FunctionLikeSchema",
|
|
9183
9183
|
"location": {
|
|
9184
9184
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9185
|
-
"line":
|
|
9185
|
+
"line": 846,
|
|
9186
9186
|
"character": 3
|
|
9187
9187
|
},
|
|
9188
9188
|
"signature": "(method) AspectLoaderMain.resolveLocalAspects(ids: string[], runtime?: string): Promise<AspectDefinition[]>",
|
|
@@ -9192,7 +9192,7 @@
|
|
|
9192
9192
|
"__schema": "ParameterSchema",
|
|
9193
9193
|
"location": {
|
|
9194
9194
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9195
|
-
"line":
|
|
9195
|
+
"line": 846,
|
|
9196
9196
|
"character": 36
|
|
9197
9197
|
},
|
|
9198
9198
|
"name": "ids",
|
|
@@ -9200,14 +9200,14 @@
|
|
|
9200
9200
|
"__schema": "TypeArraySchema",
|
|
9201
9201
|
"location": {
|
|
9202
9202
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9203
|
-
"line":
|
|
9203
|
+
"line": 846,
|
|
9204
9204
|
"character": 41
|
|
9205
9205
|
},
|
|
9206
9206
|
"type": {
|
|
9207
9207
|
"__schema": "KeywordTypeSchema",
|
|
9208
9208
|
"location": {
|
|
9209
9209
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9210
|
-
"line":
|
|
9210
|
+
"line": 846,
|
|
9211
9211
|
"character": 41
|
|
9212
9212
|
},
|
|
9213
9213
|
"name": "string"
|
|
@@ -9220,7 +9220,7 @@
|
|
|
9220
9220
|
"__schema": "ParameterSchema",
|
|
9221
9221
|
"location": {
|
|
9222
9222
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9223
|
-
"line":
|
|
9223
|
+
"line": 846,
|
|
9224
9224
|
"character": 51
|
|
9225
9225
|
},
|
|
9226
9226
|
"name": "runtime",
|
|
@@ -9228,7 +9228,7 @@
|
|
|
9228
9228
|
"__schema": "KeywordTypeSchema",
|
|
9229
9229
|
"location": {
|
|
9230
9230
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9231
|
-
"line":
|
|
9231
|
+
"line": 846,
|
|
9232
9232
|
"character": 61
|
|
9233
9233
|
},
|
|
9234
9234
|
"name": "string"
|
|
@@ -9241,7 +9241,7 @@
|
|
|
9241
9241
|
"__schema": "TypeRefSchema",
|
|
9242
9242
|
"location": {
|
|
9243
9243
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9244
|
-
"line":
|
|
9244
|
+
"line": 846,
|
|
9245
9245
|
"character": 70
|
|
9246
9246
|
},
|
|
9247
9247
|
"name": "Promise",
|
|
@@ -9250,14 +9250,14 @@
|
|
|
9250
9250
|
"__schema": "TypeArraySchema",
|
|
9251
9251
|
"location": {
|
|
9252
9252
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9253
|
-
"line":
|
|
9253
|
+
"line": 846,
|
|
9254
9254
|
"character": 78
|
|
9255
9255
|
},
|
|
9256
9256
|
"type": {
|
|
9257
9257
|
"__schema": "TypeRefSchema",
|
|
9258
9258
|
"location": {
|
|
9259
9259
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9260
|
-
"line":
|
|
9260
|
+
"line": 846,
|
|
9261
9261
|
"character": 78
|
|
9262
9262
|
},
|
|
9263
9263
|
"name": "AspectDefinition"
|
|
@@ -9274,7 +9274,7 @@
|
|
|
9274
9274
|
"__schema": "VariableLikeSchema",
|
|
9275
9275
|
"location": {
|
|
9276
9276
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9277
|
-
"line":
|
|
9277
|
+
"line": 865,
|
|
9278
9278
|
"character": 3
|
|
9279
9279
|
},
|
|
9280
9280
|
"signature": "(property) AspectLoaderMain.runtime: RuntimeDefinition",
|
|
@@ -9283,7 +9283,7 @@
|
|
|
9283
9283
|
"__schema": "InferenceTypeSchema",
|
|
9284
9284
|
"location": {
|
|
9285
9285
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9286
|
-
"line":
|
|
9286
|
+
"line": 865,
|
|
9287
9287
|
"character": 3
|
|
9288
9288
|
},
|
|
9289
9289
|
"type": "RuntimeDefinition"
|
|
@@ -9295,7 +9295,7 @@
|
|
|
9295
9295
|
"__schema": "VariableLikeSchema",
|
|
9296
9296
|
"location": {
|
|
9297
9297
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9298
|
-
"line":
|
|
9298
|
+
"line": 866,
|
|
9299
9299
|
"character": 3
|
|
9300
9300
|
},
|
|
9301
9301
|
"signature": "(property) AspectLoaderMain.dependencies: Aspect[]",
|
|
@@ -9304,7 +9304,7 @@
|
|
|
9304
9304
|
"__schema": "InferenceTypeSchema",
|
|
9305
9305
|
"location": {
|
|
9306
9306
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9307
|
-
"line":
|
|
9307
|
+
"line": 866,
|
|
9308
9308
|
"character": 3
|
|
9309
9309
|
},
|
|
9310
9310
|
"type": "Aspect[]"
|
|
@@ -9316,7 +9316,7 @@
|
|
|
9316
9316
|
"__schema": "VariableLikeSchema",
|
|
9317
9317
|
"location": {
|
|
9318
9318
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9319
|
-
"line":
|
|
9319
|
+
"line": 867,
|
|
9320
9320
|
"character": 3
|
|
9321
9321
|
},
|
|
9322
9322
|
"signature": "(property) AspectLoaderMain.slots: (((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]",
|
|
@@ -9325,7 +9325,7 @@
|
|
|
9325
9325
|
"__schema": "InferenceTypeSchema",
|
|
9326
9326
|
"location": {
|
|
9327
9327
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9328
|
-
"line":
|
|
9328
|
+
"line": 867,
|
|
9329
9329
|
"character": 3
|
|
9330
9330
|
},
|
|
9331
9331
|
"type": "(((registerFn: () => string) => SlotRegistry<OnAspectLoadError>) | ((registerFn: () => string) => SlotRegistry<OnLoadRequireableExtension>) | ((registerFn: () => string) => SlotRegistry<...>))[]"
|
|
@@ -9337,7 +9337,7 @@
|
|
|
9337
9337
|
"__schema": "FunctionLikeSchema",
|
|
9338
9338
|
"location": {
|
|
9339
9339
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9340
|
-
"line":
|
|
9340
|
+
"line": 873,
|
|
9341
9341
|
"character": 3
|
|
9342
9342
|
},
|
|
9343
9343
|
"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>",
|
|
@@ -9347,7 +9347,7 @@
|
|
|
9347
9347
|
"__schema": "ParameterSchema",
|
|
9348
9348
|
"location": {
|
|
9349
9349
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9350
|
-
"line":
|
|
9350
|
+
"line": 874,
|
|
9351
9351
|
"character": 5
|
|
9352
9352
|
},
|
|
9353
9353
|
"name": "[ loggerExt, envs, graphql ]",
|
|
@@ -9355,7 +9355,7 @@
|
|
|
9355
9355
|
"__schema": "TupleTypeSchema",
|
|
9356
9356
|
"location": {
|
|
9357
9357
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9358
|
-
"line":
|
|
9358
|
+
"line": 874,
|
|
9359
9359
|
"character": 33
|
|
9360
9360
|
},
|
|
9361
9361
|
"elements": [
|
|
@@ -9363,7 +9363,7 @@
|
|
|
9363
9363
|
"__schema": "TypeRefSchema",
|
|
9364
9364
|
"location": {
|
|
9365
9365
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9366
|
-
"line":
|
|
9366
|
+
"line": 874,
|
|
9367
9367
|
"character": 34
|
|
9368
9368
|
},
|
|
9369
9369
|
"name": "LoggerMain"
|
|
@@ -9372,7 +9372,7 @@
|
|
|
9372
9372
|
"__schema": "TypeRefSchema",
|
|
9373
9373
|
"location": {
|
|
9374
9374
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9375
|
-
"line":
|
|
9375
|
+
"line": 874,
|
|
9376
9376
|
"character": 46
|
|
9377
9377
|
},
|
|
9378
9378
|
"name": "EnvsMain"
|
|
@@ -9381,7 +9381,7 @@
|
|
|
9381
9381
|
"__schema": "TypeRefSchema",
|
|
9382
9382
|
"location": {
|
|
9383
9383
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9384
|
-
"line":
|
|
9384
|
+
"line": 874,
|
|
9385
9385
|
"character": 56
|
|
9386
9386
|
},
|
|
9387
9387
|
"name": "GraphqlMain"
|
|
@@ -9395,7 +9395,7 @@
|
|
|
9395
9395
|
"__schema": "ParameterSchema",
|
|
9396
9396
|
"location": {
|
|
9397
9397
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9398
|
-
"line":
|
|
9398
|
+
"line": 875,
|
|
9399
9399
|
"character": 5
|
|
9400
9400
|
},
|
|
9401
9401
|
"name": "config",
|
|
@@ -9403,7 +9403,7 @@
|
|
|
9403
9403
|
"__schema": "InferenceTypeSchema",
|
|
9404
9404
|
"location": {
|
|
9405
9405
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9406
|
-
"line":
|
|
9406
|
+
"line": 875,
|
|
9407
9407
|
"character": 5
|
|
9408
9408
|
},
|
|
9409
9409
|
"type": "any"
|
|
@@ -9415,7 +9415,7 @@
|
|
|
9415
9415
|
"__schema": "ParameterSchema",
|
|
9416
9416
|
"location": {
|
|
9417
9417
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9418
|
-
"line":
|
|
9418
|
+
"line": 876,
|
|
9419
9419
|
"character": 5
|
|
9420
9420
|
},
|
|
9421
9421
|
"name": "[ onAspectLoadErrorSlot, onLoadRequireableExtensionSlot, pluginSlot ]",
|
|
@@ -9423,7 +9423,7 @@
|
|
|
9423
9423
|
"__schema": "TupleTypeSchema",
|
|
9424
9424
|
"location": {
|
|
9425
9425
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9426
|
-
"line":
|
|
9426
|
+
"line": 876,
|
|
9427
9427
|
"character": 74
|
|
9428
9428
|
},
|
|
9429
9429
|
"elements": [
|
|
@@ -9431,7 +9431,7 @@
|
|
|
9431
9431
|
"__schema": "TypeRefSchema",
|
|
9432
9432
|
"location": {
|
|
9433
9433
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9434
|
-
"line":
|
|
9434
|
+
"line": 877,
|
|
9435
9435
|
"character": 7
|
|
9436
9436
|
},
|
|
9437
9437
|
"name": "OnAspectLoadErrorSlot"
|
|
@@ -9440,7 +9440,7 @@
|
|
|
9440
9440
|
"__schema": "TypeRefSchema",
|
|
9441
9441
|
"location": {
|
|
9442
9442
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9443
|
-
"line":
|
|
9443
|
+
"line": 878,
|
|
9444
9444
|
"character": 7
|
|
9445
9445
|
},
|
|
9446
9446
|
"name": "OnLoadRequireableExtensionSlot"
|
|
@@ -9449,7 +9449,7 @@
|
|
|
9449
9449
|
"__schema": "TypeRefSchema",
|
|
9450
9450
|
"location": {
|
|
9451
9451
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9452
|
-
"line":
|
|
9452
|
+
"line": 879,
|
|
9453
9453
|
"character": 7
|
|
9454
9454
|
},
|
|
9455
9455
|
"name": "PluginDefinitionSlot"
|
|
@@ -9463,7 +9463,7 @@
|
|
|
9463
9463
|
"__schema": "ParameterSchema",
|
|
9464
9464
|
"location": {
|
|
9465
9465
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9466
|
-
"line":
|
|
9466
|
+
"line": 881,
|
|
9467
9467
|
"character": 5
|
|
9468
9468
|
},
|
|
9469
9469
|
"name": "harmony",
|
|
@@ -9471,7 +9471,7 @@
|
|
|
9471
9471
|
"__schema": "TypeRefSchema",
|
|
9472
9472
|
"location": {
|
|
9473
9473
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9474
|
-
"line":
|
|
9474
|
+
"line": 881,
|
|
9475
9475
|
"character": 14
|
|
9476
9476
|
},
|
|
9477
9477
|
"name": "Harmony"
|
|
@@ -9484,7 +9484,7 @@
|
|
|
9484
9484
|
"__schema": "InferenceTypeSchema",
|
|
9485
9485
|
"location": {
|
|
9486
9486
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9487
|
-
"line":
|
|
9487
|
+
"line": 873,
|
|
9488
9488
|
"character": 3
|
|
9489
9489
|
},
|
|
9490
9490
|
"type": "Promise<AspectLoaderMain>"
|
|
@@ -9502,7 +9502,7 @@
|
|
|
9502
9502
|
"__schema": "UnImplementedSchema",
|
|
9503
9503
|
"location": {
|
|
9504
9504
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9505
|
-
"line":
|
|
9505
|
+
"line": 902,
|
|
9506
9506
|
"character": 16
|
|
9507
9507
|
},
|
|
9508
9508
|
"name": "AspectLoaderMain",
|
|
@@ -9597,7 +9597,7 @@
|
|
|
9597
9597
|
"__schema": "UnImplementedSchema",
|
|
9598
9598
|
"location": {
|
|
9599
9599
|
"filePath": "aspect-loader.main.runtime.ts",
|
|
9600
|
-
"line":
|
|
9600
|
+
"line": 900,
|
|
9601
9601
|
"character": 1
|
|
9602
9602
|
},
|
|
9603
9603
|
"name": "AspectLoaderAspect.addRuntime(AspectLoaderMain);",
|
|
@@ -11114,7 +11114,7 @@
|
|
|
11114
11114
|
"componentId": {
|
|
11115
11115
|
"scope": "teambit.harmony",
|
|
11116
11116
|
"name": "aspect-loader",
|
|
11117
|
-
"version": "1.0.
|
|
11117
|
+
"version": "1.0.385"
|
|
11118
11118
|
},
|
|
11119
11119
|
"taggedModuleExports": []
|
|
11120
11120
|
}
|
|
@@ -753,12 +753,6 @@ class AspectLoaderMain {
|
|
|
753
753
|
await this.harmony.load(relevantManifests);
|
|
754
754
|
} catch (e) {
|
|
755
755
|
const ids = extensionsManifests.map(manifest => manifest.id || 'unknown');
|
|
756
|
-
// TODO: improve texts
|
|
757
|
-
const errorMsg = e.message.split('\n')[0];
|
|
758
|
-
const warning = (0, _constants2().UNABLE_TO_LOAD_EXTENSION_FROM_LIST)(ids, errorMsg, neededFor);
|
|
759
|
-
this.logger.error(warning, e);
|
|
760
|
-
if (mergedOptions.ignoreErrors) return;
|
|
761
|
-
if (e.code === 'MODULE_NOT_FOUND' && mergedOptions.hideMissingModuleError) return;
|
|
762
756
|
if (mergedOptions.unifyErrorsByExtId) {
|
|
763
757
|
const needToPrint = (0, _lodash().some)(ids, id => !this.failedToLoadExt.has(id));
|
|
764
758
|
if (!needToPrint) return;
|
|
@@ -772,6 +766,12 @@ class AspectLoaderMain {
|
|
|
772
766
|
}
|
|
773
767
|
});
|
|
774
768
|
}
|
|
769
|
+
if (mergedOptions.ignoreErrors) return;
|
|
770
|
+
if ((e.code === 'MODULE_NOT_FOUND' || e.code === 'ERR_MODULE_NOT_FOUND') && mergedOptions.hideMissingModuleError) return;
|
|
771
|
+
// TODO: improve texts
|
|
772
|
+
const errorMsg = e.message.split('\n')[0];
|
|
773
|
+
const warning = (0, _constants2().UNABLE_TO_LOAD_EXTENSION_FROM_LIST)(ids, errorMsg, neededFor);
|
|
774
|
+
this.logger.error(warning, e);
|
|
775
775
|
if (this.logger.isLoaderStarted) {
|
|
776
776
|
if (mergedOptions.throwOnError) throw new (_bitError().BitError)(warning);
|
|
777
777
|
this.logger.consoleFailure(warning);
|
|
@@ -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","warning","UNABLE_TO_LOAD_EXTENSION_FROM_LIST","needToPrint","some","failedToLoadExt","parsedId","tryFromString","fullName","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, id: ComponentID) => 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.id);\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 // 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 (mergedOptions.ignoreErrors) return;\n if (e.code === 'MODULE_NOT_FOUND' && mergedOptions.hideMissingModuleError) return;\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 (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":";;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,oBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,mBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,WAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAK,SAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,QAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,OAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,MAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,aAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,YAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,OAAA;EAAA,MAAAR,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAO,MAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,WAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,UAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,KAAA;EAAA,MAAAV,IAAA,GAAAC,OAAA;EAAAS,IAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAW,SAAA;EAAA,MAAAX,IAAA,GAAAC,OAAA;EAAAU,QAAA,YAAAA,CAAA;IAAA,OAAAX,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAY,UAAA;EAAA,MAAAZ,IAAA,GAAAC,OAAA;EAAAW,SAAA,YAAAA,CAAA;IAAA,OAAAZ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAa,QAAA;EAAA,MAAAb,IAAA,GAAAC,OAAA;EAAAY,OAAA,YAAAA,CAAA;IAAA,OAAAb,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAc,oBAAA;EAAA,MAAAd,IAAA,GAAAC,OAAA;EAAAa,mBAAA,YAAAA,CAAA;IAAA,OAAAd,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAe,MAAA;EAAA,MAAAf,IAAA,GAAAC,OAAA;EAAAc,KAAA,YAAAA,CAAA;IAAA,OAAAf,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAgB,KAAA;EAAA,MAAAhB,IAAA,GAAAC,OAAA;EAAAe,IAAA,YAAAA,CAAA;IAAA,OAAAhB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAiB,QAAA;EAAA,MAAAjB,IAAA,GAAAC,OAAA;EAAAgB,OAAA,YAAAA,CAAA;IAAA,OAAAjB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAkB,SAAA;EAAA,MAAAlB,IAAA,GAAAC,OAAA;EAAAiB,QAAA,YAAAA,CAAA;IAAA,OAAAlB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAmB,YAAA;EAAA,MAAAnB,IAAA,GAAAI,sBAAA,CAAAH,OAAA;EAAAkB,WAAA,YAAAA,CAAA;IAAA,OAAAnB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAoB,QAAA;EAAA,MAAApB,IAAA,GAAAC,OAAA;EAAAmB,OAAA,YAAAA,CAAA;IAAA,OAAApB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAqB,kBAAA;EAAA,MAAArB,IAAA,GAAAC,OAAA;EAAAoB,iBAAA,YAAAA,CAAA;IAAA,OAAArB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAsB,cAAA;EAAA,MAAAtB,IAAA,GAAAC,OAAA;EAAAqB,aAAA,YAAAA,CAAA;IAAA,OAAAtB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAuB,YAAA;EAAA,MAAAvB,IAAA,GAAAC,OAAA;EAAAsB,WAAA,YAAAA,CAAA;IAAA,OAAAvB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAwB,aAAA;EAAA,MAAAxB,IAAA,GAAAC,OAAA;EAAAuB,YAAA,YAAAA,CAAA;IAAA,OAAAxB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAyB,YAAA;EAAA,MAAAzB,IAAA,GAAAC,OAAA;EAAAwB,WAAA,YAAAA,CAAA;IAAA,OAAAzB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA0B,aAAA;EAAA,MAAA1B,IAAA,GAAAC,OAAA;EAAAyB,YAAA,YAAAA,CAAA;IAAA,OAAA1B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA2B,SAAA;EAAA,MAAA3B,IAAA,GAAAC,OAAA;EAAA0B,QAAA,YAAAA,CAAA;IAAA,OAAA3B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA4B,eAAA;EAAA,MAAA5B,IAAA,GAAAC,OAAA;EAAA2B,cAAA,YAAAA,CAAA;IAAA,OAAA5B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA6D,SAAAI,uBAAAyB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,QAAAH,CAAA,EAAAI,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAP,CAAA,OAAAM,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAR,CAAA,GAAAI,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAX,CAAA,EAAAI,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAf,CAAA,aAAAI,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAD,OAAA,CAAAG,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAArB,CAAA,EAAAM,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAF,OAAA,CAAAG,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAJ,CAAA;AAAA,SAAAmB,gBAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmB,cAAA,CAAAnB,CAAA,MAAAJ,CAAA,GAAAM,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,IAAAoB,KAAA,EAAAnB,CAAA,EAAAO,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAA1B,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAuB,eAAAlB,CAAA,QAAAsB,CAAA,GAAAC,YAAA,CAAAvB,CAAA,uCAAAsB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAvB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAwB,MAAA,CAAAC,WAAA,kBAAA9B,CAAA,QAAA2B,CAAA,GAAA3B,CAAA,CAAA+B,IAAA,CAAA1B,CAAA,EAAAD,CAAA,uCAAAuB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA5B,CAAA,GAAA6B,MAAA,GAAAC,MAAA,EAAA7B,CAAA,KA5B7D;AA6EA;AACA;AACA;;AAmCO,MAAM8B,gBAAgB,CAAC;EAK5BC,WAAWA,CACDC,MAAc,EACdC,IAAc,EACdC,OAAgB,EAChBC,qBAA4C,EAC5CC,8BAA8D,EAC9DC,UAAgC,EACxC;IAAA,KANQL,MAAc,GAAdA,MAAc;IAAA,KACdC,IAAc,GAAdA,IAAc;IAAA,KACdC,OAAgB,GAAhBA,OAAgB;IAAA,KAChBC,qBAA4C,GAA5CA,qBAA4C;IAAA,KAC5CC,8BAA8D,GAA9DA,8BAA8D;IAAA,KAC9DC,UAAgC,GAAhCA,UAAgC;IAAAvB,eAAA,oCAVI,EAAE;IAAAA,eAAA,0BACtB,IAAIwB,GAAG,CAAS,CAAC;IAAAxB,eAAA,8BACb,IAAIwB,GAAG,CAAS,CAAC;IAAAxB,eAAA,uBAmKd,EAAE;IAAAA,eAAA,oBAmCf,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;IAAAA,eAAA;IAAAA,eAAA,2BA+ChC,EAAE;EA5OpC;EAEHyB,4BAA4BA,CAAA,EAA2B;IACrD,MAAMC,iBAAiB,GAAG,IAAI,CAACC,gBAAgB,CAAC,CAAC;IACjD,MAAMC,yBAAyB,GAAG,CAAC,CAAC;IAEpCF,iBAAiB,CAAC3B,OAAO,CAAE8B,EAAE,IAAK;MAChC,MAAMC,WAAW,GAAG,IAAAC,uCAAwB,EAACF,EAAE,CAAC;MAChDD,yBAAyB,CAACE,WAAW,CAAC,GAAGD,EAAE;IAC7C,CAAC,CAAC;IAEF,OAAOD,yBAAyB;EAClC;EAEQI,WAAWA,CAACC,SAAoB,EAAE;IACxC,MAAMC,GAAG,GAAG,IAAI,CAACf,IAAI,CAACgB,MAAM,CAACF,SAAS,CAAC,EAAEC,GAAG;IAC5C,OAAOA,GAAG,EAAEF,WAAW,CAAC,CAAC;EAC3B;EAEAI,6BAA6BA,CAACC,iBAAoC,EAAE;IAClE,IAAI,CAAChB,qBAAqB,CAACiB,QAAQ,CAACD,iBAAiB,CAAC;EACxD;EAEAE,sCAAsCA,CAACC,0BAAsD,EAAE;IAC7F,IAAI,CAAClB,8BAA8B,CAACgB,QAAQ,CAACE,0BAA0B,CAAC;EAC1E;;EAEA;AACF;AACA;EACE,MAAMC,wBAAwBA,CAACC,GAAU,EAAET,SAAoB,EAAoB;IACjF,MAAMU,OAAO,GAAG,IAAI,CAACtB,qBAAqB,CAACuB,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,IAAIC,OAAO,GAAG,KAAK;IACnB,MAAM,IAAAC,qBAAS,EAACH,OAAO,EAAE,OAAO,GAAGI,gBAAgB,CAAC,KAAK;MACvD,MAAMC,MAAM,GAAG,MAAMD,gBAAgB,CAACL,GAAG,EAAET,SAAS,CAACJ,EAAE,CAAC;MACxD,IAAImB,MAAM,EAAEH,OAAO,GAAG,IAAI;IAC5B,CAAC,CAAC;IAEF,OAAOA,OAAO;EAChB;EAEA,MAAMI,cAAcA,CAAChB,SAAoB,EAAEiB,UAAkB,EAAEC,OAAe,EAA0B;IACtG,MAAMC,WAAW,GAAGnB,SAAS,CAACoB,UAAU,CAACC,KAAK,CAACC,IAAI,CAAEC,IAAS,IAAK;MACjE,OAAOA,IAAI,CAACC,QAAQ,CAACC,QAAQ,CAAC,IAAIP,OAAO,UAAU,CAAC;IACtD,CAAC,CAAC;;IAEF;IACA,IAAI,CAACC,WAAW,EAAE,OAAO,IAAI;IAC7B,IAAI;MACF,MAAMO,QAAQ,GAAG,IAAI,CAAC3B,WAAW,CAACC,SAAS,CAAC;MAE5C,IAAI,CAAC0B,QAAQ,EAAE;QACb,OAAO,IAAAC,YAAI,EAACV,UAAU,EAAEE,WAAW,CAACK,QAAQ,CAAC;MAC/C;MAEA,MAAMI,IAAI,GAAGF,QAAQ,CAACG,oBAAoB,CAACV,WAAW,CAACK,QAAQ,CAAC;MAChE,OAAO,IAAAG,YAAI,EAACV,UAAU,EAAEW,IAAI,CAAC;IAC/B,CAAC,CAAC,OAAOhF,CAAC,EAAE;MACV,IAAI,CAACqC,MAAM,CAAC6C,IAAI,CAAC,4EAA4ElF,CAAC,EAAE,CAAC;MACjG;MACA;MACA;MACA;MACA,MAAMmF,QAAQ,GAAG,IAAAJ,YAAI,EAACV,UAAU,EAAEe,iCAAoB,EAAE,IAAAC,wCAAkB,EAACd,WAAW,CAACK,QAAQ,CAAC,CAAC;MACjG,OAAOO,QAAQ;IACjB;EACF;EAEA,MAAMG,iBAAiBA,CAAClC,SAAoB,EAAEiB,UAAkB,EAA0B;IACxF,MAAMkB,UAAU,GAAGnC,SAAS,CAACoB,UAAU,CAACC,KAAK,CAACC,IAAI,CAAEC,IAAS,IAAK;MAChE,OAAOA,IAAI,CAACC,QAAQ,CAACC,QAAQ,CAAC,YAAY,CAAC,IAAIF,IAAI,CAACC,QAAQ,CAACC,QAAQ,CAAC,YAAY,CAAC;IACrF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACU,UAAU,EAAE,OAAO,IAAI;IAC5B,IAAI;MACF,MAAMT,QAAQ,GAAG,IAAI,CAAC3B,WAAW,CAACC,SAAS,CAAC;MAE5C,IAAI,CAAC0B,QAAQ,EAAE;QACb,OAAO,IAAAC,YAAI,EAACV,UAAU,EAAEkB,UAAU,CAACX,QAAQ,CAAC;MAC9C;MAEA,MAAMI,IAAI,GAAGF,QAAQ,CAACG,oBAAoB,CAACM,UAAU,CAACX,QAAQ,CAAC;MAC/D,OAAO,IAAAG,YAAI,EAACV,UAAU,EAAEW,IAAI,CAAC;IAC/B,CAAC,CAAC,OAAOhF,CAAC,EAAE;MACV,IAAI,CAACqC,MAAM,CAAC6C,IAAI,CAAC,4EAA4ElF,CAAC,EAAE,CAAC;MACjG;MACA;MACA;MACA;MACA,MAAMmF,QAAQ,GAAG,IAAAJ,YAAI,EAACV,UAAU,EAAEe,iCAAoB,EAAE,IAAAC,wCAAkB,EAACE,UAAU,CAACX,QAAQ,CAAC,CAAC;MAChG,OAAOO,QAAQ;IACjB;EACF;EAEAK,cAAcA,CAACxC,EAAU,EAAE;IACzB,IAAI,IAAI,CAACyC,aAAa,CAACZ,QAAQ,CAAC7B,EAAE,CAAC,EAAE,OAAO,IAAI;IAChD,IAAI;MACF,OAAO,IAAI,CAACT,OAAO,CAACmD,GAAG,CAAC1C,EAAE,CAAC;IAC7B,CAAC,CAAC,OAAOa,GAAQ,EAAE;MACjB,OAAO,KAAK;IACd;EACF;EAEA8B,aAAaA,CAAC3C,EAAU,EAAgC;IACtD,IAAI;MACF,MAAM4C,QAAQ,GAAG,IAAI,CAACrD,OAAO,CAACmD,GAAG,CAAM1C,EAAE,CAAC;MAC1C,MAAM6C,MAAM,GAAGD,QAAQ,CAACE,IAAI;MAE5B,MAAMA,IAAI,GAAGD,MAAM,GAAGA,MAAM,CAAC/E,KAAK,CAAC8E,QAAQ,CAAC,GAAGG,SAAS;MAExD,OAAO;QACL/C,EAAE;QACF8C;MACF,CAAC;IACH,CAAC,CAAC,OAAOjC,GAAG,EAAE;MACZ,OAAOkC,SAAS;IAClB;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,2BAA2BA,CAACC,QAAgB,EAAQ;IAClD,IAAI,CAACC,yBAAyB,CAACrF,IAAI,CAACoF,QAAQ,CAAC;EAC/C;;EAEA;AACF;AACA;EACEE,oBAAoBA,CAAA,EAAa;IAC/B,MAAMC,iBAAiB,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAI,CAAC/D,OAAO,CAACgE,MAAM,CAACC,GAAG,CAACjG,IAAI,CAAC,CAAC,CAAC;IACpE,MAAMkG,wBAAwB,GAAG,IAAI,CAACP,yBAAyB;IAC/D,OAAOE,iBAAiB,CAACM,MAAM,CAACD,wBAAwB,CAAC;EAC3D;EACAE,gCAAgCA,CAAA,EAAG;IACjC,MAAMP,iBAAiB,GAAG,IAAI,CAACD,oBAAoB,CAAC,CAAC;IACrD,MAAMS,iBAAiB,GAAG,IAAI,CAACrE,OAAO,CAACsE,aAAa;IACpD,MAAMC,gBAAgB,GAAGF,iBAAiB,CAAClG,MAAM,CAAEqG,KAAK,IAAK;MAC3D,OAAO,IAAI,CAACxE,OAAO,CAACyE,UAAU,CAACtB,GAAG,CAACqB,KAAK,CAAC,EAAEE,MAAM;IACnD,CAAC,CAAC;IACF,MAAMC,gBAAgB,GAAG,IAAAC,oBAAU,EAACf,iBAAiB,EAAEU,gBAAgB,CAAC;IACxE,OAAOI,gBAAgB;EACzB;EAEAE,cAAcA,CAACC,KAA4B,EAAoB;IAC7D,OAAOC,oCAAgB,CAAChB,IAAI,CAACe,KAAK,CAAC;EACrC;EAIA,IAAIE,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAAC1H,YAAY;EAC1B;EAEA2H,YAAYA,CAACxE,EAAU,EAAE;IACvB,MAAMyE,GAAG,GAAG,IAAI,CAAC3E,gBAAgB,CAAC,CAAC;IACnC,OAAO2E,GAAG,CAAC5C,QAAQ,CAAC7B,EAAE,CAAC;EACzB;EAEA0E,cAAcA,CAACC,OAAiB,EAAE;IAChC,IAAI,CAAC9H,YAAY,GAAG8H,OAAO;IAC3B,OAAO,IAAI;EACb;EAEA7E,gBAAgBA,CAAA,EAAG;IACjB,MAAM2E,GAAG,GAAG,IAAI,CAACF,WAAW,CAACK,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAAC7E,EAAE,CAAC;IACvD,OAAOyE,GAAG,CAACf,MAAM,CAAC,IAAI,CAACoB,SAAS,CAAC;EACnC;;EAEA;AACF;AACA;EACEC,cAAcA,CAAA,EAAa;IACzB,MAAMC,OAAO,GAAG,IAAI,CAAC1F,IAAI,CAACyF,cAAc,CAAC,CAAC;IAC1C,MAAME,MAAM,GAAG,IAAI,CAACnF,gBAAgB,CAAC,CAAC;IACtC,OAAO,IAAAoF,sBAAY,EAACD,MAAM,EAAED,OAAO,CAAC;EACtC;EAEAG,SAASA,CAACnF,EAAU,EAAW;IAC7B,MAAMyE,GAAG,GAAG,IAAI,CAACM,cAAc,CAAC,CAAC;IACjC,OAAON,GAAG,CAAC5C,QAAQ,CAAC7B,EAAE,CAAC;EACzB;EAIAoF,cAAcA,CAAA,EAAa;IACzB,MAAMC,aAAa,GAAG,IAAI,CAACvF,gBAAgB,CAAC,CAAC;IAC7C,OAAO,IAAAqE,oBAAU,EAAC,IAAI,CAAC5E,OAAO,CAACsE,aAAa,EAAEwB,aAAa,CAAC;EAC9D;EAEA,MAAMC,iBAAiBA,CAACC,WAAoB,EAAE;IAC5C,MAAMC,IAAI,GAAG,MAAMC,OAAO,CAACC,GAAG,CAC5B,IAAI,CAACnB,WAAW,CAACK,GAAG,CAAC,MAAOC,MAAM,IAAK;MACrC,MAAM7E,EAAE,GAAG6E,MAAM,CAAC7E,EAAE;MACpB,MAAM2F,MAAM,GAAG,MAAM,IAAAC,2BAAY,EAAC5F,EAAE,EAAEuF,WAAW,CAAC;MAClD,OAAO,IAAI,CAACnB,cAAc,CAACuB,MAAM,CAAC;IACpC,CAAC,CACH,CAAC;IAED,OAAOH,IAAI,CAAC9H,MAAM,CAAEmI,GAAG,IAAKA,GAAG,CAACC,WAAW,CAAC;EAC9C;EAEA,MAAMC,cAAcA,CAACC,UAAuB,EAAEC,QAAwB,EAA+B;IACnG,MAAMC,QAAQ,GAAGF,UAAU,CAACpB,GAAG,CAAC,MAAOxE,SAAS,IAAK;MACnD,MAAM+F,cAAc,GAAG,MAAMF,QAAQ,CAAC7F,SAAS,CAAC;MAChD,IAAI,CAAC+F,cAAc,EAAE,OAAOpD,SAAS;MACrC,OAAO,KAAIuB,oCAAgB,EACzB6B,cAAc,CAACC,UAAU,EACzBD,cAAc,CAACE,cAAc,EAC7BF,cAAc,CAACL,WAAW,EAC1B1F,SACF,CAAC;IACH,CAAC,CAAC;IAEF,MAAMkG,UAAU,GAAG,MAAMb,OAAO,CAACC,GAAG,CAACQ,QAAQ,CAAC;IAC9C;IACA,OAAO,IAAAK,iBAAO,EAACD,UAAU,CAAC;EAC5B;EAIA,IAAIE,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACC,WAAW;EACzB;EAEAC,aAAaA,CAACF,UAAsB,EAAE;IACpC,IAAI,CAACC,WAAW,GAAGD,UAAU;IAC7B,OAAO,IAAI;EACb;EAIA,IAAI/D,aAAaA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACkE,gBAAgB;EAC9B;EAEOC,sBAAsBA,CAAA,EAAG;IAC9B,IAAI,CAACD,gBAAgB,GAAG,EAAE;EAC5B;EAEQE,UAAUA,CAAC7G,EAAU,EAAQ;IACnC,IAAI,IAAI,CAACyC,aAAa,CAACZ,QAAQ,CAAC7B,EAAE,CAAC,EAAE;IACrC,IAAI,CAAC2G,gBAAgB,CAAC9I,IAAI,CAACmC,EAAE,CAAC;EAChC;EAEA8G,aAAaA,CAACC,QAAa,EAAE;IAC3B,MAAMC,MAAM,GAAG1J,MAAM,CAAC2J,MAAM,CAAC3J,MAAM,CAAC4J,MAAM,CAAC5J,MAAM,CAAC6J,cAAc,CAACJ,QAAQ,CAAC,CAAC,EAAEA,QAAQ,CAAC;IACtFC,MAAM,CAACI,QAAQ,GAAGL,QAAQ,CAACK,QAAQ;IACnCJ,MAAM,CAACK,UAAU,GAAGN,QAAQ,CAACM,UAAU;IACvCL,MAAM,CAACM,UAAU,GAAGP,QAAQ,CAACO,UAAU;IACvC,OAAON,MAAM;EACf;;EAEA;AACF;AACA;EACE,MAAMO,SAASA,CACbC,oBAA0C,EAC1CC,cAAc,GAAG,IAAI,EACgB;IACrC,MAAMC,KAAK,GAAGF,oBAAoB,CAACpH,SAAS,CAACJ,EAAE,CAAC2H,QAAQ,CAAC,CAAC;IAC1D,MAAM9C,MAAM,GAAG,MAAM2C,oBAAoB,CAACpM,OAAO,CAAC,CAAC;IACnD,MAAM2L,QAAQ,GAAGlC,MAAM,CAAC3H,OAAO,IAAI2H,MAAM;IACzCkC,QAAQ,CAAC/G,EAAE,GAAG0H,KAAK;IACnB;IACA,MAAMV,MAAM,GAAG,IAAI,CAACF,aAAa,CAACC,QAAQ,CAAC;IAC3C,IAAIU,cAAc,EAAE,OAAO,IAAI,CAACG,wCAAwC,CAACJ,oBAAoB,EAAER,MAAM,CAAC;IACtG,OAAOA,MAAM;EACf;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMa,yBAAyBA,CAACC,qBAA6C,EAAEC,YAAY,GAAG,KAAK,EAAiB;IAClH,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACC,qCAAqC,CAACH,qBAAqB,EAAEC,YAAY,CAAC;IACvG,OAAO,IAAI,CAACG,yBAAyB,CAACF,SAAS,EAAEjF,SAAS,EAAE;MAAEgF;IAAa,CAAC,CAAC;EAC/E;EAEA,MAAME,qCAAqCA,CACzCH,qBAA6C,EAC7CC,YAAY,GAAG,KAAK,EACpBN,cAAc,GAAG,IAAI,EACuB;IAC5C,MAAMU,UAAU,GAAG,IAAAlH,qBAAS,EAAC6G,qBAAqB,EAAE,MAAON,oBAAoB,IAAK;MAClF,IAAI,CAACM,qBAAqB,EAAE,OAAO/E,SAAS;MAC5C,MAAM2E,KAAK,GAAGF,oBAAoB,CAACpH,SAAS,CAACJ,EAAE,CAAC2H,QAAQ,CAAC,CAAC;MAC1D,IAAI;QACF,OAAO,MAAM,IAAI,CAACJ,SAAS,CAACC,oBAAoB,EAAEC,cAAc,CAAC;MACnE,CAAC,CAAC,OAAOW,QAAa,EAAE;QACtB,IAAI,CAACvB,UAAU,CAACa,KAAK,CAAC;QACtB,IAAI,CAACrI,MAAM,CAACgJ,IAAI,CAAC,6BAA6BX,KAAK,+BAA+B,EAAEU,QAAQ,CAAC;QAC7F,MAAMpH,OAAO,GAAG,MAAM,IAAI,CAACJ,wBAAwB,CAACwH,QAAQ,EAAEZ,oBAAoB,CAACpH,SAAS,CAAC;QAC7F,IAAIkI,cAAc;QAClB,IAAItH,OAAO,EAAE;UACX,IAAI,CAAC3B,MAAM,CAAC6C,IAAI,CAAC,oDAAoDwF,KAAK,EAAE,CAAC;UAC7E,IAAI;YACF,OAAO,MAAM,IAAI,CAACH,SAAS,CAACC,oBAAoB,CAAC;UACnD,CAAC,CAAC,OAAO3G,GAAQ,EAAE;YACjB,IAAI,CAACxB,MAAM,CAACgJ,IAAI,CAAC,0BAA0BX,KAAK,kBAAkB,EAAE7G,GAAG,CAAC;YACxEyH,cAAc,GAAGzH,GAAG;UACtB;QACF;QACA,MAAM0H,KAAK,GAAGD,cAAc,IAAIF,QAAQ;QACxC,IAAI,CAACI,2BAA2B,CAACD,KAAK,EAAEb,KAAK,EAAEK,YAAY,CAAC;MAC9D;MACA,OAAOhF,SAAS;IAClB,CAAC,CAAC;IACF,MAAMiF,SAAS,GAAG,MAAMG,UAAU;;IAElC;IACA,OAAO,IAAA5B,iBAAO,EAACyB,SAAS,CAAC;EAC3B;EAEAQ,2BAA2BA,CAACD,KAAY,EAAEb,KAAa,EAAEK,YAAqB,EAAE;IAC9E,IAAI,CAACzI,IAAI,CAACmJ,kBAAkB,CAACf,KAAK,CAAC;IACnC,MAAMgB,QAAQ,GAAGH,KAAK,CAACI,OAAO,CAACC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAMC,GAAG,GAAG,IAAAC,sCAAwB,EAACpB,KAAK,EAAEgB,QAAQ,CAAC;IACrD,IAAIX,YAAY,EAAE;MAChB;MACA,IAAI,CAAC1I,MAAM,CAAC0J,OAAO,CAACR,KAAK,CAAC;MAC1B,MAAM,KAAIS,iCAAmB,EAACtB,KAAK,EAAEa,KAAK,CAAC;IAC7C;IACA,IAAI,CAAClJ,MAAM,CAACkJ,KAAK,CAACM,GAAG,EAAEN,KAAK,CAAC;IAC7B,IAAI,CAACU,uBAAuB,CAACvB,KAAK,EAAEmB,GAAG,EAAE,IAAI,CAACxJ,MAAM,CAAC6J,eAAe,CAAC;EACvE;EAEQD,uBAAuBA,CAACE,KAAa,EAAEN,GAAW,EAAEO,aAAsB,EAAE;IAClF,IAAI,CAAC,IAAI,CAACC,mBAAmB,CAACC,GAAG,CAACH,KAAK,CAAC,EAAE;MACxC,IAAI,CAACE,mBAAmB,CAACE,GAAG,CAACJ,KAAK,CAAC;MACnC,IAAIC,aAAa,EAAE;QACjB,IAAI,CAAC/J,MAAM,CAACmK,cAAc,CAACX,GAAG,CAAC;MACjC,CAAC,MAAM;QACL,IAAI,CAACxJ,MAAM,CAACoK,cAAc,CAACZ,GAAG,CAAC;MACjC;IACF;EACF;EAEA,MAAMjB,wCAAwCA,CAC5CJ,oBAA0C,EAC1CT,QAAoC,EACC;IACrC,IAAI2C,eAAe,GAAG3C,QAAQ;IAC9B,MAAMjG,OAAO,GAAG,IAAI,CAACrB,8BAA8B,CAACsB,OAAO,CAAC,CAAC;IAC7D,MAAM,IAAAE,qBAAS,EAACH,OAAO,EAAE,OAAO,GAAG6I,8BAA8B,CAAC,KAAK;MACrED,eAAe,GAAG,MAAMC,8BAA8B,CAACnC,oBAAoB,EAAEkC,eAAe,CAAC;IAC/F,CAAC,CAAC;IACF,OAAOA,eAAe;EACxB;EAEAE,aAAaA,CAAA,EAAG;IACd,OAAO,IAAAC,iBAAO,EAAC,IAAI,CAACnK,UAAU,CAACoK,MAAM,CAAC,CAAC,CAAC;EAC1C;EAEAC,UAAUA,CAAC3J,SAAoB,EAAE4J,aAAqB,EAAW;IAC/D,MAAMxE,IAAI,GAAG,IAAI,CAACoE,aAAa,CAAC,CAAC;IACjC,OAAO,IAAI,CAACK,kBAAkB,CAAC7J,SAAS,EAAE4J,aAAa,EAAExE,IAAI,CAAC;EAChE;EAEA,MAAM0E,WAAWA,CAACC,IAAY,EAAE;IAC9B,OAAO,IAAAD,0BAAW,EAACC,IAAI,CAAC;EAC1B;EAEA,MAAMC,OAAOA,CAACD,IAAY,EAAE;IAC1BE,wCAAkB,CAACC,SAAS,CAAC,CAAC;IAC9B,OAAO,IAAAC,oBAAS,EAACJ,IAAI,CAAC;EACxB;EAEAF,kBAAkBA,CAAC7J,SAAoB,EAAE4J,aAAqB,EAAExE,IAAwB,EAAW;IACjG,OAAOgF,kBAAO,CAAClH,IAAI,CACjBlD,SAAS,EACToF,IAAI,EACJ,IAAI,CAAC5E,wBAAwB,CAAC6J,IAAI,CAAC,IAAI,CAAC,EACxC,IAAI,CAACpL,MAAM,EACX,IAAI,CAACqL,kBAAkB,CAAC3L,IAAI,CAAC,IAAI,EAAEqB,SAAS,EAAE4J,aAAa,CAC7D,CAAC;EACH;EAEAW,cAAcA,CAACvK,SAAoB,EAAE4J,aAAqB,EAAY;IACpE,MAAMxE,IAAI,GAAG,IAAI,CAACoE,aAAa,CAAC,CAAC;IACjC,OAAOY,kBAAO,CAAC/I,KAAK,CAACrB,SAAS,EAAEoF,IAAI,EAAE,IAAI,CAACkF,kBAAkB,CAAC3L,IAAI,CAAC,IAAI,EAAEqB,SAAS,EAAE4J,aAAa,CAAC,CAAC;EACrG;EAEAY,cAAcA,CAACxK,SAAoB,EAAW;IAC5C,MAAMoF,IAAI,GAAG,IAAI,CAACoE,aAAa,CAAC,CAAC;IACjC,MAAMnI,KAAK,GAAG+I,kBAAO,CAAC/I,KAAK,CAACrB,SAAS,EAAEoF,IAAI,CAAC;IAC5C,OAAO,CAAC,IAAAqF,iBAAO,EAACpJ,KAAK,CAAC;EACxB;EAEQqJ,cAAcA,CAACC,OAAe,EAAEC,YAAoB,EAAEC,eAAe,GAAG,KAAK,EAAE;IACrF,MAAMC,cAAc,GAAG,IAAAnJ,YAAI,EAACgJ,OAAO,EAAE,MAAM,CAAC;IAC5C,MAAMI,aAAa,GAAG,IAAAC,eAAO,EAACJ,YAAY,CAAC;IAC3C,MAAMK,SAAS,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAACzG,GAAG,CAAE0G,GAAG,IACnDN,YAAY,CAACO,OAAO,CAAC,IAAIC,MAAM,CAAC,GAAGL,aAAa,GAAG,CAAC,EAAE,IAAIG,GAAG,EAAE,CACjE,CAAC;IACD,MAAMG,eAAe,GAAGJ,SAAS,CAACzG,GAAG,CAAE8G,QAAQ,IAAK,IAAA3J,YAAI,EAACmJ,cAAc,EAAEQ,QAAQ,CAAC,CAAC;IACnF,MAAMC,KAAK,GAAGF,eAAe,CAAC/J,IAAI,CAAES,QAAQ,IAAK,IAAAyJ,qBAAU,EAACzJ,QAAQ,CAAC,CAAC;IACtE,IAAIwJ,KAAK,EAAE,OAAOA,KAAK;IACvB,IAAI,CAACV,eAAe,EAAE,OAAO,IAAI;IACjC,MAAMY,UAAU,GAAGb,YAAY,CAACO,OAAO,CAAC,IAAIC,MAAM,CAAC,GAAGL,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC;IAC/E,MAAMW,SAAS,GAAG,IAAA/J,YAAI,EAACmJ,cAAc,EAAEW,UAAU,CAAC;IAClD,OAAOC,SAAS;EAClB;EAEApB,kBAAkBA,CAACtK,SAAoB,EAAE2K,OAAe,EAAE;IACxD,OAAQC,YAAoB,IAAK;MAC/B,MAAMC,eAAe,GAAGD,YAAY,CAACe,QAAQ,CAAC,KAAK,CAAC,IAAIf,YAAY,CAACe,QAAQ,CAAC,MAAM,CAAC;MAErF,IAAI;QACF,MAAMjK,QAAQ,GAAG,IAAI,CAAC3B,WAAW,CAACC,SAAS,CAAC;QAC5C,IAAI,CAAC0B,QAAQ,EAAE;UACb,MAAMkK,QAAQ,GAAG,IAAI,CAAClB,cAAc,CAACC,OAAO,EAAEC,YAAY,EAAEC,eAAe,CAAC;UAC5E,OAAOe,QAAQ,IAAI,IAAAjK,YAAI,EAACgJ,OAAO,EAAEC,YAAY,CAAC;QAChD;QAEA,MAAMhJ,IAAI,GAAGF,QAAQ,CAACG,oBAAoB,CAAC+I,YAAY,CAAC;QACxD,OAAO,IAAAjJ,YAAI,EAACgJ,OAAO,EAAE/I,IAAI,CAAC;MAC5B,CAAC,CAAC,OAAOnB,GAAG,EAAE;QACZ;QACA,IAAI,CAACxB,MAAM,CAAC6C,IAAI,CACd,sEAAsE9B,SAAS,CAACJ,EAAE,CAAC2H,QAAQ,CAAC,CAAC,wCAAwC9G,GAAG,EAC1I,CAAC;QACD,MAAMmL,QAAQ,GAAG,IAAI,CAAClB,cAAc,CAACC,OAAO,EAAEC,YAAY,EAAEC,eAAe,CAAC;QAC5E,OAAOe,QAAQ,IAAI,IAAAjK,YAAI,EAACgJ,OAAO,EAAEC,YAAY,CAAC;MAChD;IACF,CAAC;EACH;EAEAiB,QAAQA,CAAClF,QAAa,EAAE;IACtB,OAAO,CAAC,EAAEA,QAAQ,CAACM,UAAU,IAAIN,QAAQ,CAACO,UAAU,CAAC;EACvD;EAEA4E,aAAaA,CAACnF,QAAa,EAAW;IACpC,OAAO,IAAI,CAACkF,QAAQ,CAAClF,QAAQ,CAAC,IAAIA,QAAQ,CAACK,QAAQ;EACrD;EAEA+E,iBAAiBA,CAAC/L,SAAoB,EAAW;IAC/C,OAAO,IAAI,CAACd,IAAI,CAAC8M,gBAAgB,CAAChM,SAAS,CAAC;EAC9C;;EAEA;AACF;AACA;AACA;EACE,MAAMiM,0BAA0BA,CAC9BC,SAAmB,EACuF;IAC1G,MAAMC,WAAW,GAAG,MAAMC,gBAAW,CAACC,MAAM,CAACC,yBAAY,EAAE,cAAc,CAAC;IAC1E,MAAMH,WAAW,CAACI,SAAS,CAAC,CAAC;IAC7B,MAAMC,qBAAqB,GAAG,IAAAC,gCAAyB,EAAC,CAAC;IACzD,MAAMC,kBAAkB,GAAG,MAAM,IAAAC,cAAO,EAACR,WAAW,CAACpC,IAAI,CAAC;IAC1D,MAAM6C,KAAK,GAAGF,kBAAkB,CAACpK,GAAG,CAAYuK,qBAAW,CAACjN,EAAE,CAAC;IAC/D,MAAMkN,YAAY,GAAGJ,kBAAkB,CAACpK,GAAG,CAAmByK,kCAAkB,CAACnN,EAAE,CAAC;IACpF,MAAMyE,GAAG,GAAG6H,SAAS,CAAC1H,GAAG,CAAE5E,EAAE,IAAKoN,0BAAW,CAACC,UAAU,CAACrN,EAAE,CAAC,CAAC;IAC7D,MAAMsN,WAAW,GAAG7I,GAAG,CAAC8I,KAAK,CAAEvN,EAAE,IAAKA,EAAE,CAACwN,UAAU,CAAC,CAAC,CAAC;IACtD,MAAMC,QAAQ,GAAGH,WAAW,CAAC,CAAC;IAC9B,MAAMN,KAAK,CAACU,MAAM,CAACjJ,GAAG,EAAE;MAAEgJ,QAAQ;MAAEE,MAAM,EAAE;IAAoC,CAAC,CAAC;IAClF,MAAM3H,UAAU,GAAG,MAAMgH,KAAK,CAACY,OAAO,CAACnJ,GAAG,EAAE,IAAI,CAAC;;IAEjD;IACA;IACA;IACA,MAAMoJ,eAAe,GAAG,MAAMb,KAAK,CAACc,kBAAkB,CAAC9H,UAAU,EAAE;MAAE+H,aAAa,EAAE;IAAe,CAAC,CAAC;IACrG,IAAI;MACF,MAAMb,YAAY,CAACrF,yBAAyB,CAACgG,eAAe,EAAE,IAAI,CAAC;IACrE,CAAC,CAAC,OAAOhN,GAAQ,EAAE;MACjB,IAAIA,GAAG,EAAE0H,KAAK,EAAEyF,IAAI,KAAK,kBAAkB,EAAE;QAC3C,MAAMC,oBAAoB,GAAG,MAAMjB,KAAK,CAACc,kBAAkB,CAAC9H,UAAU,EAAE;UACtEkI,YAAY,EAAE,KAAK;UACnBH,aAAa,EAAE;QACjB,CAAC,CAAC;QACF,MAAMb,YAAY,CAACrF,yBAAyB,CAACoG,oBAAoB,EAAE,IAAI,CAAC;MAC1E,CAAC,MAAM;QACL,MAAMpN,GAAG;MACX;IACF;IAEA,OAAO;MAAEmF,UAAU;MAAE8G,kBAAkB;MAAEF;IAAsB,CAAC;EAClE;EAEAuB,gBAAgBA,CACdC,OAA2B,EAC3BC,YAA2B,EAC3B9I,WAA+B,EAC/B+I,UAAgC,GAAG,CAAC,CAAC,EACrC;IACA,MAAMC,OAAO,GAAG,IAAI,CAACzO,gBAAgB,CAAC,CAAC;IACvC,MAAM0O,SAAS,GAAGH,YAAY,CAACzJ,GAAG,CAAE5E,EAAE,IAAKA,EAAE,CAACyO,sBAAsB,CAAC,CAAC,CAAC;IACvE,MAAMC,cAAc,GAAGJ,UAAU,CAACK,WAAW,GACzCP,OAAO,CAAC1Q,MAAM,CAAEmI,GAAG,IAAK;MACtB,MAAM+I,MAAM,GAAGL,OAAO,CAAC1M,QAAQ,CAACgE,GAAG,CAACgJ,KAAK,IAAI,EAAE,CAAC;MAChD,MAAM7O,EAAE,GAAGoN,0BAAW,CAACC,UAAU,CAACxH,GAAG,CAACgJ,KAAK,IAAI,EAAE,CAAC;MAClD,MAAMC,QAAQ,GAAGN,SAAS,CAAC3M,QAAQ,CAAC7B,EAAE,CAACyO,sBAAsB,CAAC,CAAC,CAAC;MAChE,IAAIK,QAAQ,EAAE,OAAO,IAAI;MACzB,OAAO,CAACF,MAAM;IAChB,CAAC,CAAC,GACFR,OAAO;IAEX,MAAMW,QAAQ,GAAG,IAAAC,gBAAM,EAACN,cAAc,EAAG7I,GAAG,IAAK,GAAGA,GAAG,CAACO,UAAU,IAAIP,GAAG,CAACC,WAAW,EAAE,CAAC;IACxF,IAAIN,IAAI,GAAGuJ,QAAQ;IACnB,IAAIxJ,WAAW,IAAI+I,UAAU,CAACW,eAAe,EAAE;MAC7CzJ,IAAI,GAAGA,IAAI,CAAC9H,MAAM,CAAEmI,GAAG,IAAKA,GAAG,CAACC,WAAW,CAAC;IAC9C;IAEA,IAAIuI,YAAY,IAAIA,YAAY,CAACpQ,MAAM,IAAIqQ,UAAU,CAACY,aAAa,EAAE;MACnE,MAAMC,kBAAkB,GAAGd,YAAY,CAACzJ,GAAG,CAAE5E,EAAE,IAAKA,EAAE,CAAC2H,QAAQ,CAAC,CAAC,CAAC;MAClEnC,IAAI,GAAGA,IAAI,CAAC9H,MAAM,CAAEmI,GAAG,IAAK;QAC1B,OACGA,GAAG,CAAC7F,EAAE,IAAImP,kBAAkB,CAACtN,QAAQ,CAACgE,GAAG,CAAC7F,EAAE,CAAC,IAC7C6F,GAAG,CAACzF,SAAS,IAAI+O,kBAAkB,CAACtN,QAAQ,CAACgE,GAAG,CAACzF,SAAS,EAAEJ,EAAE,CAAC2H,QAAQ,CAAC,CAAC,CAAE;MAEhF,CAAC,CAAC;IACJ;IAEA,OAAOnC,IAAI;EACb;EAEA4J,yBAAyBA,CAAC/I,cAAsB,EAAsB;IACpE,IAAI;MACF;MACA,MAAMgJ,MAAM,GAAGhJ,cAAc,GAAGjL,OAAO,CAACiL,cAAc,CAAC,GAAGtD,SAAS;MACnE,IAAIgE,QAAQ,GAAGsI,MAAM,CAACnS,OAAO,IAAImS,MAAM;MACvC,IAAI,IAAI,CAACpD,QAAQ,CAAClF,QAAQ,CAAC,EAAE;QAC3B,OAAOA,QAAQ,CAAC/G,EAAE;MACpB;MACA,IAAI,IAAAsP,kBAAQ,EAACvI,QAAQ,CAAC,EAAE;QACtB,IAAI,IAAA8D,iBAAO,EAAC9D,QAAQ,CAAC,EAAE;UACrB,IAAI,CAAC1H,MAAM,CAACgJ,IAAI,CACd,yCAAyChC,cAAc,mDACzD,CAAC;UACD,OAAOtD,SAAS;QAClB;QACA,IAAIzF,MAAM,CAACC,IAAI,CAACwJ,QAAQ,CAAC,CAAC9I,MAAM,GAAG,CAAC,EAAE;UACpC,IAAI,CAACoB,MAAM,CAACgJ,IAAI,CACd,yCAAyChC,cAAc,yDACzD,CAAC;UACD,OAAOtD,SAAS;QAClB;QACAgE,QAAQ,GAAGzJ,MAAM,CAACwM,MAAM,CAAC/C,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,CAACkF,QAAQ,CAAClF,QAAQ,CAAC,EAAE;UAC3B,OAAOA,QAAQ,CAAC/G,EAAE;QACpB;MACF;MACA,IAAI,CAACX,MAAM,CAACgJ,IAAI,CAAC,yCAAyChC,cAAc,wBAAwB,CAAC;MACjG,OAAOtD,SAAS;IAClB,CAAC,CAAC,OAAOlC,GAAG,EAAE;MACZ,IAAI,CAACxB,MAAM,CAACgJ,IAAI,CAAC,gEAAgEhC,cAAc,UAAUxF,GAAG,EAAE,CAAC;MAC/G,OAAOkC,SAAS;IAClB;EACF;EAEQwM,gBAAgBA,CAACvH,SAA4C,EAAY;IAC/E,OAAOA,SAAS,CAACpD,GAAG,CAAEmC,QAAa,IAAK;MACtC,IAAI,IAAI,CAACkF,QAAQ,CAAClF,QAAQ,CAAC,EAAE,OAAOA,QAAQ;MAC5CA,QAAQ,CAACzF,OAAO,GAAGkO,kBAAW;MAC9B,IAAI,CAACzI,QAAQ,CAAC/G,EAAE,EAAE,MAAM,IAAIyP,KAAK,CAAC,8BAA8B,CAAC;MACjE,MAAM5K,MAAM,GAAG6K,iBAAM,CAACxI,MAAM,CAAC;QAC3BlH,EAAE,EAAE+G,QAAQ,CAAC/G;MACf,CAAC,CAAC;MACF6E,MAAM,CAACwC,UAAU,CAACN,QAAQ,CAAC;MAC3B,OAAOlC,MAAM;IACf,CAAC,CAAC;EACJ;;EAEA;AACF;AACA;EACE8K,eAAeA,CAACC,UAA8B,EAAE;IAC9C,IAAI,CAAClQ,UAAU,CAACe,QAAQ,CAACmP,UAAU,CAAC;EACtC;EAEA,MAAM1H,yBAAyBA,CAC7B2H,mBAAsD,EACtDC,OAAiC,GAAG;IAClCC,OAAO,EAAE;EACX,CAAC,EACDC,OAAiC,GAAG;IAClCjI,YAAY,EAAE,IAAI;IAClBkI,sBAAsB,EAAE,KAAK;IAC7BC,YAAY,EAAE,KAAK;IACnBC,kBAAkB,EAAE;EACtB,CAAC,EACD;IACA,MAAMC,SAAS,GAAGN,OAAO,CAACM,SAAS;IACnC,MAAML,OAAO,GAAGD,OAAO,CAACC,OAAO,IAAI,EAAE;IACrC,MAAMM,+BAA+B,GAAG;MACtCtI,YAAY,EAAE,IAAI;MAClBkI,sBAAsB,EAAE,KAAK;MAC7BC,YAAY,EAAE,KAAK;MACnBC,kBAAkB,EAAE;IACtB,CAAC;IACD,MAAMG,aAAa,GAAAvS,aAAA,CAAAA,aAAA,KAAQsS,+BAA+B,GAAKL,OAAO,CAAE;IACxE,IAAI;MACF,MAAMhI,SAAS,GAAG6H,mBAAmB,CAACnS,MAAM,CAAEqJ,QAAQ,IAAK;QACzD,MAAMwJ,OAAO,GAAG,IAAI,CAACrE,aAAa,CAACnF,QAAQ,CAAC;QAC5C,IAAI,CAACwJ,OAAO,EAAE,IAAI,CAAClR,MAAM,CAACgJ,IAAI,CAAC,GAAGtB,QAAQ,CAAC/G,EAAE,uDAAuD,CAAC;QACrG,OAAOuQ,OAAO;MAChB,CAAC,CAAC;MACF,MAAMC,iBAAiB,GAAG,IAAI,CAACjB,gBAAgB,CAACvH,SAAS,CAAC;MAC1D;MACA;MACA,MAAMyI,oCAAoC,GAAGA,CAAA,KAAM;QACjD,IAAI,CAACV,OAAO,CAAC9R,MAAM,IAAI8R,OAAO,CAAC9R,MAAM,KAAKuS,iBAAiB,CAACvS,MAAM,EAAE;UAClE,OAAOuS,iBAAiB;QAC1B;QACA,MAAME,aAAa,GAAG,IAAI,CAACC,qBAAqB,CAACH,iBAAiB,CAAC;QACnE,MAAMI,KAAK,GAAGb,OAAO,CAACnL,GAAG,CAAEiM,MAAM,IAAKH,aAAa,CAACI,UAAU,CAACD,MAAM,CAAC,CAAC,CAACE,IAAI,CAAC,CAAC;QAC9E,MAAMC,WAAW,GAAG,IAAAzK,iBAAO,EAACwJ,OAAO,CAACnL,GAAG,CAAEiM,MAAM,IAAKH,aAAa,CAACO,IAAI,CAACJ,MAAM,CAAC,CAAC,CAAC;QAChF,MAAMK,QAAQ,GAAG,CAAC,GAAGN,KAAK,EAAE,GAAGI,WAAW,CAAC;QAC3C,MAAMG,SAAS,GAAG,IAAAnC,gBAAM,EAACkC,QAAQ,EAAE,IAAI,CAAC;QACxC,OAAOC,SAAS,CAACvM,GAAG,CAAEwM,CAAC,IAAKA,CAAC,CAACC,IAAI,CAAC;MACrC,CAAC;MACD,MAAMC,iBAAiB,GAAGb,oCAAoC,CAAC,CAAC;MAChE;MACA,MAAM,IAAI,CAAClR,OAAO,CAACgS,IAAI,CAACD,iBAAiB,CAAC;IAC5C,CAAC,CAAC,OAAOtU,CAAM,EAAE;MACf,MAAMyH,GAAG,GAAGoL,mBAAmB,CAACjL,GAAG,CAAEmC,QAAQ,IAAKA,QAAQ,CAAC/G,EAAE,IAAI,SAAS,CAAC;MAC3E;MACA,MAAM0I,QAAQ,GAAG1L,CAAC,CAAC2L,OAAO,CAACC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;MACzC,MAAM4I,OAAO,GAAG,IAAAC,gDAAkC,EAAChN,GAAG,EAAEiE,QAAQ,EAAE0H,SAAS,CAAC;MAC5E,IAAI,CAAC/Q,MAAM,CAACkJ,KAAK,CAACiJ,OAAO,EAAExU,CAAC,CAAC;MAC7B,IAAIsT,aAAa,CAACJ,YAAY,EAAE;MAChC,IAAIlT,CAAC,CAACgR,IAAI,KAAK,kBAAkB,IAAIsC,aAAa,CAACL,sBAAsB,EAAE;MAC3E,IAAIK,aAAa,CAACH,kBAAkB,EAAE;QACpC,MAAMuB,WAAW,GAAG,IAAAC,cAAI,EAAClN,GAAG,EAAGzE,EAAE,IAAK,CAAC,IAAI,CAAC4R,eAAe,CAACtI,GAAG,CAACtJ,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC0R,WAAW,EAAE;QAClBjN,GAAG,CAACvG,OAAO,CAAE8B,EAAE,IAAK;UAClB,IAAI,CAAC4R,eAAe,CAACrI,GAAG,CAACvJ,EAAE,CAAC;UAC5B,IAAI,CAACV,IAAI,CAACmJ,kBAAkB,CAACzI,EAAE,CAAC;UAChC,MAAM6R,QAAQ,GAAGzE,0BAAW,CAAC0E,aAAa,CAAC9R,EAAE,CAAC;UAC9C,IAAI6R,QAAQ,EAAE;YACZ,IAAI,CAACD,eAAe,CAACrI,GAAG,CAACsI,QAAQ,CAACE,QAAQ,CAAC;YAC3C,IAAI,CAACzS,IAAI,CAACmJ,kBAAkB,CAACoJ,QAAQ,CAACE,QAAQ,CAAC;UACjD;QACF,CAAC,CAAC;MACJ;MACA,IAAI,IAAI,CAAC1S,MAAM,CAAC6J,eAAe,EAAE;QAC/B,IAAIoH,aAAa,CAACvI,YAAY,EAAE,MAAM,KAAIiK,oBAAQ,EAACR,OAAO,CAAC;QAC3D,IAAI,CAACnS,MAAM,CAACmK,cAAc,CAACgI,OAAO,CAAC;MACrC,CAAC,MAAM;QACL,IAAI,CAACnS,MAAM,CAACoK,cAAc,CAAC+H,OAAO,CAAC;QACnC,IAAI,CAACnS,MAAM,CAACoK,cAAc,CAACzM,CAAC,CAAC;MAC/B;MACA,IAAIsT,aAAa,CAACvI,YAAY,EAAE;QAC9B,MAAM/K,CAAC;MACT;IACF;EACF;EAEQ2T,qBAAqBA,CAAC3I,SAAmB,EAAE;IACjD,MAAMiK,KAAK,GAAG,KAAIC,cAAK,EAAiB,CAAC;IACzClK,SAAS,CAAC9J,OAAO,CAAE6I,QAAQ,IAAKkL,KAAK,CAACE,OAAO,CAAC,KAAIC,aAAI,EAACrL,QAAQ,CAAC/G,EAAE,EAAE+G,QAAQ,CAAC,CAAC,CAAC;IAC/EiB,SAAS,CAAC9J,OAAO,CAAE6I,QAAQ,IAAK;MAC9B,MAAMsL,IAAI,GAAGtL,QAAQ,CAACO,UAAU,CAACkI,kBAAW,CAAC,EAAE8C,YAAY,EAAE1N,GAAG,CAAE2N,GAAG,IAAKA,GAAG,CAACvS,EAAE,CAAC;MACjFqS,IAAI,EAAEnU,OAAO,CAAEqU,GAAG,IAAK;QACrB,IAAIN,KAAK,CAAChB,IAAI,CAACsB,GAAG,CAAC,EAAE;UACnBN,KAAK,CAACO,OAAO,CAAC,KAAIC,aAAI,EAAC1L,QAAQ,CAAC/G,EAAE,EAAEuS,GAAG,EAAE,KAAK,CAAC,CAAC;QAClD;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,OAAON,KAAK;EACd;EAEA,MAAaS,kBAAkBA,CAACC,YAAsB,EAAE;IACtD,MAAMC,QAAQ,GAAG,IAAI,CAACC,gBAAgB,CAACF,YAAY,CAAC;IACpD,MAAM3K,SAAS,GAAG4K,QAAQ,CAAChO,GAAG,CAAEkO,OAAO,IAAK;MAC1C,MAAMC,YAAY,GAAG,IAAI,CAACC,WAAW,CAACF,OAAO,EAAE,OAAO,CAAC;MACvD,IAAIC,YAAY,EAAE;QAChB;QACA,MAAM1D,MAAM,GAAGjU,OAAO,CAAC,IAAA2G,YAAI,EAAC+Q,OAAO,EAAE,MAAM,EAAEC,YAAY,CAAC,CAAC;QAC3D,OAAO1D,MAAM,CAACnS,OAAO,IAAImS,MAAM;MACjC;MACA;MACA,MAAMA,MAAM,GAAGjU,OAAO,CAAC0X,OAAO,CAAC;MAC/B,OAAOzD,MAAM,CAACnS,OAAO,IAAImS,MAAM;IACjC,CAAC,CAAC;IAEF,MAAM,IAAI,CAACnH,yBAAyB,CAACF,SAAS,EAAEjF,SAAS,EAAE;MAAEgF,YAAY,EAAE;IAAK,CAAC,CAAC;EACpF;EAEQ8K,gBAAgBA,CAACF,YAAsB,EAAE;IAC/C,MAAMC,QAAQ,GAAGD,YAAY,CAAC/N,GAAG,CAAEqO,WAAW,IAAK,IAAAC,eAAO,EAACD,WAAW,CAAC1H,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/F,MAAM4H,iBAAiB,GAAGP,QAAQ,CAAClV,MAAM,CAAEyM,IAAI,IAAK,CAAC,IAAAyB,qBAAU,EAACzB,IAAI,CAAC,CAAC;IACtEgJ,iBAAiB,CAACjV,OAAO,CAAEiM,IAAI,IAAK,IAAI,CAAC9K,MAAM,CAACgJ,IAAI,CAAC,8BAA8B8B,IAAI,EAAE,CAAC,CAAC;IAC3F,MAAMiJ,cAAc,GAAGR,QAAQ,CAAClV,MAAM,CAAEyM,IAAI,IAAK,IAAAyB,qBAAU,EAACzB,IAAI,CAAC,CAAC;IAClE,OAAOiJ,cAAc;EACvB;EAEQJ,WAAWA,CAACF,OAAe,EAAExR,OAAe,EAAE;IACpD,MAAMG,KAAK,GAAG,IAAA4R,sBAAW,EAAC,IAAAtR,YAAI,EAAC+Q,OAAO,EAAE,MAAM,CAAC,CAAC;IAChD,OAAOrR,KAAK,CAACC,IAAI,CAAEyI,IAAI,IAAKA,IAAI,CAACtI,QAAQ,CAAC,GAAGP,OAAO,aAAa,CAAC,CAAC;EACrE;EAEA,MAAagS,mBAAmBA,CAAC7O,GAAa,EAAEnD,OAAgB,EAA+B;IAC7F,MAAMiS,IAAI,GAAG,IAAI,CAACV,gBAAgB,CAACpO,GAAG,CAAC;IAEvC,OAAO8O,IAAI,CAAC3O,GAAG,CAAE4O,GAAG,IAAK;MACvB,MAAMC,kBAAkB,GAAGnS,OAAO,GAAG,IAAI,CAAC0R,WAAW,CAACQ,GAAG,EAAElS,OAAO,CAAC,GAAGyB,SAAS;MAC/E,MAAM2Q,iBAAiB,GAAGpS,OAAO,GAAG,IAAI,CAACqS,cAAc,CAACH,GAAG,CAAC,GAAGzQ,SAAS;MACxE,MAAMsD,cAAc,GAAGqN,iBAAiB,GAAG,IAAA3R,YAAI,EAACyR,GAAG,EAAE,MAAM,EAAEE,iBAAiB,CAAC,GAAG,IAAI;MACtF,MAAME,eAAe,GAAGH,kBAAkB,GAAG,IAAA1R,YAAI,EAACyR,GAAG,EAAE,MAAM,EAAEC,kBAAkB,CAAC,GAAG,IAAI;MACzF,MAAMxQ,QAAQ,GAAGoD,cAAc,GAAG,IAAI,CAAC+I,yBAAyB,CAAC/I,cAAc,CAAC,GAAGtD,SAAS;MAE5F,OAAO,KAAIuB,oCAAgB,EAACkP,GAAG,EAAEnN,cAAc,EAAEuN,eAAe,EAAE7Q,SAAS,EAAEE,QAAQ,EAAE,IAAI,CAAC;IAC9F,CAAC,CAAC;EACJ;EAEQ0Q,cAAcA,CAACb,OAAe,EAAE;IACtC,MAAMrR,KAAK,GAAG,IAAA4R,sBAAW,EAAC,IAAAtR,YAAI,EAAC+Q,OAAO,EAAE,MAAM,CAAC,CAAC;IAChD,OAAOrR,KAAK,CAACC,IAAI,CAAEyI,IAAI,IAAKA,IAAI,CAACtI,QAAQ,CAAC,YAAY,CAAC,CAAC;EAC1D;EAUA,aAAauF,QAAQA,CACnB,CAACyM,SAAS,EAAEvU,IAAI,EAAEwU,OAAO,CAAsC,EAC/DvQ,MAAM,EACN,CAAC/D,qBAAqB,EAAEC,8BAA8B,EAAEC,UAAU,CAIjE,EACDH,OAAgB,EAChB;IACA,MAAMF,MAAM,GAAGwU,SAAS,CAACE,YAAY,CAAC5G,kCAAkB,CAACnN,EAAE,CAAC;IAC5D,MAAMkN,YAAY,GAAG,IAAI/N,gBAAgB,CACvCE,MAAM,EACNC,IAAI,EACJC,OAAO,EACPC,qBAAqB,EACrBC,8BAA8B,EAC9BC,UACF,CAAC;IAEDoU,OAAO,CAACrT,QAAQ,CAAC,IAAAuT,mCAAkB,EAAC9G,YAAY,CAAC,CAAC;IAClDA,YAAY,CAACyC,eAAe,CAAC,CAACrQ,IAAI,CAAC2U,YAAY,CAAC,CAAC,CAAC,CAAC;IAEnD,OAAO/G,YAAY;EACrB;AACF;AAACgH,OAAA,CAAA/U,gBAAA,GAAAA,gBAAA;AAAAhB,eAAA,CA3wBYgB,gBAAgB,aA0uBVqQ,kBAAW;AAAArR,eAAA,CA1uBjBgB,gBAAgB,kBA2uBL,CAACgV,sBAAY,EAAEC,kBAAU,EAAEC,wBAAa,CAAC;AAAAlW,eAAA,CA3uBpDgB,gBAAgB,WA4uBZ,CACbmV,eAAI,CAACC,QAAQ,CAAoB,CAAC,EAClCD,eAAI,CAACC,QAAQ,CAA6B,CAAC,EAC3CD,eAAI,CAACC,QAAQ,CAAqB,CAAC,CACpC;AA6BHpH,kCAAkB,CAAC9F,UAAU,CAAClI,gBAAgB,CAAC;AAAC,IAAAqV,QAAA,GAAAN,OAAA,CAAAhX,OAAA,GAEjCiC,gBAAgB","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","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, id: ComponentID) => 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.id);\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,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.385/dist/aspect-loader.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_aspect-loader@1.0.385/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.
|
|
3
|
+
"version": "1.0.385",
|
|
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.
|
|
9
|
+
"version": "1.0.385"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"graphql-tag": "2.12.1",
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
"@teambit/node.utils.esm-loader": "0.0.6",
|
|
23
23
|
"@teambit/bvm.config": "0.2.5",
|
|
24
24
|
"@teambit/bvm.path": "0.1.2",
|
|
25
|
-
"@teambit/component": "1.0.
|
|
26
|
-
"@teambit/graphql": "1.0.
|
|
27
|
-
"@teambit/bit": "1.8.
|
|
28
|
-
"@teambit/cli": "0.0.
|
|
25
|
+
"@teambit/component": "1.0.385",
|
|
26
|
+
"@teambit/graphql": "1.0.385",
|
|
27
|
+
"@teambit/bit": "1.8.36",
|
|
28
|
+
"@teambit/cli": "0.0.962",
|
|
29
29
|
"@teambit/compilation.modules.babel-compiler": "0.0.139",
|
|
30
|
-
"@teambit/envs": "1.0.
|
|
30
|
+
"@teambit/envs": "1.0.385",
|
|
31
31
|
"@teambit/harmony.modules.requireable-component": "0.0.497",
|
|
32
|
-
"@teambit/logger": "0.0.
|
|
33
|
-
"@teambit/scope": "1.0.
|
|
32
|
+
"@teambit/logger": "0.0.1055",
|
|
33
|
+
"@teambit/scope": "1.0.385",
|
|
34
34
|
"@teambit/toolbox.performance.v8-cache": "0.0.33"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|