construct-hub 0.4.428 → 0.4.429
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/.jsii +2 -2
- package/lib/construct-hub.js +1 -1
- package/lib/package-sources/code-artifact.js +1 -1
- package/lib/package-sources/npmjs.js +1 -1
- package/lib/package-tag/index.js +3 -3
- package/lib/package-tag-group/index.js +2 -2
- package/lib/preload-file/index.js +1 -1
- package/lib/s3/storage.js +1 -1
- package/lib/spdx-license.js +1 -1
- package/package.json +1 -1
- package/website/asset-manifest.json +5 -5
- package/website/index.html +1 -1
- package/website/static/css/main.efe592a7.css.map +1 -1
- package/website/static/js/323.80d18b4c.chunk.js.map +1 -1
- package/website/static/js/332.9e0695b5.chunk.js.map +1 -1
- package/website/static/js/375.30524f64.chunk.js.map +1 -1
- package/website/static/js/421.ec09e678.chunk.js +2 -0
- package/website/static/js/421.ec09e678.chunk.js.map +1 -0
- package/website/static/js/451.7c2110db.chunk.js.map +1 -1
- package/website/static/js/453.098e6dff.chunk.js.map +1 -1
- package/website/static/js/496.92802c31.chunk.js.map +1 -1
- package/website/static/js/516.34bdea00.chunk.js.map +1 -1
- package/website/static/js/591.cb922910.chunk.js.map +1 -1
- package/website/static/js/619.70bb2d55.chunk.js.map +1 -1
- package/website/static/js/685.58592b70.chunk.js.map +1 -1
- package/website/static/js/773.ea0e9610.chunk.js.map +1 -1
- package/website/static/js/8.94165f2d.chunk.js.map +1 -1
- package/website/static/js/857.3540b295.chunk.js.map +1 -1
- package/website/static/js/959.cd9d51a2.chunk.js.map +1 -1
- package/website/static/js/{main.0a58dff8.js → main.80cba683.js} +3 -3
- package/website/static/js/{main.0a58dff8.js.map → main.80cba683.js.map} +1 -1
- package/website/static/js/421.ba26527a.chunk.js +0 -2
- package/website/static/js/421.ba26527a.chunk.js.map +0 -1
- /package/website/static/js/{main.0a58dff8.js.LICENSE.txt → main.80cba683.js.LICENSE.txt} +0 -0
package/.jsii
CHANGED
|
@@ -21425,6 +21425,6 @@
|
|
|
21425
21425
|
"symbolId": "src/package-sources/npmjs:NpmJsProps"
|
|
21426
21426
|
}
|
|
21427
21427
|
},
|
|
21428
|
-
"version": "0.4.
|
|
21429
|
-
"fingerprint": "
|
|
21428
|
+
"version": "0.4.429",
|
|
21429
|
+
"fingerprint": "xSUhAkgL9f6joY7+WVGDYUsSKwmzejO2LAspGXwQA6w="
|
|
21430
21430
|
}
|
package/lib/construct-hub.js
CHANGED
|
@@ -404,7 +404,7 @@ class ConstructHub extends constructs_1.Construct {
|
|
|
404
404
|
}
|
|
405
405
|
exports.ConstructHub = ConstructHub;
|
|
406
406
|
_a = JSII_RTTI_SYMBOL_1;
|
|
407
|
-
ConstructHub[_a] = { fqn: "construct-hub.ConstructHub", version: "0.4.
|
|
407
|
+
ConstructHub[_a] = { fqn: "construct-hub.ConstructHub", version: "0.4.429" };
|
|
408
408
|
/**
|
|
409
409
|
* How possibly risky operations (such as doc-generation, which requires
|
|
410
410
|
* installing the indexed packages in order to trans-literate sample code) are
|
|
@@ -272,5 +272,5 @@ class CodeArtifact {
|
|
|
272
272
|
}
|
|
273
273
|
exports.CodeArtifact = CodeArtifact;
|
|
274
274
|
_a = JSII_RTTI_SYMBOL_1;
|
|
275
|
-
CodeArtifact[_a] = { fqn: "construct-hub.sources.CodeArtifact", version: "0.4.
|
|
275
|
+
CodeArtifact[_a] = { fqn: "construct-hub.sources.CodeArtifact", version: "0.4.429" };
|
|
276
276
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1hcnRpZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYWNrYWdlLXNvdXJjZXMvY29kZS1hcnRpZmFjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE4RDtBQUM5RCwrREFPb0M7QUFFcEMsdURBQThDO0FBQzlDLHVFQUFnRTtBQUNoRSxpREFBOEQ7QUFDOUQsdURBQWlEO0FBQ2pELCtDQUFnRTtBQUNoRSxpREFBNkQ7QUFFN0QsNENBS3NCO0FBQ3RCLGtEQUE2QztBQU03QyxvRkFBK0U7QUFDL0Usb0ZBTWdEO0FBQ2hELDJDQUFpRDtBQWNqRDs7O0dBR0c7QUFDSCxNQUFhLFlBQVk7SUFDdkIsWUFBb0MsS0FBd0I7UUFBeEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7SUFBRyxDQUFDO0lBRXpELElBQUksQ0FDVCxLQUFnQixFQUNoQixFQUNFLFFBQVEsRUFDUixTQUFTLEVBQ1QsV0FBVyxFQUNYLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsS0FBSyxHQUNvQjtRQUUzQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2pELE1BQU0sWUFBWSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUUxSSxNQUFNLGNBQWMsR0FBRywwQkFBZ0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0QsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ2pCLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEdBQUcsUUFBUSxnQkFBZ0IsRUFBRTtnQkFDM0QsaUJBQWlCLEVBQUUsMEJBQWlCLENB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LEdBQUc7WUFDeEIsR0FBRyxJQUFJO1lBQ1AsYUFBYSxFQUFFO2dCQUNiLENBQUMsZ0RBQXNCLENBQUMsRUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsZUFBZSxJQUFJLGlCQUFHLENBQUMsVUFBVTtnQkFDekQsQ0FBQywrQ0FBcUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGNBQWM7Z0JBQzdELENBQUMsbURBQXlCLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRO2FBQzVEO1lBQ0QsVUFBVSwrQ0FBMEI7WUFDcEMsU0FBUyxFQUFFLDJDQUFpQjtTQUM3QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSx5QkFBeUIsQ0FBQyxJQUFvQjtRQUNuRCxPQUFPLElBQUksdUJBQU0sQ0FBQztZQUNoQixNQUFNLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzNCLFNBQVMsRUFBRSwwQkFBUyxDQUFDLEdBQUc7WUFDeEIsR0FBRyxJQUFJO1lBQ1AsYUFBYSxFQUFFO2dCQUNiLENBQUMsZ0RBQXNCLENBQUMsRUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsZUFBZSxJQUFJLGlCQUFHLENBQUMsVUFBVTtnQkFDekQsQ0FBQywrQ0FBcUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGNBQWM7Z0JBQzdELENBQUMsbURBQXlCLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRO2FBQzVEO1lBQ0QsVUFBVSwrREFBbUM7WUFDN0MsU0FBUyxFQUFFLDJDQUFpQjtTQUM3QixDQUFDLENBQUM7SUFDTCxDQUFDOztBQWxUSCxvQ0FtVEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcm5Gb3JtYXQsIEF3cywgRHVyYXRpb24sIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHtcbiAgQ29tcGFyaXNvbk9wZXJhdG9yLFxuICBHcmFwaFdpZGdldCxcbiAgTWV0cmljLFxuICBNZXRyaWNPcHRpb25zLFxuICBTdGF0aXN0aWMsXG4gIFRyZWF0TWlzc2luZ0RhdGEsXG59IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCB7IENmblJlcG9zaXRvcnkgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29kZWFydGlmYWN0JztcbmltcG9ydCB7IFJ1bGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZXZlbnRzJztcbmltcG9ydCB7IExhbWJkYUZ1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWV2ZW50cy10YXJnZXRzJztcbmltcG9ydCB7IEVmZmVjdCwgUG9saWN5U3RhdGVtZW50IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBUcmFjaW5nIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgeyBCbG9ja1B1YmxpY0FjY2VzcywgSUJ1Y2tldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBRdWV1ZSwgUXVldWVFbmNyeXB0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXNxcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7XG4gIGNvZGVBcnRpZmFjdFJlcG9zaXRvcnlVcmwsXG4gIGxhbWJkYUZ1bmN0aW9uVXJsLFxuICBsYW1iZGFTZWFyY2hMb2dHcm91cFVybCxcbiAgc3FzUXVldWVVcmwsXG59IGZyb20gJy4uL2RlZXAtbGluayc7XG5pbXBvcnQgeyBmaWxsTWV0cmljIH0gZnJvbSAnLi4vbWV0cmljLXV0aWxzJztcbmltcG9ydCB0eXBlIHtcbiAgSVBhY2thZ2VTb3VyY2UsXG4gIFBhY2thZ2VTb3VyY2VCaW5kT3B0aW9ucyxcbiAgUGFja2FnZVNvdXJjZUJpbmRSZXN1bHQsXG59IGZyb20gJy4uL3BhY2thZ2Utc291cmNlJztcbmltcG9ydCB7IENvZGVBcnRpZmFjdEZvcndhcmRlciB9IGZyb20gJy4vY29kZWFydGlmYWN0L2NvZGUtYXJ0aWZhY3QtZm9yd2FyZGVyJztcbmltcG9ydCB7XG4gIE1FVFJJQ1NfTkFNRVNQQUNFLFxuICBNZXRyaWNOYW1lLFxuICBET01BSU5fTkFNRV9ESU1FTlNJT04sXG4gIERPTUFJTl9PV05FUl9ESU1FTlNJT04sXG4gIFJFUE9TSVRPUllfTkFNRV9ESU1FTlNJT04sXG59IGZyb20gJy4vY29kZWFydGlmYWN0L2NvbnN0YW50cy5sYW1iZGEtc2hhcmVkJztcbmltcG9ydCB7IFMzU3RvcmFnZUZhY3RvcnkgfSBmcm9tICcuLi9zMy9zdG9yYWdlJztcblxuZXhwb3J0IGludGVyZmFjZSBDb2RlQXJ0aWZhY3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQ29kZUFydGlmYWN0IHJlcG9zaXRvcnkgd2hlcmUgcGFja2FnZXMgYXJlIG9idGFpbmVkIGZyb20uXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5OiBDZm5SZXBvc2l0b3J5O1xuXG4gIC8qKlxuICAgKiBUaGUgUzMgYnVja2V0IHdoZXJlIHBhY2thZ2VzIHdpbGwgYmUgc3RhZ2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0PzogSUJ1Y2tldDtcbn1cblxuLyoqXG4gKiBBIHBhY2thZ2Ugc291cmNlIHRoYXQgb2J0YWlucyBwYWNrYWdlIGRhdGEgZnJvbSBhbiBucG0gQ29kZUFydGlmYWN0XG4gKiByZXBvc2l0b3J5LlxuICovXG5leHBvcnQgY2xhc3MgQ29kZUFydGlmYWN0IGltcGxlbWVudHMgSVBhY2thZ2VTb3VyY2Uge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogQ29kZUFydGlmYWN0UHJvcHMpIHt9XG5cbiAgcHVibGljIGJpbmQoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICB7XG4gICAgICBkZW55TGlzdCxcbiAgICAgIGluZ2VzdGlvbixcbiAgICAgIGxpY2Vuc2VMaXN0LFxuICAgICAgbW9uaXRvcmluZyxcbiAgICAgIG92ZXJ2aWV3RGFzaGJvYXJkLFxuICAgICAgcXVldWUsXG4gICAgfTogUGFja2FnZVNvdXJjZUJpbmRPcHRpb25zXG4gICk6IFBhY2thZ2VTb3VyY2VCaW5kUmVzdWx0IHtcbiAgICBjb25zdCBpZFByZWZpeCA9IHRoaXMucHJvcHMucmVwb3NpdG9yeS5ub2RlLnBhdGg7XG4gICAgY29uc3QgcmVwb3NpdG9yeUlkID0gYCR7dGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJEb21haW5Pd25lcn06JHt0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk5hbWV9LyR7dGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJOYW1lfWA7XG5cbiAgICBjb25zdCBzdG9yYWdlRmFjdG9yeSA9IFMzU3RvcmFnZUZhY3RvcnkuZ2V0T3JDcmVhdGUoc2NvcGUpO1xuICAgIGNvbnN0IGJ1Y2tldCA9XG4gICAgICB0aGlzLnByb3BzLmJ1Y2tldCB8fFxuICAgICAgc3RvcmFnZUZhY3RvcnkubmV3QnVja2V0KHNjb3BlLCBgJHtpZFByZWZpeH0vU3RhZ2luZ0J1Y2tldGAsIHtcbiAgICAgICAgYmxvY2tQdWJsaWNBY2Nlc3M6IEJsb2NrUHVibGljQWNjZXNzLkJMT0NLX0FMTCxcbiAgICAgICAgZW5mb3JjZVNTTDogdHJ1ZSxcbiAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7IGV4cGlyYXRpb246IER1cmF0aW9uLmRheXMoMzApIH1dLFxuICAgICAgfSk7XG4gICAgYnVja2V0LmdyYW50UmVhZChpbmdlc3Rpb24pO1xuXG4gICAgY29uc3QgZGxxID0gbmV3IFF1ZXVlKHNjb3BlLCBgJHtpZFByZWZpeH0vRExRYCwge1xuICAgICAgZW5jcnlwdGlvbjogUXVldWVFbmNyeXB0aW9uLktNU19NQU5BR0VELFxuICAgICAgcmV0ZW50aW9uUGVyaW9kOiBEdXJhdGlvbi5kYXlzKDE0KSxcbiAgICAgIHZpc2liaWxpdHlUaW1lb3V0OiBEdXJhdGlvbi5taW51dGVzKDE1KSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGZvcndhcmRlciA9IG5ldyBDb2RlQXJ0aWZhY3RGb3J3YXJkZXIoXG4gICAgICBzY29wZSxcbiAgICAgIGAke2lkUHJlZml4fS9Gb3J3YXJkZXJgLFxuICAgICAge1xuICAgICAgICBkZWFkTGV0dGVyUXVldWU6IGRscSxcbiAgICAgICAgZGVzY3JpcHRpb246IGBbJHtzY29wZS5ub2RlLnBhdGh9L0NvZGVBcnRpZmFjdC8ke3JlcG9zaXRvcnlJZH1dIEhhbmRsZSBDb2RlQXJ0aWZhY3QgRXZlbnRCcmlkZ2UgZXZlbnRzYCxcbiAgICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgICBBV1NfRU1GX0VOVklST05NRU5UOiAnTG9jYWwnLFxuICAgICAgICAgIEJVQ0tFVF9OQU1FOiBidWNrZXQuYnVja2V0TmFtZSxcbiAgICAgICAgICBRVUVVRV9VUkw6IHF1ZXVlLnF1ZXVlVXJsLFxuICAgICAgICB9LFxuICAgICAgICBtZW1vcnlTaXplOiAxMDI0LFxuICAgICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDYwKSxcbiAgICAgICAgdHJhY2luZzogVHJhY2luZy5BQ1RJVkUsXG4gICAgICB9XG4gICAgKTtcbiAgICBidWNrZXQuZ3JhbnRSZWFkV3JpdGUoZm9yd2FyZGVyKTtcbiAgICBkZW55TGlzdD8uZ3JhbnRSZWFkKGZvcndhcmRlcik7XG4gICAgbGljZW5zZUxpc3QuZ3JhbnRSZWFkKGZvcndhcmRlcik7XG4gICAgcXVldWUuZ3JhbnRTZW5kTWVzc2FnZXMoZm9yd2FyZGVyKTtcbiAgICBmb3J3YXJkZXIuYWRkVG9Sb2xlUG9saWN5KFxuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICBhY3Rpb25zOiBbJ2NvZGVhcnRpZmFjdDpHZXRQYWNrYWdlVmVyc2lvbkFzc2V0J10sXG4gICAgICAgIHJlc291cmNlczogW1xuICAgICAgICAgIFN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogJ2NvZGVhcnRpZmFjdCcsXG4gICAgICAgICAgICByZXNvdXJjZTogJ3BhY2thZ2UnLFxuICAgICAgICAgICAgYXJuRm9ybWF0OiBBcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogW1xuICAgICAgICAgICAgICB0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk5hbWUsXG4gICAgICAgICAgICAgIHRoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyTmFtZSxcbiAgICAgICAgICAgICAgJ25wbScsIC8vIHBhY2thZ2UgZm9ybWF0XG4gICAgICAgICAgICAgICcqJywgLy8gbmFtZXNwYWNlL3BhY2thZ2UtbmFtZVxuICAgICAgICAgICAgXS5qb2luKCcvJyksXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KVxuICAgICk7XG5cbiAgICBjb25zdCBydWxlID0gbmV3IFJ1bGUoc2NvcGUsIGAke2lkUHJlZml4fS9FdmVudEJyaWRnZWAsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBgJHtzY29wZS5ub2RlLnBhdGh9L0NvZGVBcnRpZmFjdC8ke3JlcG9zaXRvcnlJZH0vRXZlbnRCcmlkZ2VgLFxuICAgICAgZXZlbnRQYXR0ZXJuOiB7XG4gICAgICAgIHNvdXJjZTogWydhd3MuY29kZWFydGlmYWN0J10sXG4gICAgICAgIGRldGFpbFR5cGU6IFsnQ29kZUFydGlmYWN0IFBhY2thZ2UgVmVyc2lvbiBTdGF0ZSBDaGFuZ2UnXSxcbiAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgZG9tYWluT3duZXI6IFt0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk93bmVyXSxcbiAgICAgICAgICBkb21haW5OYW1lOiBbdGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJEb21haW5OYW1lXSxcbiAgICAgICAgICByZXBvc2l0b3J5TmFtZTogW3RoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyTmFtZV0sXG4gICAgICAgICAgcGFja2FnZUZvcm1hdDogWyducG0nXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB0YXJnZXRzOiBbbmV3IExhbWJkYUZ1bmN0aW9uKGZvcndhcmRlcildLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZmFpbHVyZUFsYXJtID0gZm9yd2FyZGVyXG4gICAgICAubWV0cmljRXJyb3JzKClcbiAgICAgIC5jcmVhdGVBbGFybShzY29wZSwgYCR7aWRQcmVmaXh9L0ZvcndhcmRlci9GYWlsdXJlc2AsIHtcbiAgICAgICAgYWxhcm1OYW1lOiBgJHtzY29wZS5ub2RlLnBhdGh9L0NvZGVBcnRpZmFjdC8ke3JlcG9zaXRvcnlJZH0vRm9yd2FyZGVyYCxcbiAgICAgICAgYWxhcm1EZXNjcmlwdGlvbjogW1xuICAgICAgICAgIGBUaGUgQ29kZUFydGlmYWN0IGZvd2FyZGVyIGZvciAke3JlcG9zaXRvcnlJZH0gaXMgZmFpbGluZ2AsXG4gICAgICAgICAgJycsXG4gICAgICAgICAgYExpbmsgdG8gdGhlIGxhbWJkYSBmdW5jdGlvbjogJHtsYW1iZGFGdW5jdGlvblVybChmb3J3YXJkZXIpfWAsXG4gICAgICAgIF0uam9pbignXFxuJyksXG4gICAgICAgIGNvbXBhcmlzb25PcGVyYXRvcjpcbiAgICAgICAgICBDb21wYXJpc29uT3BlcmF0b3IuR1JFQVRFUl9USEFOX09SX0VRVUFMX1RPX1RIUkVTSE9MRCxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDMsXG4gICAgICAgIHRocmVzaG9sZDogMSxcbiAgICAgICAgdHJlYXRNaXNzaW5nRGF0YTogVHJlYXRNaXNzaW5nRGF0YS5NSVNTSU5HLFxuICAgICAgfSk7XG4gICAgbW9uaXRvcmluZy5hZGRIaWdoU2V2ZXJpdHlBbGFybShcbiAgICAgIGBDb2RlQXJ0aWZhY3Q6JHt0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ck5hbWV9IEZhaWx1cmVzYCxcbiAgICAgIGZhaWx1cmVBbGFybVxuICAgICk7XG5cbiAgICBjb25zdCBkbHFOb3RFbXB0eUFsYXJtID0gZGxxXG4gICAgICAubWV0cmljQXBwcm94aW1hdGVOdW1iZXJPZk1lc3NhZ2VzVmlzaWJsZSh7XG4gICAgICAgIHBlcmlvZDogRHVyYXRpb24ubWludXRlcygxKSxcbiAgICAgIH0pXG4gICAgICAuY3JlYXRlQWxhcm0oc2NvcGUsIGAke2lkUHJlZml4fS9Gb3J3YXJkZXIvRExRTm90RW1wdHlgLCB7XG4gICAgICAgIGFsYXJtTmFtZTogYCR7c2NvcGUubm9kZS5wYXRofS9Db2RlQXJ0aWZhY3QvJHtyZXBvc2l0b3J5SWR9L0RMUU5vdEVtcHR5YCxcbiAgICAgICAgYWxhcm1EZXNjcmlwdGlvbjogW1xuICAgICAgICAgIGBUaGUgQ29kZUFydGlmYWN0IGZvd2FyZGVyIGZvciAke3JlcG9zaXRvcnlJZH0gaXMgZmFpbGluZ2AsXG4gICAgICAgICAgJycsXG4gICAgICAgICAgYExpbmsgdG8gdGhlIGxhbWJkYSBmdW5jdGlvbjogJHtsYW1iZGFGdW5jdGlvblVybChmb3J3YXJkZXIpfWAsXG4gICAgICAgICAgYExpbmsgdG8gdGhlIGRlYWQgbGV0dGVyIHF1ZXVlOiAke3Nxc1F1ZXVlVXJsKGRscSl9YCxcbiAgICAgICAgXS5qb2luKCcvbicpLFxuICAgICAgICBjb21wYXJpc29uT3BlcmF0b3I6XG4gICAgICAgICAgQ29tcGFyaXNvbk9wZXJhdG9yLkdSRUFURVJfVEhBTl9PUl9FUVVBTF9UT19USFJFU0hPTEQsXG4gICAgICAgIGV2YWx1YXRpb25QZXJpb2RzOiAxLFxuICAgICAgICB0aHJlc2hvbGQ6IDEsXG4gICAgICAgIHRyZWF0TWlzc2luZ0RhdGE6IFRyZWF0TWlzc2luZ0RhdGEuTk9UX0JSRUFDSElORyxcbiAgICAgIH0pO1xuICAgIG1vbml0b3JpbmcuYWRkTG93U2V2ZXJpdHlBbGFybShcbiAgICAgIGBDb2RlQXJ0aWZhY3QvJHtyZXBvc2l0b3J5SWR9IERMUSBOb3QgRW1wdHlgLFxuICAgICAgZGxxTm90RW1wdHlBbGFybVxuICAgICk7XG5cbiAgICBydWxlLm5vZGUuYWRkRGVwZW5kZW5jeShmYWlsdXJlQWxhcm0sIGRscU5vdEVtcHR5QWxhcm0pO1xuXG4gICAgb3ZlcnZpZXdEYXNoYm9hcmQuYWRkRExRTWV0cmljVG9EYXNoYm9hcmQoXG4gICAgICBgQ29kZUFydGlmYWN0LyR7cmVwb3NpdG9yeUlkfSBETFFgLFxuICAgICAgZGxxXG4gICAgKTtcbiAgICBvdmVydmlld0Rhc2hib2FyZC5hZGRDb25jdXJyZW50RXhlY3V0aW9uTWV0cmljVG9EYXNoYm9hcmQoXG4gICAgICBmb3J3YXJkZXIsXG4gICAgICBgJHtpZFByZWZpeH0vRm9yd2FyZGVyTGFtYmRhYFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmFtZTogYENvZGVBcnRpZmFjdDogJHtyZXBvc2l0b3J5SWR9YCxcbiAgICAgIGxpbmtzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnQ29kZUFydGlmYWN0JyxcbiAgICAgICAgICB1cmw6IGNvZGVBcnRpZmFjdFJlcG9zaXRvcnlVcmwodGhpcy5wcm9wcy5yZXBvc2l0b3J5KSxcbiAgICAgICAgICBwcmltYXJ5OiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0ZvcndhcmRlciBGdW5jdGlvbicsXG4gICAgICAgICAgdXJsOiBsYW1iZGFGdW5jdGlvblVybChmb3J3YXJkZXIpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ1NlYXJjaCBMb2cgZ3JvdXAnLFxuICAgICAgICAgIHVybDogbGFtYmRhU2VhcmNoTG9nR3JvdXBVcmwoZm9yd2FyZGVyKSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdETFEnLFxuICAgICAgICAgIHVybDogc3FzUXVldWVVcmwoZGxxKSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBkYXNoYm9hcmRXaWRnZXRzOiBbXG4gICAgICAgIFtcbiAgICAgICAgICBuZXcgR3JhcGhXaWRnZXQoe1xuICAgICAgICAgICAgaGVpZ2h0OiA2LFxuICAgICAgICAgICAgd2lkdGg6IDEyLFxuICAgICAgICAgICAgdGl0bGU6ICdGdW5jdGlvbiBIZWFsdGgnLFxuICAgICAgICAgICAgbGVmdDogW1xuICAgICAgICAgICAgICBmaWxsTWV0cmljKGZvcndhcmRlci5tZXRyaWNJbnZvY2F0aW9ucyh7IGxhYmVsOiAnSW52b2NhdGlvbnMnIH0pKSxcbiAgICAgICAgICAgICAgZmlsbE1ldHJpYyhmb3J3YXJkZXIubWV0cmljRXJyb3JzKHsgbGFiZWw6ICdFcnJvcnMnIH0pKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBsZWZ0WUF4aXM6IHsgbWluOiAwIH0sXG4gICAgICAgICAgICByaWdodDogW2ZvcndhcmRlci5tZXRyaWNEdXJhdGlvbih7IGxhYmVsOiAnRHVyYXRpb24nIH0pXSxcbiAgICAgICAgICAgIHJpZ2h0WUF4aXM6IHsgbWluOiAwIH0sXG4gICAgICAgICAgICBwZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoMTUpLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG5ldyBHcmFwaFdpZGdldCh7XG4gICAgICAgICAgICBoZWlnaHQ6IDYsXG4gICAgICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgICAgICB0aXRsZTogJ0RlYWQgTGV0dGVyIFF1ZXVlJyxcbiAgICAgICAgICAgIGxlZnQ6IFtcbiAgICAgICAgICAgICAgZGxxLm1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc1Zpc2libGUoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnVmlzaWJsZSBNZXNzYWdlcycsXG4gICAgICAgICAgICAgICAgcGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDEpLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZGxxLm1ldHJpY0FwcHJveGltYXRlTnVtYmVyT2ZNZXNzYWdlc05vdFZpc2libGUoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiAnSGlkZGVuIE1lc3NhZ2VzJyxcbiAgICAgICAgICAgICAgICBwZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoMSksXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGxlZnRZQXhpczogeyBtaW46IDAgfSxcbiAgICAgICAgICAgIHJpZ2h0OiBbXG4gICAgICAgICAgICAgIGRscS5tZXRyaWNBcHByb3hpbWF0ZUFnZU9mT2xkZXN0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICdPbGRlc3QgTWVzc2FnZSBBZ2UnLFxuICAgICAgICAgICAgICAgIHBlcmlvZDogRHVyYXRpb24ubWludXRlcygxKSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcmlnaHRZQXhpczogeyBtaW46IDAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSxcbiAgICAgICAgW1xuICAgICAgICAgIG5ldyBHcmFwaFdpZGdldCh7XG4gICAgICAgICAgICBoZWlnaHQ6IDYsXG4gICAgICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgICAgICB0aXRsZTogJ1F1YWxpdHkgTWV0cmljcycsXG4gICAgICAgICAgICBsZWZ0OiBbXG4gICAgICAgICAgICAgIGZpbGxNZXRyaWMoXG4gICAgICAgICAgICAgICAgdGhpcy5tZXRyaWNOb3RKc2lpRW5hYmxlZENvdW50KHsgbGFiZWw6ICdOb3QgYSBqc2lpIHBhY2thZ2UnIH0pLFxuICAgICAgICAgICAgICAgIDBcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgZmlsbE1ldHJpYyhcbiAgICAgICAgICAgICAgICB0aGlzLm1ldHJpY0luZWxpZ2libGVMaWNlbnNlKHsgbGFiZWw6ICdJbmVsaWdpYmxlIExpY2Vuc2UnIH0pLFxuICAgICAgICAgICAgICAgIDBcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgZmlsbE1ldHJpYyhcbiAgICAgICAgICAgICAgICB0aGlzLm1ldHJpY0RlbnlMaXN0ZWRDb3VudCh7IGxhYmVsOiAnRGVueSBMaXN0ZWQnIH0pLFxuICAgICAgICAgICAgICAgIDBcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgZmlsbE1ldHJpYyhcbiAgICAgICAgICAgICAgICB0aGlzLm1ldHJpY0RlbGV0ZWRDb3VudCh7IGxhYmVsOiAnRGVsZXRpb24gRXZlbnRzJyB9KSxcbiAgICAgICAgICAgICAgICAwXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgbGVmdFlBeGlzOiB7IG1pbjogMCB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjb3VudCBvZiBwYWNrYWdlIHZlcnNpb25zIHRoYXQgd2VyZSBpZ25vcmVkIGR1ZSB0byBiZWluZyBpbiB0aGUgZGVueSBsaXN0LlxuICAgKi9cbiAgcHVibGljIG1ldHJpY0RlbnlMaXN0ZWRDb3VudChvcHRzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBNZXRyaWMoe1xuICAgICAgcGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDUpLFxuICAgICAgc3RhdGlzdGljOiBTdGF0aXN0aWMuU1VNLFxuICAgICAgLi4ub3B0cyxcbiAgICAgIGRpbWVuc2lvbnNNYXA6IHtcbiAgICAgICAgW0RPTUFJTl9PV05FUl9ESU1FTlNJT05dOiB0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk93bmVyLFxuICAgICAgICBbRE9NQUlOX05BTUVfRElNRU5TSU9OXTogdGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJEb21haW5OYW1lLFxuICAgICAgICBbUkVQT1NJVE9SWV9OQU1FX0RJTUVOU0lPTl06IHRoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyTmFtZSxcbiAgICAgIH0sXG4gICAgICBtZXRyaWNOYW1lOiBNZXRyaWNOYW1lLkRFTllfTElTVEVEX0NPVU5ULFxuICAgICAgbmFtZXNwYWNlOiBNRVRSSUNTX05BTUVTUEFDRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHBhY2thZ2UgdmVyc2lvbnMgdGhhdCB3ZXJlIGlnbm9yZWQgZHVlIHRvIHVzaW5nIGFuIGluZWxvaWdpYmxlIGxpY2Vuc2UuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljSW5lbGlnaWJsZUxpY2Vuc2Uob3B0cz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiBuZXcgTWV0cmljKHtcbiAgICAgIHBlcmlvZDogRHVyYXRpb24ubWludXRlcyg1KSxcbiAgICAgIHN0YXRpc3RpYzogU3RhdGlzdGljLlNVTSxcbiAgICAgIC4uLm9wdHMsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7XG4gICAgICAgIFtET01BSU5fT1dORVJfRElNRU5TSU9OXTpcbiAgICAgICAgICB0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk93bmVyID8/IEF3cy5BQ0NPVU5UX0lELFxuICAgICAgICBbRE9NQUlOX05BTUVfRElNRU5TSU9OXTogdGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJEb21haW5OYW1lLFxuICAgICAgICBbUkVQT1NJVE9SWV9OQU1FX0RJTUVOU0lPTl06IHRoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyTmFtZSxcbiAgICAgIH0sXG4gICAgICBtZXRyaWNOYW1lOiBNZXRyaWNOYW1lLklORUxJR0lCTEVfTElDRU5TRSxcbiAgICAgIG5hbWVzcGFjZTogTUVUUklDU19OQU1FU1BBQ0UsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBwYWNrYWdlIHZlcnNpb25zIHRoYXQgd2VyZSBkZWxldGVkIGZyb20gQ29kZUFydGlmYWN0ICh0aG9zZSBldmVudHMgYXJlIG5vdFxuICAgKiBoYW5kbGVkIGN1cnJlbnRseSkuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljRGVsZXRlZENvdW50KG9wdHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IE1ldHJpYyh7XG4gICAgICBwZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoNSksXG4gICAgICBzdGF0aXN0aWM6IFN0YXRpc3RpYy5TVU0sXG4gICAgICAuLi5vcHRzLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBbRE9NQUlOX09XTkVSX0RJTUVOU0lPTl06XG4gICAgICAgICAgdGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJEb21haW5Pd25lciA/PyBBd3MuQUNDT1VOVF9JRCxcbiAgICAgICAgW0RPTUFJTl9OQU1FX0RJTUVOU0lPTl06IHRoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyRG9tYWluTmFtZSxcbiAgICAgICAgW1JFUE9TSVRPUllfTkFNRV9ESU1FTlNJT05dOiB0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ck5hbWUsXG4gICAgICB9LFxuICAgICAgbWV0cmljTmFtZTogTWV0cmljTmFtZS5ERUxFVEVEX0NPVU5ULFxuICAgICAgbmFtZXNwYWNlOiBNRVRSSUNTX05BTUVTUEFDRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHBhY2thZ2UgdmVyc2lvbnMgdGhhdCBkbyBub3QgaGF2ZSBhIGpzaWkgYXNzZW1ibHkgaW4gdGhlIHBhY2thZ2UuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljTm90SnNpaUVuYWJsZWRDb3VudChvcHRzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBNZXRyaWMoe1xuICAgICAgcGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDUpLFxuICAgICAgc3RhdGlzdGljOiBTdGF0aXN0aWMuU1VNLFxuICAgICAgLi4ub3B0cyxcbiAgICAgIGRpbWVuc2lvbnNNYXA6IHtcbiAgICAgICAgW0RPTUFJTl9PV05FUl9ESU1FTlNJT05dOlxuICAgICAgICAgIHRoaXMucHJvcHMucmVwb3NpdG9yeS5hdHRyRG9tYWluT3duZXIgPz8gQXdzLkFDQ09VTlRfSUQsXG4gICAgICAgIFtET01BSU5fTkFNRV9ESU1FTlNJT05dOiB0aGlzLnByb3BzLnJlcG9zaXRvcnkuYXR0ckRvbWFpbk5hbWUsXG4gICAgICAgIFtSRVBPU0lUT1JZX05BTUVfRElNRU5TSU9OXTogdGhpcy5wcm9wcy5yZXBvc2l0b3J5LmF0dHJOYW1lLFxuICAgICAgfSxcbiAgICAgIG1ldHJpY05hbWU6IE1ldHJpY05hbWUuTk9UX0pTSUlfRU5BQkxFRF9DT1VOVCxcbiAgICAgIG5hbWVzcGFjZTogTUVUUklDU19OQU1FU1BBQ0UsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -541,7 +541,7 @@ class NpmJs {
|
|
|
541
541
|
}
|
|
542
542
|
exports.NpmJs = NpmJs;
|
|
543
543
|
_a = JSII_RTTI_SYMBOL_1;
|
|
544
|
-
NpmJs[_a] = { fqn: "construct-hub.sources.NpmJs", version: "0.4.
|
|
544
|
+
NpmJs[_a] = { fqn: "construct-hub.sources.NpmJs", version: "0.4.429" };
|
|
545
545
|
/**
|
|
546
546
|
* How often 'rate' goes into 'duration' (rounded up)
|
|
547
547
|
*/
|
package/lib/package-tag/index.js
CHANGED
|
@@ -50,7 +50,7 @@ class TagCondition {
|
|
|
50
50
|
}
|
|
51
51
|
exports.TagCondition = TagCondition;
|
|
52
52
|
_a = JSII_RTTI_SYMBOL_1;
|
|
53
|
-
TagCondition[_a] = { fqn: "construct-hub.TagCondition", version: "0.4.
|
|
53
|
+
TagCondition[_a] = { fqn: "construct-hub.TagCondition", version: "0.4.429" };
|
|
54
54
|
/**
|
|
55
55
|
* Logic operators for performing specific conditional logic.
|
|
56
56
|
*/
|
|
@@ -130,7 +130,7 @@ class TagConditionField {
|
|
|
130
130
|
}
|
|
131
131
|
exports.TagConditionField = TagConditionField;
|
|
132
132
|
_b = JSII_RTTI_SYMBOL_1;
|
|
133
|
-
TagConditionField[_b] = { fqn: "construct-hub.TagConditionField", version: "0.4.
|
|
133
|
+
TagConditionField[_b] = { fqn: "construct-hub.TagConditionField", version: "0.4.429" };
|
|
134
134
|
/**
|
|
135
135
|
* Target the README of the package to dictate whether a tag is relevant.
|
|
136
136
|
*/
|
|
@@ -147,5 +147,5 @@ class TagConditionReadme {
|
|
|
147
147
|
}
|
|
148
148
|
exports.TagConditionReadme = TagConditionReadme;
|
|
149
149
|
_c = JSII_RTTI_SYMBOL_1;
|
|
150
|
-
TagConditionReadme[_c] = { fqn: "construct-hub.TagConditionReadme", version: "0.4.
|
|
150
|
+
TagConditionReadme[_c] = { fqn: "construct-hub.TagConditionReadme", version: "0.4.429" };
|
|
151
151
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFja2FnZS10YWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUE4RUEsSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzVCLG1EQUE2QixDQUFBO0lBQzdCLHVDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFIVyxrQkFBa0Isa0NBQWxCLGtCQUFrQixRQUc3QjtBQXNCRDs7R0FFRztBQUNILE1BQXNCLFlBQVk7SUFDaEM7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQXFCO1FBQ2pDLE9BQU8sSUFBSSxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFxQjtRQUNoQyxPQUFPLElBQUksaUJBQWlCLENBQUMscUJBQXFCLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFxQjtRQUNqQyxPQUFPLElBQUksaUJBQWlCLENBQUMscUJBQXFCLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFjO1FBQzVCLE9BQU8sSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsTUFBTTtRQUNYLE9BQU8sSUFBSSxrQkFBa0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7O0FBdkNILG9DQTBDQzs7O0FBRUQ7O0dBRUc7QUFDSCxJQUFZLHFCQU9YO0FBUEQsV0FBWSxxQkFBcUI7SUFDL0Isb0NBQVcsQ0FBQTtJQUNYLGtDQUFTLENB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b20gJy4uL3BhY2thZ2UtdGFnLWdyb3VwJztcblxuaW50ZXJmYWNlIFBhY2thZ2VUYWdQcmVzZW50YXRpb25CYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCBmb3IgdGhlIHRhZyBiZWluZyBhcHBsaWVkXG4gICAqL1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaGV4IHZhbHVlIHN0cmluZyBmb3IgdGhlIGNvbG9yIG9mIHRoZSB0YWcgd2hlbiBkaXNwbGF5ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNvbG9yPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtleXdvcmQgZXh0ZW5kcyBQYWNrYWdlVGFnUHJlc2VudGF0aW9uQmFzZSB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIEhpZ2hsaWdodCBleHRlbmRzIFBhY2thZ2VUYWdQcmVzZW50YXRpb25CYXNlIHtcbiAgLyoqXG4gICAqIEljb24gZGlzcGxheWVkIG5leHQgdG8gaGlnaGxpZ2h0IG9uIHBhY2thZ2UgY2FyZFxuICAgKi9cbiAgcmVhZG9ubHkgaWNvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hGaWx0ZXIge1xuICAvKipcbiAgICogRGlzcGxheSBuYW1lIGZvciBmaWx0ZXJcbiAgICovXG4gIHJlYWRvbmx5IGRpc3BsYXk6IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiBncm91cCB0byBpbmNsdWRlIGZpbHRlciBpblxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGdyb3VwYCBpbnN0ZWFkXG4gICAqL1xuICByZWFkb25seSBncm91cEJ5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQYWNrYWdlVGFnR3JvdXAgdG8gaW5jbHVkZSBmaWx0ZXIgaW5cbiAgICovXG4gIHJlYWRvbmx5IGdyb3VwPzogUGFja2FnZVRhZ0dyb3VwO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VUYWdCYXNlIHtcbiAgLyoqXG4gICAqIElkZW50aWZpZXIgZm9yIHRhZywgdXNlZCBmb3Igc2VhcmNoLiBNdXN0IGJlIHVuaXF1ZSBhbW9uZ3N0IHRhZ3MuXG4gICAqL1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBoaWdsaWdodGluZyB0YWcgb24gcGFja2FnZSBjYXJkXG4gICAqIEBkZWZhdWx0IGRvbid0IGhpZ2hsaWdodCB0YWdcbiAgICovXG4gIHJlYWRvbmx5IGhpZ2hsaWdodD86IEhpZ2hsaWdodDtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBmb3Igc2hvd2luZyB0YWcgYXMga2V5d29yZFxuICAgKiBAZGVmYXVsdCBkb24ndCBzaG93IHRhZyBpbiBrZXl3b3JkIGxpc3RcbiAgICovXG4gIHJlYWRvbmx5IGtleXdvcmQ/OiBLZXl3b3JkO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIGZvciBzaG93aW5nIHRhZyBhcyBzZWFyY2ggZmlsdGVyXG4gICAqIEBkZWZhdWx0IGRvbid0IHNob3cgdGFnIGluIHNlYXJjaCBmaWx0ZXJzXG4gICAqL1xuICByZWFkb25seSBzZWFyY2hGaWx0ZXI/OiBTZWFyY2hGaWx0ZXI7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgYXBwbHlpbmcgY3VzdG9tIHRhZ3MgdG8gcmVsZXZhbnQgcGFja2FnZXMuIEN1c3RvbSB0YWdzIGFyZVxuICogZGlzcGxheWVkIG9uIHRoZSBwYWNrYWdlIGRldGFpbHMgcGFnZSwgYW5kIGNhbiBiZSB1c2VkIGZvciBzZWFyY2hpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFja2FnZVRhZyBleHRlbmRzIFBhY2thZ2VUYWdCYXNlIHtcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgbG9naWMgdGhhdCBkaWN0YXRlcyB3aGV0aGVyIHRoZVxuICAgKiBwYWNrYWdlIGhhcyB0aGUgdGFnIGFwcGxpZWQuXG4gICAqL1xuICByZWFkb25seSBjb25kaXRpb246IFRhZ0NvbmRpdGlvbjtcbn1cblxuZXhwb3J0IGVudW0gVGFnQ29uZGl0aW9uU291cmNlIHtcbiAgUEFDS0FHRV9KU09OID0gJ1BBQ0tBR0VfSlNPTicsXG4gIFJFQURNRSA9ICdSRUFETUUnLFxufVxuXG4vKipcbiAqIFNlcmlhbGl6ZWQgY29uZmlnIGZvciBhIHRhZyBjb25kaXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYWdDb25kaXRpb25Db25maWcge1xuICByZWFkb25seSB0eXBlOiBUYWdDb25kaXRpb25Mb2dpY1R5cGU7XG4gIHJlYWRvbmx5IHNvdXJjZT86IFRhZ0NvbmRpdGlvblNvdXJjZTtcbiAgcmVhZG9ubHkga2V5Pzogc3RyaW5nW107XG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xuICByZWFkb25seSBvcHRpb25zPzogeyByZWFkb25seSBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgcmVhZG9ubHkgY2hpbGRyZW4/OiBUYWdDb25kaXRpb25Db25maWdbXTtcbn1cblxuLyoqXG4gKiBTZXJpYWxpemVkIHRhZyBkZWNsYXJhdGlvbiB0byBiZSBwYXNzZWQgdG8gbGFtYmRhcyB2aWEgZW52aXJvbm1lbnRcbiAqIHZhcmlhYmxlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYWNrYWdlVGFnQ29uZmlnIGV4dGVuZHMgUGFja2FnZVRhZ0Jhc2Uge1xuICByZWFkb25seSBjb25kaXRpb246IFRhZ0NvbmRpdGlvbkNvbmZpZztcbn1cblxuLyoqXG4gKiBDb25kaXRpb24gZm9yIGFwcGx5aW5nIGEgY3VzdG9tIHRhZyB0byBhIHBhY2thZ2UuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUYWdDb25kaXRpb24ge1xuICAvKipcbiAgICogQ3JlYXRlIGFuICYmIGNvbmRpdGlvbiB3aGljaCBhcHBsaWVzIG9ubHkgd2hlbiBhbGwgY29uZGl0aW9uIGFyZ3VtZW50cyBhcmVcbiAgICogdHJ1ZS5cbiAgICovXG4gIHN0YXRpYyBhbmQoLi4uY29uZHM6IFRhZ0NvbmRpdGlvbltdKTogVGFnQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRhZ0NvbmRpdGlvbkxvZ2ljKFRhZ0NvbmRpdGlvbkxvZ2ljVHlwZS5BTkQsIGNvbmRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gfHwgY29uZGl0aW9uIHdoaWNoIGFwcGxpZXMgaWYgYW55IG9mIHRoZSBjb25kaXRpb24gYXJndW1lbnRzIGFyZVxuICAgKiB0cnVlLlxuICAgKi9cbiAgc3RhdGljIG9yKC4uLmNvbmRzOiBUYWdDb25kaXRpb25bXSk6IFRhZ0NvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUYWdDb25kaXRpb25Mb2dpYyhUYWdDb25kaXRpb25Mb2dpY1R5cGUuT1IsIGNvbmRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSAhIGNvbmRpdGlvbiB3aGljaCBhcHBsaWVzIGlmIHRoZSBjb25kaXRpb24gYXJndW1lbnQgaXMgZmFsc2VcbiAgICovXG4gIHN0YXRpYyBub3QoLi4uY29uZHM6IFRhZ0NvbmRpdGlvbltdKTogVGFnQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRhZ0NvbmRpdGlvbkxvZ2ljKFRhZ0NvbmRpdGlvbkxvZ2ljVHlwZS5OT1QsIGNvbmRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYXJnZXQgYSBmaWVsZCB3aXRoaW4gdGhlIGBwYWNrYWdlLmpzb25gIHRvIGFzc2VydCBhZ2FpbnN0LiBOZXN0ZWQgZmllbGRzXG4gICAqIGNhbiBiZSBhY2Nlc3NlZCBieSBwYXNzaW5nIG11bHRpcGxlIGtleXMuXG4gICAqIGBUYWdDb25kaXRpb24uZmllbGQoJ2tleTEnLCAna2V5MicpYCB3aWxsIGFjY2Vzc1xuICAgKiBgcGFja2FnZUpzb24/LmtleTE/LmtleTJgLlxuICAgKi9cbiAgc3RhdGljIGZpZWxkKC4uLmtleXM6IHN0cmluZ1tdKTogVGFnQ29uZGl0aW9uRmllbGQge1xuICAgIHJldHVybiBuZXcgVGFnQ29uZGl0aW9uRmllbGQoa2V5cyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgY29uZGl0aW9uIHdpdGggbG9naWMgdGFyZ2V0aW5nIHRoZSBSRUFETUUgb2YgdGhlIHBhY2thZ2UuXG4gICAqL1xuICBzdGF0aWMgcmVhZG1lKCk6IFRhZ0NvbmRpdGlvblJlYWRtZSB7XG4gICAgcmV0dXJuIG5ldyBUYWdDb25kaXRpb25SZWFkbWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCBiaW5kKCk6IFRhZ0NvbmRpdGlvbkNvbmZpZztcbn1cblxuLyoqXG4gKiBMb2dpYyBvcGVyYXRvcnMgZm9yIHBlcmZvcm1pbmcgc3BlY2lmaWMgY29uZGl0aW9uYWwgbG9naWMuXG4gKi9cbmV4cG9ydCBlbnVtIFRhZ0NvbmRpdGlvbkxvZ2ljVHlwZSB7XG4gIEFORCA9ICdBTkQnLFxuICBPUiA9ICdPUicsXG4gIE5PVCA9ICdOT1QnLFxuICBFUVVBTFMgPSAnRVFVQUxTJyxcbiAgSU5DTFVERVMgPSAnSU5DTFVERVMnLFxuICBTVEFSVFNfV0lUSCA9ICdTVEFSVFNfV0lUSCcsXG59XG5cbmNsYXNzIFRhZ0NvbmRpdGlvbkxvZ2ljIGV4dGVuZHMgVGFnQ29uZGl0aW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IGlzTG9naWMgPSB0cnVlO1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0eXBlOiBUYWdDb25kaXRpb25Mb2dpY1R5cGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGlsZHJlbjogVGFnQ29uZGl0aW9uW11cbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBiaW5kKCk6IFRhZ0NvbmRpdGlvbkNvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGNoaWxkcmVuOiB0aGlzLmNoaWxkcmVuLm1hcCgoY29uZCkgPT4gY29uZC5iaW5kKCkpLFxuICAgIH07XG4gIH1cbn1cblxuY2xhc3MgVGFnQ29uZGl0aW9uUHJlZGljYXRlIGV4dGVuZHMgVGFnQ29uZGl0aW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IGlzUHJlZGljYXRlID0gdHJ1ZTtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHlwZTogVGFnQ29uZGl0aW9uTG9naWNUeXBlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc291cmNlPzogVGFnQ29uZGl0aW9uU291cmNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkga2V5Pzogc3RyaW5nW10sXG4gICAgcHJpdmF0ZSByZWFkb25seSB2YWx1ZT86IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM/OiBUYWdDb25kaXRpb25JbmNsdWRlc09wdGlvbnNcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBiaW5kKCk6IFRhZ0NvbmRpdGlvbkNvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2UsXG4gICAgICBrZXk6IHRoaXMua2V5LFxuICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICBvcHRpb25zOiB0aGlzLm9wdGlvbnMsXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIFRhcmdldCBhIGZpZWxkIHRvIHVzZSBpbiBsb2dpYyB0byBkaWN0YXRlIHdoZXRoZXIgYSB0YWcgaXMgcmVsZXZhbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBUYWdDb25kaXRpb25GaWVsZCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZpZWxkOiBzdHJpbmdbXSkge31cblxuICAvKipcbiAgICogQ3JlYXRlIGEgPT09IGNvbmRpdGlvbiB3aGljaCBhcHBsaWVzIGlmIHRoZSBzcGVjaWZpZWQgZmllbGQgd2l0aGluIHRoZVxuICAgKiBwYWNrYWdlJ3MgcGFja2FnZS5qc29uIGlzIGVxdWFsIHRvIHRoZSBwYXNzZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgZXEodmFsdWU6IGFueSk6IFRhZ0NvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUYWdDb25kaXRpb25QcmVkaWNhdGUoXG4gICAgICBUYWdDb25kaXRpb25Mb2dpY1R5cGUuRVFVQUxTLFxuICAgICAgVGFnQ29uZGl0aW9uU291cmNlLlBBQ0tBR0VfSlNPTixcbiAgICAgIHRoaXMuZmllbGQsXG4gICAgICB2YWx1ZVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgYGZpZWxkLmluY2x1ZGVzKHZhbHVlKWAgY29uZGl0aW9uIHdoaWNoIGFwcGxpZXMgaWYgdGhlIHNwZWNpZmllZFxuICAgKiBmaWVsZCB3aXRoaW4gdGhlIHBhY2thZ2UncyBwYWNrYWdlLmpzb24gaW5jbHVkZXMgdGhlIHZhbHVlLiBUaGlzIHdvcmtzIGZvclxuICAgKiBhcnJheXMgb3Igc3RyaW5ncy5cbiAgICovXG4gIHB1YmxpYyBpbmNsdWRlcyhcbiAgICB2YWx1ZTogYW55LFxuICAgIG9wdGlvbnM6IFRhZ0NvbmRpdGlvbkluY2x1ZGVzT3B0aW9ucyA9IHt9XG4gICk6IFRhZ0NvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUYWdDb25kaXRpb25QcmVkaWNhdGUoXG4gICAgICBUYWdDb25kaXRpb25Mb2dpY1R5cGUuSU5DTFVERVMsXG4gICAgICBUYWdDb25kaXRpb25Tb3VyY2UuUEFDS0FHRV9KU09OLFxuICAgICAgdGhpcy5maWVsZCxcbiAgICAgIHZhbHVlLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgYGZpZWxkLnN0YXJ0c1dpdGgodmFsdWUpYCBjb25kaXRpb24gd2hpY2ggYXBwbGllcyBpZiB0aGUgc3BlY2lmaWVkXG4gICAqIGZpZWxkIHdpdGhpbiB0aGUgcGFja2FnZSdzIHBhY2thZ2UuanNvbiBiZWdpbnMgd2l0aCB0aGUgdmFsdWUuIFRoaXMgd29ya3NcbiAgICogb25seSBmb3Igc3RyaW5nIHZhbHVlcy5cbiAgICovXG4gIHB1YmxpYyBzdGFydHNXaXRoKHZhbHVlOiBzdHJpbmcpOiBUYWdDb25kaXRpb24ge1xuICAgIHJldHVybiBuZXcgVGFnQ29uZGl0aW9uUHJlZGljYXRlKFxuICAgICAgVGFnQ29uZGl0aW9uTG9naWNUeXBlLlNUQVJUU19XSVRILFxuICAgICAgVGFnQ29uZGl0aW9uU291cmNlLlBBQ0tBR0VfSlNPTixcbiAgICAgIHRoaXMuZmllbGQsXG4gICAgICB2YWx1ZVxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBUYXJnZXQgdGhlIFJFQURNRSBvZiB0aGUgcGFja2FnZSB0byBkaWN0YXRlIHdoZXRoZXIgYSB0YWcgaXMgcmVsZXZhbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBUYWdDb25kaXRpb25SZWFkbWUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBgcmVhZG1lLmluY2x1ZGVzKHZhbHVlKWAgY29uZGl0aW9uIHdoaWNoIGFwcGxpZXMgaWYgdGhlIFJFQURNRVxuICAgKiBpbmNsdWRlcyB0aGUgc3BlY2lmaWVkIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBpbmNsdWRlcyhcbiAgICB2YWx1ZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFRhZ0NvbmRpdGlvbkluY2x1ZGVzT3B0aW9ucyA9IHt9XG4gICk6IFRhZ0NvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUYWdDb25kaXRpb25QcmVkaWNhdGUoXG4gICAgICBUYWdDb25kaXRpb25Mb2dpY1R5cGUuSU5DTFVERVMsXG4gICAgICBUYWdDb25kaXRpb25Tb3VyY2UuUkVBRE1FLFxuICAgICAgdW5kZWZpbmVkLCAvLyBubyBrZXlcbiAgICAgIHZhbHVlLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgaW5jbHVkZXNgIG9wZXJhdG9yLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZ0NvbmRpdGlvbkluY2x1ZGVzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgbXVzdCBhcHBlYXIgYXQgbGVhc3QgdGhpcyBtYW55IHRpbWVzLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBhdExlYXN0PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTdHJpbmcgbWF0Y2hlcyBtdXN0IG1hdGNoIHRoZSBjYXNpbmcgb2YgdGhlIG9yaWdpbmFsIHN0cmluZy4gVGhpcyBvcHRpb25cbiAgICogaXMgaWdub3JlZCBpZiB0aGUgdmFsdWUgd2UgYXJlIGNoZWNraW5nIGlzIGFuIGFycmF5LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY2FzZVNlbnNpdGl2ZT86IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -13,7 +13,7 @@ class FilterType {
|
|
|
13
13
|
}
|
|
14
14
|
exports.FilterType = FilterType;
|
|
15
15
|
_a = JSII_RTTI_SYMBOL_1;
|
|
16
|
-
FilterType[_a] = { fqn: "construct-hub.FilterType", version: "0.4.
|
|
16
|
+
FilterType[_a] = { fqn: "construct-hub.FilterType", version: "0.4.429" };
|
|
17
17
|
class FilterTypeRadio extends FilterType {
|
|
18
18
|
bind() {
|
|
19
19
|
return { type: 'radio' };
|
|
@@ -45,5 +45,5 @@ class PackageTagGroup {
|
|
|
45
45
|
}
|
|
46
46
|
exports.PackageTagGroup = PackageTagGroup;
|
|
47
47
|
_b = JSII_RTTI_SYMBOL_1;
|
|
48
|
-
PackageTagGroup[_b] = { fqn: "construct-hub.PackageTagGroup", version: "0.4.
|
|
48
|
+
PackageTagGroup[_b] = { fqn: "construct-hub.PackageTagGroup", version: "0.4.429" };
|
|
49
49
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFja2FnZS10YWctZ3JvdXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSxNQUFzQixVQUFVO0lBQzlCLE1BQU0sQ0FBQyxRQUFRO1FBQ2IsT0FBTyxJQUFJLGtCQUFrQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLO1FBQ1YsT0FBTyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQy9CLENBQUM7O0FBUEgsZ0NBVUM7OztBQUVELE1BQU0sZUFBZ0IsU0FBUSxVQUFVO0lBQy9CLElBQUk7UUFDVCxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQUVELE1BQU0sa0JBQW1CLFNBQVEsVUFBVTtJQUNsQyxJQUFJO1FBQ1QsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUF3QkQ7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFLMUIsWUFBNEIsRUFBVSxFQUFFLEtBQTRCO1FBQXhDLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxFQUFFLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsS0FBSyxFQUFFLFVBQVUsSUFBSSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDN0UsQ0FBQztJQUVNLElBQUk7UUFDVCxPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDNUIsQ0FBQztJQUNKLENBQUM7O0FBbEJILDBDQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyVHlwZVZhbHVlIHtcbiAgcmVhZG9ubHkgdHlwZTogJ2NoZWNrYm94JyB8ICdyYWRpbyc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGaWx0ZXJUeXBlIHtcbiAgc3RhdGljIGNoZWNrYm94KCk6IEZpbHRlclR5cGUge1xuICAgIHJldHVybiBuZXcgRmlsdGVyVHlwZUNoZWNrYm94KCk7XG4gIH1cblxuICBzdGF0aWMgcmFkaW8oKTogRmlsdGVyVHlwZSB7XG4gICAgcmV0dXJuIG5ldyBGaWx0ZXJUeXBlUmFkaW8oKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCBiaW5kKCk6IEZpbHRlclR5cGVWYWx1ZTtcbn1cblxuY2xhc3MgRmlsdGVyVHlwZVJhZGlvIGV4dGVuZHMgRmlsdGVyVHlwZSB7XG4gIHB1YmxpYyBiaW5kKCk6IEZpbHRlclR5cGVWYWx1ZSB7XG4gICAgcmV0dXJuIHsgdHlwZTogJ3JhZGlvJyB9O1xuICB9XG59XG5cbmNsYXNzIEZpbHRlclR5cGVDaGVja2JveCBleHRlbmRzIEZpbHRlclR5cGUge1xuICBwdWJsaWMgYmluZCgpOiBGaWx0ZXJUeXBlVmFsdWUge1xuICAgIHJldHVybiB7IHR5cGU6ICdjaGVja2JveCcgfTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VUYWdHcm91cFByb3BzIHtcbiAgLyoqXG4gICAqIEdyb3VwIGxhYmVsIHRvIGRpc3BsYXkuIEZhbGxzIGJhY2sgdG8gaWQgaWYgbm90IHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBsYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1lc3NhZ2UgdG8gc2hvdyB3aXRoaW4gYSB0b29sdGlwIG5leHQgdG8gdGhlIGZpbHRlciBsYWJlbFxuICAgKi9cbiAgcmVhZG9ubHkgdG9vbHRpcD86IHN0cmluZztcbiAgLyoqXG4gICAqIEFsbG93cyB0byBzcGVjaWZ5IHRoZSBncm91cCBmaWx0ZXIgdHlwZS4gRGVmYXVsdHMgdG8gY2hlY2tib3ggaWYgbm90IHNwZWNpZmllZFxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyVHlwZT86IEZpbHRlclR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFja2FnZVRhZ0dyb3VwQ29uZmlnIHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRvb2x0aXA/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGZpbHRlclR5cGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVmaW5lcyBhIGN1c3RvbSBwYWNrYWdlIHRhZyBncm91cFxuICovXG5leHBvcnQgY2xhc3MgUGFja2FnZVRhZ0dyb3VwIHtcbiAgcHVibGljIHJlYWRvbmx5IGxhYmVsPzogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgdG9vbHRpcD86IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IGZpbHRlclR5cGU/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGlkOiBzdHJpbmcsIHByb3BzPzogUGFja2FnZVRhZ0dyb3VwUHJvcHMpIHtcbiAgICB0aGlzLmxhYmVsID0gcHJvcHM/LmxhYmVsO1xuICAgIHRoaXMudG9vbHRpcCA9IHByb3BzPy50b29sdGlwO1xuICAgIHRoaXMuZmlsdGVyVHlwZSA9IChwcm9wcz8uZmlsdGVyVHlwZSA/PyBGaWx0ZXJUeXBlLmNoZWNrYm94KCkpLmJpbmQoKS50eXBlO1xuICB9XG5cbiAgcHVibGljIGJpbmQoKTogUGFja2FnZVRhZ0dyb3VwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBsYWJlbDogdGhpcy5sYWJlbCxcbiAgICAgIHRvb2x0aXA6IHRoaXMudG9vbHRpcCxcbiAgICAgIGZpbHRlclR5cGU6IHRoaXMuZmlsdGVyVHlwZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -31,5 +31,5 @@ class PreloadFile {
|
|
|
31
31
|
}
|
|
32
32
|
exports.PreloadFile = PreloadFile;
|
|
33
33
|
_a = JSII_RTTI_SYMBOL_1;
|
|
34
|
-
PreloadFile[_a] = { fqn: "construct-hub.PreloadFile", version: "0.4.
|
|
34
|
+
PreloadFile[_a] = { fqn: "construct-hub.PreloadFile", version: "0.4.429" };
|
|
35
35
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJlbG9hZC1maWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkJBQWtDO0FBRWxDOzs7R0FHRztBQUNILE1BQWEsV0FBVztJQUN0Qjs7T0FFRztJQUNILE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBWTtRQUMxQixNQUFNLElBQUksR0FBRyxJQUFBLGlCQUFZLEVBQUMsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdkQsT0FBTyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsUUFBUSxDQUFDLElBQVk7UUFDMUIsT0FBTyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBNkIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFBRyxDQUFDO0lBRXRDLElBQUk7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7QUFwQkgsa0NBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAnZnMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBqYXZhc2NyaXB0IGZpbGUgdG8gbG9hZCBiZWZvcmUgdGhlIHdlYmFwcC5cbiAqIFRoaXMgY2FuIGFsbG93IG9wZXJhdG9ycyB0byBhZGQgdGhlaXIgb3duIGNsaWVudCBtb25pdG9ycyBvciBhbmFseXRpY3MgaWYgdGhleSB3aXNoXG4gKi9cbmV4cG9ydCBjbGFzcyBQcmVsb2FkRmlsZSB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgUHJlbG9hZEZpbGUgaW5zdGFuY2UgZnJvbSBhIGZpbGVwYXRoIHRvIGxvYWRcbiAgICovXG4gIHN0YXRpYyBmcm9tRmlsZShwYXRoOiBzdHJpbmcpOiBQcmVsb2FkRmlsZSB7XG4gICAgY29uc3QgZGF0YSA9IHJlYWRGaWxlU3luYyhwYXRoLCB7IGVuY29kaW5nOiAndXRmLTgnIH0pO1xuICAgIHJldHVybiBuZXcgUHJlbG9hZEZpbGUoZGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIFByZWxvYWRGaWxlIGluc3RhbmNlIGRpcmVjdGx5IGZyb20gc291cmNlIGNvZGVcbiAgICovXG4gIHN0YXRpYyBmcm9tQ29kZShjb2RlOiBzdHJpbmcpOiBQcmVsb2FkRmlsZSB7XG4gICAgcmV0dXJuIG5ldyBQcmVsb2FkRmlsZShjb2RlKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGF0YTogc3RyaW5nKSB7fVxuXG4gIHB1YmxpYyBiaW5kKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YTtcbiAgfVxufVxuIl19
|
package/lib/s3/storage.js
CHANGED
|
@@ -52,6 +52,6 @@ class S3StorageFactory extends constructs_1.Construct {
|
|
|
52
52
|
}
|
|
53
53
|
exports.S3StorageFactory = S3StorageFactory;
|
|
54
54
|
_a = JSII_RTTI_SYMBOL_1;
|
|
55
|
-
S3StorageFactory[_a] = { fqn: "construct-hub.S3StorageFactory", version: "0.4.
|
|
55
|
+
S3StorageFactory[_a] = { fqn: "construct-hub.S3StorageFactory", version: "0.4.429" };
|
|
56
56
|
S3StorageFactory.UID = 'S3StorageFactory';
|
|
57
57
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zMy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQXFEO0FBQ3JELHlDQUF5QztBQUN6QywyQ0FBdUM7QUFjdkM7O0dBRUc7QUFDSCxNQUFhLGdCQUFpQixTQUFRLHNCQUFTO0lBQzdDOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsV0FBVyxDQUN2QixLQUFnQixFQUNoQixRQUErQixFQUFFO1FBRWpDLE1BQU0sS0FBSyxHQUFHLG1CQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBcUIsQ0FBQztJQUN4RSxDQUFDO0lBTUQsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1YsUUFBK0IsRUFBRTtRQUVqQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxTQUFTLENBQ2QsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQXNCO1FBRXRCLFNBQVMsV0FBVyxDQUFDLE1BQWlCO1lBQ3BDLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMvRCxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBRTNDLElBQUksdUJBQVMsQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7Z0JBQ3RDLFdBQVcsRUFBRSxZQUFZLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUMzQyxLQUFLLEVBQUUsb0JBQW9CLE1BQU0sQ0FBQyxVQUFVLFNBQVMsU0FBUyxDQUFDLFVBQVUsRUFBRTthQUM1RSxDQUFDLENBQUM7WUFDSCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFaEQsNkVBQTZFO1FBQzdFLGtGQUFrRjtRQUNsRix5QkFBeUI7UUFDekIsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDbEQsQ0FBQzs7QUE1REgsNENBNkRDOzs7QUEzQ3lCLG9CQUFHLEdBQUcsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIFN0YWNrLCBUYWdzIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGBTM1N0b3JhZ2VGYWN0b3J5YFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFMzU3RvcmFnZUZhY3RvcnlQcm9wcyB7XG4gIC8qKlxuICAgKiBXaGVuIGVuYWJsZWQsIHRoZSBmYWN0b3J5IHdpbGwgcmV0dXJuIHRoZSBmYWlsb3ZlciBidWNrZXRzIGluc3RlYWQgb2YgdGhlIHByaW1hcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBmYWlsb3Zlcj86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ3JlYXRlIHMzIHN0b3JhZ2UgcmVzb3VyY2VzLlxuICovXG5leHBvcnQgY2xhc3MgUzNTdG9yYWdlRmFjdG9yeSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBSZXRyaWV2ZSBvciBjcmVhdGUgdGhlIHN0b3JhZ2UgZmFjdG9yeSBmb3IgdGhlIGN1cnJlbnQgc2NvcGUuXG4gICAqXG4gICAqIFRoaXMgaXMgc3RhY2sgc2luZ2xldG9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXRPckNyZWF0ZShcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIHByb3BzOiBTM1N0b3JhZ2VGYWN0b3J5UHJvcHMgPSB7fVxuICApOiBTM1N0b3JhZ2VGYWN0b3J5IHtcbiAgICBjb25zdCBzdGFjayA9IFN0YWNrLm9mKHNjb3BlKTtcbiAgICBjb25zdCBmYWN0b3J5ID0gc3RhY2subm9kZS50cnlGaW5kQ2hpbGQoUzNTdG9yYWdlRmFjdG9yeS5VSUQpO1xuICAgIGlmICghZmFjdG9yeSkge1xuICAgICAgcmV0dXJuIG5ldyBTM1N0b3JhZ2VGYWN0b3J5KHN0YWNrLCBTM1N0b3JhZ2VGYWN0b3J5LlVJRCwgcHJvcHMpO1xuICAgIH1cbiAgICByZXR1cm4gc3RhY2subm9kZS5maW5kQ2hpbGQoUzNTdG9yYWdlRmFjdG9yeS5VSUQpIGFzIFMzU3RvcmFnZUZhY3Rvcnk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBVSUQgPSAnUzNTdG9yYWdlRmFjdG9yeSc7XG5cbiAgcHJpdmF0ZSBmYWlsb3ZlckFjdGl2ZTogYm9vbGVhbjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogUzNTdG9yYWdlRmFjdG9yeVByb3BzID0ge31cbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLmZhaWxvdmVyQWN0aXZlID0gcHJvcHMuZmFpbG92ZXIgPz8gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGJ1Y2tldCBpbiBhIHN0b3JhZ2UgY29uZmlnIGF3YXJlIG1hbm5lci5cbiAgICpcbiAgICogQHJldHVybnMgczMuQnVja2V0XG4gICAqL1xuICBwdWJsaWMgbmV3QnVja2V0KFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wcz86IHMzLkJ1Y2tldFByb3BzXG4gICk6IHMzLkJ1Y2tldCB7XG4gICAgZnVuY3Rpb24gZmFpbG92ZXJGb3IoYnVja2V0OiBzMy5CdWNrZXQpOiBzMy5CdWNrZXQge1xuICAgICAgY29uc3QgX2ZhaWxvdmVyID0gbmV3IHMzLkJ1Y2tldChzY29wZSwgYEZhaWxvdmVyJHtpZH1gLCBwcm9wcyk7XG4gICAgICBUYWdzLm9mKF9mYWlsb3ZlcikuYWRkKCdmYWlsb3ZlcicsICd0cnVlJyk7XG5cbiAgICAgIG5ldyBDZm5PdXRwdXQoc2NvcGUsICdTbmFwc2hvdENvbW1hbmQnLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgU25hcHNob3QgJHtidWNrZXQubm9kZS5wYXRofWAsXG4gICAgICAgIHZhbHVlOiBgYXdzIHMzIHN5bmMgczM6Ly8ke2J1Y2tldC5idWNrZXROYW1lfSBzMzovLyR7X2ZhaWxvdmVyLmJ1Y2tldE5hbWV9YCxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIF9mYWlsb3ZlcjtcbiAgICB9XG5cbiAgICBjb25zdCBwcmltYXJ5ID0gbmV3IHMzLkJ1Y2tldChzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIC8vIG5vdGUgdGhhdCB3ZSBjcmVhdGUgdGhlIGZhaWxvdmVyIGJ1Y2tldCBldmVuIGlmIHdlIGRvbid0IGN1cnJlbnRseSB1c2UgaXQuXG4gICAgLy8gdGhpcyBpcyBiZWNhdXNlIGNvbmRpdGlvbmluZyBidWNrZXQgY3JlYXRpb24gd2lsbCBldmVudHVhbGx5IGZhaWwgc2luY2UgYnVja2V0c1xuICAgIC8vIGFyZSBub3JtYWxseSByZXRhaW5lZC5cbiAgICBjb25zdCBmYWlsb3ZlciA9IGZhaWxvdmVyRm9yKHByaW1hcnkpO1xuXG4gICAgcmV0dXJuIHRoaXMuZmFpbG92ZXJBY3RpdmUgPyBmYWlsb3ZlciA6IHByaW1hcnk7XG4gIH1cbn1cbiJdfQ==
|
package/lib/spdx-license.js
CHANGED
|
@@ -269,7 +269,7 @@ class SpdxLicense {
|
|
|
269
269
|
}
|
|
270
270
|
exports.SpdxLicense = SpdxLicense;
|
|
271
271
|
_a = JSII_RTTI_SYMBOL_1;
|
|
272
|
-
SpdxLicense[_a] = { fqn: "construct-hub.SpdxLicense", version: "0.4.
|
|
272
|
+
SpdxLicense[_a] = { fqn: "construct-hub.SpdxLicense", version: "0.4.429" };
|
|
273
273
|
SpdxLicense._ALL = new Map();
|
|
274
274
|
//#region Individual SPDX Licenses
|
|
275
275
|
/**
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": {
|
|
3
3
|
"main.css": "/static/css/main.efe592a7.css",
|
|
4
|
-
"main.js": "/static/js/main.
|
|
4
|
+
"main.js": "/static/js/main.80cba683.js",
|
|
5
5
|
"static/js/332.9e0695b5.chunk.js": "/static/js/332.9e0695b5.chunk.js",
|
|
6
6
|
"static/js/959.cd9d51a2.chunk.js": "/static/js/959.cd9d51a2.chunk.js",
|
|
7
7
|
"static/js/619.70bb2d55.chunk.js": "/static/js/619.70bb2d55.chunk.js",
|
|
8
8
|
"static/js/375.30524f64.chunk.js": "/static/js/375.30524f64.chunk.js",
|
|
9
|
-
"static/js/421.
|
|
9
|
+
"static/js/421.ec09e678.chunk.js": "/static/js/421.ec09e678.chunk.js",
|
|
10
10
|
"static/js/323.80d18b4c.chunk.js": "/static/js/323.80d18b4c.chunk.js",
|
|
11
11
|
"static/js/773.ea0e9610.chunk.js": "/static/js/773.ea0e9610.chunk.js",
|
|
12
12
|
"static/js/857.3540b295.chunk.js": "/static/js/857.3540b295.chunk.js",
|
|
@@ -20,12 +20,12 @@
|
|
|
20
20
|
"service-worker.js": "/service-worker.js",
|
|
21
21
|
"index.html": "/index.html",
|
|
22
22
|
"main.efe592a7.css.map": "/static/css/main.efe592a7.css.map",
|
|
23
|
-
"main.
|
|
23
|
+
"main.80cba683.js.map": "/static/js/main.80cba683.js.map",
|
|
24
24
|
"332.9e0695b5.chunk.js.map": "/static/js/332.9e0695b5.chunk.js.map",
|
|
25
25
|
"959.cd9d51a2.chunk.js.map": "/static/js/959.cd9d51a2.chunk.js.map",
|
|
26
26
|
"619.70bb2d55.chunk.js.map": "/static/js/619.70bb2d55.chunk.js.map",
|
|
27
27
|
"375.30524f64.chunk.js.map": "/static/js/375.30524f64.chunk.js.map",
|
|
28
|
-
"421.
|
|
28
|
+
"421.ec09e678.chunk.js.map": "/static/js/421.ec09e678.chunk.js.map",
|
|
29
29
|
"323.80d18b4c.chunk.js.map": "/static/js/323.80d18b4c.chunk.js.map",
|
|
30
30
|
"773.ea0e9610.chunk.js.map": "/static/js/773.ea0e9610.chunk.js.map",
|
|
31
31
|
"857.3540b295.chunk.js.map": "/static/js/857.3540b295.chunk.js.map",
|
|
@@ -39,6 +39,6 @@
|
|
|
39
39
|
},
|
|
40
40
|
"entrypoints": [
|
|
41
41
|
"static/css/main.efe592a7.css",
|
|
42
|
-
"static/js/main.
|
|
42
|
+
"static/js/main.80cba683.js"
|
|
43
43
|
]
|
|
44
44
|
}
|
package/website/index.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!doctype html><html lang="en"><head><script src="/preload.js"></script><meta charset="utf-8"/><meta name="description" content="Construct Hub helps developers find open-source construct libraries for use with AWS CDK, CDK8s, CDKTF and other construct-based tools."/><meta name="viewport" content="width=device-width,initial-scale=1"/><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"><link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#ffffff"><title>Construct Hub</title><script defer="defer" src="/static/js/main.
|
|
1
|
+
<!doctype html><html lang="en"><head><script src="/preload.js"></script><meta charset="utf-8"/><meta name="description" content="Construct Hub helps developers find open-source construct libraries for use with AWS CDK, CDK8s, CDKTF and other construct-based tools."/><meta name="viewport" content="width=device-width,initial-scale=1"/><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"><link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#ffffff"><title>Construct Hub</title><script defer="defer" src="/static/js/main.80cba683.js"></script><link href="/static/css/main.efe592a7.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/css/main.efe592a7.css","mappings":"AAAA,KAEE,oBACF,CAEA,UAJE,WAYF,CARA,KAME,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CAGA,gBACE,6DAA8D,CAC9D,yDAA0D,CAE1D,0DAA2D,CAE3D,+DAAgE,CAChE,iEAAkE,CAClE,gEAAiE,CACjE,kDAAmD,CAEnD,yDAA0D,CAC1D,gEAAiE,CAEjE,+DAAgE,CAChE,mEACF","sources":["index.css"],"sourcesContent":["html {\n height: 100%;\n overflow: hidden auto;\n}\n\nbody {\n height: 100%;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\",\n \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\",\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, \"Courier New\",\n monospace;\n}\n\n/* Dark-theme color resets */\n.chakra-ui-dark {\n --chakra-colors-bgPrimary: var(--chakra-colors-blackAlpha-900);\n --chakra-colors-bgSecondary: var(--chakra-colors-gray-900);\n\n --chakra-colors-hoverPrimary: var(--chakra-colors-gray-800);\n\n --chakra-colors-textPrimary: var(--chakra-colors-whiteAlpha-800);\n --chakra-colors-textSecondary: var(--chakra-colors-whiteAlpha-900);\n --chakra-colors-textTertiary: var(--chakra-colors-whiteAlpha-700);\n --chakra-colors-link: var(--chakra-colors-blue-300);\n\n --chakra-colors-borderColor: var(--chakra-colors-gray-600);\n --chakra-borders-base: 1px solid var(--chakra-colors-borderColor);\n\n --chakra-colors-shadowColor: var(--chakra-colors-blackAlpha-900);\n --chakra-shadows-base: 0px 4px 15px var(--chakra-colors-shadowColor);\n}\n"],"names":[],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/css/main.efe592a7.css","mappings":"AAAA,KAEE,oBACF,CAEA,UAJE,WAYF,CARA,KAME,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CAGA,gBACE,6DAA8D,CAC9D,yDAA0D,CAE1D,0DAA2D,CAE3D,+DAAgE,CAChE,iEAAkE,CAClE,gEAAiE,CACjE,kDAAmD,CAEnD,yDAA0D,CAC1D,gEAAiE,CAEjE,+DAAgE,CAChE,mEACF","sources":["index.css"],"sourcesContent":["html {\n height: 100%;\n overflow: hidden auto;\n}\n\nbody {\n height: 100%;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\",\n \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\",\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, \"Courier New\",\n monospace;\n}\n\n/* Dark-theme color resets */\n.chakra-ui-dark {\n --chakra-colors-bgPrimary: var(--chakra-colors-blackAlpha-900);\n --chakra-colors-bgSecondary: var(--chakra-colors-gray-900);\n\n --chakra-colors-hoverPrimary: var(--chakra-colors-gray-800);\n\n --chakra-colors-textPrimary: var(--chakra-colors-whiteAlpha-800);\n --chakra-colors-textSecondary: var(--chakra-colors-whiteAlpha-900);\n --chakra-colors-textTertiary: var(--chakra-colors-whiteAlpha-700);\n --chakra-colors-link: var(--chakra-colors-blue-300);\n\n --chakra-colors-borderColor: var(--chakra-colors-gray-600);\n --chakra-borders-base: 1px solid var(--chakra-colors-borderColor);\n\n --chakra-colors-shadowColor: var(--chakra-colors-blackAlpha-900);\n --chakra-shadows-base: 0px 4px 15px var(--chakra-colors-shadowColor);\n}\n"],"names":[],"ignoreList":[],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/323.80d18b4c.chunk.js","mappings":"6NAOA,MAMaA,EAA4BA,KACvC,MAAMC,GAAUC,EAAAA,EAAAA,KAEhB,GAAID,EAAQE,YAAcF,EAAQG,KAChC,OACEC,EAAAA,EAAAA,KAACC,EAAAA,GAAM,CAACC,KAAK,QAAOC,UAClBH,EAAAA,EAAAA,KAACI,EAAAA,EAAO,CAACC,KAAK,SAKpB,MAAMC,EAjBcV,KACpB,MAAMW,EAAWX,EAAQW,SAEzB,OAAOA,EADKC,KAAKC,MAAMD,KAAKE,SAAWH,EAASI,UAepCC,CAAahB,EAAQG,MAC3Bc,GAAMC,EAAAA,EAAAA,IAAe,CACzBC,KAAMT,EAAIS,KACVC,QAASV,EAAIU,UAGf,OAAOhB,EAAAA,EAAAA,KAACiB,EAAAA,GAAQ,CAACC,GAAIL,I","sources":["views/Random/Random.tsx"],"sourcesContent":["import { Center, Spinner } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { Redirect } from \"react-router-dom\";\nimport type { CatalogPackage, Packages } from \"../../api/package/packages\";\nimport { useCatalog } from \"../../hooks/useCatalog\";\nimport { getPackagePath } from \"../../util/url\";\n\nconst getRandomPkg = (catalog: Packages): CatalogPackage => {\n const packages = catalog.packages;\n const idx = Math.floor(Math.random() * packages.length);\n return packages[idx];\n};\n\nexport const Random: FunctionComponent = () => {\n const catalog = useCatalog();\n\n if (catalog.isLoading || !catalog.data) {\n return (\n <Center minH=\"16rem\">\n <Spinner size=\"xl\" />\n </Center>\n );\n }\n\n const pkg = getRandomPkg(catalog.data);\n const url = getPackagePath({\n name: pkg.name,\n version: pkg.version,\n });\n\n return <Redirect to={url} />;\n};\n"],"names":["Random","catalog","useCatalog","isLoading","data","_jsx","Center","minH","children","Spinner","size","pkg","packages","Math","floor","random","length","getRandomPkg","url","getPackagePath","name","version","Redirect","to"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/323.80d18b4c.chunk.js","mappings":"6NAOA,MAMaA,EAA4BA,KACvC,MAAMC,GAAUC,EAAAA,EAAAA,KAEhB,GAAID,EAAQE,YAAcF,EAAQG,KAChC,OACEC,EAAAA,EAAAA,KAACC,EAAAA,GAAM,CAACC,KAAK,QAAOC,UAClBH,EAAAA,EAAAA,KAACI,EAAAA,EAAO,CAACC,KAAK,SAKpB,MAAMC,EAjBcV,KACpB,MAAMW,EAAWX,EAAQW,SAEzB,OAAOA,EADKC,KAAKC,MAAMD,KAAKE,SAAWH,EAASI,UAepCC,CAAahB,EAAQG,MAC3Bc,GAAMC,EAAAA,EAAAA,IAAe,CACzBC,KAAMT,EAAIS,KACVC,QAASV,EAAIU,UAGf,OAAOhB,EAAAA,EAAAA,KAACiB,EAAAA,GAAQ,CAACC,GAAIL,I","sources":["views/Random/Random.tsx"],"sourcesContent":["import { Center, Spinner } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { Redirect } from \"react-router-dom\";\nimport type { CatalogPackage, Packages } from \"../../api/package/packages\";\nimport { useCatalog } from \"../../hooks/useCatalog\";\nimport { getPackagePath } from \"../../util/url\";\n\nconst getRandomPkg = (catalog: Packages): CatalogPackage => {\n const packages = catalog.packages;\n const idx = Math.floor(Math.random() * packages.length);\n return packages[idx];\n};\n\nexport const Random: FunctionComponent = () => {\n const catalog = useCatalog();\n\n if (catalog.isLoading || !catalog.data) {\n return (\n <Center minH=\"16rem\">\n <Spinner size=\"xl\" />\n </Center>\n );\n }\n\n const pkg = getRandomPkg(catalog.data);\n const url = getPackagePath({\n name: pkg.name,\n version: pkg.version,\n });\n\n return <Redirect to={url} />;\n};\n"],"names":["Random","catalog","useCatalog","isLoading","data","_jsx","Center","minH","children","Spinner","size","pkg","packages","Math","floor","random","length","getRandomPkg","url","getPackagePath","name","version","Redirect","to"],"ignoreList":[],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/332.9e0695b5.chunk.js","mappings":"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","sources":["views/Contribute/Contribute.tsx","hooks/useConfigValue/useConfigValue.ts","constants/pageInfo.ts","components/Page/Page.tsx","components/FAQ/FAQ.tsx","components/FAQ/FAQHeading.tsx","components/FAQ/FAQItem.tsx","components/FAQ/FAQLink.tsx","components/FAQ/FAQSection.tsx","components/FAQ/FAQSections.tsx"],"sourcesContent":["import {\n Accordion,\n OrderedList,\n ListItem,\n Text,\n UnorderedList,\n} from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { FAQ, FAQHeading, FAQItem, FAQLink } from \"../../components/FAQ\";\nimport { Page } from \"../../components/Page\";\nimport { CONSTRUCT_HUB_REPO_URL } from \"../../constants/links\";\n\nexport const Contribute: FunctionComponent = () => (\n <Page\n meta={{\n description: \"Learn about contributing to Construct Hub.\",\n title: \"Contribute\",\n }}\n pageName=\"contribute\"\n >\n <FAQ>\n <FAQHeading>Contributing to Construct Hub</FAQHeading>\n\n <Accordion allowMultiple allowToggle defaultIndex={[0]}>\n <FAQItem question=\"How can I add my construct to Construct Hub?\">\n <Text>\n Constructs intended for Construct Hub must be published to the{\" \"}\n <FAQLink href=\"https://www.npmjs.com/\">npm Registry</FAQLink> under\n Apache, BSD, EPL, MPL-2.0, ISC and CDDL or MIT open source licenses\n and annotated with a keyword recognized by Construct Hub (awscdk,\n cdk8s, or cdktf).\n </Text>\n\n <Text>\n Additionally, since one of the main goals of Construct Hub is to\n enable an ecosystem of constructs that can be consumed by all CDK\n languages, your library <strong>must</strong> be compiled with{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/\">JSII</FAQLink>, a\n TypeScript-based tool for building multi-language libraries.\n Construct Hub leverages the type information produced by the JSII\n compiler to render a rich multi-language API reference for each\n construct.\n </Text>\n\n <Text>\n Construct Hub continuously monitors the npm Registry. Packages that\n meet the above requirements appear in Construct Hub in about 30\n minutes. If your package does not appear in Construct Hub, but meets\n these requirements, please file an issue against our{\" \"}\n <FAQLink href={`${CONSTRUCT_HUB_REPO_URL}/issues/new`}>\n GitHub repository.\n </FAQLink>\n </Text>\n\n <Text>\n The community has provided some great resources about publishing\n construct libraries that meet Construct Hub requirements. For\n example, see{\" \"}\n <FAQLink href=\"https://dev.to/aws-builders/a-beginner-s-guide-to-create-aws-cdk-construct-library-with-projen-5eh4\">\n “A Beginner's Guide to Create AWS CDK ConstructLibrary with{\" \"}\n projen”\n </FAQLink>{\" \"}\n by <FAQLink href=\"https://hayao-k.dev/\">hayao-k</FAQLink>.\n </Text>\n\n <Text>\n If you already have a library written in TypeScript and want to\n migrate it to JSII so it can be included in Construct Hub, see the{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/user-guides/#library-author-guide\">\n JSII library author guide.\n </FAQLink>\n </Text>\n </FAQItem>\n\n <FAQItem question=\"What are the best practices for improving discoverability of a construct library on Construct Hub?\">\n <Text>\n To improve your construct library’s visibility on Construct Hub,\n follow these best practices:\n </Text>\n <OrderedList sx={{ li: { mt: 4 } }}>\n <ListItem>\n <strong>Helpful description.</strong> Publish your library with a\n description. Libraries without description have lower chances to\n be discovered by users. When you write your library’s description,\n think: Why would someone use it? What makes it unique? Make the\n description as accurate and differentiated as possible.\n </ListItem>\n\n <ListItem>\n <strong>Helpful keywords.</strong> Publish your library with\n helpful keywords, ones that can help potential users to find your\n package. Helpful keywords can be technologies that are being used\n by the library, use cases the library is useful for, service names\n that are being used by the library etc. For example: ‘Monitoring’,\n ‘Kubernetes’, ‘Cost Management’, ‘Websites’, ‘AI’, ‘Containers’\n and more.\n </ListItem>\n\n <ListItem>\n <strong>Helpful README.</strong> Review your library’s README\n file. Is it developer-friendly? That is, can developers quickly\n understand the use case you’re trying to solve? Does your README\n make it easy to get started with your library? Does it explain how\n your library is different from other libraries? Is it easy to\n understand at first glance the value developers gain from the\n library? For more information see *“Q: What are the best practices\n for a developer-friendly README file?”.*\n </ListItem>\n\n <ListItem>\n <strong>API documentation.</strong> Document the library classes,\n methods, properties in the library’s code. Construct Hub will\n display this information when it automatically generates the API\n documentation.\n </ListItem>\n\n <ListItem>\n <strong>Maintain your library.</strong> Developers prefer\n libraries that are updated on a regular basis. Our experience\n shows that successful libraries are those where publishers engage\n and collaborate with the user community, respond to issues and\n pull requests, fix bugs, and add capabilities. To gain more\n developers trust, maintain the releases section on your code\n repository and make sure to describe the changes between different\n releases. You may consider to link the libraries you’ve published\n with your code repository.\n </ListItem>\n\n <ListItem>\n <strong>AWS Partner Network (APN) badge.</strong> If you’re an AWS\n partner and you are publishing a library for your offering, please\n reach out to us and we will be happy to add a badge to your\n libraries with your company’s name.\n </ListItem>\n\n <ListItem>\n <strong>\n Enable support for multiple programming languages.\n </strong>{\" \"}\n Make your library usable by a broader set of users and increase\n its value to the ecosystem. Starting with your library written in\n TypeScript, JSII will create packages in the other CDK programming\n languages. Construct Hub will then automatically generate API\n reference and transliterate code samples. All you need to do is to\n follow the instructions under *“Q: How can I add my construct to\n Construct Hub?”.*\n </ListItem>\n </OrderedList>\n </FAQItem>\n\n <FAQItem question=\"What are the best practices for writing a developer-friendly README file?\">\n <Text>\n Developer-friendly READMEs help readers quickly understand your\n library’s relevance to their needs and its unique value in\n comparison to similar libraries on the Construct Hub. Below is a\n suggestion for a README file structure:\n </Text>\n\n <UnorderedList sx={{ li: { mt: 4 } }}>\n <ListItem>\n <strong>State and maturity of the library.</strong> Start your\n READMEs with helpful badges like{\" \"}\n <FAQLink href=\"https://www.npmjs.com/package/cdk-codepipeline-badge-notification\">\n CDK pipelines badges\n </FAQLink>\n . It will help users see the state of your package.\n </ListItem>\n\n <ListItem>\n <strong>Short description</strong>. What does this library do?\n Which use case does it solve? Which technologies and services does\n it use or support?\n </ListItem>\n\n <ListItem>\n <strong>What is unique about this library?</strong> Help readers\n quickly find the right library for their needs by stating its\n special advantages right up front. How does it compare to other\n libraries addressing the same need or that use the same\n technologies and services? You don’t need an explicit “us vs.\n them” feature checklist; just make sure you communicate your\n library’s unique value.\n </ListItem>\n\n <ListItem>\n <strong>Code samples.</strong> Include as many complete and\n working code samples as you can to help developers quickly\n understand how they can use your library. Some developers start\n reading code samples before anything else. Write your code samples\n in TypeScript, and Construct Hub will transliterate them to the\n other programming languages your library supports. A good practice\n is to include a minimal code sample of how to use your library in\n the first page of your README.\n </ListItem>\n\n <ListItem>\n <strong>Author information.</strong> Share information about you,\n other packages you’ve published, and additional helpful links that\n can improve your credibility with readers.\n </ListItem>\n\n <ListItem>\n <strong>License and support.</strong> Include a “License” and\n “Contributing” sections that invite users to contribute via links\n to your source code repository and issue tracker. (Construct Hub\n provides “License” and “Provide Feedback” in your library’s\n package page, but it’s convenient to have them in the README too.)\n </ListItem>\n\n <ListItem>\n <strong>Diagrams.</strong> Diagrams always help readers quickly\n understand what a library does. Consider adding diagrams for\n libraries that create multiple services that work together.\n </ListItem>\n\n <ListItem>\n <strong>Explanatory videos.</strong> Consider sharing links to\n videos that can help potential customers engage with your library.\n </ListItem>\n\n <ListItem>\n <strong>Absolute links vs. relative.</strong> Use absolute links\n (those that start with http:// or https://) and not relative\n links. Relative links are prone to breaking when the content is\n shared elsewhere.\n </ListItem>\n </UnorderedList>\n </FAQItem>\n\n <FAQItem question=\"Why isn’t my package displayed on Construct Hub?\">\n <Text>\n Construct Hub includes publicly-available constructs that are\n JSII-compatible and that were published to the npm Registry with a\n permissive open-source license and a CDK keyword: aws-cdk, cdk8s, or\n cdktf. If you believe your package qualifies, but it does not appear\n in Construct Hub, please check the following:\n </Text>\n <UnorderedList sx={{ li: { my: 4 } }}>\n <ListItem>\n You are using JSII to compile your project. When you successfully\n build your project with jsii, a <code>.jsii</code> file should get\n created in the root of your project. See the{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/user-guides/#library-author-guide\">\n JSII Library Author Guide\n </FAQLink>{\" \"}\n for more information about setting up JSII.\n </ListItem>\n <ListItem>\n Your packaged library includes the <code>.jsii</code> file. If you\n have a <code>.npmignore</code> file, make sure it does not ignore{\" \"}\n <code>.jsii</code>. (You can add "<code>!.jsii</code>\n " to specify it <em>should</em> be included in the packaged\n library.) If you are using the <code>files</code> field in{\" \"}\n <code>package.json</code>, make sure it includes "\n <code>.jsii</code>" (this list takes precedence over{\" \"}\n <code>.npmignore</code>).\n </ListItem>\n </UnorderedList>\n <Text>\n If your package still does not appear in Construct Hub, please raise\n an issue{\" \"}\n <FAQLink href={`${CONSTRUCT_HUB_REPO_URL}/issues/new`}>\n here\n </FAQLink>\n .\n </Text>\n </FAQItem>\n\n <FAQItem question=\"Can I update my package after it has been displayed?\">\n <Text>\n Yes, you can and should! After you publish a new valid version to\n the public npm Registry, it should appear on Construct Hub in about\n 30 minutes.\n </Text>\n </FAQItem>\n\n <FAQItem question=\"How can I report a bug or contribute code to a construct?\">\n <Text>\n Each package is owned by its publisher, so contributions, such as\n bug reports and pull requests, should be made via the repository\n link provided by the publisher. You may press the ‘Provide feedback’\n link at the package page to open a new issue in at the package’s\n repository.\n </Text>\n </FAQItem>\n\n <FAQItem question=\"How can I participate in link the Construct Hub community?\">\n Construct Hub is itself an open-source construct! Join the{\" \"}\n <FAQLink href=\"https://github.com/cdklabs/construct-hub\">\n Construct Hub GitHub community\n </FAQLink>\n . You are also welcome to join the #construct-hub-dev channel in the{\" \"}\n <FAQLink href=\"https://cdk.dev/\">\n CDK community Slack workspace\n </FAQLink>\n </FAQItem>\n\n <FAQItem question=\"Is there a Slack channel for the CDK community?\">\n <Text>\n Please join the{\" \"}\n <FAQLink href=\"https://cdk.dev/\">CDK Slack channel</FAQLink>. This\n Slack channel is managed by the CDK community, for the CDK\n community.\n </Text>\n </FAQItem>\n </Accordion>\n </FAQ>\n </Page>\n);\n","import type { Config } from \"../../api/config\";\nimport { useConfig } from \"../../contexts/Config\";\n\nexport const useConfigValue = <T extends keyof Config>(key: T) => {\n const { data } = useConfig();\n return (data ?? {})[key];\n};\n","export const pageInfo = {\n contribute: {\n event: {\n name: \"Contribute Load\",\n },\n },\n home: {\n event: {\n name: \"Home Load\",\n },\n },\n faq: {\n event: {\n name: \"Frequently Asked Questions Load\",\n },\n },\n packageProfile: {\n event: {\n name: \"Package Profile Load\",\n },\n },\n search: {\n event: {\n name: \"Search Load\",\n },\n },\n siteTerms: {\n event: {\n name: \"Site Terms Load\",\n },\n },\n notFound: {\n page: {\n pageType: \"errorPage\",\n },\n event: {\n name: \"404 Page Load\",\n },\n },\n} as const;\n","import { FunctionComponent, useEffect } from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { pageInfo } from \"../../constants/pageInfo\";\nimport { usePageView } from \"../../contexts/Analytics\";\nimport { useConfigValue } from \"../../hooks/useConfigValue\";\n\nexport interface PageProps {\n pageName: keyof typeof pageInfo;\n meta: {\n suffix?: boolean;\n title: string;\n description: string;\n };\n}\n\n// Should be the same as the \"real\" CSP, except most things come from HTTP\n// instead of HTTPS (because it is protocol-relative, and the dev site is\n// served over plain HTTP).\nconst csp = [\n \"default-src 'self' 'unsafe-inline' http://*.awsstatic.com;\",\n \"connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"frame-src http://aws.demdex.net http://dpm.demdex.net;\",\n \"img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"object-src 'none';\",\n \"style-src 'self' 'unsafe-inline';\",\n].join(\" \");\n\nexport const Page: FunctionComponent<PageProps> = ({\n children,\n meta,\n pageName,\n}) => {\n const trackPageView = usePageView(pageInfo[pageName]);\n\n useEffect(() => {\n trackPageView();\n }, [trackPageView]);\n\n const feedUrls = useConfigValue(\"feeds\") || [];\n const { suffix = true, title, description } = meta;\n const formattedTitle = suffix ? `${title} - Construct Hub` : title;\n\n return (\n <>\n <Helmet>\n {process.env.NODE_ENV === \"development\" && (\n <meta content={csp} httpEquiv=\"Content-Security-Policy\" />\n )}\n\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <meta charSet=\"utf-8\" />\n {feedUrls.map(({ url, mimeType }) => (\n <link href={url} key={url} rel=\"alternate\" type={mimeType} />\n ))}\n\n <title>{formattedTitle}</title>\n <meta content={formattedTitle} property=\"og:title\" />\n <meta content={formattedTitle} name=\"twitter:title\" />\n <meta content=\"summary\" name=\"twitter:card\" />\n\n <meta content={description} name=\"description\" />\n <meta content={description} property=\"og:description\" />\n <meta content={description} name=\"twitter:description\" />\n </Helmet>\n {children}\n </>\n );\n};\n","import { Box } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQ: FunctionComponent = ({ children }) => (\n <Box bg=\"bgSecondary\" color=\"textPrimary\" h=\"100%\" w=\"100%\">\n {children}\n <Box py={5} width=\"100%\" />\n </Box>\n);\n","import { Box, Heading } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQHeading: FunctionComponent = ({ children }) => (\n <Box bg=\"bgPrimary\" py={20} width=\"100%\">\n <Heading as=\"h1\" color=\"textPrimary\" mx=\"auto\" textAlign=\"center\">\n {children}\n </Heading>\n </Box>\n);\n","import {\n Heading,\n Text,\n AccordionIcon,\n AccordionButton,\n AccordionItem,\n AccordionPanel,\n Box,\n} from \"@chakra-ui/react\";\nimport type { FunctionComponent, ReactChild } from \"react\";\n\nexport interface FAQItemProps {\n question: ReactChild;\n}\n\nexport const FAQItem: FunctionComponent<FAQItemProps> = ({\n question,\n children,\n}) => (\n <AccordionItem>\n <AccordionButton>\n <Box flex=\"1\" py={2} textAlign=\"left\">\n <Heading as=\"h3\" ml={8} size=\"sm\">\n {question}\n </Heading>\n </Box>\n <AccordionIcon />\n </AccordionButton>\n <AccordionPanel px={12} py={4}>\n <Text\n color=\"textPrimary\"\n fontSize=\"md\"\n sx={{ p: { marginTop: \"0\", marginBottom: \"4\" } }}\n >\n {children}\n </Text>\n </AccordionPanel>\n </AccordionItem>\n);\n","import { FunctionComponent } from \"react\";\nimport { ExternalLink } from \"../../components/ExternalLink\";\n\nexport interface FAQLinkProps {\n href: string;\n}\n\nexport const FAQLink: FunctionComponent<FAQLinkProps> = ({\n href,\n children,\n}) => (\n <ExternalLink\n color=\"inherit\"\n hasWarning={false}\n href={href}\n textDecoration=\"underline\"\n >\n {children}\n </ExternalLink>\n);\n","import {\n AccordionIcon,\n AccordionButton,\n AccordionItem,\n AccordionPanel,\n Heading,\n Box,\n Accordion,\n} from \"@chakra-ui/react\";\n\nimport type { FunctionComponent } from \"react\";\n\nexport interface FAQSectionProps {\n heading: string;\n}\n\nexport const FAQSection: FunctionComponent<FAQSectionProps> = ({\n heading,\n children,\n}) => (\n <AccordionItem>\n <AccordionButton>\n <Box flex=\"1\" textAlign=\"left\">\n <Heading as=\"h2\" ml={4} my={4} size=\"lg\">\n {heading}\n </Heading>\n </Box>\n <AccordionIcon />\n </AccordionButton>\n <AccordionPanel p={0}>\n <Accordion allowMultiple w=\"100%\">\n {children}\n </Accordion>\n </AccordionPanel>\n </AccordionItem>\n);\n","import { Accordion, AccordionProps } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQSections: FunctionComponent<AccordionProps> = ({\n children,\n ...accordionProps\n}) => (\n <Accordion allowMultiple {...accordionProps}>\n {children}\n </Accordion>\n);\n"],"names":["Contribute","_jsx","Page","meta","description","title","pageName","children","_jsxs","FAQ","FAQHeading","Accordion","allowMultiple","allowToggle","defaultIndex","FAQItem","question","Text","FAQLink","href","concat","CONSTRUCT_HUB_REPO_URL","OrderedList","sx","li","mt","ListItem","UnorderedList","my","useConfigValue","key","data","useConfig","pageInfo","contribute","event","name","home","faq","packageProfile","search","siteTerms","notFound","page","pageType","join","_ref","trackPageView","usePageView","useEffect","feedUrls","suffix","formattedTitle","_Fragment","Helmet","process","content","charSet","map","_ref2","url","mimeType","rel","type","property","Box","bg","color","h","w","py","width","Heading","as","mx","textAlign","AccordionItem","AccordionButton","flex","ml","size","AccordionIcon","AccordionPanel","px","fontSize","p","marginTop","marginBottom","ExternalLink","hasWarning","textDecoration","FAQSection","heading","FAQSections","accordionProps","_objectWithoutProperties","_excluded","_objectSpread"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/332.9e0695b5.chunk.js","mappings":"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","sources":["views/Contribute/Contribute.tsx","hooks/useConfigValue/useConfigValue.ts","constants/pageInfo.ts","components/Page/Page.tsx","components/FAQ/FAQ.tsx","components/FAQ/FAQHeading.tsx","components/FAQ/FAQItem.tsx","components/FAQ/FAQLink.tsx","components/FAQ/FAQSection.tsx","components/FAQ/FAQSections.tsx"],"sourcesContent":["import {\n Accordion,\n OrderedList,\n ListItem,\n Text,\n UnorderedList,\n} from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { FAQ, FAQHeading, FAQItem, FAQLink } from \"../../components/FAQ\";\nimport { Page } from \"../../components/Page\";\nimport { CONSTRUCT_HUB_REPO_URL } from \"../../constants/links\";\n\nexport const Contribute: FunctionComponent = () => (\n <Page\n meta={{\n description: \"Learn about contributing to Construct Hub.\",\n title: \"Contribute\",\n }}\n pageName=\"contribute\"\n >\n <FAQ>\n <FAQHeading>Contributing to Construct Hub</FAQHeading>\n\n <Accordion allowMultiple allowToggle defaultIndex={[0]}>\n <FAQItem question=\"How can I add my construct to Construct Hub?\">\n <Text>\n Constructs intended for Construct Hub must be published to the{\" \"}\n <FAQLink href=\"https://www.npmjs.com/\">npm Registry</FAQLink> under\n Apache, BSD, EPL, MPL-2.0, ISC and CDDL or MIT open source licenses\n and annotated with a keyword recognized by Construct Hub (awscdk,\n cdk8s, or cdktf).\n </Text>\n\n <Text>\n Additionally, since one of the main goals of Construct Hub is to\n enable an ecosystem of constructs that can be consumed by all CDK\n languages, your library <strong>must</strong> be compiled with{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/\">JSII</FAQLink>, a\n TypeScript-based tool for building multi-language libraries.\n Construct Hub leverages the type information produced by the JSII\n compiler to render a rich multi-language API reference for each\n construct.\n </Text>\n\n <Text>\n Construct Hub continuously monitors the npm Registry. Packages that\n meet the above requirements appear in Construct Hub in about 30\n minutes. If your package does not appear in Construct Hub, but meets\n these requirements, please file an issue against our{\" \"}\n <FAQLink href={`${CONSTRUCT_HUB_REPO_URL}/issues/new`}>\n GitHub repository.\n </FAQLink>\n </Text>\n\n <Text>\n The community has provided some great resources about publishing\n construct libraries that meet Construct Hub requirements. For\n example, see{\" \"}\n <FAQLink href=\"https://dev.to/aws-builders/a-beginner-s-guide-to-create-aws-cdk-construct-library-with-projen-5eh4\">\n “A Beginner's Guide to Create AWS CDK ConstructLibrary with{\" \"}\n projen”\n </FAQLink>{\" \"}\n by <FAQLink href=\"https://hayao-k.dev/\">hayao-k</FAQLink>.\n </Text>\n\n <Text>\n If you already have a library written in TypeScript and want to\n migrate it to JSII so it can be included in Construct Hub, see the{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/user-guides/#library-author-guide\">\n JSII library author guide.\n </FAQLink>\n </Text>\n </FAQItem>\n\n <FAQItem question=\"What are the best practices for improving discoverability of a construct library on Construct Hub?\">\n <Text>\n To improve your construct library’s visibility on Construct Hub,\n follow these best practices:\n </Text>\n <OrderedList sx={{ li: { mt: 4 } }}>\n <ListItem>\n <strong>Helpful description.</strong> Publish your library with a\n description. Libraries without description have lower chances to\n be discovered by users. When you write your library’s description,\n think: Why would someone use it? What makes it unique? Make the\n description as accurate and differentiated as possible.\n </ListItem>\n\n <ListItem>\n <strong>Helpful keywords.</strong> Publish your library with\n helpful keywords, ones that can help potential users to find your\n package. Helpful keywords can be technologies that are being used\n by the library, use cases the library is useful for, service names\n that are being used by the library etc. For example: ‘Monitoring’,\n ‘Kubernetes’, ‘Cost Management’, ‘Websites’, ‘AI’, ‘Containers’\n and more.\n </ListItem>\n\n <ListItem>\n <strong>Helpful README.</strong> Review your library’s README\n file. Is it developer-friendly? That is, can developers quickly\n understand the use case you’re trying to solve? Does your README\n make it easy to get started with your library? Does it explain how\n your library is different from other libraries? Is it easy to\n understand at first glance the value developers gain from the\n library? For more information see *“Q: What are the best practices\n for a developer-friendly README file?”.*\n </ListItem>\n\n <ListItem>\n <strong>API documentation.</strong> Document the library classes,\n methods, properties in the library’s code. Construct Hub will\n display this information when it automatically generates the API\n documentation.\n </ListItem>\n\n <ListItem>\n <strong>Maintain your library.</strong> Developers prefer\n libraries that are updated on a regular basis. Our experience\n shows that successful libraries are those where publishers engage\n and collaborate with the user community, respond to issues and\n pull requests, fix bugs, and add capabilities. To gain more\n developers trust, maintain the releases section on your code\n repository and make sure to describe the changes between different\n releases. You may consider to link the libraries you’ve published\n with your code repository.\n </ListItem>\n\n <ListItem>\n <strong>AWS Partner Network (APN) badge.</strong> If you’re an AWS\n partner and you are publishing a library for your offering, please\n reach out to us and we will be happy to add a badge to your\n libraries with your company’s name.\n </ListItem>\n\n <ListItem>\n <strong>\n Enable support for multiple programming languages.\n </strong>{\" \"}\n Make your library usable by a broader set of users and increase\n its value to the ecosystem. Starting with your library written in\n TypeScript, JSII will create packages in the other CDK programming\n languages. Construct Hub will then automatically generate API\n reference and transliterate code samples. All you need to do is to\n follow the instructions under *“Q: How can I add my construct to\n Construct Hub?”.*\n </ListItem>\n </OrderedList>\n </FAQItem>\n\n <FAQItem question=\"What are the best practices for writing a developer-friendly README file?\">\n <Text>\n Developer-friendly READMEs help readers quickly understand your\n library’s relevance to their needs and its unique value in\n comparison to similar libraries on the Construct Hub. Below is a\n suggestion for a README file structure:\n </Text>\n\n <UnorderedList sx={{ li: { mt: 4 } }}>\n <ListItem>\n <strong>State and maturity of the library.</strong> Start your\n READMEs with helpful badges like{\" \"}\n <FAQLink href=\"https://www.npmjs.com/package/cdk-codepipeline-badge-notification\">\n CDK pipelines badges\n </FAQLink>\n . It will help users see the state of your package.\n </ListItem>\n\n <ListItem>\n <strong>Short description</strong>. What does this library do?\n Which use case does it solve? Which technologies and services does\n it use or support?\n </ListItem>\n\n <ListItem>\n <strong>What is unique about this library?</strong> Help readers\n quickly find the right library for their needs by stating its\n special advantages right up front. How does it compare to other\n libraries addressing the same need or that use the same\n technologies and services? You don’t need an explicit “us vs.\n them” feature checklist; just make sure you communicate your\n library’s unique value.\n </ListItem>\n\n <ListItem>\n <strong>Code samples.</strong> Include as many complete and\n working code samples as you can to help developers quickly\n understand how they can use your library. Some developers start\n reading code samples before anything else. Write your code samples\n in TypeScript, and Construct Hub will transliterate them to the\n other programming languages your library supports. A good practice\n is to include a minimal code sample of how to use your library in\n the first page of your README.\n </ListItem>\n\n <ListItem>\n <strong>Author information.</strong> Share information about you,\n other packages you’ve published, and additional helpful links that\n can improve your credibility with readers.\n </ListItem>\n\n <ListItem>\n <strong>License and support.</strong> Include a “License” and\n “Contributing” sections that invite users to contribute via links\n to your source code repository and issue tracker. (Construct Hub\n provides “License” and “Provide Feedback” in your library’s\n package page, but it’s convenient to have them in the README too.)\n </ListItem>\n\n <ListItem>\n <strong>Diagrams.</strong> Diagrams always help readers quickly\n understand what a library does. Consider adding diagrams for\n libraries that create multiple services that work together.\n </ListItem>\n\n <ListItem>\n <strong>Explanatory videos.</strong> Consider sharing links to\n videos that can help potential customers engage with your library.\n </ListItem>\n\n <ListItem>\n <strong>Absolute links vs. relative.</strong> Use absolute links\n (those that start with http:// or https://) and not relative\n links. Relative links are prone to breaking when the content is\n shared elsewhere.\n </ListItem>\n </UnorderedList>\n </FAQItem>\n\n <FAQItem question=\"Why isn’t my package displayed on Construct Hub?\">\n <Text>\n Construct Hub includes publicly-available constructs that are\n JSII-compatible and that were published to the npm Registry with a\n permissive open-source license and a CDK keyword: aws-cdk, cdk8s, or\n cdktf. If you believe your package qualifies, but it does not appear\n in Construct Hub, please check the following:\n </Text>\n <UnorderedList sx={{ li: { my: 4 } }}>\n <ListItem>\n You are using JSII to compile your project. When you successfully\n build your project with jsii, a <code>.jsii</code> file should get\n created in the root of your project. See the{\" \"}\n <FAQLink href=\"https://aws.github.io/jsii/user-guides/#library-author-guide\">\n JSII Library Author Guide\n </FAQLink>{\" \"}\n for more information about setting up JSII.\n </ListItem>\n <ListItem>\n Your packaged library includes the <code>.jsii</code> file. If you\n have a <code>.npmignore</code> file, make sure it does not ignore{\" \"}\n <code>.jsii</code>. (You can add "<code>!.jsii</code>\n " to specify it <em>should</em> be included in the packaged\n library.) If you are using the <code>files</code> field in{\" \"}\n <code>package.json</code>, make sure it includes "\n <code>.jsii</code>" (this list takes precedence over{\" \"}\n <code>.npmignore</code>).\n </ListItem>\n </UnorderedList>\n <Text>\n If your package still does not appear in Construct Hub, please raise\n an issue{\" \"}\n <FAQLink href={`${CONSTRUCT_HUB_REPO_URL}/issues/new`}>\n here\n </FAQLink>\n .\n </Text>\n </FAQItem>\n\n <FAQItem question=\"Can I update my package after it has been displayed?\">\n <Text>\n Yes, you can and should! After you publish a new valid version to\n the public npm Registry, it should appear on Construct Hub in about\n 30 minutes.\n </Text>\n </FAQItem>\n\n <FAQItem question=\"How can I report a bug or contribute code to a construct?\">\n <Text>\n Each package is owned by its publisher, so contributions, such as\n bug reports and pull requests, should be made via the repository\n link provided by the publisher. You may press the ‘Provide feedback’\n link at the package page to open a new issue in at the package’s\n repository.\n </Text>\n </FAQItem>\n\n <FAQItem question=\"How can I participate in link the Construct Hub community?\">\n Construct Hub is itself an open-source construct! Join the{\" \"}\n <FAQLink href=\"https://github.com/cdklabs/construct-hub\">\n Construct Hub GitHub community\n </FAQLink>\n . You are also welcome to join the #construct-hub-dev channel in the{\" \"}\n <FAQLink href=\"https://cdk.dev/\">\n CDK community Slack workspace\n </FAQLink>\n </FAQItem>\n\n <FAQItem question=\"Is there a Slack channel for the CDK community?\">\n <Text>\n Please join the{\" \"}\n <FAQLink href=\"https://cdk.dev/\">CDK Slack channel</FAQLink>. This\n Slack channel is managed by the CDK community, for the CDK\n community.\n </Text>\n </FAQItem>\n </Accordion>\n </FAQ>\n </Page>\n);\n","import type { Config } from \"../../api/config\";\nimport { useConfig } from \"../../contexts/Config\";\n\nexport const useConfigValue = <T extends keyof Config>(key: T) => {\n const { data } = useConfig();\n return (data ?? {})[key];\n};\n","export const pageInfo = {\n contribute: {\n event: {\n name: \"Contribute Load\",\n },\n },\n home: {\n event: {\n name: \"Home Load\",\n },\n },\n faq: {\n event: {\n name: \"Frequently Asked Questions Load\",\n },\n },\n packageProfile: {\n event: {\n name: \"Package Profile Load\",\n },\n },\n search: {\n event: {\n name: \"Search Load\",\n },\n },\n siteTerms: {\n event: {\n name: \"Site Terms Load\",\n },\n },\n notFound: {\n page: {\n pageType: \"errorPage\",\n },\n event: {\n name: \"404 Page Load\",\n },\n },\n} as const;\n","import { FunctionComponent, useEffect } from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { pageInfo } from \"../../constants/pageInfo\";\nimport { usePageView } from \"../../contexts/Analytics\";\nimport { useConfigValue } from \"../../hooks/useConfigValue\";\n\nexport interface PageProps {\n pageName: keyof typeof pageInfo;\n meta: {\n suffix?: boolean;\n title: string;\n description: string;\n };\n}\n\n// Should be the same as the \"real\" CSP, except most things come from HTTP\n// instead of HTTPS (because it is protocol-relative, and the dev site is\n// served over plain HTTP).\nconst csp = [\n \"default-src 'self' 'unsafe-inline' http://*.awsstatic.com;\",\n \"connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"frame-src http://aws.demdex.net http://dpm.demdex.net;\",\n \"img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"object-src 'none';\",\n \"style-src 'self' 'unsafe-inline';\",\n].join(\" \");\n\nexport const Page: FunctionComponent<PageProps> = ({\n children,\n meta,\n pageName,\n}) => {\n const trackPageView = usePageView(pageInfo[pageName]);\n\n useEffect(() => {\n trackPageView();\n }, [trackPageView]);\n\n const feedUrls = useConfigValue(\"feeds\") || [];\n const { suffix = true, title, description } = meta;\n const formattedTitle = suffix ? `${title} - Construct Hub` : title;\n\n return (\n <>\n <Helmet>\n {process.env.NODE_ENV === \"development\" && (\n <meta content={csp} httpEquiv=\"Content-Security-Policy\" />\n )}\n\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <meta charSet=\"utf-8\" />\n {feedUrls.map(({ url, mimeType }) => (\n <link href={url} key={url} rel=\"alternate\" type={mimeType} />\n ))}\n\n <title>{formattedTitle}</title>\n <meta content={formattedTitle} property=\"og:title\" />\n <meta content={formattedTitle} name=\"twitter:title\" />\n <meta content=\"summary\" name=\"twitter:card\" />\n\n <meta content={description} name=\"description\" />\n <meta content={description} property=\"og:description\" />\n <meta content={description} name=\"twitter:description\" />\n </Helmet>\n {children}\n </>\n );\n};\n","import { Box } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQ: FunctionComponent = ({ children }) => (\n <Box bg=\"bgSecondary\" color=\"textPrimary\" h=\"100%\" w=\"100%\">\n {children}\n <Box py={5} width=\"100%\" />\n </Box>\n);\n","import { Box, Heading } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQHeading: FunctionComponent = ({ children }) => (\n <Box bg=\"bgPrimary\" py={20} width=\"100%\">\n <Heading as=\"h1\" color=\"textPrimary\" mx=\"auto\" textAlign=\"center\">\n {children}\n </Heading>\n </Box>\n);\n","import {\n Heading,\n Text,\n AccordionIcon,\n AccordionButton,\n AccordionItem,\n AccordionPanel,\n Box,\n} from \"@chakra-ui/react\";\nimport type { FunctionComponent, ReactChild } from \"react\";\n\nexport interface FAQItemProps {\n question: ReactChild;\n}\n\nexport const FAQItem: FunctionComponent<FAQItemProps> = ({\n question,\n children,\n}) => (\n <AccordionItem>\n <AccordionButton>\n <Box flex=\"1\" py={2} textAlign=\"left\">\n <Heading as=\"h3\" ml={8} size=\"sm\">\n {question}\n </Heading>\n </Box>\n <AccordionIcon />\n </AccordionButton>\n <AccordionPanel px={12} py={4}>\n <Text\n color=\"textPrimary\"\n fontSize=\"md\"\n sx={{ p: { marginTop: \"0\", marginBottom: \"4\" } }}\n >\n {children}\n </Text>\n </AccordionPanel>\n </AccordionItem>\n);\n","import { FunctionComponent } from \"react\";\nimport { ExternalLink } from \"../../components/ExternalLink\";\n\nexport interface FAQLinkProps {\n href: string;\n}\n\nexport const FAQLink: FunctionComponent<FAQLinkProps> = ({\n href,\n children,\n}) => (\n <ExternalLink\n color=\"inherit\"\n hasWarning={false}\n href={href}\n textDecoration=\"underline\"\n >\n {children}\n </ExternalLink>\n);\n","import {\n AccordionIcon,\n AccordionButton,\n AccordionItem,\n AccordionPanel,\n Heading,\n Box,\n Accordion,\n} from \"@chakra-ui/react\";\n\nimport type { FunctionComponent } from \"react\";\n\nexport interface FAQSectionProps {\n heading: string;\n}\n\nexport const FAQSection: FunctionComponent<FAQSectionProps> = ({\n heading,\n children,\n}) => (\n <AccordionItem>\n <AccordionButton>\n <Box flex=\"1\" textAlign=\"left\">\n <Heading as=\"h2\" ml={4} my={4} size=\"lg\">\n {heading}\n </Heading>\n </Box>\n <AccordionIcon />\n </AccordionButton>\n <AccordionPanel p={0}>\n <Accordion allowMultiple w=\"100%\">\n {children}\n </Accordion>\n </AccordionPanel>\n </AccordionItem>\n);\n","import { Accordion, AccordionProps } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport const FAQSections: FunctionComponent<AccordionProps> = ({\n children,\n ...accordionProps\n}) => (\n <Accordion allowMultiple {...accordionProps}>\n {children}\n </Accordion>\n);\n"],"names":["Contribute","_jsx","Page","meta","description","title","pageName","children","_jsxs","FAQ","FAQHeading","Accordion","allowMultiple","allowToggle","defaultIndex","FAQItem","question","Text","FAQLink","href","concat","CONSTRUCT_HUB_REPO_URL","OrderedList","sx","li","mt","ListItem","UnorderedList","my","useConfigValue","key","data","useConfig","pageInfo","contribute","event","name","home","faq","packageProfile","search","siteTerms","notFound","page","pageType","join","_ref","trackPageView","usePageView","useEffect","feedUrls","suffix","formattedTitle","_Fragment","Helmet","process","content","charSet","map","_ref2","url","mimeType","rel","type","property","Box","bg","color","h","w","py","width","Heading","as","mx","textAlign","AccordionItem","AccordionButton","flex","ml","size","AccordionIcon","AccordionPanel","px","fontSize","p","marginTop","marginBottom","ExternalLink","hasWarning","textDecoration","FAQSection","heading","FAQSections","accordionProps","_objectWithoutProperties","_excluded","_objectSpread"],"ignoreList":[],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/375.30524f64.chunk.js","mappings":"8LAMA,SAASA,IAeP,OAdAA,EAAWC,OAAOC,QAAU,SAAUC,GACpC,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIG,EAASF,UAAUD,GAEvB,IAAK,IAAII,KAAOD,EACVN,OAAOQ,UAAUC,eAAeC,KAAKJ,EAAQC,KAC/CL,EAAOK,GAAOD,EAAOC,GAG3B,CAEA,OAAOL,CACT,EAEOH,EAASY,MAAMC,KAAMR,UAC9B,CAEA,SAASS,EAA8BP,EAAQQ,GAC7C,GAAc,MAAVR,EAAgB,MAAO,CAAC,EAC5B,IAEIC,EAAKJ,EAFLD,EAAS,CAAC,EACVa,EAAaf,OAAOgB,KAAKV,GAG7B,IAAKH,EAAI,EAAGA,EAAIY,EAAWV,OAAQF,IACjCI,EAAMQ,EAAWZ,GACbW,EAASG,QAAQV,IAAQ,IAC7BL,EAAOK,GAAOD,EAAOC,IAGvB,OAAOL,CACT,CA4FA,IAAIgB,EAAY,CAAC,YAAa,aAAc,OACxCC,EAAa,CAAC,cAAe,WAAY,MAAO,SAAU,QAAS,MAAO,UAAW,iBAAkB,eACvGC,EAA2BC,EAAAA,WAAiB,SAAUC,EAAOC,GAC/D,IAAIC,EAAYF,EAAME,UAClBC,EAAaH,EAAMG,WACnBC,EAAMJ,EAAMI,IACZC,EAAOd,EAA8BS,EAAOJ,GAEhD,OAAoBG,EAAAA,cAAoB,MAAOtB,EAAS,CACtD6B,MAAOJ,EACPK,OAAQJ,EACRF,IAAKA,EACLG,IAAKA,GACJC,GACL,GAQIG,GAAuBC,EAAAA,EAAAA,IAAW,SAAUT,EAAOC,GACrD,IAAIS,EAAcV,EAAMU,YACpBC,EAAWX,EAAMW,SACjBC,EAAMZ,EAAMY,IACZC,EAASb,EAAMa,OACfC,EAAQd,EAAMc,MACdC,EAAMf,EAAMe,IACZC,EAAUhB,EAAMgB,QAChBC,EAAiBjB,EAAMiB,eACvBC,EAAclB,EAAMkB,YACpBb,EAAOd,EAA8BS,EAAOH,GAO5CsB,EAA0B,MAAXH,GAAmBC,QAAkCG,IAAhBV,QAA0CU,IAAbT,EAEjFU,EAnHN,SAAkBrB,GAChB,IAAIgB,EAAUhB,EAAMgB,QAChBJ,EAAMZ,EAAMY,IACZC,EAASb,EAAMa,OACfS,EAAStB,EAAMsB,OACfC,EAAUvB,EAAMuB,QAChBL,EAAclB,EAAMkB,YACpBM,EAAQxB,EAAMwB,MACdP,EAAiBjB,EAAMiB,eAEvBQ,GAAYC,EAAAA,EAAAA,UAAS,WACrBL,EAASI,EAAU,GACnBE,EAAYF,EAAU,IAE1BG,EAAAA,EAAAA,WAAU,WACRD,EAAUf,EAAM,UAAY,UAC9B,EAAG,CAACA,IACJ,IAAIiB,GAAWC,EAAAA,EAAAA,UACXC,GAAOC,EAAAA,EAAAA,aAAY,WACrB,GAAKpB,EAAL,CACAqB,IACA,IAAIC,EAAM,IAAIC,MACdD,EAAItB,IAAMA,EACNM,IAAagB,EAAIhB,YAAcA,GAC/BL,IAAQqB,EAAIE,OAASvB,GACrBW,IAAOU,EAAIV,MAAQA,GACnBR,IAASkB,EAAIlB,QAAUA,GAE3BkB,EAAIG,OAAS,SAAUC,GACrBL,IACAN,EAAU,UACA,MAAVL,GAA0BA,EAAOgB,EACnC,EAEAJ,EAAIK,QAAU,SAAUC,GACtBP,IACAN,EAAU,UACC,MAAXJ,GAA2BA,EAAQiB,EACrC,EAEAX,EAASY,QAAUP,CArBH,CAsBlB,EAAG,CAACtB,EAAKM,EAAaL,EAAQW,EAAOF,EAAQC,EAASP,IAElDiB,EAAQ,WACNJ,EAASY,UACXZ,EAASY,QAAQJ,OAAS,KAC1BR,EAASY,QAAQF,QAAU,KAC3BV,EAASY,QAAU,KAEvB,EAsBA,OApBAC,EAAAA,EAAAA,GAAoB,WAKlB,IAAIzB,EAMJ,MAJe,YAAXI,GACFU,IAGK,WACLE,GACF,CACF,EAAG,CAACZ,EAAQU,EAAMd,IAMXA,EAAiB,SAAWI,CACrC,CA2CesB,CAASlE,EAAS,CAAC,EAAGuB,EAAO,CACxCiB,eAAgBE,KAGdyB,EAASnE,EAAS,CACpBwB,IAAKA,EACL4C,UAAW9B,EACX+B,eAAgBhC,GACfK,EAAed,GAAO0C,EAAAA,EAAAA,IAAK1C,EAAM,CAAC,UAAW,YAEhD,MAAe,WAAXgB,EAKEV,GACgBZ,EAAAA,cAAoBiD,EAAAA,GAAOd,IAAKzD,EAAS,CAC3DwE,GAAInD,EACJoD,UAAW,4BACXtC,IAAKF,GACJkC,IAGe7C,EAAAA,cAAoBiD,EAAAA,GAAOd,IAAKzD,EAAS,CAC3DwE,GAAInD,EACJc,IAAKA,EACLC,OAAQA,EACRK,YAAaA,EACbF,QAASA,EACTkC,UAAW,gBACVN,GACL,GAcIO,EAAAA,KACF3C,EAAQ4C,YAAc,Q,yLC7MXC,GAAU5C,EAAAA,EAAAA,IACrB,CAAA6C,EAAwBrD,KAAG,IAA1B,QAAEsD,GAAmBD,EAAPtD,GAAKwD,EAAAA,EAAAA,GAAAF,EAAA1D,GAAA,OAClB6D,EAAAA,EAAAA,MAACC,EAAAA,GAAG,CAACT,GAAG,UAASU,SAAA,CACP,OAAPJ,QAAO,IAAPA,OAAO,EAAPA,EAASK,IAAI,CAAC5E,EAAQ6E,KACrBC,EAAAA,EAAAA,KAAA,UAAkBC,MAAO/E,EAAO+E,MAAOlD,OAAQ7B,EAAO6B,QAAzCgD,KAEfC,EAAAA,EAAAA,KAAC3B,EAAAA,IAAK6B,EAAAA,EAAAA,GAAA,CAAC/D,IAAKA,GAASD,SAK3BqD,EAAQD,YAAc,UChBtB,MAAMa,EAAY,CAChBC,QAAS,CACP,CAAEH,MAAO,qBAAsBlD,OAAQ,4BACvC,CAAEkD,MAAO,qBAAsBlD,OAAQ,6BACvC,CAAEkD,MAAO,qBAAsBlD,OAAQ,6BAEzCF,SAAU,2BAGCwD,EAA8BA,KAEvCL,EAAAA,EAAAA,KAACM,EAAAA,EAAI,CACHC,KAAM,CACJC,MAAO,YACPC,YAAa,sDAEfC,SAAS,WAAUb,UAEnBF,EAAAA,EAAAA,MAACgB,EAAAA,GAAM,CAACC,EAAE,OAAOC,SAAS,WAAWC,EAAE,OAAMjB,SAAA,EAC3CG,EAAAA,EAAAA,KAACT,EAAO,CACNjD,IAAI,GACJyE,MAAO,EACPF,SAAS,WACTpB,QAASU,EAAUC,QACnBtD,IAAKqD,EAAUtD,SACfmE,OAAO,UAETrB,EAAAA,EAAAA,MAACsB,EAAAA,GAAI,CAACjE,MAAM,SAASkE,UAAU,SAASC,QAAQ,SAAQtB,SAAA,EACtDG,EAAAA,EAAAA,KAACT,EAAO,CACNjD,IAAI,YACJmD,QAAS,CAAC,CAAE1C,OAAQ,uBACpBD,IAAI,uBAENkD,EAAAA,EAAAA,KAACoB,EAAAA,GAAM,CAACjC,GAAIkC,EAAAA,GAAMC,YAAY,QAAQC,GAAG,IAAG1B,SAAC,wB,kDCpChD,MAAM2B,EAA0CrG,IACrD,MAAM,KAAEsG,IAASC,EAAAA,EAAAA,KACjB,OAAY,OAAJD,QAAI,IAAJA,EAAAA,EAAQ,CAAC,GAAGtG,G,6DCLf,MAAMwG,EAAW,CACtBC,WAAY,CACVpD,MAAO,CACLqD,KAAM,oBAGVC,KAAM,CACJtD,MAAO,CACLqD,KAAM,cAGVE,IAAK,CACHvD,MAAO,CACLqD,KAAM,oCAGVG,eAAgB,CACdxD,MAAO,CACLqD,KAAM,yBAGVI,OAAQ,CACNzD,MAAO,CACLqD,KAAM,gBAGVK,UAAW,CACT1D,MAAO,CACLqD,KAAM,oBAGVM,SAAU,CACRC,KAAM,CACJC,SAAU,aAEZ7D,MAAO,CACLqD,KAAM,mB,qCClBA,CACV,6DACA,wNACA,yDACA,qKACA,qBACA,qCACAS,KAAK,KAPP,MASahC,EAAqCd,IAI3C,IAJ4C,SACjDK,EAAQ,KACRU,EAAI,SACJG,GACDlB,EACC,MAAM+C,GAAgBC,EAAAA,EAAAA,IAAYb,EAASjB,KAE3C5C,EAAAA,EAAAA,WAAU,KACRyE,KACC,CAACA,IAEJ,MAAME,GAAWjB,EAAAA,EAAAA,GAAe,UAAY,IACtC,OAAEkB,GAAS,EAAI,MAAElC,EAAK,YAAEC,GAAgBF,EACxCoC,EAAiBD,EAAM,GAAAE,OAAMpC,EAAK,oBAAqBA,EAE7D,OACEb,EAAAA,EAAAA,MAAAkD,EAAAA,SAAA,CAAAhD,SAAA,EACEF,EAAAA,EAAAA,MAACmD,EAAAA,EAAM,CAAAjD,SAAA,EACJkD,GAID/C,EAAAA,EAAAA,KAAA,QAAMgD,QAAQ,sCAAsCnB,KAAK,cACzD7B,EAAAA,EAAAA,KAAA,QAAMiD,QAAQ,UACbR,EAAS3C,IAAIoD,IAAA,IAAC,IAAEC,EAAG,SAAEC,GAAUF,EAAA,OAC9BlD,EAAAA,EAAAA,KAAA,QAAMqD,KAAMF,EAAeG,IAAI,YAAYC,KAAMH,GAA3BD,MAGxBnD,EAAAA,EAAAA,KAAA,SAAAH,SAAQ8C,KACR3C,EAAAA,EAAAA,KAAA,QAAMgD,QAASL,EAAgBa,SAAS,cACxCxD,EAAAA,EAAAA,KAAA,QAAMgD,QAASL,EAAgBd,KAAK,mBACpC7B,EAAAA,EAAAA,KAAA,QAAMgD,QAAQ,UAAUnB,KAAK,kBAE7B7B,EAAAA,EAAAA,KAAA,QAAMgD,QAASvC,EAAaoB,KAAK,iBACjC7B,EAAAA,EAAAA,KAAA,QAAMgD,QAASvC,EAAa+C,SAAS,oBACrCxD,EAAAA,EAAAA,KAAA,QAAMgD,QAASvC,EAAaoB,KAAK,2BAElChC,K","sources":["../node_modules/@chakra-ui/image/dist/chakra-ui-image.esm.js","components/Picture/Picture.tsx","views/NotFound/NotFound.tsx","hooks/useConfigValue/useConfigValue.ts","constants/pageInfo.ts","components/Page/Page.tsx"],"sourcesContent":["import { forwardRef, chakra } from '@chakra-ui/system';\nimport { omit, __DEV__ } from '@chakra-ui/utils';\nimport * as React from 'react';\nimport { useState, useEffect, useRef, useCallback } from 'react';\nimport { useSafeLayoutEffect } from '@chakra-ui/hooks';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\n/**\n * React hook that loads an image in the browser,\n * and lets us know the `status` so we can show image\n * fallback if it is still `pending`\n *\n * @returns the status of the image loading progress\n *\n * @example\n *\n * ```jsx\n * function App(){\n * const status = useImage({ src: \"image.png\" })\n * return status === \"loaded\" ? <img src=\"image.png\" /> : <Placeholder />\n * }\n * ```\n */\nfunction useImage(props) {\n var loading = props.loading,\n src = props.src,\n srcSet = props.srcSet,\n onLoad = props.onLoad,\n onError = props.onError,\n crossOrigin = props.crossOrigin,\n sizes = props.sizes,\n ignoreFallback = props.ignoreFallback;\n\n var _useState = useState(\"pending\"),\n status = _useState[0],\n setStatus = _useState[1];\n\n useEffect(function () {\n setStatus(src ? \"loading\" : \"pending\");\n }, [src]);\n var imageRef = useRef();\n var load = useCallback(function () {\n if (!src) return;\n flush();\n var img = new Image();\n img.src = src;\n if (crossOrigin) img.crossOrigin = crossOrigin;\n if (srcSet) img.srcset = srcSet;\n if (sizes) img.sizes = sizes;\n if (loading) img.loading = loading;\n\n img.onload = function (event) {\n flush();\n setStatus(\"loaded\");\n onLoad == null ? void 0 : onLoad(event);\n };\n\n img.onerror = function (error) {\n flush();\n setStatus(\"failed\");\n onError == null ? void 0 : onError(error);\n };\n\n imageRef.current = img;\n }, [src, crossOrigin, srcSet, sizes, onLoad, onError, loading]);\n\n var flush = function flush() {\n if (imageRef.current) {\n imageRef.current.onload = null;\n imageRef.current.onerror = null;\n imageRef.current = null;\n }\n };\n\n useSafeLayoutEffect(function () {\n /**\n * If user opts out of the fallback/placeholder\n * logic, let's bail out.\n */\n if (ignoreFallback) return undefined;\n\n if (status === \"loading\") {\n load();\n }\n\n return function () {\n flush();\n };\n }, [status, load, ignoreFallback]);\n /**\n * If user opts out of the fallback/placeholder\n * logic, let's just return 'loaded'\n */\n\n return ignoreFallback ? \"loaded\" : status;\n}\n\nvar _excluded = [\"htmlWidth\", \"htmlHeight\", \"alt\"],\n _excluded2 = [\"fallbackSrc\", \"fallback\", \"src\", \"srcSet\", \"align\", \"fit\", \"loading\", \"ignoreFallback\", \"crossOrigin\"];\nvar NativeImage = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var htmlWidth = props.htmlWidth,\n htmlHeight = props.htmlHeight,\n alt = props.alt,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n return /*#__PURE__*/React.createElement(\"img\", _extends({\n width: htmlWidth,\n height: htmlHeight,\n ref: ref,\n alt: alt\n }, rest));\n});\n\n/**\n * React component that renders an image with support\n * for fallbacks\n *\n * @see Docs https://chakra-ui.com/image\n */\nvar Image$1 = /*#__PURE__*/forwardRef(function (props, ref) {\n var fallbackSrc = props.fallbackSrc,\n fallback = props.fallback,\n src = props.src,\n srcSet = props.srcSet,\n align = props.align,\n fit = props.fit,\n loading = props.loading,\n ignoreFallback = props.ignoreFallback,\n crossOrigin = props.crossOrigin,\n rest = _objectWithoutPropertiesLoose(props, _excluded2);\n /**\n * Defer to native `img` tag if `loading` prop is passed\n * @see https://github.com/chakra-ui/chakra-ui/issues/1027\n */\n\n\n var shouldIgnore = loading != null || ignoreFallback || fallbackSrc === undefined && fallback === undefined; // if the user doesn't provide any kind of fallback we should ignore it\n\n var status = useImage(_extends({}, props, {\n ignoreFallback: shouldIgnore\n }));\n\n var shared = _extends({\n ref: ref,\n objectFit: fit,\n objectPosition: align\n }, shouldIgnore ? rest : omit(rest, [\"onError\", \"onLoad\"]));\n\n if (status !== \"loaded\") {\n /**\n * If user passed a custom fallback component,\n * let's render it here.\n */\n if (fallback) return fallback;\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n as: NativeImage,\n className: \"chakra-image__placeholder\",\n src: fallbackSrc\n }, shared));\n }\n\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n as: NativeImage,\n src: src,\n srcSet: srcSet,\n crossOrigin: crossOrigin,\n loading: loading,\n className: \"chakra-image\"\n }, shared));\n});\n\n/**\n * Fallback component for most SSR users who want to use the native `img` with\n * support for chakra props\n */\nvar Img = /*#__PURE__*/forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n ref: ref,\n as: NativeImage,\n className: \"chakra-image\"\n }, props));\n});\n\nif (__DEV__) {\n Image$1.displayName = \"Image\";\n}\n\nexport { Image$1 as Image, Img, useImage };\n","import { Box, HTMLChakraProps, forwardRef, Image } from \"@chakra-ui/react\";\n\nexport interface PictureProps extends HTMLChakraProps<\"img\"> {\n alt: string;\n src: string;\n sources?: {\n media?: string;\n srcSet: string;\n }[];\n}\n\nexport const Picture = forwardRef<PictureProps, \"img\">(\n ({ sources, ...props }, ref) => (\n <Box as=\"picture\">\n {sources?.map((source, idx) => (\n <source key={idx} media={source.media} srcSet={source.srcSet} />\n ))}\n <Image ref={ref} {...props} />\n </Box>\n )\n);\n\nPicture.displayName = \"Picture\";\n","import { Button, Center, Flex } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { Page } from \"../../components/Page\";\nimport { Picture } from \"../../components/Picture\";\n\nconst bgSources = {\n optimal: [\n { media: \"(max-width:1024px)\", srcSet: \"/assets/404-hive@50.webp\" },\n { media: \"(min-width:1024px)\", srcSet: \"/assets/404-hive@100.webp\" },\n { media: \"(min-width:1024px)\", srcSet: \"/assets/404-hive@100.png\" },\n ],\n fallback: \"/assets/404-hive@50.png\",\n};\n\nexport const NotFound: FunctionComponent = () => {\n return (\n <Page\n meta={{\n title: \"Not Found\",\n description: \"Oops! The page you were looking for does not exist\",\n }}\n pageName=\"notFound\"\n >\n <Center h=\"100%\" position=\"relative\" w=\"100%\">\n <Picture\n alt=\"\"\n inset={0}\n position=\"absolute\"\n sources={bgSources.optimal}\n src={bgSources.fallback}\n zIndex=\"hide\"\n />\n <Flex align=\"center\" direction=\"column\" justify=\"center\">\n <Picture\n alt=\"404 Image\"\n sources={[{ srcSet: \"/assets/robot.webp\" }]}\n src=\"/assets/robot.png\"\n />\n <Button as={Link} colorScheme=\"brand\" to=\"/\">\n Take Me Home\n </Button>\n </Flex>\n </Center>\n </Page>\n );\n};\n","import type { Config } from \"../../api/config\";\nimport { useConfig } from \"../../contexts/Config\";\n\nexport const useConfigValue = <T extends keyof Config>(key: T) => {\n const { data } = useConfig();\n return (data ?? {})[key];\n};\n","export const pageInfo = {\n contribute: {\n event: {\n name: \"Contribute Load\",\n },\n },\n home: {\n event: {\n name: \"Home Load\",\n },\n },\n faq: {\n event: {\n name: \"Frequently Asked Questions Load\",\n },\n },\n packageProfile: {\n event: {\n name: \"Package Profile Load\",\n },\n },\n search: {\n event: {\n name: \"Search Load\",\n },\n },\n siteTerms: {\n event: {\n name: \"Site Terms Load\",\n },\n },\n notFound: {\n page: {\n pageType: \"errorPage\",\n },\n event: {\n name: \"404 Page Load\",\n },\n },\n} as const;\n","import { FunctionComponent, useEffect } from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { pageInfo } from \"../../constants/pageInfo\";\nimport { usePageView } from \"../../contexts/Analytics\";\nimport { useConfigValue } from \"../../hooks/useConfigValue\";\n\nexport interface PageProps {\n pageName: keyof typeof pageInfo;\n meta: {\n suffix?: boolean;\n title: string;\n description: string;\n };\n}\n\n// Should be the same as the \"real\" CSP, except most things come from HTTP\n// instead of HTTPS (because it is protocol-relative, and the dev site is\n// served over plain HTTP).\nconst csp = [\n \"default-src 'self' 'unsafe-inline' http://*.awsstatic.com;\",\n \"connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"frame-src http://aws.demdex.net http://dpm.demdex.net;\",\n \"img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"object-src 'none';\",\n \"style-src 'self' 'unsafe-inline';\",\n].join(\" \");\n\nexport const Page: FunctionComponent<PageProps> = ({\n children,\n meta,\n pageName,\n}) => {\n const trackPageView = usePageView(pageInfo[pageName]);\n\n useEffect(() => {\n trackPageView();\n }, [trackPageView]);\n\n const feedUrls = useConfigValue(\"feeds\") || [];\n const { suffix = true, title, description } = meta;\n const formattedTitle = suffix ? `${title} - Construct Hub` : title;\n\n return (\n <>\n <Helmet>\n {process.env.NODE_ENV === \"development\" && (\n <meta content={csp} httpEquiv=\"Content-Security-Policy\" />\n )}\n\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <meta charSet=\"utf-8\" />\n {feedUrls.map(({ url, mimeType }) => (\n <link href={url} key={url} rel=\"alternate\" type={mimeType} />\n ))}\n\n <title>{formattedTitle}</title>\n <meta content={formattedTitle} property=\"og:title\" />\n <meta content={formattedTitle} name=\"twitter:title\" />\n <meta content=\"summary\" name=\"twitter:card\" />\n\n <meta content={description} name=\"description\" />\n <meta content={description} property=\"og:description\" />\n <meta content={description} name=\"twitter:description\" />\n </Helmet>\n {children}\n </>\n );\n};\n"],"names":["_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutPropertiesLoose","excluded","sourceKeys","keys","indexOf","_excluded","_excluded2","NativeImage","React","props","ref","htmlWidth","htmlHeight","alt","rest","width","height","Image$1","forwardRef","fallbackSrc","fallback","src","srcSet","align","fit","loading","ignoreFallback","crossOrigin","shouldIgnore","undefined","status","onLoad","onError","sizes","_useState","useState","setStatus","useEffect","imageRef","useRef","load","useCallback","flush","img","Image","srcset","onload","event","onerror","error","current","useSafeLayoutEffect","useImage","shared","objectFit","objectPosition","omit","chakra","as","className","__DEV__","displayName","Picture","_ref","sources","_objectWithoutProperties","_jsxs","Box","children","map","idx","_jsx","media","_objectSpread","bgSources","optimal","NotFound","Page","meta","title","description","pageName","Center","h","position","w","inset","zIndex","Flex","direction","justify","Button","Link","colorScheme","to","useConfigValue","data","useConfig","pageInfo","contribute","name","home","faq","packageProfile","search","siteTerms","notFound","page","pageType","join","trackPageView","usePageView","feedUrls","suffix","formattedTitle","concat","_Fragment","Helmet","process","content","charSet","_ref2","url","mimeType","href","rel","type","property"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/375.30524f64.chunk.js","mappings":"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","sources":["../node_modules/@chakra-ui/image/dist/chakra-ui-image.esm.js","components/Picture/Picture.tsx","views/NotFound/NotFound.tsx","hooks/useConfigValue/useConfigValue.ts","constants/pageInfo.ts","components/Page/Page.tsx"],"sourcesContent":["import { forwardRef, chakra } from '@chakra-ui/system';\nimport { omit, __DEV__ } from '@chakra-ui/utils';\nimport * as React from 'react';\nimport { useState, useEffect, useRef, useCallback } from 'react';\nimport { useSafeLayoutEffect } from '@chakra-ui/hooks';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\n/**\n * React hook that loads an image in the browser,\n * and lets us know the `status` so we can show image\n * fallback if it is still `pending`\n *\n * @returns the status of the image loading progress\n *\n * @example\n *\n * ```jsx\n * function App(){\n * const status = useImage({ src: \"image.png\" })\n * return status === \"loaded\" ? <img src=\"image.png\" /> : <Placeholder />\n * }\n * ```\n */\nfunction useImage(props) {\n var loading = props.loading,\n src = props.src,\n srcSet = props.srcSet,\n onLoad = props.onLoad,\n onError = props.onError,\n crossOrigin = props.crossOrigin,\n sizes = props.sizes,\n ignoreFallback = props.ignoreFallback;\n\n var _useState = useState(\"pending\"),\n status = _useState[0],\n setStatus = _useState[1];\n\n useEffect(function () {\n setStatus(src ? \"loading\" : \"pending\");\n }, [src]);\n var imageRef = useRef();\n var load = useCallback(function () {\n if (!src) return;\n flush();\n var img = new Image();\n img.src = src;\n if (crossOrigin) img.crossOrigin = crossOrigin;\n if (srcSet) img.srcset = srcSet;\n if (sizes) img.sizes = sizes;\n if (loading) img.loading = loading;\n\n img.onload = function (event) {\n flush();\n setStatus(\"loaded\");\n onLoad == null ? void 0 : onLoad(event);\n };\n\n img.onerror = function (error) {\n flush();\n setStatus(\"failed\");\n onError == null ? void 0 : onError(error);\n };\n\n imageRef.current = img;\n }, [src, crossOrigin, srcSet, sizes, onLoad, onError, loading]);\n\n var flush = function flush() {\n if (imageRef.current) {\n imageRef.current.onload = null;\n imageRef.current.onerror = null;\n imageRef.current = null;\n }\n };\n\n useSafeLayoutEffect(function () {\n /**\n * If user opts out of the fallback/placeholder\n * logic, let's bail out.\n */\n if (ignoreFallback) return undefined;\n\n if (status === \"loading\") {\n load();\n }\n\n return function () {\n flush();\n };\n }, [status, load, ignoreFallback]);\n /**\n * If user opts out of the fallback/placeholder\n * logic, let's just return 'loaded'\n */\n\n return ignoreFallback ? \"loaded\" : status;\n}\n\nvar _excluded = [\"htmlWidth\", \"htmlHeight\", \"alt\"],\n _excluded2 = [\"fallbackSrc\", \"fallback\", \"src\", \"srcSet\", \"align\", \"fit\", \"loading\", \"ignoreFallback\", \"crossOrigin\"];\nvar NativeImage = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var htmlWidth = props.htmlWidth,\n htmlHeight = props.htmlHeight,\n alt = props.alt,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n return /*#__PURE__*/React.createElement(\"img\", _extends({\n width: htmlWidth,\n height: htmlHeight,\n ref: ref,\n alt: alt\n }, rest));\n});\n\n/**\n * React component that renders an image with support\n * for fallbacks\n *\n * @see Docs https://chakra-ui.com/image\n */\nvar Image$1 = /*#__PURE__*/forwardRef(function (props, ref) {\n var fallbackSrc = props.fallbackSrc,\n fallback = props.fallback,\n src = props.src,\n srcSet = props.srcSet,\n align = props.align,\n fit = props.fit,\n loading = props.loading,\n ignoreFallback = props.ignoreFallback,\n crossOrigin = props.crossOrigin,\n rest = _objectWithoutPropertiesLoose(props, _excluded2);\n /**\n * Defer to native `img` tag if `loading` prop is passed\n * @see https://github.com/chakra-ui/chakra-ui/issues/1027\n */\n\n\n var shouldIgnore = loading != null || ignoreFallback || fallbackSrc === undefined && fallback === undefined; // if the user doesn't provide any kind of fallback we should ignore it\n\n var status = useImage(_extends({}, props, {\n ignoreFallback: shouldIgnore\n }));\n\n var shared = _extends({\n ref: ref,\n objectFit: fit,\n objectPosition: align\n }, shouldIgnore ? rest : omit(rest, [\"onError\", \"onLoad\"]));\n\n if (status !== \"loaded\") {\n /**\n * If user passed a custom fallback component,\n * let's render it here.\n */\n if (fallback) return fallback;\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n as: NativeImage,\n className: \"chakra-image__placeholder\",\n src: fallbackSrc\n }, shared));\n }\n\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n as: NativeImage,\n src: src,\n srcSet: srcSet,\n crossOrigin: crossOrigin,\n loading: loading,\n className: \"chakra-image\"\n }, shared));\n});\n\n/**\n * Fallback component for most SSR users who want to use the native `img` with\n * support for chakra props\n */\nvar Img = /*#__PURE__*/forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(chakra.img, _extends({\n ref: ref,\n as: NativeImage,\n className: \"chakra-image\"\n }, props));\n});\n\nif (__DEV__) {\n Image$1.displayName = \"Image\";\n}\n\nexport { Image$1 as Image, Img, useImage };\n","import { Box, HTMLChakraProps, forwardRef, Image } from \"@chakra-ui/react\";\n\nexport interface PictureProps extends HTMLChakraProps<\"img\"> {\n alt: string;\n src: string;\n sources?: {\n media?: string;\n srcSet: string;\n }[];\n}\n\nexport const Picture = forwardRef<PictureProps, \"img\">(\n ({ sources, ...props }, ref) => (\n <Box as=\"picture\">\n {sources?.map((source, idx) => (\n <source key={idx} media={source.media} srcSet={source.srcSet} />\n ))}\n <Image ref={ref} {...props} />\n </Box>\n )\n);\n\nPicture.displayName = \"Picture\";\n","import { Button, Center, Flex } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { Page } from \"../../components/Page\";\nimport { Picture } from \"../../components/Picture\";\n\nconst bgSources = {\n optimal: [\n { media: \"(max-width:1024px)\", srcSet: \"/assets/404-hive@50.webp\" },\n { media: \"(min-width:1024px)\", srcSet: \"/assets/404-hive@100.webp\" },\n { media: \"(min-width:1024px)\", srcSet: \"/assets/404-hive@100.png\" },\n ],\n fallback: \"/assets/404-hive@50.png\",\n};\n\nexport const NotFound: FunctionComponent = () => {\n return (\n <Page\n meta={{\n title: \"Not Found\",\n description: \"Oops! The page you were looking for does not exist\",\n }}\n pageName=\"notFound\"\n >\n <Center h=\"100%\" position=\"relative\" w=\"100%\">\n <Picture\n alt=\"\"\n inset={0}\n position=\"absolute\"\n sources={bgSources.optimal}\n src={bgSources.fallback}\n zIndex=\"hide\"\n />\n <Flex align=\"center\" direction=\"column\" justify=\"center\">\n <Picture\n alt=\"404 Image\"\n sources={[{ srcSet: \"/assets/robot.webp\" }]}\n src=\"/assets/robot.png\"\n />\n <Button as={Link} colorScheme=\"brand\" to=\"/\">\n Take Me Home\n </Button>\n </Flex>\n </Center>\n </Page>\n );\n};\n","import type { Config } from \"../../api/config\";\nimport { useConfig } from \"../../contexts/Config\";\n\nexport const useConfigValue = <T extends keyof Config>(key: T) => {\n const { data } = useConfig();\n return (data ?? {})[key];\n};\n","export const pageInfo = {\n contribute: {\n event: {\n name: \"Contribute Load\",\n },\n },\n home: {\n event: {\n name: \"Home Load\",\n },\n },\n faq: {\n event: {\n name: \"Frequently Asked Questions Load\",\n },\n },\n packageProfile: {\n event: {\n name: \"Package Profile Load\",\n },\n },\n search: {\n event: {\n name: \"Search Load\",\n },\n },\n siteTerms: {\n event: {\n name: \"Site Terms Load\",\n },\n },\n notFound: {\n page: {\n pageType: \"errorPage\",\n },\n event: {\n name: \"404 Page Load\",\n },\n },\n} as const;\n","import { FunctionComponent, useEffect } from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { pageInfo } from \"../../constants/pageInfo\";\nimport { usePageView } from \"../../contexts/Analytics\";\nimport { useConfigValue } from \"../../hooks/useConfigValue\";\n\nexport interface PageProps {\n pageName: keyof typeof pageInfo;\n meta: {\n suffix?: boolean;\n title: string;\n description: string;\n };\n}\n\n// Should be the same as the \"real\" CSP, except most things come from HTTP\n// instead of HTTPS (because it is protocol-relative, and the dev site is\n// served over plain HTTP).\nconst csp = [\n \"default-src 'self' 'unsafe-inline' http://*.awsstatic.com;\",\n \"connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"frame-src http://aws.demdex.net http://dpm.demdex.net;\",\n \"img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"object-src 'none';\",\n \"style-src 'self' 'unsafe-inline';\",\n].join(\" \");\n\nexport const Page: FunctionComponent<PageProps> = ({\n children,\n meta,\n pageName,\n}) => {\n const trackPageView = usePageView(pageInfo[pageName]);\n\n useEffect(() => {\n trackPageView();\n }, [trackPageView]);\n\n const feedUrls = useConfigValue(\"feeds\") || [];\n const { suffix = true, title, description } = meta;\n const formattedTitle = suffix ? `${title} - Construct Hub` : title;\n\n return (\n <>\n <Helmet>\n {process.env.NODE_ENV === \"development\" && (\n <meta content={csp} httpEquiv=\"Content-Security-Policy\" />\n )}\n\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <meta charSet=\"utf-8\" />\n {feedUrls.map(({ url, mimeType }) => (\n <link href={url} key={url} rel=\"alternate\" type={mimeType} />\n ))}\n\n <title>{formattedTitle}</title>\n <meta content={formattedTitle} property=\"og:title\" />\n <meta content={formattedTitle} name=\"twitter:title\" />\n <meta content=\"summary\" name=\"twitter:card\" />\n\n <meta content={description} name=\"description\" />\n <meta content={description} property=\"og:description\" />\n <meta content={description} name=\"twitter:description\" />\n </Helmet>\n {children}\n </>\n );\n};\n"],"names":["_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutPropertiesLoose","excluded","sourceKeys","keys","indexOf","_excluded","_excluded2","NativeImage","React","props","ref","htmlWidth","htmlHeight","alt","rest","width","height","Image$1","forwardRef","fallbackSrc","fallback","src","srcSet","align","fit","loading","ignoreFallback","crossOrigin","shouldIgnore","undefined","status","onLoad","onError","sizes","_useState","useState","setStatus","useEffect","imageRef","useRef","load","useCallback","flush","img","Image","srcset","onload","event","onerror","error","current","useSafeLayoutEffect","useImage","shared","objectFit","objectPosition","omit","chakra","as","className","__DEV__","displayName","Picture","_ref","sources","_objectWithoutProperties","_jsxs","Box","children","map","idx","_jsx","media","_objectSpread","bgSources","optimal","NotFound","Page","meta","title","description","pageName","Center","h","position","w","inset","zIndex","Flex","direction","justify","Button","Link","colorScheme","to","useConfigValue","data","useConfig","pageInfo","contribute","name","home","faq","packageProfile","search","siteTerms","notFound","page","pageType","join","trackPageView","usePageView","feedUrls","suffix","formattedTitle","concat","_Fragment","Helmet","process","content","charSet","_ref2","url","mimeType","href","rel","type","property"],"ignoreList":[],"sourceRoot":""}
|