@btc-embedded/cdk-extensions 0.1.1 → 0.3.0
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 +908 -63
- package/API.md +997 -25
- package/CHANGELOG.md +30 -0
- package/lib/extensions/ApiGatewayExtension.d.ts +16 -0
- package/lib/extensions/ApiGatewayExtension.js +9 -2
- package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
- package/lib/extensions/CloudMapExtension.js +1 -1
- package/lib/extensions/DocumentDbAccessExtension.d.ts +5 -2
- package/lib/extensions/DocumentDbAccessExtension.js +9 -3
- package/lib/extensions/DomainEventMessagingExtension.js +1 -1
- package/lib/extensions/ExtraContainerExtension.js +1 -1
- package/lib/extensions/LogExtension.js +1 -1
- package/lib/extensions/TcpKeepAliveExtension.js +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/platform/ApiGateway.d.ts +58 -0
- package/lib/platform/ApiGateway.js +115 -0
- package/lib/platform/ApplicationLoadBalancer.d.ts +16 -0
- package/lib/platform/ApplicationLoadBalancer.js +60 -0
- package/lib/platform/AuthenticationStack.d.ts +19 -0
- package/lib/platform/AuthenticationStack.js +92 -0
- package/lib/platform/CloudMap.d.ts +16 -0
- package/lib/platform/CloudMap.js +48 -0
- package/lib/platform/DefaultUserPoolClients.d.ts +16 -0
- package/lib/platform/DefaultUserPoolClients.js +70 -0
- package/lib/platform/DocumentDB.d.ts +12 -0
- package/lib/platform/DocumentDB.js +47 -0
- package/lib/platform/MessageQueue.d.ts +23 -0
- package/lib/platform/MessageQueue.js +166 -0
- package/lib/platform/index.d.ts +5 -0
- package/lib/platform/index.js +22 -0
- package/lib/utils/ImportValue.d.ts +15 -0
- package/lib/utils/ImportValue.js +27 -1
- package/node_modules/lodash/LICENSE +47 -0
- package/node_modules/lodash/README.md +39 -0
- package/node_modules/lodash/_DataView.js +7 -0
- package/node_modules/lodash/_Hash.js +32 -0
- package/node_modules/lodash/_LazyWrapper.js +28 -0
- package/node_modules/lodash/_ListCache.js +32 -0
- package/node_modules/lodash/_LodashWrapper.js +22 -0
- package/node_modules/lodash/_Map.js +7 -0
- package/node_modules/lodash/_MapCache.js +32 -0
- package/node_modules/lodash/_Promise.js +7 -0
- package/node_modules/lodash/_Set.js +7 -0
- package/node_modules/lodash/_SetCache.js +27 -0
- package/node_modules/lodash/_Stack.js +27 -0
- package/node_modules/lodash/_Symbol.js +6 -0
- package/node_modules/lodash/_Uint8Array.js +6 -0
- package/node_modules/lodash/_WeakMap.js +7 -0
- package/node_modules/lodash/_apply.js +21 -0
- package/node_modules/lodash/_arrayAggregator.js +22 -0
- package/node_modules/lodash/_arrayEach.js +22 -0
- package/node_modules/lodash/_arrayEachRight.js +21 -0
- package/node_modules/lodash/_arrayEvery.js +23 -0
- package/node_modules/lodash/_arrayFilter.js +25 -0
- package/node_modules/lodash/_arrayIncludes.js +17 -0
- package/node_modules/lodash/_arrayIncludesWith.js +22 -0
- package/node_modules/lodash/_arrayLikeKeys.js +49 -0
- package/node_modules/lodash/_arrayMap.js +21 -0
- package/node_modules/lodash/_arrayPush.js +20 -0
- package/node_modules/lodash/_arrayReduce.js +26 -0
- package/node_modules/lodash/_arrayReduceRight.js +24 -0
- package/node_modules/lodash/_arraySample.js +15 -0
- package/node_modules/lodash/_arraySampleSize.js +17 -0
- package/node_modules/lodash/_arrayShuffle.js +15 -0
- package/node_modules/lodash/_arraySome.js +23 -0
- package/node_modules/lodash/_asciiSize.js +12 -0
- package/node_modules/lodash/_asciiToArray.js +12 -0
- package/node_modules/lodash/_asciiWords.js +15 -0
- package/node_modules/lodash/_assignMergeValue.js +20 -0
- package/node_modules/lodash/_assignValue.js +28 -0
- package/node_modules/lodash/_assocIndexOf.js +21 -0
- package/node_modules/lodash/_baseAggregator.js +21 -0
- package/node_modules/lodash/_baseAssign.js +17 -0
- package/node_modules/lodash/_baseAssignIn.js +17 -0
- package/node_modules/lodash/_baseAssignValue.js +25 -0
- package/node_modules/lodash/_baseAt.js +23 -0
- package/node_modules/lodash/_baseClamp.js +22 -0
- package/node_modules/lodash/_baseClone.js +166 -0
- package/node_modules/lodash/_baseConforms.js +18 -0
- package/node_modules/lodash/_baseConformsTo.js +27 -0
- package/node_modules/lodash/_baseCreate.js +30 -0
- package/node_modules/lodash/_baseDelay.js +21 -0
- package/node_modules/lodash/_baseDifference.js +67 -0
- package/node_modules/lodash/_baseEach.js +14 -0
- package/node_modules/lodash/_baseEachRight.js +14 -0
- package/node_modules/lodash/_baseEvery.js +21 -0
- package/node_modules/lodash/_baseExtremum.js +32 -0
- package/node_modules/lodash/_baseFill.js +32 -0
- package/node_modules/lodash/_baseFilter.js +21 -0
- package/node_modules/lodash/_baseFindIndex.js +24 -0
- package/node_modules/lodash/_baseFindKey.js +23 -0
- package/node_modules/lodash/_baseFlatten.js +38 -0
- package/node_modules/lodash/_baseFor.js +16 -0
- package/node_modules/lodash/_baseForOwn.js +16 -0
- package/node_modules/lodash/_baseForOwnRight.js +16 -0
- package/node_modules/lodash/_baseForRight.js +15 -0
- package/node_modules/lodash/_baseFunctions.js +19 -0
- package/node_modules/lodash/_baseGet.js +24 -0
- package/node_modules/lodash/_baseGetAllKeys.js +20 -0
- package/node_modules/lodash/_baseGetTag.js +28 -0
- package/node_modules/lodash/_baseGt.js +14 -0
- package/node_modules/lodash/_baseHas.js +19 -0
- package/node_modules/lodash/_baseHasIn.js +13 -0
- package/node_modules/lodash/_baseInRange.js +18 -0
- package/node_modules/lodash/_baseIndexOf.js +20 -0
- package/node_modules/lodash/_baseIndexOfWith.js +23 -0
- package/node_modules/lodash/_baseIntersection.js +74 -0
- package/node_modules/lodash/_baseInverter.js +21 -0
- package/node_modules/lodash/_baseInvoke.js +24 -0
- package/node_modules/lodash/_baseIsArguments.js +18 -0
- package/node_modules/lodash/_baseIsArrayBuffer.js +17 -0
- package/node_modules/lodash/_baseIsDate.js +18 -0
- package/node_modules/lodash/_baseIsEqual.js +28 -0
- package/node_modules/lodash/_baseIsEqualDeep.js +83 -0
- package/node_modules/lodash/_baseIsMap.js +18 -0
- package/node_modules/lodash/_baseIsMatch.js +62 -0
- package/node_modules/lodash/_baseIsNaN.js +12 -0
- package/node_modules/lodash/_baseIsNative.js +47 -0
- package/node_modules/lodash/_baseIsRegExp.js +18 -0
- package/node_modules/lodash/_baseIsSet.js +18 -0
- package/node_modules/lodash/_baseIsTypedArray.js +60 -0
- package/node_modules/lodash/_baseIteratee.js +31 -0
- package/node_modules/lodash/_baseKeys.js +30 -0
- package/node_modules/lodash/_baseKeysIn.js +33 -0
- package/node_modules/lodash/_baseLodash.js +10 -0
- package/node_modules/lodash/_baseLt.js +14 -0
- package/node_modules/lodash/_baseMap.js +22 -0
- package/node_modules/lodash/_baseMatches.js +22 -0
- package/node_modules/lodash/_baseMatchesProperty.js +33 -0
- package/node_modules/lodash/_baseMean.js +20 -0
- package/node_modules/lodash/_baseMerge.js +42 -0
- package/node_modules/lodash/_baseMergeDeep.js +94 -0
- package/node_modules/lodash/_baseNth.js +20 -0
- package/node_modules/lodash/_baseOrderBy.js +49 -0
- package/node_modules/lodash/_basePick.js +19 -0
- package/node_modules/lodash/_basePickBy.js +30 -0
- package/node_modules/lodash/_baseProperty.js +14 -0
- package/node_modules/lodash/_basePropertyDeep.js +16 -0
- package/node_modules/lodash/_basePropertyOf.js +14 -0
- package/node_modules/lodash/_basePullAll.js +51 -0
- package/node_modules/lodash/_basePullAt.js +37 -0
- package/node_modules/lodash/_baseRandom.js +18 -0
- package/node_modules/lodash/_baseRange.js +28 -0
- package/node_modules/lodash/_baseReduce.js +23 -0
- package/node_modules/lodash/_baseRepeat.js +35 -0
- package/node_modules/lodash/_baseRest.js +17 -0
- package/node_modules/lodash/_baseSample.js +15 -0
- package/node_modules/lodash/_baseSampleSize.js +18 -0
- package/node_modules/lodash/_baseSet.js +51 -0
- package/node_modules/lodash/_baseSetData.js +17 -0
- package/node_modules/lodash/_baseSetToString.js +22 -0
- package/node_modules/lodash/_baseShuffle.js +15 -0
- package/node_modules/lodash/_baseSlice.js +31 -0
- package/node_modules/lodash/_baseSome.js +22 -0
- package/node_modules/lodash/_baseSortBy.js +21 -0
- package/node_modules/lodash/_baseSortedIndex.js +42 -0
- package/node_modules/lodash/_baseSortedIndexBy.js +67 -0
- package/node_modules/lodash/_baseSortedUniq.js +30 -0
- package/node_modules/lodash/_baseSum.js +24 -0
- package/node_modules/lodash/_baseTimes.js +20 -0
- package/node_modules/lodash/_baseToNumber.js +24 -0
- package/node_modules/lodash/_baseToPairs.js +18 -0
- package/node_modules/lodash/_baseToString.js +37 -0
- package/node_modules/lodash/_baseTrim.js +19 -0
- package/node_modules/lodash/_baseUnary.js +14 -0
- package/node_modules/lodash/_baseUniq.js +72 -0
- package/node_modules/lodash/_baseUnset.js +20 -0
- package/node_modules/lodash/_baseUpdate.js +18 -0
- package/node_modules/lodash/_baseValues.js +19 -0
- package/node_modules/lodash/_baseWhile.js +26 -0
- package/node_modules/lodash/_baseWrapperValue.js +25 -0
- package/node_modules/lodash/_baseXor.js +36 -0
- package/node_modules/lodash/_baseZipObject.js +23 -0
- package/node_modules/lodash/_cacheHas.js +13 -0
- package/node_modules/lodash/_castArrayLikeObject.js +14 -0
- package/node_modules/lodash/_castFunction.js +14 -0
- package/node_modules/lodash/_castPath.js +21 -0
- package/node_modules/lodash/_castRest.js +14 -0
- package/node_modules/lodash/_castSlice.js +18 -0
- package/node_modules/lodash/_charsEndIndex.js +19 -0
- package/node_modules/lodash/_charsStartIndex.js +20 -0
- package/node_modules/lodash/_cloneArrayBuffer.js +16 -0
- package/node_modules/lodash/_cloneBuffer.js +35 -0
- package/node_modules/lodash/_cloneDataView.js +16 -0
- package/node_modules/lodash/_cloneRegExp.js +17 -0
- package/node_modules/lodash/_cloneSymbol.js +18 -0
- package/node_modules/lodash/_cloneTypedArray.js +16 -0
- package/node_modules/lodash/_compareAscending.js +41 -0
- package/node_modules/lodash/_compareMultiple.js +44 -0
- package/node_modules/lodash/_composeArgs.js +39 -0
- package/node_modules/lodash/_composeArgsRight.js +41 -0
- package/node_modules/lodash/_copyArray.js +20 -0
- package/node_modules/lodash/_copyObject.js +40 -0
- package/node_modules/lodash/_copySymbols.js +16 -0
- package/node_modules/lodash/_copySymbolsIn.js +16 -0
- package/node_modules/lodash/_coreJsData.js +6 -0
- package/node_modules/lodash/_countHolders.js +21 -0
- package/node_modules/lodash/_createAggregator.js +23 -0
- package/node_modules/lodash/_createAssigner.js +37 -0
- package/node_modules/lodash/_createBaseEach.js +32 -0
- package/node_modules/lodash/_createBaseFor.js +25 -0
- package/node_modules/lodash/_createBind.js +28 -0
- package/node_modules/lodash/_createCaseFirst.js +33 -0
- package/node_modules/lodash/_createCompounder.js +24 -0
- package/node_modules/lodash/_createCtor.js +37 -0
- package/node_modules/lodash/_createCurry.js +46 -0
- package/node_modules/lodash/_createFind.js +25 -0
- package/node_modules/lodash/_createFlow.js +78 -0
- package/node_modules/lodash/_createHybrid.js +92 -0
- package/node_modules/lodash/_createInverter.js +17 -0
- package/node_modules/lodash/_createMathOperation.js +38 -0
- package/node_modules/lodash/_createOver.js +27 -0
- package/node_modules/lodash/_createPadding.js +33 -0
- package/node_modules/lodash/_createPartial.js +43 -0
- package/node_modules/lodash/_createRange.js +30 -0
- package/node_modules/lodash/_createRecurry.js +56 -0
- package/node_modules/lodash/_createRelationalOperation.js +20 -0
- package/node_modules/lodash/_createRound.js +35 -0
- package/node_modules/lodash/_createSet.js +19 -0
- package/node_modules/lodash/_createToPairs.js +30 -0
- package/node_modules/lodash/_createWrap.js +106 -0
- package/node_modules/lodash/_customDefaultsAssignIn.js +29 -0
- package/node_modules/lodash/_customDefaultsMerge.js +28 -0
- package/node_modules/lodash/_customOmitClone.js +16 -0
- package/node_modules/lodash/_deburrLetter.js +71 -0
- package/node_modules/lodash/_defineProperty.js +11 -0
- package/node_modules/lodash/_equalArrays.js +84 -0
- package/node_modules/lodash/_equalByTag.js +112 -0
- package/node_modules/lodash/_equalObjects.js +90 -0
- package/node_modules/lodash/_escapeHtmlChar.js +21 -0
- package/node_modules/lodash/_escapeStringChar.js +22 -0
- package/node_modules/lodash/_flatRest.js +16 -0
- package/node_modules/lodash/_freeGlobal.js +4 -0
- package/node_modules/lodash/_getAllKeys.js +16 -0
- package/node_modules/lodash/_getAllKeysIn.js +17 -0
- package/node_modules/lodash/_getData.js +15 -0
- package/node_modules/lodash/_getFuncName.js +31 -0
- package/node_modules/lodash/_getHolder.js +13 -0
- package/node_modules/lodash/_getMapData.js +18 -0
- package/node_modules/lodash/_getMatchData.js +24 -0
- package/node_modules/lodash/_getNative.js +17 -0
- package/node_modules/lodash/_getPrototype.js +6 -0
- package/node_modules/lodash/_getRawTag.js +46 -0
- package/node_modules/lodash/_getSymbols.js +30 -0
- package/node_modules/lodash/_getSymbolsIn.js +25 -0
- package/node_modules/lodash/_getTag.js +58 -0
- package/node_modules/lodash/_getValue.js +13 -0
- package/node_modules/lodash/_getView.js +33 -0
- package/node_modules/lodash/_getWrapDetails.js +17 -0
- package/node_modules/lodash/_hasPath.js +39 -0
- package/node_modules/lodash/_hasUnicode.js +26 -0
- package/node_modules/lodash/_hasUnicodeWord.js +15 -0
- package/node_modules/lodash/_hashClear.js +15 -0
- package/node_modules/lodash/_hashDelete.js +17 -0
- package/node_modules/lodash/_hashGet.js +30 -0
- package/node_modules/lodash/_hashHas.js +23 -0
- package/node_modules/lodash/_hashSet.js +23 -0
- package/node_modules/lodash/_initCloneArray.js +26 -0
- package/node_modules/lodash/_initCloneByTag.js +77 -0
- package/node_modules/lodash/_initCloneObject.js +18 -0
- package/node_modules/lodash/_insertWrapDetails.js +23 -0
- package/node_modules/lodash/_isFlattenable.js +20 -0
- package/node_modules/lodash/_isIndex.js +25 -0
- package/node_modules/lodash/_isIterateeCall.js +30 -0
- package/node_modules/lodash/_isKey.js +29 -0
- package/node_modules/lodash/_isKeyable.js +15 -0
- package/node_modules/lodash/_isLaziable.js +28 -0
- package/node_modules/lodash/_isMaskable.js +14 -0
- package/node_modules/lodash/_isMasked.js +20 -0
- package/node_modules/lodash/_isPrototype.js +18 -0
- package/node_modules/lodash/_isStrictComparable.js +15 -0
- package/node_modules/lodash/_iteratorToArray.js +18 -0
- package/node_modules/lodash/_lazyClone.js +23 -0
- package/node_modules/lodash/_lazyReverse.js +23 -0
- package/node_modules/lodash/_lazyValue.js +69 -0
- package/node_modules/lodash/_listCacheClear.js +13 -0
- package/node_modules/lodash/_listCacheDelete.js +35 -0
- package/node_modules/lodash/_listCacheGet.js +19 -0
- package/node_modules/lodash/_listCacheHas.js +16 -0
- package/node_modules/lodash/_listCacheSet.js +26 -0
- package/node_modules/lodash/_mapCacheClear.js +21 -0
- package/node_modules/lodash/_mapCacheDelete.js +18 -0
- package/node_modules/lodash/_mapCacheGet.js +16 -0
- package/node_modules/lodash/_mapCacheHas.js +16 -0
- package/node_modules/lodash/_mapCacheSet.js +22 -0
- package/node_modules/lodash/_mapToArray.js +18 -0
- package/node_modules/lodash/_matchesStrictComparable.js +20 -0
- package/node_modules/lodash/_memoizeCapped.js +26 -0
- package/node_modules/lodash/_mergeData.js +90 -0
- package/node_modules/lodash/_metaMap.js +6 -0
- package/node_modules/lodash/_nativeCreate.js +6 -0
- package/node_modules/lodash/_nativeKeys.js +6 -0
- package/node_modules/lodash/_nativeKeysIn.js +20 -0
- package/node_modules/lodash/_nodeUtil.js +30 -0
- package/node_modules/lodash/_objectToString.js +22 -0
- package/node_modules/lodash/_overArg.js +15 -0
- package/node_modules/lodash/_overRest.js +36 -0
- package/node_modules/lodash/_parent.js +16 -0
- package/node_modules/lodash/_reEscape.js +4 -0
- package/node_modules/lodash/_reEvaluate.js +4 -0
- package/node_modules/lodash/_reInterpolate.js +4 -0
- package/node_modules/lodash/_realNames.js +4 -0
- package/node_modules/lodash/_reorder.js +29 -0
- package/node_modules/lodash/_replaceHolders.js +29 -0
- package/node_modules/lodash/_root.js +9 -0
- package/node_modules/lodash/_safeGet.js +21 -0
- package/node_modules/lodash/_setCacheAdd.js +19 -0
- package/node_modules/lodash/_setCacheHas.js +14 -0
- package/node_modules/lodash/_setData.js +20 -0
- package/node_modules/lodash/_setToArray.js +18 -0
- package/node_modules/lodash/_setToPairs.js +18 -0
- package/node_modules/lodash/_setToString.js +14 -0
- package/node_modules/lodash/_setWrapToString.js +21 -0
- package/node_modules/lodash/_shortOut.js +37 -0
- package/node_modules/lodash/_shuffleSelf.js +28 -0
- package/node_modules/lodash/_stackClear.js +15 -0
- package/node_modules/lodash/_stackDelete.js +18 -0
- package/node_modules/lodash/_stackGet.js +14 -0
- package/node_modules/lodash/_stackHas.js +14 -0
- package/node_modules/lodash/_stackSet.js +34 -0
- package/node_modules/lodash/_strictIndexOf.js +23 -0
- package/node_modules/lodash/_strictLastIndexOf.js +21 -0
- package/node_modules/lodash/_stringSize.js +18 -0
- package/node_modules/lodash/_stringToArray.js +18 -0
- package/node_modules/lodash/_stringToPath.js +27 -0
- package/node_modules/lodash/_toKey.js +21 -0
- package/node_modules/lodash/_toSource.js +26 -0
- package/node_modules/lodash/_trimmedEndIndex.js +19 -0
- package/node_modules/lodash/_unescapeHtmlChar.js +21 -0
- package/node_modules/lodash/_unicodeSize.js +44 -0
- package/node_modules/lodash/_unicodeToArray.js +40 -0
- package/node_modules/lodash/_unicodeWords.js +69 -0
- package/node_modules/lodash/_updateWrapDetails.js +46 -0
- package/node_modules/lodash/_wrapperClone.js +23 -0
- package/node_modules/lodash/add.js +22 -0
- package/node_modules/lodash/after.js +42 -0
- package/node_modules/lodash/array.js +67 -0
- package/node_modules/lodash/ary.js +29 -0
- package/node_modules/lodash/assign.js +58 -0
- package/node_modules/lodash/assignIn.js +40 -0
- package/node_modules/lodash/assignInWith.js +38 -0
- package/node_modules/lodash/assignWith.js +37 -0
- package/node_modules/lodash/at.js +23 -0
- package/node_modules/lodash/attempt.js +35 -0
- package/node_modules/lodash/before.js +40 -0
- package/node_modules/lodash/bind.js +57 -0
- package/node_modules/lodash/bindAll.js +41 -0
- package/node_modules/lodash/bindKey.js +68 -0
- package/node_modules/lodash/camelCase.js +29 -0
- package/node_modules/lodash/capitalize.js +23 -0
- package/node_modules/lodash/castArray.js +44 -0
- package/node_modules/lodash/ceil.js +26 -0
- package/node_modules/lodash/chain.js +38 -0
- package/node_modules/lodash/chunk.js +50 -0
- package/node_modules/lodash/clamp.js +39 -0
- package/node_modules/lodash/clone.js +36 -0
- package/node_modules/lodash/cloneDeep.js +29 -0
- package/node_modules/lodash/cloneDeepWith.js +40 -0
- package/node_modules/lodash/cloneWith.js +42 -0
- package/node_modules/lodash/collection.js +30 -0
- package/node_modules/lodash/commit.js +33 -0
- package/node_modules/lodash/compact.js +31 -0
- package/node_modules/lodash/concat.js +43 -0
- package/node_modules/lodash/cond.js +60 -0
- package/node_modules/lodash/conforms.js +35 -0
- package/node_modules/lodash/conformsTo.js +32 -0
- package/node_modules/lodash/constant.js +26 -0
- package/node_modules/lodash/core.js +3877 -0
- package/node_modules/lodash/core.min.js +29 -0
- package/node_modules/lodash/countBy.js +40 -0
- package/node_modules/lodash/create.js +43 -0
- package/node_modules/lodash/curry.js +57 -0
- package/node_modules/lodash/curryRight.js +54 -0
- package/node_modules/lodash/date.js +3 -0
- package/node_modules/lodash/debounce.js +191 -0
- package/node_modules/lodash/deburr.js +45 -0
- package/node_modules/lodash/defaultTo.js +25 -0
- package/node_modules/lodash/defaults.js +64 -0
- package/node_modules/lodash/defaultsDeep.js +30 -0
- package/node_modules/lodash/defer.js +26 -0
- package/node_modules/lodash/delay.js +28 -0
- package/node_modules/lodash/difference.js +33 -0
- package/node_modules/lodash/differenceBy.js +44 -0
- package/node_modules/lodash/differenceWith.js +40 -0
- package/node_modules/lodash/divide.js +22 -0
- package/node_modules/lodash/drop.js +38 -0
- package/node_modules/lodash/dropRight.js +39 -0
- package/node_modules/lodash/dropRightWhile.js +45 -0
- package/node_modules/lodash/dropWhile.js +45 -0
- package/node_modules/lodash/each.js +1 -0
- package/node_modules/lodash/eachRight.js +1 -0
- package/node_modules/lodash/endsWith.js +43 -0
- package/node_modules/lodash/entries.js +1 -0
- package/node_modules/lodash/entriesIn.js +1 -0
- package/node_modules/lodash/eq.js +37 -0
- package/node_modules/lodash/escape.js +43 -0
- package/node_modules/lodash/escapeRegExp.js +32 -0
- package/node_modules/lodash/every.js +56 -0
- package/node_modules/lodash/extend.js +1 -0
- package/node_modules/lodash/extendWith.js +1 -0
- package/node_modules/lodash/fill.js +45 -0
- package/node_modules/lodash/filter.js +52 -0
- package/node_modules/lodash/find.js +42 -0
- package/node_modules/lodash/findIndex.js +55 -0
- package/node_modules/lodash/findKey.js +44 -0
- package/node_modules/lodash/findLast.js +25 -0
- package/node_modules/lodash/findLastIndex.js +59 -0
- package/node_modules/lodash/findLastKey.js +44 -0
- package/node_modules/lodash/first.js +1 -0
- package/node_modules/lodash/flake.lock +40 -0
- package/node_modules/lodash/flake.nix +20 -0
- package/node_modules/lodash/flatMap.js +29 -0
- package/node_modules/lodash/flatMapDeep.js +31 -0
- package/node_modules/lodash/flatMapDepth.js +31 -0
- package/node_modules/lodash/flatten.js +22 -0
- package/node_modules/lodash/flattenDeep.js +25 -0
- package/node_modules/lodash/flattenDepth.js +33 -0
- package/node_modules/lodash/flip.js +28 -0
- package/node_modules/lodash/floor.js +26 -0
- package/node_modules/lodash/flow.js +27 -0
- package/node_modules/lodash/flowRight.js +26 -0
- package/node_modules/lodash/forEach.js +41 -0
- package/node_modules/lodash/forEachRight.js +31 -0
- package/node_modules/lodash/forIn.js +39 -0
- package/node_modules/lodash/forInRight.js +37 -0
- package/node_modules/lodash/forOwn.js +36 -0
- package/node_modules/lodash/forOwnRight.js +34 -0
- package/node_modules/lodash/fp/F.js +1 -0
- package/node_modules/lodash/fp/T.js +1 -0
- package/node_modules/lodash/fp/__.js +1 -0
- package/node_modules/lodash/fp/_baseConvert.js +569 -0
- package/node_modules/lodash/fp/_convertBrowser.js +18 -0
- package/node_modules/lodash/fp/_falseOptions.js +7 -0
- package/node_modules/lodash/fp/_mapping.js +358 -0
- package/node_modules/lodash/fp/_util.js +16 -0
- package/node_modules/lodash/fp/add.js +5 -0
- package/node_modules/lodash/fp/after.js +5 -0
- package/node_modules/lodash/fp/all.js +1 -0
- package/node_modules/lodash/fp/allPass.js +1 -0
- package/node_modules/lodash/fp/always.js +1 -0
- package/node_modules/lodash/fp/any.js +1 -0
- package/node_modules/lodash/fp/anyPass.js +1 -0
- package/node_modules/lodash/fp/apply.js +1 -0
- package/node_modules/lodash/fp/array.js +2 -0
- package/node_modules/lodash/fp/ary.js +5 -0
- package/node_modules/lodash/fp/assign.js +5 -0
- package/node_modules/lodash/fp/assignAll.js +5 -0
- package/node_modules/lodash/fp/assignAllWith.js +5 -0
- package/node_modules/lodash/fp/assignIn.js +5 -0
- package/node_modules/lodash/fp/assignInAll.js +5 -0
- package/node_modules/lodash/fp/assignInAllWith.js +5 -0
- package/node_modules/lodash/fp/assignInWith.js +5 -0
- package/node_modules/lodash/fp/assignWith.js +5 -0
- package/node_modules/lodash/fp/assoc.js +1 -0
- package/node_modules/lodash/fp/assocPath.js +1 -0
- package/node_modules/lodash/fp/at.js +5 -0
- package/node_modules/lodash/fp/attempt.js +5 -0
- package/node_modules/lodash/fp/before.js +5 -0
- package/node_modules/lodash/fp/bind.js +5 -0
- package/node_modules/lodash/fp/bindAll.js +5 -0
- package/node_modules/lodash/fp/bindKey.js +5 -0
- package/node_modules/lodash/fp/camelCase.js +5 -0
- package/node_modules/lodash/fp/capitalize.js +5 -0
- package/node_modules/lodash/fp/castArray.js +5 -0
- package/node_modules/lodash/fp/ceil.js +5 -0
- package/node_modules/lodash/fp/chain.js +5 -0
- package/node_modules/lodash/fp/chunk.js +5 -0
- package/node_modules/lodash/fp/clamp.js +5 -0
- package/node_modules/lodash/fp/clone.js +5 -0
- package/node_modules/lodash/fp/cloneDeep.js +5 -0
- package/node_modules/lodash/fp/cloneDeepWith.js +5 -0
- package/node_modules/lodash/fp/cloneWith.js +5 -0
- package/node_modules/lodash/fp/collection.js +2 -0
- package/node_modules/lodash/fp/commit.js +5 -0
- package/node_modules/lodash/fp/compact.js +5 -0
- package/node_modules/lodash/fp/complement.js +1 -0
- package/node_modules/lodash/fp/compose.js +1 -0
- package/node_modules/lodash/fp/concat.js +5 -0
- package/node_modules/lodash/fp/cond.js +5 -0
- package/node_modules/lodash/fp/conforms.js +1 -0
- package/node_modules/lodash/fp/conformsTo.js +5 -0
- package/node_modules/lodash/fp/constant.js +5 -0
- package/node_modules/lodash/fp/contains.js +1 -0
- package/node_modules/lodash/fp/convert.js +18 -0
- package/node_modules/lodash/fp/countBy.js +5 -0
- package/node_modules/lodash/fp/create.js +5 -0
- package/node_modules/lodash/fp/curry.js +5 -0
- package/node_modules/lodash/fp/curryN.js +5 -0
- package/node_modules/lodash/fp/curryRight.js +5 -0
- package/node_modules/lodash/fp/curryRightN.js +5 -0
- package/node_modules/lodash/fp/date.js +2 -0
- package/node_modules/lodash/fp/debounce.js +5 -0
- package/node_modules/lodash/fp/deburr.js +5 -0
- package/node_modules/lodash/fp/defaultTo.js +5 -0
- package/node_modules/lodash/fp/defaults.js +5 -0
- package/node_modules/lodash/fp/defaultsAll.js +5 -0
- package/node_modules/lodash/fp/defaultsDeep.js +5 -0
- package/node_modules/lodash/fp/defaultsDeepAll.js +5 -0
- package/node_modules/lodash/fp/defer.js +5 -0
- package/node_modules/lodash/fp/delay.js +5 -0
- package/node_modules/lodash/fp/difference.js +5 -0
- package/node_modules/lodash/fp/differenceBy.js +5 -0
- package/node_modules/lodash/fp/differenceWith.js +5 -0
- package/node_modules/lodash/fp/dissoc.js +1 -0
- package/node_modules/lodash/fp/dissocPath.js +1 -0
- package/node_modules/lodash/fp/divide.js +5 -0
- package/node_modules/lodash/fp/drop.js +5 -0
- package/node_modules/lodash/fp/dropLast.js +1 -0
- package/node_modules/lodash/fp/dropLastWhile.js +1 -0
- package/node_modules/lodash/fp/dropRight.js +5 -0
- package/node_modules/lodash/fp/dropRightWhile.js +5 -0
- package/node_modules/lodash/fp/dropWhile.js +5 -0
- package/node_modules/lodash/fp/each.js +1 -0
- package/node_modules/lodash/fp/eachRight.js +1 -0
- package/node_modules/lodash/fp/endsWith.js +5 -0
- package/node_modules/lodash/fp/entries.js +1 -0
- package/node_modules/lodash/fp/entriesIn.js +1 -0
- package/node_modules/lodash/fp/eq.js +5 -0
- package/node_modules/lodash/fp/equals.js +1 -0
- package/node_modules/lodash/fp/escape.js +5 -0
- package/node_modules/lodash/fp/escapeRegExp.js +5 -0
- package/node_modules/lodash/fp/every.js +5 -0
- package/node_modules/lodash/fp/extend.js +1 -0
- package/node_modules/lodash/fp/extendAll.js +1 -0
- package/node_modules/lodash/fp/extendAllWith.js +1 -0
- package/node_modules/lodash/fp/extendWith.js +1 -0
- package/node_modules/lodash/fp/fill.js +5 -0
- package/node_modules/lodash/fp/filter.js +5 -0
- package/node_modules/lodash/fp/find.js +5 -0
- package/node_modules/lodash/fp/findFrom.js +5 -0
- package/node_modules/lodash/fp/findIndex.js +5 -0
- package/node_modules/lodash/fp/findIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findKey.js +5 -0
- package/node_modules/lodash/fp/findLast.js +5 -0
- package/node_modules/lodash/fp/findLastFrom.js +5 -0
- package/node_modules/lodash/fp/findLastIndex.js +5 -0
- package/node_modules/lodash/fp/findLastIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findLastKey.js +5 -0
- package/node_modules/lodash/fp/first.js +1 -0
- package/node_modules/lodash/fp/flatMap.js +5 -0
- package/node_modules/lodash/fp/flatMapDeep.js +5 -0
- package/node_modules/lodash/fp/flatMapDepth.js +5 -0
- package/node_modules/lodash/fp/flatten.js +5 -0
- package/node_modules/lodash/fp/flattenDeep.js +5 -0
- package/node_modules/lodash/fp/flattenDepth.js +5 -0
- package/node_modules/lodash/fp/flip.js +5 -0
- package/node_modules/lodash/fp/floor.js +5 -0
- package/node_modules/lodash/fp/flow.js +5 -0
- package/node_modules/lodash/fp/flowRight.js +5 -0
- package/node_modules/lodash/fp/forEach.js +5 -0
- package/node_modules/lodash/fp/forEachRight.js +5 -0
- package/node_modules/lodash/fp/forIn.js +5 -0
- package/node_modules/lodash/fp/forInRight.js +5 -0
- package/node_modules/lodash/fp/forOwn.js +5 -0
- package/node_modules/lodash/fp/forOwnRight.js +5 -0
- package/node_modules/lodash/fp/fromPairs.js +5 -0
- package/node_modules/lodash/fp/function.js +2 -0
- package/node_modules/lodash/fp/functions.js +5 -0
- package/node_modules/lodash/fp/functionsIn.js +5 -0
- package/node_modules/lodash/fp/get.js +5 -0
- package/node_modules/lodash/fp/getOr.js +5 -0
- package/node_modules/lodash/fp/groupBy.js +5 -0
- package/node_modules/lodash/fp/gt.js +5 -0
- package/node_modules/lodash/fp/gte.js +5 -0
- package/node_modules/lodash/fp/has.js +5 -0
- package/node_modules/lodash/fp/hasIn.js +5 -0
- package/node_modules/lodash/fp/head.js +5 -0
- package/node_modules/lodash/fp/identical.js +1 -0
- package/node_modules/lodash/fp/identity.js +5 -0
- package/node_modules/lodash/fp/inRange.js +5 -0
- package/node_modules/lodash/fp/includes.js +5 -0
- package/node_modules/lodash/fp/includesFrom.js +5 -0
- package/node_modules/lodash/fp/indexBy.js +1 -0
- package/node_modules/lodash/fp/indexOf.js +5 -0
- package/node_modules/lodash/fp/indexOfFrom.js +5 -0
- package/node_modules/lodash/fp/init.js +1 -0
- package/node_modules/lodash/fp/initial.js +5 -0
- package/node_modules/lodash/fp/intersection.js +5 -0
- package/node_modules/lodash/fp/intersectionBy.js +5 -0
- package/node_modules/lodash/fp/intersectionWith.js +5 -0
- package/node_modules/lodash/fp/invert.js +5 -0
- package/node_modules/lodash/fp/invertBy.js +5 -0
- package/node_modules/lodash/fp/invertObj.js +1 -0
- package/node_modules/lodash/fp/invoke.js +5 -0
- package/node_modules/lodash/fp/invokeArgs.js +5 -0
- package/node_modules/lodash/fp/invokeArgsMap.js +5 -0
- package/node_modules/lodash/fp/invokeMap.js +5 -0
- package/node_modules/lodash/fp/isArguments.js +5 -0
- package/node_modules/lodash/fp/isArray.js +5 -0
- package/node_modules/lodash/fp/isArrayBuffer.js +5 -0
- package/node_modules/lodash/fp/isArrayLike.js +5 -0
- package/node_modules/lodash/fp/isArrayLikeObject.js +5 -0
- package/node_modules/lodash/fp/isBoolean.js +5 -0
- package/node_modules/lodash/fp/isBuffer.js +5 -0
- package/node_modules/lodash/fp/isDate.js +5 -0
- package/node_modules/lodash/fp/isElement.js +5 -0
- package/node_modules/lodash/fp/isEmpty.js +5 -0
- package/node_modules/lodash/fp/isEqual.js +5 -0
- package/node_modules/lodash/fp/isEqualWith.js +5 -0
- package/node_modules/lodash/fp/isError.js +5 -0
- package/node_modules/lodash/fp/isFinite.js +5 -0
- package/node_modules/lodash/fp/isFunction.js +5 -0
- package/node_modules/lodash/fp/isInteger.js +5 -0
- package/node_modules/lodash/fp/isLength.js +5 -0
- package/node_modules/lodash/fp/isMap.js +5 -0
- package/node_modules/lodash/fp/isMatch.js +5 -0
- package/node_modules/lodash/fp/isMatchWith.js +5 -0
- package/node_modules/lodash/fp/isNaN.js +5 -0
- package/node_modules/lodash/fp/isNative.js +5 -0
- package/node_modules/lodash/fp/isNil.js +5 -0
- package/node_modules/lodash/fp/isNull.js +5 -0
- package/node_modules/lodash/fp/isNumber.js +5 -0
- package/node_modules/lodash/fp/isObject.js +5 -0
- package/node_modules/lodash/fp/isObjectLike.js +5 -0
- package/node_modules/lodash/fp/isPlainObject.js +5 -0
- package/node_modules/lodash/fp/isRegExp.js +5 -0
- package/node_modules/lodash/fp/isSafeInteger.js +5 -0
- package/node_modules/lodash/fp/isSet.js +5 -0
- package/node_modules/lodash/fp/isString.js +5 -0
- package/node_modules/lodash/fp/isSymbol.js +5 -0
- package/node_modules/lodash/fp/isTypedArray.js +5 -0
- package/node_modules/lodash/fp/isUndefined.js +5 -0
- package/node_modules/lodash/fp/isWeakMap.js +5 -0
- package/node_modules/lodash/fp/isWeakSet.js +5 -0
- package/node_modules/lodash/fp/iteratee.js +5 -0
- package/node_modules/lodash/fp/join.js +5 -0
- package/node_modules/lodash/fp/juxt.js +1 -0
- package/node_modules/lodash/fp/kebabCase.js +5 -0
- package/node_modules/lodash/fp/keyBy.js +5 -0
- package/node_modules/lodash/fp/keys.js +5 -0
- package/node_modules/lodash/fp/keysIn.js +5 -0
- package/node_modules/lodash/fp/lang.js +2 -0
- package/node_modules/lodash/fp/last.js +5 -0
- package/node_modules/lodash/fp/lastIndexOf.js +5 -0
- package/node_modules/lodash/fp/lastIndexOfFrom.js +5 -0
- package/node_modules/lodash/fp/lowerCase.js +5 -0
- package/node_modules/lodash/fp/lowerFirst.js +5 -0
- package/node_modules/lodash/fp/lt.js +5 -0
- package/node_modules/lodash/fp/lte.js +5 -0
- package/node_modules/lodash/fp/map.js +5 -0
- package/node_modules/lodash/fp/mapKeys.js +5 -0
- package/node_modules/lodash/fp/mapValues.js +5 -0
- package/node_modules/lodash/fp/matches.js +1 -0
- package/node_modules/lodash/fp/matchesProperty.js +5 -0
- package/node_modules/lodash/fp/math.js +2 -0
- package/node_modules/lodash/fp/max.js +5 -0
- package/node_modules/lodash/fp/maxBy.js +5 -0
- package/node_modules/lodash/fp/mean.js +5 -0
- package/node_modules/lodash/fp/meanBy.js +5 -0
- package/node_modules/lodash/fp/memoize.js +5 -0
- package/node_modules/lodash/fp/merge.js +5 -0
- package/node_modules/lodash/fp/mergeAll.js +5 -0
- package/node_modules/lodash/fp/mergeAllWith.js +5 -0
- package/node_modules/lodash/fp/mergeWith.js +5 -0
- package/node_modules/lodash/fp/method.js +5 -0
- package/node_modules/lodash/fp/methodOf.js +5 -0
- package/node_modules/lodash/fp/min.js +5 -0
- package/node_modules/lodash/fp/minBy.js +5 -0
- package/node_modules/lodash/fp/mixin.js +5 -0
- package/node_modules/lodash/fp/multiply.js +5 -0
- package/node_modules/lodash/fp/nAry.js +1 -0
- package/node_modules/lodash/fp/negate.js +5 -0
- package/node_modules/lodash/fp/next.js +5 -0
- package/node_modules/lodash/fp/noop.js +5 -0
- package/node_modules/lodash/fp/now.js +5 -0
- package/node_modules/lodash/fp/nth.js +5 -0
- package/node_modules/lodash/fp/nthArg.js +5 -0
- package/node_modules/lodash/fp/number.js +2 -0
- package/node_modules/lodash/fp/object.js +2 -0
- package/node_modules/lodash/fp/omit.js +5 -0
- package/node_modules/lodash/fp/omitAll.js +1 -0
- package/node_modules/lodash/fp/omitBy.js +5 -0
- package/node_modules/lodash/fp/once.js +5 -0
- package/node_modules/lodash/fp/orderBy.js +5 -0
- package/node_modules/lodash/fp/over.js +5 -0
- package/node_modules/lodash/fp/overArgs.js +5 -0
- package/node_modules/lodash/fp/overEvery.js +5 -0
- package/node_modules/lodash/fp/overSome.js +5 -0
- package/node_modules/lodash/fp/pad.js +5 -0
- package/node_modules/lodash/fp/padChars.js +5 -0
- package/node_modules/lodash/fp/padCharsEnd.js +5 -0
- package/node_modules/lodash/fp/padCharsStart.js +5 -0
- package/node_modules/lodash/fp/padEnd.js +5 -0
- package/node_modules/lodash/fp/padStart.js +5 -0
- package/node_modules/lodash/fp/parseInt.js +5 -0
- package/node_modules/lodash/fp/partial.js +5 -0
- package/node_modules/lodash/fp/partialRight.js +5 -0
- package/node_modules/lodash/fp/partition.js +5 -0
- package/node_modules/lodash/fp/path.js +1 -0
- package/node_modules/lodash/fp/pathEq.js +1 -0
- package/node_modules/lodash/fp/pathOr.js +1 -0
- package/node_modules/lodash/fp/paths.js +1 -0
- package/node_modules/lodash/fp/pick.js +5 -0
- package/node_modules/lodash/fp/pickAll.js +1 -0
- package/node_modules/lodash/fp/pickBy.js +5 -0
- package/node_modules/lodash/fp/pipe.js +1 -0
- package/node_modules/lodash/fp/placeholder.js +6 -0
- package/node_modules/lodash/fp/plant.js +5 -0
- package/node_modules/lodash/fp/pluck.js +1 -0
- package/node_modules/lodash/fp/prop.js +1 -0
- package/node_modules/lodash/fp/propEq.js +1 -0
- package/node_modules/lodash/fp/propOr.js +1 -0
- package/node_modules/lodash/fp/property.js +1 -0
- package/node_modules/lodash/fp/propertyOf.js +5 -0
- package/node_modules/lodash/fp/props.js +1 -0
- package/node_modules/lodash/fp/pull.js +5 -0
- package/node_modules/lodash/fp/pullAll.js +5 -0
- package/node_modules/lodash/fp/pullAllBy.js +5 -0
- package/node_modules/lodash/fp/pullAllWith.js +5 -0
- package/node_modules/lodash/fp/pullAt.js +5 -0
- package/node_modules/lodash/fp/random.js +5 -0
- package/node_modules/lodash/fp/range.js +5 -0
- package/node_modules/lodash/fp/rangeRight.js +5 -0
- package/node_modules/lodash/fp/rangeStep.js +5 -0
- package/node_modules/lodash/fp/rangeStepRight.js +5 -0
- package/node_modules/lodash/fp/rearg.js +5 -0
- package/node_modules/lodash/fp/reduce.js +5 -0
- package/node_modules/lodash/fp/reduceRight.js +5 -0
- package/node_modules/lodash/fp/reject.js +5 -0
- package/node_modules/lodash/fp/remove.js +5 -0
- package/node_modules/lodash/fp/repeat.js +5 -0
- package/node_modules/lodash/fp/replace.js +5 -0
- package/node_modules/lodash/fp/rest.js +5 -0
- package/node_modules/lodash/fp/restFrom.js +5 -0
- package/node_modules/lodash/fp/result.js +5 -0
- package/node_modules/lodash/fp/reverse.js +5 -0
- package/node_modules/lodash/fp/round.js +5 -0
- package/node_modules/lodash/fp/sample.js +5 -0
- package/node_modules/lodash/fp/sampleSize.js +5 -0
- package/node_modules/lodash/fp/seq.js +2 -0
- package/node_modules/lodash/fp/set.js +5 -0
- package/node_modules/lodash/fp/setWith.js +5 -0
- package/node_modules/lodash/fp/shuffle.js +5 -0
- package/node_modules/lodash/fp/size.js +5 -0
- package/node_modules/lodash/fp/slice.js +5 -0
- package/node_modules/lodash/fp/snakeCase.js +5 -0
- package/node_modules/lodash/fp/some.js +5 -0
- package/node_modules/lodash/fp/sortBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndex.js +5 -0
- package/node_modules/lodash/fp/sortedIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndex.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedUniq.js +5 -0
- package/node_modules/lodash/fp/sortedUniqBy.js +5 -0
- package/node_modules/lodash/fp/split.js +5 -0
- package/node_modules/lodash/fp/spread.js +5 -0
- package/node_modules/lodash/fp/spreadFrom.js +5 -0
- package/node_modules/lodash/fp/startCase.js +5 -0
- package/node_modules/lodash/fp/startsWith.js +5 -0
- package/node_modules/lodash/fp/string.js +2 -0
- package/node_modules/lodash/fp/stubArray.js +5 -0
- package/node_modules/lodash/fp/stubFalse.js +5 -0
- package/node_modules/lodash/fp/stubObject.js +5 -0
- package/node_modules/lodash/fp/stubString.js +5 -0
- package/node_modules/lodash/fp/stubTrue.js +5 -0
- package/node_modules/lodash/fp/subtract.js +5 -0
- package/node_modules/lodash/fp/sum.js +5 -0
- package/node_modules/lodash/fp/sumBy.js +5 -0
- package/node_modules/lodash/fp/symmetricDifference.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceBy.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceWith.js +1 -0
- package/node_modules/lodash/fp/tail.js +5 -0
- package/node_modules/lodash/fp/take.js +5 -0
- package/node_modules/lodash/fp/takeLast.js +1 -0
- package/node_modules/lodash/fp/takeLastWhile.js +1 -0
- package/node_modules/lodash/fp/takeRight.js +5 -0
- package/node_modules/lodash/fp/takeRightWhile.js +5 -0
- package/node_modules/lodash/fp/takeWhile.js +5 -0
- package/node_modules/lodash/fp/tap.js +5 -0
- package/node_modules/lodash/fp/template.js +5 -0
- package/node_modules/lodash/fp/templateSettings.js +5 -0
- package/node_modules/lodash/fp/throttle.js +5 -0
- package/node_modules/lodash/fp/thru.js +5 -0
- package/node_modules/lodash/fp/times.js +5 -0
- package/node_modules/lodash/fp/toArray.js +5 -0
- package/node_modules/lodash/fp/toFinite.js +5 -0
- package/node_modules/lodash/fp/toInteger.js +5 -0
- package/node_modules/lodash/fp/toIterator.js +5 -0
- package/node_modules/lodash/fp/toJSON.js +5 -0
- package/node_modules/lodash/fp/toLength.js +5 -0
- package/node_modules/lodash/fp/toLower.js +5 -0
- package/node_modules/lodash/fp/toNumber.js +5 -0
- package/node_modules/lodash/fp/toPairs.js +5 -0
- package/node_modules/lodash/fp/toPairsIn.js +5 -0
- package/node_modules/lodash/fp/toPath.js +5 -0
- package/node_modules/lodash/fp/toPlainObject.js +5 -0
- package/node_modules/lodash/fp/toSafeInteger.js +5 -0
- package/node_modules/lodash/fp/toString.js +5 -0
- package/node_modules/lodash/fp/toUpper.js +5 -0
- package/node_modules/lodash/fp/transform.js +5 -0
- package/node_modules/lodash/fp/trim.js +5 -0
- package/node_modules/lodash/fp/trimChars.js +5 -0
- package/node_modules/lodash/fp/trimCharsEnd.js +5 -0
- package/node_modules/lodash/fp/trimCharsStart.js +5 -0
- package/node_modules/lodash/fp/trimEnd.js +5 -0
- package/node_modules/lodash/fp/trimStart.js +5 -0
- package/node_modules/lodash/fp/truncate.js +5 -0
- package/node_modules/lodash/fp/unapply.js +1 -0
- package/node_modules/lodash/fp/unary.js +5 -0
- package/node_modules/lodash/fp/unescape.js +5 -0
- package/node_modules/lodash/fp/union.js +5 -0
- package/node_modules/lodash/fp/unionBy.js +5 -0
- package/node_modules/lodash/fp/unionWith.js +5 -0
- package/node_modules/lodash/fp/uniq.js +5 -0
- package/node_modules/lodash/fp/uniqBy.js +5 -0
- package/node_modules/lodash/fp/uniqWith.js +5 -0
- package/node_modules/lodash/fp/uniqueId.js +5 -0
- package/node_modules/lodash/fp/unnest.js +1 -0
- package/node_modules/lodash/fp/unset.js +5 -0
- package/node_modules/lodash/fp/unzip.js +5 -0
- package/node_modules/lodash/fp/unzipWith.js +5 -0
- package/node_modules/lodash/fp/update.js +5 -0
- package/node_modules/lodash/fp/updateWith.js +5 -0
- package/node_modules/lodash/fp/upperCase.js +5 -0
- package/node_modules/lodash/fp/upperFirst.js +5 -0
- package/node_modules/lodash/fp/useWith.js +1 -0
- package/node_modules/lodash/fp/util.js +2 -0
- package/node_modules/lodash/fp/value.js +5 -0
- package/node_modules/lodash/fp/valueOf.js +5 -0
- package/node_modules/lodash/fp/values.js +5 -0
- package/node_modules/lodash/fp/valuesIn.js +5 -0
- package/node_modules/lodash/fp/where.js +1 -0
- package/node_modules/lodash/fp/whereEq.js +1 -0
- package/node_modules/lodash/fp/without.js +5 -0
- package/node_modules/lodash/fp/words.js +5 -0
- package/node_modules/lodash/fp/wrap.js +5 -0
- package/node_modules/lodash/fp/wrapperAt.js +5 -0
- package/node_modules/lodash/fp/wrapperChain.js +5 -0
- package/node_modules/lodash/fp/wrapperLodash.js +5 -0
- package/node_modules/lodash/fp/wrapperReverse.js +5 -0
- package/node_modules/lodash/fp/wrapperValue.js +5 -0
- package/node_modules/lodash/fp/xor.js +5 -0
- package/node_modules/lodash/fp/xorBy.js +5 -0
- package/node_modules/lodash/fp/xorWith.js +5 -0
- package/node_modules/lodash/fp/zip.js +5 -0
- package/node_modules/lodash/fp/zipAll.js +5 -0
- package/node_modules/lodash/fp/zipObj.js +1 -0
- package/node_modules/lodash/fp/zipObject.js +5 -0
- package/node_modules/lodash/fp/zipObjectDeep.js +5 -0
- package/node_modules/lodash/fp/zipWith.js +5 -0
- package/node_modules/lodash/fp.js +2 -0
- package/node_modules/lodash/fromPairs.js +28 -0
- package/node_modules/lodash/function.js +25 -0
- package/node_modules/lodash/functions.js +31 -0
- package/node_modules/lodash/functionsIn.js +31 -0
- package/node_modules/lodash/get.js +33 -0
- package/node_modules/lodash/groupBy.js +41 -0
- package/node_modules/lodash/gt.js +29 -0
- package/node_modules/lodash/gte.js +30 -0
- package/node_modules/lodash/has.js +35 -0
- package/node_modules/lodash/hasIn.js +34 -0
- package/node_modules/lodash/head.js +23 -0
- package/node_modules/lodash/identity.js +21 -0
- package/node_modules/lodash/inRange.js +55 -0
- package/node_modules/lodash/includes.js +53 -0
- package/node_modules/lodash/index.js +1 -0
- package/node_modules/lodash/indexOf.js +42 -0
- package/node_modules/lodash/initial.js +22 -0
- package/node_modules/lodash/intersection.js +30 -0
- package/node_modules/lodash/intersectionBy.js +45 -0
- package/node_modules/lodash/intersectionWith.js +41 -0
- package/node_modules/lodash/invert.js +42 -0
- package/node_modules/lodash/invertBy.js +56 -0
- package/node_modules/lodash/invoke.js +24 -0
- package/node_modules/lodash/invokeMap.js +41 -0
- package/node_modules/lodash/isArguments.js +36 -0
- package/node_modules/lodash/isArray.js +26 -0
- package/node_modules/lodash/isArrayBuffer.js +27 -0
- package/node_modules/lodash/isArrayLike.js +33 -0
- package/node_modules/lodash/isArrayLikeObject.js +33 -0
- package/node_modules/lodash/isBoolean.js +29 -0
- package/node_modules/lodash/isBuffer.js +38 -0
- package/node_modules/lodash/isDate.js +27 -0
- package/node_modules/lodash/isElement.js +25 -0
- package/node_modules/lodash/isEmpty.js +77 -0
- package/node_modules/lodash/isEqual.js +35 -0
- package/node_modules/lodash/isEqualWith.js +41 -0
- package/node_modules/lodash/isError.js +36 -0
- package/node_modules/lodash/isFinite.js +36 -0
- package/node_modules/lodash/isFunction.js +37 -0
- package/node_modules/lodash/isInteger.js +33 -0
- package/node_modules/lodash/isLength.js +35 -0
- package/node_modules/lodash/isMap.js +27 -0
- package/node_modules/lodash/isMatch.js +36 -0
- package/node_modules/lodash/isMatchWith.js +41 -0
- package/node_modules/lodash/isNaN.js +38 -0
- package/node_modules/lodash/isNative.js +40 -0
- package/node_modules/lodash/isNil.js +25 -0
- package/node_modules/lodash/isNull.js +22 -0
- package/node_modules/lodash/isNumber.js +38 -0
- package/node_modules/lodash/isObject.js +31 -0
- package/node_modules/lodash/isObjectLike.js +29 -0
- package/node_modules/lodash/isPlainObject.js +62 -0
- package/node_modules/lodash/isRegExp.js +27 -0
- package/node_modules/lodash/isSafeInteger.js +37 -0
- package/node_modules/lodash/isSet.js +27 -0
- package/node_modules/lodash/isString.js +30 -0
- package/node_modules/lodash/isSymbol.js +29 -0
- package/node_modules/lodash/isTypedArray.js +27 -0
- package/node_modules/lodash/isUndefined.js +22 -0
- package/node_modules/lodash/isWeakMap.js +28 -0
- package/node_modules/lodash/isWeakSet.js +28 -0
- package/node_modules/lodash/iteratee.js +53 -0
- package/node_modules/lodash/join.js +26 -0
- package/node_modules/lodash/kebabCase.js +28 -0
- package/node_modules/lodash/keyBy.js +36 -0
- package/node_modules/lodash/keys.js +37 -0
- package/node_modules/lodash/keysIn.js +32 -0
- package/node_modules/lodash/lang.js +58 -0
- package/node_modules/lodash/last.js +20 -0
- package/node_modules/lodash/lastIndexOf.js +46 -0
- package/node_modules/lodash/lodash.js +17209 -0
- package/node_modules/lodash/lodash.min.js +140 -0
- package/node_modules/lodash/lowerCase.js +27 -0
- package/node_modules/lodash/lowerFirst.js +22 -0
- package/node_modules/lodash/lt.js +29 -0
- package/node_modules/lodash/lte.js +30 -0
- package/node_modules/lodash/map.js +53 -0
- package/node_modules/lodash/mapKeys.js +36 -0
- package/node_modules/lodash/mapValues.js +43 -0
- package/node_modules/lodash/matches.js +46 -0
- package/node_modules/lodash/matchesProperty.js +44 -0
- package/node_modules/lodash/math.js +17 -0
- package/node_modules/lodash/max.js +29 -0
- package/node_modules/lodash/maxBy.js +34 -0
- package/node_modules/lodash/mean.js +22 -0
- package/node_modules/lodash/meanBy.js +31 -0
- package/node_modules/lodash/memoize.js +73 -0
- package/node_modules/lodash/merge.js +39 -0
- package/node_modules/lodash/mergeWith.js +39 -0
- package/node_modules/lodash/method.js +34 -0
- package/node_modules/lodash/methodOf.js +33 -0
- package/node_modules/lodash/min.js +29 -0
- package/node_modules/lodash/minBy.js +34 -0
- package/node_modules/lodash/mixin.js +74 -0
- package/node_modules/lodash/multiply.js +22 -0
- package/node_modules/lodash/negate.js +40 -0
- package/node_modules/lodash/next.js +35 -0
- package/node_modules/lodash/noop.js +17 -0
- package/node_modules/lodash/now.js +23 -0
- package/node_modules/lodash/nth.js +29 -0
- package/node_modules/lodash/nthArg.js +32 -0
- package/node_modules/lodash/number.js +5 -0
- package/node_modules/lodash/object.js +49 -0
- package/node_modules/lodash/omit.js +57 -0
- package/node_modules/lodash/omitBy.js +29 -0
- package/node_modules/lodash/once.js +25 -0
- package/node_modules/lodash/orderBy.js +47 -0
- package/node_modules/lodash/over.js +24 -0
- package/node_modules/lodash/overArgs.js +61 -0
- package/node_modules/lodash/overEvery.js +34 -0
- package/node_modules/lodash/overSome.js +37 -0
- package/node_modules/lodash/package.json +17 -0
- package/node_modules/lodash/pad.js +49 -0
- package/node_modules/lodash/padEnd.js +39 -0
- package/node_modules/lodash/padStart.js +39 -0
- package/node_modules/lodash/parseInt.js +43 -0
- package/node_modules/lodash/partial.js +50 -0
- package/node_modules/lodash/partialRight.js +49 -0
- package/node_modules/lodash/partition.js +43 -0
- package/node_modules/lodash/pick.js +25 -0
- package/node_modules/lodash/pickBy.js +37 -0
- package/node_modules/lodash/plant.js +48 -0
- package/node_modules/lodash/property.js +32 -0
- package/node_modules/lodash/propertyOf.js +30 -0
- package/node_modules/lodash/pull.js +29 -0
- package/node_modules/lodash/pullAll.js +29 -0
- package/node_modules/lodash/pullAllBy.js +33 -0
- package/node_modules/lodash/pullAllWith.js +32 -0
- package/node_modules/lodash/pullAt.js +43 -0
- package/node_modules/lodash/random.js +82 -0
- package/node_modules/lodash/range.js +46 -0
- package/node_modules/lodash/rangeRight.js +41 -0
- package/node_modules/lodash/rearg.js +33 -0
- package/node_modules/lodash/reduce.js +51 -0
- package/node_modules/lodash/reduceRight.js +36 -0
- package/node_modules/lodash/reject.js +46 -0
- package/node_modules/lodash/release.md +48 -0
- package/node_modules/lodash/remove.js +53 -0
- package/node_modules/lodash/repeat.js +37 -0
- package/node_modules/lodash/replace.js +29 -0
- package/node_modules/lodash/rest.js +40 -0
- package/node_modules/lodash/result.js +56 -0
- package/node_modules/lodash/reverse.js +34 -0
- package/node_modules/lodash/round.js +26 -0
- package/node_modules/lodash/sample.js +24 -0
- package/node_modules/lodash/sampleSize.js +37 -0
- package/node_modules/lodash/seq.js +16 -0
- package/node_modules/lodash/set.js +35 -0
- package/node_modules/lodash/setWith.js +32 -0
- package/node_modules/lodash/shuffle.js +25 -0
- package/node_modules/lodash/size.js +46 -0
- package/node_modules/lodash/slice.js +37 -0
- package/node_modules/lodash/snakeCase.js +28 -0
- package/node_modules/lodash/some.js +51 -0
- package/node_modules/lodash/sortBy.js +48 -0
- package/node_modules/lodash/sortedIndex.js +24 -0
- package/node_modules/lodash/sortedIndexBy.js +33 -0
- package/node_modules/lodash/sortedIndexOf.js +31 -0
- package/node_modules/lodash/sortedLastIndex.js +25 -0
- package/node_modules/lodash/sortedLastIndexBy.js +33 -0
- package/node_modules/lodash/sortedLastIndexOf.js +31 -0
- package/node_modules/lodash/sortedUniq.js +24 -0
- package/node_modules/lodash/sortedUniqBy.js +26 -0
- package/node_modules/lodash/split.js +52 -0
- package/node_modules/lodash/spread.js +63 -0
- package/node_modules/lodash/startCase.js +29 -0
- package/node_modules/lodash/startsWith.js +39 -0
- package/node_modules/lodash/string.js +33 -0
- package/node_modules/lodash/stubArray.js +23 -0
- package/node_modules/lodash/stubFalse.js +18 -0
- package/node_modules/lodash/stubObject.js +23 -0
- package/node_modules/lodash/stubString.js +18 -0
- package/node_modules/lodash/stubTrue.js +18 -0
- package/node_modules/lodash/subtract.js +22 -0
- package/node_modules/lodash/sum.js +24 -0
- package/node_modules/lodash/sumBy.js +33 -0
- package/node_modules/lodash/tail.js +22 -0
- package/node_modules/lodash/take.js +37 -0
- package/node_modules/lodash/takeRight.js +39 -0
- package/node_modules/lodash/takeRightWhile.js +45 -0
- package/node_modules/lodash/takeWhile.js +45 -0
- package/node_modules/lodash/tap.js +29 -0
- package/node_modules/lodash/template.js +272 -0
- package/node_modules/lodash/templateSettings.js +67 -0
- package/node_modules/lodash/throttle.js +69 -0
- package/node_modules/lodash/thru.js +28 -0
- package/node_modules/lodash/times.js +51 -0
- package/node_modules/lodash/toArray.js +58 -0
- package/node_modules/lodash/toFinite.js +42 -0
- package/node_modules/lodash/toInteger.js +36 -0
- package/node_modules/lodash/toIterator.js +23 -0
- package/node_modules/lodash/toJSON.js +1 -0
- package/node_modules/lodash/toLength.js +38 -0
- package/node_modules/lodash/toLower.js +28 -0
- package/node_modules/lodash/toNumber.js +64 -0
- package/node_modules/lodash/toPairs.js +30 -0
- package/node_modules/lodash/toPairsIn.js +30 -0
- package/node_modules/lodash/toPath.js +33 -0
- package/node_modules/lodash/toPlainObject.js +32 -0
- package/node_modules/lodash/toSafeInteger.js +37 -0
- package/node_modules/lodash/toString.js +28 -0
- package/node_modules/lodash/toUpper.js +28 -0
- package/node_modules/lodash/transform.js +65 -0
- package/node_modules/lodash/trim.js +47 -0
- package/node_modules/lodash/trimEnd.js +41 -0
- package/node_modules/lodash/trimStart.js +43 -0
- package/node_modules/lodash/truncate.js +111 -0
- package/node_modules/lodash/unary.js +22 -0
- package/node_modules/lodash/unescape.js +34 -0
- package/node_modules/lodash/union.js +26 -0
- package/node_modules/lodash/unionBy.js +39 -0
- package/node_modules/lodash/unionWith.js +34 -0
- package/node_modules/lodash/uniq.js +25 -0
- package/node_modules/lodash/uniqBy.js +31 -0
- package/node_modules/lodash/uniqWith.js +28 -0
- package/node_modules/lodash/uniqueId.js +28 -0
- package/node_modules/lodash/unset.js +34 -0
- package/node_modules/lodash/unzip.js +45 -0
- package/node_modules/lodash/unzipWith.js +39 -0
- package/node_modules/lodash/update.js +35 -0
- package/node_modules/lodash/updateWith.js +33 -0
- package/node_modules/lodash/upperCase.js +27 -0
- package/node_modules/lodash/upperFirst.js +22 -0
- package/node_modules/lodash/util.js +34 -0
- package/node_modules/lodash/value.js +1 -0
- package/node_modules/lodash/valueOf.js +1 -0
- package/node_modules/lodash/values.js +34 -0
- package/node_modules/lodash/valuesIn.js +32 -0
- package/node_modules/lodash/without.js +31 -0
- package/node_modules/lodash/words.js +35 -0
- package/node_modules/lodash/wrap.js +30 -0
- package/node_modules/lodash/wrapperAt.js +48 -0
- package/node_modules/lodash/wrapperChain.js +34 -0
- package/node_modules/lodash/wrapperLodash.js +147 -0
- package/node_modules/lodash/wrapperReverse.js +44 -0
- package/node_modules/lodash/wrapperValue.js +21 -0
- package/node_modules/lodash/xor.js +28 -0
- package/node_modules/lodash/xorBy.js +39 -0
- package/node_modules/lodash/xorWith.js +34 -0
- package/node_modules/lodash/zip.js +22 -0
- package/node_modules/lodash/zipObject.js +24 -0
- package/node_modules/lodash/zipObjectDeep.js +23 -0
- package/node_modules/lodash/zipWith.js +32 -0
- package/package.json +8 -1
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ApplicationLoadBalancer = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
const aws_certificatemanager_1 = require("aws-cdk-lib/aws-certificatemanager");
|
|
8
|
+
const aws_elasticloadbalancingv2_1 = require("aws-cdk-lib/aws-elasticloadbalancingv2");
|
|
9
|
+
const aws_elasticloadbalancingv2_actions_1 = require("aws-cdk-lib/aws-elasticloadbalancingv2-actions");
|
|
10
|
+
const aws_route53_1 = require("aws-cdk-lib/aws-route53");
|
|
11
|
+
const constructs_1 = require("constructs");
|
|
12
|
+
const utils_1 = require("../utils");
|
|
13
|
+
class ApplicationLoadBalancer extends constructs_1.Construct {
|
|
14
|
+
get loadBalancer() {
|
|
15
|
+
return this.loadbalancer;
|
|
16
|
+
}
|
|
17
|
+
constructor(scope, id, props) {
|
|
18
|
+
super(scope, id);
|
|
19
|
+
const hostedZone = aws_route53_1.HostedZone.fromLookup(this, "HostedZone", {
|
|
20
|
+
domainName: props.fqdn,
|
|
21
|
+
});
|
|
22
|
+
const certificate = new aws_certificatemanager_1.Certificate(this, "Certificate", {
|
|
23
|
+
domainName: props.fqdn,
|
|
24
|
+
validation: aws_certificatemanager_1.CertificateValidation.fromDns(hostedZone),
|
|
25
|
+
});
|
|
26
|
+
this.loadbalancer = new aws_elasticloadbalancingv2_1.ApplicationLoadBalancer(this, "ALB", {
|
|
27
|
+
vpc: props.vpc,
|
|
28
|
+
internetFacing: true,
|
|
29
|
+
});
|
|
30
|
+
const listener = this.loadbalancer.addListener("Listener", {
|
|
31
|
+
port: 443,
|
|
32
|
+
certificates: [certificate],
|
|
33
|
+
defaultAction: new aws_elasticloadbalancingv2_actions_1.AuthenticateCognitoAction({
|
|
34
|
+
userPool: props.userPool,
|
|
35
|
+
userPoolClient: props.userPoolClient,
|
|
36
|
+
userPoolDomain: props.userPoolDomain,
|
|
37
|
+
next: aws_elasticloadbalancingv2_1.ListenerAction.redirect({
|
|
38
|
+
port: "443",
|
|
39
|
+
protocol: "HTTPS",
|
|
40
|
+
}),
|
|
41
|
+
onUnauthenticatedRequest: aws_elasticloadbalancingv2_1.UnauthenticatedAction.AUTHENTICATE,
|
|
42
|
+
}),
|
|
43
|
+
});
|
|
44
|
+
const exportValue = (0, utils_1.createExporter)(this, "alb");
|
|
45
|
+
exportValue({
|
|
46
|
+
name: "ALB Listener ARN",
|
|
47
|
+
key: "listener-arn",
|
|
48
|
+
value: listener.listenerArn,
|
|
49
|
+
});
|
|
50
|
+
exportValue({
|
|
51
|
+
name: "ALB Security Group Id",
|
|
52
|
+
key: "security-group-id",
|
|
53
|
+
value: aws_cdk_lib_1.Fn.select(0, this.loadbalancer.loadBalancerSecurityGroups),
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.ApplicationLoadBalancer = ApplicationLoadBalancer;
|
|
58
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
59
|
+
ApplicationLoadBalancer[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationLoadBalancer", version: "0.3.0" };
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGxhdGZvcm0vQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsK0VBRzRDO0FBTzVDLHVGQUtnRDtBQUNoRCx1R0FBMkY7QUFDM0YseURBQXFEO0FBQ3JELDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFVMUMsTUFBYSx1QkFBd0IsU0FBUSxzQkFBUztJQUdwRCxJQUFXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFtQztRQUVuQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sVUFBVSxHQUFHLHdCQUFVLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDM0QsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJO1NBQ3ZCLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLElBQUksb0NBQVcsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3ZELFVBQVUsRUFBRSxLQUFLLENBQUMsSUFBSTtZQUN0QixVQUFVLEVBQUUsOENBQXFCLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztTQUN0RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksb0RBQTBCLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUM5RCxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUc7WUFDZCxjQUFjLEVBQUUsSUFBSTtTQUNyQixDQUFDLENBQUM7UUFFSCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUU7WUFDekQsSUFBSSxFQUFFLEdBQUc7WUFDVCxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUM7WUFDM0IsYUFBYSxFQUFFLElBQUksOERBQXlCLENBQUM7Z0JBQzNDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDeEIsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO2dCQUNwQyxjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7Z0JBQ3BDLElBQUksRUFBRSwyQ0FBYyxDQUFDLFFBQVEsQ0FBQztvQkFDNUIsSUFBSSxFQUFFLEtBQUs7b0JBQ1gsUUFBUSxFQUFFLE9BQU87aUJBQ2xCLENBQUM7Z0JBQ0Ysd0JBQXdCLEVBQUUsa0RBQXFCLENBQUMsWUFBWTthQUM3RCxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsTUFBTSxXQUFXLEdBQUcsSUFBQSxzQkFBYyxFQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVoRCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLEdBQUcsRUFBRSxjQUFjO1lBQ25CLEtBQUssRUFBRSxRQUFRLENBQUMsV0FBVztTQUM1QixDQUFDLENBQUM7UUFFSCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLEdBQUcsRUFBRSxtQkFBbUI7WUFDeEIsS0FBSyxFQUFFLGdCQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLDBCQUEwQixDQUFDO1NBQ2xFLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBeERILDBEQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZuIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1xuICBDZXJ0aWZpY2F0ZSxcbiAgQ2VydGlmaWNhdGVWYWxpZGF0aW9uLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHtcbiAgSVVzZXJQb29sLFxuICBJVXNlclBvb2xDbGllbnQsXG4gIElVc2VyUG9vbERvbWFpbixcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2duaXRvXCI7XG5pbXBvcnQgeyBJVnBjIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7XG4gIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyIGFzIEFXU0FwcGxpY2F0aW9uTG9hZEJhbGFuY2VyLFxuICBJQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIsXG4gIExpc3RlbmVyQWN0aW9uLFxuICBVbmF1dGhlbnRpY2F0ZWRBY3Rpb24sXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlQ29nbml0b0FjdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi1hY3Rpb25zXCI7XG5pbXBvcnQgeyBIb3N0ZWRab25lIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwb3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlclByb3BzIHtcbiAgcmVhZG9ubHkgZnFkbjogc3RyaW5nO1xuICByZWFkb25seSB2cGM6IElWcGM7XG4gIHJlYWRvbmx5IHVzZXJQb29sOiBJVXNlclBvb2w7XG4gIHJlYWRvbmx5IHVzZXJQb29sQ2xpZW50OiBJVXNlclBvb2xDbGllbnQ7XG4gIHJlYWRvbmx5IHVzZXJQb29sRG9tYWluOiBJVXNlclBvb2xEb21haW47XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlciBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBsb2FkYmFsYW5jZXI6IEFXU0FwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuXG4gIHB1YmxpYyBnZXQgbG9hZEJhbGFuY2VyKCk6IElBcHBsaWNhdGlvbkxvYWRCYWxhbmNlciB7XG4gICAgcmV0dXJuIHRoaXMubG9hZGJhbGFuY2VyO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlclByb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgaG9zdGVkWm9uZSA9IEhvc3RlZFpvbmUuZnJvbUxvb2t1cCh0aGlzLCBcIkhvc3RlZFpvbmVcIiwge1xuICAgICAgZG9tYWluTmFtZTogcHJvcHMuZnFkbixcbiAgICB9KTtcblxuICAgIGNvbnN0IGNlcnRpZmljYXRlID0gbmV3IENlcnRpZmljYXRlKHRoaXMsIFwiQ2VydGlmaWNhdGVcIiwge1xuICAgICAgZG9tYWluTmFtZTogcHJvcHMuZnFkbixcbiAgICAgIHZhbGlkYXRpb246IENlcnRpZmljYXRlVmFsaWRhdGlvbi5mcm9tRG5zKGhvc3RlZFpvbmUpLFxuICAgIH0pO1xuXG4gICAgdGhpcy5sb2FkYmFsYW5jZXIgPSBuZXcgQVdTQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIodGhpcywgXCJBTEJcIiwge1xuICAgICAgdnBjOiBwcm9wcy52cGMsXG4gICAgICBpbnRlcm5ldEZhY2luZzogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGxpc3RlbmVyID0gdGhpcy5sb2FkYmFsYW5jZXIuYWRkTGlzdGVuZXIoXCJMaXN0ZW5lclwiLCB7XG4gICAgICBwb3J0OiA0NDMsXG4gICAgICBjZXJ0aWZpY2F0ZXM6IFtjZXJ0aWZpY2F0ZV0sXG4gICAgICBkZWZhdWx0QWN0aW9uOiBuZXcgQXV0aGVudGljYXRlQ29nbml0b0FjdGlvbih7XG4gICAgICAgIHVzZXJQb29sOiBwcm9wcy51c2VyUG9vbCxcbiAgICAgICAgdXNlclBvb2xDbGllbnQ6IHByb3BzLnVzZXJQb29sQ2xpZW50LFxuICAgICAgICB1c2VyUG9vbERvbWFpbjogcHJvcHMudXNlclBvb2xEb21haW4sXG4gICAgICAgIG5leHQ6IExpc3RlbmVyQWN0aW9uLnJlZGlyZWN0KHtcbiAgICAgICAgICBwb3J0OiBcIjQ0M1wiLFxuICAgICAgICAgIHByb3RvY29sOiBcIkhUVFBTXCIsXG4gICAgICAgIH0pLFxuICAgICAgICBvblVuYXV0aGVudGljYXRlZFJlcXVlc3Q6IFVuYXV0aGVudGljYXRlZEFjdGlvbi5BVVRIRU5USUNBVEUsXG4gICAgICB9KSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJhbGJcIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkFMQiBMaXN0ZW5lciBBUk5cIixcbiAgICAgIGtleTogXCJsaXN0ZW5lci1hcm5cIixcbiAgICAgIHZhbHVlOiBsaXN0ZW5lci5saXN0ZW5lckFybixcbiAgICB9KTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiQUxCIFNlY3VyaXR5IEdyb3VwIElkXCIsXG4gICAgICBrZXk6IFwic2VjdXJpdHktZ3JvdXAtaWRcIixcbiAgICAgIHZhbHVlOiBGbi5zZWxlY3QoMCwgdGhpcy5sb2FkYmFsYW5jZXIubG9hZEJhbGFuY2VyU2VjdXJpdHlHcm91cHMpLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { NestedStack, NestedStackProps } from "aws-cdk-lib";
|
|
2
|
+
import { UserPool, UserPoolClient, UserPoolDomain } from "aws-cdk-lib/aws-cognito";
|
|
3
|
+
import { Construct } from "constructs";
|
|
4
|
+
export interface AuthenticationStackProps extends NestedStackProps {
|
|
5
|
+
readonly instanceName: string;
|
|
6
|
+
readonly cognitoUserPoolId: string;
|
|
7
|
+
readonly cognitoIssuerURL: string;
|
|
8
|
+
readonly cognitoDomainPrefix: string;
|
|
9
|
+
readonly supportedIdentityProviders: string[];
|
|
10
|
+
readonly defaultCallbackFqdn: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class AuthenticationStack extends NestedStack {
|
|
13
|
+
userPool: UserPool;
|
|
14
|
+
userPoolClient: UserPoolClient;
|
|
15
|
+
fullAccessApiClient: UserPoolClient;
|
|
16
|
+
userPoolDomain: UserPoolDomain;
|
|
17
|
+
constructor(scope: Construct, id: string, props: AuthenticationStackProps);
|
|
18
|
+
private generateUrls;
|
|
19
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.AuthenticationStack = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
class AuthenticationStack extends aws_cdk_lib_1.NestedStack {
|
|
10
|
+
constructor(scope, id, props) {
|
|
11
|
+
super(scope, id, props);
|
|
12
|
+
if (props.cognitoUserPoolId === undefined) {
|
|
13
|
+
this.userPool = new aws_cognito_1.UserPool(this, `${id}UserPool`);
|
|
14
|
+
this.userPoolDomain = new aws_cognito_1.UserPoolDomain(this, props.cognitoDomainPrefix, {
|
|
15
|
+
userPool: this.userPool,
|
|
16
|
+
cognitoDomain: {
|
|
17
|
+
domainPrefix: props.cognitoDomainPrefix,
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
this.userPool = aws_cognito_1.UserPool.fromUserPoolId(this, "ImportedUserPool", props.cognitoUserPoolId);
|
|
23
|
+
this.userPoolDomain = aws_cognito_1.UserPoolDomain.fromDomainName(this, props.cognitoDomainPrefix, props.cognitoDomainPrefix);
|
|
24
|
+
}
|
|
25
|
+
const fullAccessScope = new aws_cognito_1.ResourceServerScope({
|
|
26
|
+
scopeName: "full_access",
|
|
27
|
+
scopeDescription: "Full access",
|
|
28
|
+
});
|
|
29
|
+
const server = this.userPool.addResourceServer("user-pool-rest-api", {
|
|
30
|
+
identifier: `${props.instanceName}-RESTAPI`,
|
|
31
|
+
scopes: [fullAccessScope],
|
|
32
|
+
});
|
|
33
|
+
this.fullAccessApiClient = new aws_cognito_1.UserPoolClient(this, "FullAccessApiClient", {
|
|
34
|
+
userPool: this.userPool,
|
|
35
|
+
generateSecret: true,
|
|
36
|
+
oAuth: {
|
|
37
|
+
flows: {
|
|
38
|
+
clientCredentials: true,
|
|
39
|
+
},
|
|
40
|
+
scopes: [aws_cognito_1.OAuthScope.resourceServer(server, fullAccessScope)],
|
|
41
|
+
},
|
|
42
|
+
supportedIdentityProviders: [aws_cognito_1.UserPoolClientIdentityProvider.COGNITO],
|
|
43
|
+
});
|
|
44
|
+
this.userPoolClient = new aws_cognito_1.UserPoolClient(this, "${id}UserPoolClient", {
|
|
45
|
+
userPool: this.userPool,
|
|
46
|
+
// Required minimal configuration for use with an ELB
|
|
47
|
+
generateSecret: true,
|
|
48
|
+
authFlows: {
|
|
49
|
+
userPassword: true,
|
|
50
|
+
},
|
|
51
|
+
oAuth: {
|
|
52
|
+
flows: {
|
|
53
|
+
authorizationCodeGrant: true,
|
|
54
|
+
},
|
|
55
|
+
scopes: [aws_cognito_1.OAuthScope.OPENID, aws_cognito_1.OAuthScope.PROFILE],
|
|
56
|
+
...this.generateUrls(props.defaultCallbackFqdn),
|
|
57
|
+
},
|
|
58
|
+
supportedIdentityProviders: [aws_cognito_1.UserPoolClientIdentityProvider.COGNITO],
|
|
59
|
+
});
|
|
60
|
+
const cfnClient = this.userPoolClient.node
|
|
61
|
+
.defaultChild;
|
|
62
|
+
cfnClient.addPropertyOverride("RefreshTokenValidity", 1);
|
|
63
|
+
cfnClient.addPropertyOverride("SupportedIdentityProviders", props.supportedIdentityProviders);
|
|
64
|
+
this.userPoolClient.userPoolClientSecret.toString();
|
|
65
|
+
const exportValue = (0, utils_1.createExporter)(this, "cognito");
|
|
66
|
+
exportValue({
|
|
67
|
+
name: "Cognito Userpool Id",
|
|
68
|
+
key: "user-pool-id",
|
|
69
|
+
value: this.userPool.userPoolId,
|
|
70
|
+
});
|
|
71
|
+
exportValue({
|
|
72
|
+
name: "Cognito Domain Prefix",
|
|
73
|
+
key: "domain-prefix",
|
|
74
|
+
value: props.cognitoDomainPrefix,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
generateUrls(fqdn) {
|
|
78
|
+
return {
|
|
79
|
+
callbackUrls: [
|
|
80
|
+
`https://${fqdn}/oauth2/idpresponse`,
|
|
81
|
+
`https://${fqdn}/`,
|
|
82
|
+
`https://${fqdn}/tm`,
|
|
83
|
+
`https://${fqdn}/tm/api/auth/callback/oidc`,
|
|
84
|
+
],
|
|
85
|
+
logoutUrls: [`https://${fqdn}/tm`],
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.AuthenticationStack = AuthenticationStack;
|
|
90
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
91
|
+
AuthenticationStack[_a] = { fqn: "@btc-embedded/cdk-extensions.AuthenticationStack", version: "0.0.0" };
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0aGVudGljYXRpb25TdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9BdXRoZW50aWNhdGlvblN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTREO0FBQzVELHlEQVNpQztBQUVqQyxvQ0FBMEM7QUFXMUMsTUFBYSxtQkFBb0IsU0FBUSx5QkFBVztJQUtsRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxzQkFBUSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDcEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLDRCQUFjLENBQ3RDLElBQUksRUFDSixLQUFLLENBQUMsbUJBQW1CLEVBQ3pCO2dCQUNFLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsYUFBYSxFQUFFO29CQUNiLFlBQVksRUFBRSxLQUFLLENBQUMsbUJBQW1CO2lCQUN4QzthQUNGLENBQ0YsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxzQkFBUSxDQUFDLGNBQWMsQ0FDckMsSUFBSSxFQUNKLGtCQUFrQixFQUNsQixLQUFLLENBQUMsaUJBQWlCLENBQ1osQ0FBQztZQUNkLElBQUksQ0FBQyxjQUFjLEdBQUcsNEJBQWMsQ0FBQyxjQUFjLENBQ2pELElBQUksRUFDSixLQUFLLENBQUMsbUJBQW1CLEVBQ3pCLEtBQUssQ0FBQyxtQkFBbUIsQ0FDUixDQUFDO1FBQ3RCLENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFJLGlDQUFtQixDQUFDO1lBQzlDLFNBQVMsRUFBRSxhQUFhO1lBQ3hCLGdCQUFnQixFQUFFLGFBQWE7U0FDaEMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsRUFBRTtZQUNuRSxVQUFVLEVBQUUsR0FBRyxLQUFLLENBQUMsWUFBWSxVQUFVO1lBQzNDLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQztTQUMxQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRTtZQUN6RSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsY0FBYyxFQUFFLElBQUk7WUFDcEIsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxpQkFBaUIsRUFBRSxJQUFJO2lCQUN4QjtnQkFDRCxNQUFNLEVBQUUsQ0FBQyx3QkFBVSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLENBQUM7YUFDN0Q7WUFDRCwwQkFBMEIsRUFBRSxDQUFDLDRDQUE4QixDQUFDLE9BQU8sQ0FBQztTQUNyRSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksNEJBQWMsQ0FBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUU7WUFDcEUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLHFEQUFxRDtZQUNyRCxjQUFjLEVBQUUsSUFBSTtZQUNwQixTQUFTLEVBQUU7Z0JBQ1QsWUFBWSxFQUFFLElBQUk7YUFDbkI7WUFFRCxLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFO29CQUNMLHNCQUFzQixFQUFFLElBQUk7aUJBQzdCO2dCQUNELE1BQU0sRUFBRSxDQUFDLHdCQUFVLENBQUMsTUFBTSxFQUFFLHdCQUFVLENBQUMsT0FBTyxDQUFDO2dCQUMvQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO2FBQ2hEO1lBQ0QsMEJBQTBCLEVBQUUsQ0FBQyw0Q0FBOEIsQ0FBQyxPQUFPLENBQUM7U0FDckUsQ0FBQyxDQUFDO1FBRUgsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJO2FBQ3ZDLFlBQWlDLENBQUM7UUFDckMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pELFNBQVMsQ0FBQyxtQkFBbUIsQ0FDM0IsNEJBQTRCLEVBQzVCLEtBQUssQ0FBQywwQkFBMEIsQ0FDakMsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFcEQsTUFBTSxXQUFXLEdBQUcsSUFBQSxzQkFBYyxFQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUVwRCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUscUJBQXFCO1lBQzNCLEdBQUcsRUFBRSxjQUFjO1lBQ25CLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVU7U0FDaEMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixHQUFHLEVBQUUsZUFBZTtZQUNwQixLQUFLLEVBQUUsS0FBSyxDQUFDLG1CQUFtQjtTQUNqQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sWUFBWSxDQUNsQixJQUFZO1FBRVosT0FBTztZQUNMLFlBQVksRUFBRTtnQkFDWixXQUFXLElBQUkscUJBQXFCO2dCQUNwQyxXQUFXLElBQUksR0FBRztnQkFDbEIsV0FBVyxJQUFJLEtBQUs7Z0JBQ3BCLFdBQVcsSUFBSSw0QkFBNEI7YUFDNUM7WUFDRCxVQUFVLEVBQUUsQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDO1NBQ25DLENBQUM7SUFDSixDQUFDOztBQTVHSCxrREE2R0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZXN0ZWRTdGFjaywgTmVzdGVkU3RhY2tQcm9wcyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgQ2ZuVXNlclBvb2xDbGllbnQsXG4gIE9BdXRoU2NvcGUsXG4gIE9BdXRoU2V0dGluZ3MsXG4gIFJlc291cmNlU2VydmVyU2NvcGUsXG4gIFVzZXJQb29sLFxuICBVc2VyUG9vbENsaWVudCxcbiAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLFxuICBVc2VyUG9vbERvbWFpbixcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2duaXRvXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwb3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBdXRoZW50aWNhdGlvblN0YWNrUHJvcHMgZXh0ZW5kcyBOZXN0ZWRTdGFja1Byb3BzIHtcbiAgcmVhZG9ubHkgaW5zdGFuY2VOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvZ25pdG9Vc2VyUG9vbElkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvZ25pdG9Jc3N1ZXJVUkw6IHN0cmluZztcbiAgcmVhZG9ubHkgY29nbml0b0RvbWFpblByZWZpeDogc3RyaW5nO1xuICByZWFkb25seSBzdXBwb3J0ZWRJZGVudGl0eVByb3ZpZGVyczogc3RyaW5nW107XG4gIHJlYWRvbmx5IGRlZmF1bHRDYWxsYmFja0ZxZG46IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uU3RhY2sgZXh0ZW5kcyBOZXN0ZWRTdGFjayB7XG4gIHB1YmxpYyB1c2VyUG9vbDogVXNlclBvb2w7XG4gIHB1YmxpYyB1c2VyUG9vbENsaWVudDogVXNlclBvb2xDbGllbnQ7XG4gIHB1YmxpYyBmdWxsQWNjZXNzQXBpQ2xpZW50OiBVc2VyUG9vbENsaWVudDtcbiAgcHVibGljIHVzZXJQb29sRG9tYWluOiBVc2VyUG9vbERvbWFpbjtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEF1dGhlbnRpY2F0aW9uU3RhY2tQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGlmIChwcm9wcy5jb2duaXRvVXNlclBvb2xJZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnVzZXJQb29sID0gbmV3IFVzZXJQb29sKHRoaXMsIGAke2lkfVVzZXJQb29sYCk7XG4gICAgICB0aGlzLnVzZXJQb29sRG9tYWluID0gbmV3IFVzZXJQb29sRG9tYWluKFxuICAgICAgICB0aGlzLFxuICAgICAgICBwcm9wcy5jb2duaXRvRG9tYWluUHJlZml4LFxuICAgICAgICB7XG4gICAgICAgICAgdXNlclBvb2w6IHRoaXMudXNlclBvb2wsXG4gICAgICAgICAgY29nbml0b0RvbWFpbjoge1xuICAgICAgICAgICAgZG9tYWluUHJlZml4OiBwcm9wcy5jb2duaXRvRG9tYWluUHJlZml4LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVzZXJQb29sID0gVXNlclBvb2wuZnJvbVVzZXJQb29sSWQoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiSW1wb3J0ZWRVc2VyUG9vbFwiLFxuICAgICAgICBwcm9wcy5jb2duaXRvVXNlclBvb2xJZCxcbiAgICAgICkgYXMgVXNlclBvb2w7XG4gICAgICB0aGlzLnVzZXJQb29sRG9tYWluID0gVXNlclBvb2xEb21haW4uZnJvbURvbWFpbk5hbWUoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIHByb3BzLmNvZ25pdG9Eb21haW5QcmVmaXgsXG4gICAgICAgIHByb3BzLmNvZ25pdG9Eb21haW5QcmVmaXgsXG4gICAgICApIGFzIFVzZXJQb29sRG9tYWluO1xuICAgIH1cblxuICAgIGNvbnN0IGZ1bGxBY2Nlc3NTY29wZSA9IG5ldyBSZXNvdXJjZVNlcnZlclNjb3BlKHtcbiAgICAgIHNjb3BlTmFtZTogXCJmdWxsX2FjY2Vzc1wiLFxuICAgICAgc2NvcGVEZXNjcmlwdGlvbjogXCJGdWxsIGFjY2Vzc1wiLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmVyID0gdGhpcy51c2VyUG9vbC5hZGRSZXNvdXJjZVNlcnZlcihcInVzZXItcG9vbC1yZXN0LWFwaVwiLCB7XG4gICAgICBpZGVudGlmaWVyOiBgJHtwcm9wcy5pbnN0YW5jZU5hbWV9LVJFU1RBUElgLFxuICAgICAgc2NvcGVzOiBbZnVsbEFjY2Vzc1Njb3BlXSxcbiAgICB9KTtcblxuICAgIHRoaXMuZnVsbEFjY2Vzc0FwaUNsaWVudCA9IG5ldyBVc2VyUG9vbENsaWVudCh0aGlzLCBcIkZ1bGxBY2Nlc3NBcGlDbGllbnRcIiwge1xuICAgICAgdXNlclBvb2w6IHRoaXMudXNlclBvb2wsXG4gICAgICBnZW5lcmF0ZVNlY3JldDogdHJ1ZSxcbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgY2xpZW50Q3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHNjb3BlczogW09BdXRoU2NvcGUucmVzb3VyY2VTZXJ2ZXIoc2VydmVyLCBmdWxsQWNjZXNzU2NvcGUpXSxcbiAgICAgIH0sXG4gICAgICBzdXBwb3J0ZWRJZGVudGl0eVByb3ZpZGVyczogW1VzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlci5DT0dOSVRPXSxcbiAgICB9KTtcblxuICAgIHRoaXMudXNlclBvb2xDbGllbnQgPSBuZXcgVXNlclBvb2xDbGllbnQodGhpcywgXCIke2lkfVVzZXJQb29sQ2xpZW50XCIsIHtcbiAgICAgIHVzZXJQb29sOiB0aGlzLnVzZXJQb29sLFxuICAgICAgLy8gUmVxdWlyZWQgbWluaW1hbCBjb25maWd1cmF0aW9uIGZvciB1c2Ugd2l0aCBhbiBFTEJcbiAgICAgIGdlbmVyYXRlU2VjcmV0OiB0cnVlLFxuICAgICAgYXV0aEZsb3dzOiB7XG4gICAgICAgIHVzZXJQYXNzd29yZDogdHJ1ZSxcbiAgICAgIH0sXG5cbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgYXV0aG9yaXphdGlvbkNvZGVHcmFudDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NvcGVzOiBbT0F1dGhTY29wZS5PUEVOSUQsIE9BdXRoU2NvcGUuUFJPRklMRV0sXG4gICAgICAgIC4uLnRoaXMuZ2VuZXJhdGVVcmxzKHByb3BzLmRlZmF1bHRDYWxsYmFja0ZxZG4pLFxuICAgICAgfSxcbiAgICAgIHN1cHBvcnRlZElkZW50aXR5UHJvdmlkZXJzOiBbVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLkNPR05JVE9dLFxuICAgIH0pO1xuXG4gICAgY29uc3QgY2ZuQ2xpZW50ID0gdGhpcy51c2VyUG9vbENsaWVudC5ub2RlXG4gICAgICAuZGVmYXVsdENoaWxkIGFzIENmblVzZXJQb29sQ2xpZW50O1xuICAgIGNmbkNsaWVudC5hZGRQcm9wZXJ0eU92ZXJyaWRlKFwiUmVmcmVzaFRva2VuVmFsaWRpdHlcIiwgMSk7XG4gICAgY2ZuQ2xpZW50LmFkZFByb3BlcnR5T3ZlcnJpZGUoXG4gICAgICBcIlN1cHBvcnRlZElkZW50aXR5UHJvdmlkZXJzXCIsXG4gICAgICBwcm9wcy5zdXBwb3J0ZWRJZGVudGl0eVByb3ZpZGVycyxcbiAgICApO1xuICAgIHRoaXMudXNlclBvb2xDbGllbnQudXNlclBvb2xDbGllbnRTZWNyZXQudG9TdHJpbmcoKTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJjb2duaXRvXCIpO1xuXG4gICAgZXhwb3J0VmFsdWUoe1xuICAgICAgbmFtZTogXCJDb2duaXRvIFVzZXJwb29sIElkXCIsXG4gICAgICBrZXk6IFwidXNlci1wb29sLWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy51c2VyUG9vbC51c2VyUG9vbElkLFxuICAgIH0pO1xuXG4gICAgZXhwb3J0VmFsdWUoe1xuICAgICAgbmFtZTogXCJDb2duaXRvIERvbWFpbiBQcmVmaXhcIixcbiAgICAgIGtleTogXCJkb21haW4tcHJlZml4XCIsXG4gICAgICB2YWx1ZTogcHJvcHMuY29nbml0b0RvbWFpblByZWZpeCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVVcmxzKFxuICAgIGZxZG46IHN0cmluZyxcbiAgKTogUGljazxPQXV0aFNldHRpbmdzLCBcImNhbGxiYWNrVXJsc1wiIHwgXCJsb2dvdXRVcmxzXCI+IHtcbiAgICByZXR1cm4ge1xuICAgICAgY2FsbGJhY2tVcmxzOiBbXG4gICAgICAgIGBodHRwczovLyR7ZnFkbn0vb2F1dGgyL2lkcHJlc3BvbnNlYCxcbiAgICAgICAgYGh0dHBzOi8vJHtmcWRufS9gLFxuICAgICAgICBgaHR0cHM6Ly8ke2ZxZG59L3RtYCxcbiAgICAgICAgYGh0dHBzOi8vJHtmcWRufS90bS9hcGkvYXV0aC9jYWxsYmFjay9vaWRjYCxcbiAgICAgIF0sXG4gICAgICBsb2dvdXRVcmxzOiBbYGh0dHBzOi8vJHtmcWRufS90bWBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IVpc } from "aws-cdk-lib/aws-ec2";
|
|
2
|
+
import { PrivateDnsNamespace } from "aws-cdk-lib/aws-servicediscovery";
|
|
3
|
+
import { Construct } from "constructs";
|
|
4
|
+
export interface PrivateDnsNamespaceProps {
|
|
5
|
+
readonly arn: string;
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly namespace: string;
|
|
8
|
+
}
|
|
9
|
+
export interface CloudMapProps {
|
|
10
|
+
readonly privateDnsNamespace?: PrivateDnsNamespaceProps;
|
|
11
|
+
readonly vpc: IVpc;
|
|
12
|
+
}
|
|
13
|
+
export declare class CloudMap extends Construct {
|
|
14
|
+
readonly namespace: PrivateDnsNamespace;
|
|
15
|
+
constructor(scope: Construct, id: string, props: CloudMapProps);
|
|
16
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.CloudMap = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_servicediscovery_1 = require("aws-cdk-lib/aws-servicediscovery");
|
|
7
|
+
const constructs_1 = require("constructs");
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
class CloudMap extends constructs_1.Construct {
|
|
10
|
+
constructor(scope, id, props) {
|
|
11
|
+
super(scope, id);
|
|
12
|
+
// Create a Cloud Map Namespace
|
|
13
|
+
if (props.privateDnsNamespace) {
|
|
14
|
+
this.namespace = aws_servicediscovery_1.PrivateDnsNamespace.fromPrivateDnsNamespaceAttributes(this, "PrivateDns", {
|
|
15
|
+
namespaceName: props.privateDnsNamespace.namespace,
|
|
16
|
+
namespaceId: props.privateDnsNamespace.id,
|
|
17
|
+
namespaceArn: props.privateDnsNamespace.arn,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
this.namespace = new aws_servicediscovery_1.PrivateDnsNamespace(this, `${id}Namespace`, {
|
|
22
|
+
name: `${id}.local`,
|
|
23
|
+
vpc: props.vpc,
|
|
24
|
+
description: "Private Namespace",
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
const exportValue = (0, utils_1.createExporter)(this, "namespace");
|
|
28
|
+
exportValue({
|
|
29
|
+
name: "Namespace Arn",
|
|
30
|
+
key: "arn",
|
|
31
|
+
value: this.namespace.namespaceArn,
|
|
32
|
+
});
|
|
33
|
+
exportValue({
|
|
34
|
+
name: "Namespace Id",
|
|
35
|
+
key: "id",
|
|
36
|
+
value: this.namespace.namespaceId,
|
|
37
|
+
});
|
|
38
|
+
exportValue({
|
|
39
|
+
name: "Namespace Name",
|
|
40
|
+
key: "name",
|
|
41
|
+
value: this.namespace.namespaceName,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.CloudMap = CloudMap;
|
|
46
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
47
|
+
CloudMap[_a] = { fqn: "@btc-embedded/cdk-extensions.CloudMap", version: "0.3.0" };
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRNYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGxhdGZvcm0vQ2xvdWRNYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSwyRUFBdUU7QUFDdkUsMkNBQXVDO0FBQ3ZDLG9DQUEwQztBQWExQyxNQUFhLFFBQVMsU0FBUSxzQkFBUztJQUVyQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW9CO1FBQzVELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsK0JBQStCO1FBQy9CLElBQUksS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRywwQ0FBbUIsQ0FBQyxpQ0FBaUMsQ0FDcEUsSUFBSSxFQUNKLFlBQVksRUFDWjtnQkFDRSxhQUFhLEVBQUUsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFNBQVM7Z0JBQ2xELFdBQVcsRUFBRSxLQUFLLENBQUMsbUJBQW1CLENBQUMsRUFBRTtnQkFDekMsWUFBWSxFQUFFLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHO2FBQzVDLENBQ3FCLENBQUM7UUFDM0IsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksMENBQW1CLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUU7Z0JBQy9ELElBQUksRUFBRSxHQUFHLEVBQUUsUUFBUTtnQkFDbkIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO2dCQUNkLFdBQVcsRUFBRSxtQkFBbUI7YUFDakMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFFdEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLGVBQWU7WUFDckIsR0FBRyxFQUFFLEtBQUs7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZO1NBQ25DLENBQUMsQ0FBQztRQUVILFdBQVcsQ0FBQztZQUNWLElBQUksRUFBRSxjQUFjO1lBQ3BCLEdBQUcsRUFBRSxJQUFJO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVztTQUNsQyxDQUFDLENBQUM7UUFFSCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEdBQUcsRUFBRSxNQUFNO1lBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYTtTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTFDSCw0QkEyQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVnBjIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IFByaXZhdGVEbnNOYW1lc3BhY2UgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNlcnZpY2VkaXNjb3ZlcnlcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBjcmVhdGVFeHBvcnRlciB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcyB7XG4gIHJlYWRvbmx5IGFybjogc3RyaW5nO1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBuYW1lc3BhY2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbG91ZE1hcFByb3BzIHtcbiAgcmVhZG9ubHkgcHJpdmF0ZURuc05hbWVzcGFjZT86IFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcztcbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xufVxuXG5leHBvcnQgY2xhc3MgQ2xvdWRNYXAgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlOiBQcml2YXRlRG5zTmFtZXNwYWNlO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2xvdWRNYXBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICAvLyBDcmVhdGUgYSBDbG91ZCBNYXAgTmFtZXNwYWNlXG4gICAgaWYgKHByb3BzLnByaXZhdGVEbnNOYW1lc3BhY2UpIHtcbiAgICAgIHRoaXMubmFtZXNwYWNlID0gUHJpdmF0ZURuc05hbWVzcGFjZS5mcm9tUHJpdmF0ZURuc05hbWVzcGFjZUF0dHJpYnV0ZXMoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiUHJpdmF0ZURuc1wiLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZXNwYWNlTmFtZTogcHJvcHMucHJpdmF0ZURuc05hbWVzcGFjZS5uYW1lc3BhY2UsXG4gICAgICAgICAgbmFtZXNwYWNlSWQ6IHByb3BzLnByaXZhdGVEbnNOYW1lc3BhY2UuaWQsXG4gICAgICAgICAgbmFtZXNwYWNlQXJuOiBwcm9wcy5wcml2YXRlRG5zTmFtZXNwYWNlLmFybixcbiAgICAgICAgfSxcbiAgICAgICkgYXMgUHJpdmF0ZURuc05hbWVzcGFjZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5uYW1lc3BhY2UgPSBuZXcgUHJpdmF0ZURuc05hbWVzcGFjZSh0aGlzLCBgJHtpZH1OYW1lc3BhY2VgLCB7XG4gICAgICAgIG5hbWU6IGAke2lkfS5sb2NhbGAsXG4gICAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgICAgICBkZXNjcmlwdGlvbjogXCJQcml2YXRlIE5hbWVzcGFjZVwiLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJuYW1lc3BhY2VcIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBBcm5cIixcbiAgICAgIGtleTogXCJhcm5cIixcbiAgICAgIHZhbHVlOiB0aGlzLm5hbWVzcGFjZS5uYW1lc3BhY2VBcm4sXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBJZFwiLFxuICAgICAga2V5OiBcImlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5uYW1lc3BhY2UubmFtZXNwYWNlSWQsXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBOYW1lXCIsXG4gICAgICBrZXk6IFwibmFtZVwiLFxuICAgICAgdmFsdWU6IHRoaXMubmFtZXNwYWNlLm5hbWVzcGFjZU5hbWUsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IUserPool, IUserPoolClient } from "aws-cdk-lib/aws-cognito";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
export interface DefaultUserPoolClientsProps {
|
|
4
|
+
readonly userPool: IUserPool;
|
|
5
|
+
readonly logoutUrls: string[];
|
|
6
|
+
readonly callbackUrls: string[];
|
|
7
|
+
readonly fqdn: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Create default user pool clients for the frontend and API access.
|
|
11
|
+
*/
|
|
12
|
+
export declare class DefaultUserPoolClients extends Construct {
|
|
13
|
+
frontendClient: IUserPoolClient;
|
|
14
|
+
apiClient: IUserPoolClient;
|
|
15
|
+
constructor(scope: Construct, id: string, props: DefaultUserPoolClientsProps);
|
|
16
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DefaultUserPoolClients = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
|
|
7
|
+
const constructs_1 = require("constructs");
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
/**
|
|
10
|
+
* Create default user pool clients for the frontend and API access.
|
|
11
|
+
*/
|
|
12
|
+
class DefaultUserPoolClients extends constructs_1.Construct {
|
|
13
|
+
constructor(scope, id, props) {
|
|
14
|
+
super(scope, id);
|
|
15
|
+
const apiAccessScope = new aws_cognito_1.ResourceServerScope({
|
|
16
|
+
scopeName: "api_access",
|
|
17
|
+
scopeDescription: "REST API full access scope",
|
|
18
|
+
});
|
|
19
|
+
const server = props.userPool.addResourceServer("RESTAPIResourceServer", {
|
|
20
|
+
identifier: `${id}RESTAPI`,
|
|
21
|
+
scopes: [apiAccessScope],
|
|
22
|
+
});
|
|
23
|
+
this.apiClient = new aws_cognito_1.UserPoolClient(this, "RESTAPIUserPoolClient", {
|
|
24
|
+
userPool: props.userPool,
|
|
25
|
+
generateSecret: true,
|
|
26
|
+
oAuth: {
|
|
27
|
+
flows: {
|
|
28
|
+
clientCredentials: true,
|
|
29
|
+
},
|
|
30
|
+
scopes: [aws_cognito_1.OAuthScope.resourceServer(server, apiAccessScope)],
|
|
31
|
+
},
|
|
32
|
+
supportedIdentityProviders: [aws_cognito_1.UserPoolClientIdentityProvider.COGNITO],
|
|
33
|
+
});
|
|
34
|
+
this.frontendClient = new aws_cognito_1.UserPoolClient(this, "FrontendUserPoolClient", {
|
|
35
|
+
userPool: props.userPool,
|
|
36
|
+
// Required minimal configuration for use with an ELB
|
|
37
|
+
generateSecret: true,
|
|
38
|
+
authFlows: {
|
|
39
|
+
userPassword: true,
|
|
40
|
+
},
|
|
41
|
+
oAuth: {
|
|
42
|
+
flows: {
|
|
43
|
+
authorizationCodeGrant: true,
|
|
44
|
+
},
|
|
45
|
+
scopes: [aws_cognito_1.OAuthScope.OPENID, aws_cognito_1.OAuthScope.PROFILE],
|
|
46
|
+
callbackUrls: [
|
|
47
|
+
...props.callbackUrls,
|
|
48
|
+
`https://${props.fqdn}/oauth2/idpresponse`,
|
|
49
|
+
],
|
|
50
|
+
logoutUrls: props.logoutUrls,
|
|
51
|
+
},
|
|
52
|
+
supportedIdentityProviders: [aws_cognito_1.UserPoolClientIdentityProvider.COGNITO],
|
|
53
|
+
});
|
|
54
|
+
const exportValue = (0, utils_1.createExporter)(this, "cognito");
|
|
55
|
+
exportValue({
|
|
56
|
+
name: "Cognito Full Access Client Id",
|
|
57
|
+
key: "full-access-client-id",
|
|
58
|
+
value: this.apiClient.userPoolClientId,
|
|
59
|
+
});
|
|
60
|
+
exportValue({
|
|
61
|
+
name: "Cognito User Pool Client Id",
|
|
62
|
+
key: "user-pool-client-id",
|
|
63
|
+
value: this.frontendClient.userPoolClientId,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.DefaultUserPoolClients = DefaultUserPoolClients;
|
|
68
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
69
|
+
DefaultUserPoolClients[_a] = { fqn: "@btc-embedded/cdk-extensions.DefaultUserPoolClients", version: "0.3.0" };
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFVzZXJQb29sQ2xpZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9EZWZhdWx0VXNlclBvb2xDbGllbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseURBT2lDO0FBQ2pDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFTMUM7O0dBRUc7QUFDSCxNQUFhLHNCQUF1QixTQUFRLHNCQUFTO0lBSW5ELFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQWtDO1FBRWxDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxjQUFjLEdBQUcsSUFBSSxpQ0FBbUIsQ0FBQztZQUM3QyxTQUFTLEVBQUUsWUFBWTtZQUN2QixnQkFBZ0IsRUFBRSw0QkFBNEI7U0FDL0MsQ0FBQyxDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsRUFBRTtZQUN2RSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVM7WUFDMUIsTUFBTSxFQUFFLENBQUMsY0FBYyxDQUFDO1NBQ3pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRTtZQUNqRSxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsY0FBYyxFQUFFLElBQUk7WUFDcEIsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxpQkFBaUIsRUFBRSxJQUFJO2lCQUN4QjtnQkFDRCxNQUFNLEVBQUUsQ0FBQyx3QkFBVSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7YUFDNUQ7WUFDRCwwQkFBMEIsRUFBRSxDQUFDLDRDQUE4QixDQUFDLE9BQU8sQ0FBQztTQUNyRSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksNEJBQWMsQ0FBQyxJQUFJLEVBQUUsd0JBQXdCLEVBQUU7WUFDdkUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBRXhCLHFEQUFxRDtZQUNyRCxjQUFjLEVBQUUsSUFBSTtZQUNwQixTQUFTLEVBQUU7Z0JBQ1QsWUFBWSxFQUFFLElBQUk7YUFDbkI7WUFFRCxLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFO29CQUNMLHNCQUFzQixFQUFFLElBQUk7aUJBQzdCO2dCQUNELE1BQU0sRUFBRSxDQUFDLHdCQUFVLENBQUMsTUFBTSxFQUFFLHdCQUFVLENBQUMsT0FBTyxDQUFDO2dCQUMvQyxZQUFZLEVBQUU7b0JBQ1osR0FBRyxLQUFLLENBQUMsWUFBWTtvQkFDckIsV0FBVyxLQUFLLENBQUMsSUFBSSxxQkFBcUI7aUJBQzNDO2dCQUNELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTthQUM3QjtZQUNELDBCQUEwQixFQUFFLENBQUMsNENBQThCLENBQUMsT0FBTyxDQUFDO1NBQ3JFLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFcEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLCtCQUErQjtZQUNyQyxHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQjtTQUN2QyxDQUFDLENBQUM7UUFFSCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsNkJBQTZCO1lBQ25DLEdBQUcsRUFBRSxxQkFBcUI7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCO1NBQzVDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBckVILHdEQXNFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIElVc2VyUG9vbCxcbiAgSVVzZXJQb29sQ2xpZW50LFxuICBPQXV0aFNjb3BlLFxuICBSZXNvdXJjZVNlcnZlclNjb3BlLFxuICBVc2VyUG9vbENsaWVudCxcbiAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNvZ25pdG9cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBjcmVhdGVFeHBvcnRlciB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRVc2VyUG9vbENsaWVudHNQcm9wcyB7XG4gIHJlYWRvbmx5IHVzZXJQb29sOiBJVXNlclBvb2w7XG4gIHJlYWRvbmx5IGxvZ291dFVybHM6IHN0cmluZ1tdO1xuICByZWFkb25seSBjYWxsYmFja1VybHM6IHN0cmluZ1tdO1xuICByZWFkb25seSBmcWRuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlIGRlZmF1bHQgdXNlciBwb29sIGNsaWVudHMgZm9yIHRoZSBmcm9udGVuZCBhbmQgQVBJIGFjY2Vzcy5cbiAqL1xuZXhwb3J0IGNsYXNzIERlZmF1bHRVc2VyUG9vbENsaWVudHMgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgZnJvbnRlbmRDbGllbnQ6IElVc2VyUG9vbENsaWVudDtcbiAgcHVibGljIGFwaUNsaWVudDogSVVzZXJQb29sQ2xpZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogRGVmYXVsdFVzZXJQb29sQ2xpZW50c1Byb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgYXBpQWNjZXNzU2NvcGUgPSBuZXcgUmVzb3VyY2VTZXJ2ZXJTY29wZSh7XG4gICAgICBzY29wZU5hbWU6IFwiYXBpX2FjY2Vzc1wiLFxuICAgICAgc2NvcGVEZXNjcmlwdGlvbjogXCJSRVNUIEFQSSBmdWxsIGFjY2VzcyBzY29wZVwiLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmVyID0gcHJvcHMudXNlclBvb2wuYWRkUmVzb3VyY2VTZXJ2ZXIoXCJSRVNUQVBJUmVzb3VyY2VTZXJ2ZXJcIiwge1xuICAgICAgaWRlbnRpZmllcjogYCR7aWR9UkVTVEFQSWAsXG4gICAgICBzY29wZXM6IFthcGlBY2Nlc3NTY29wZV0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmFwaUNsaWVudCA9IG5ldyBVc2VyUG9vbENsaWVudCh0aGlzLCBcIlJFU1RBUElVc2VyUG9vbENsaWVudFwiLCB7XG4gICAgICB1c2VyUG9vbDogcHJvcHMudXNlclBvb2wsXG4gICAgICBnZW5lcmF0ZVNlY3JldDogdHJ1ZSxcbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgY2xpZW50Q3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHNjb3BlczogW09BdXRoU2NvcGUucmVzb3VyY2VTZXJ2ZXIoc2VydmVyLCBhcGlBY2Nlc3NTY29wZSldLFxuICAgICAgfSxcbiAgICAgIHN1cHBvcnRlZElkZW50aXR5UHJvdmlkZXJzOiBbVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLkNPR05JVE9dLFxuICAgIH0pO1xuXG4gICAgdGhpcy5mcm9udGVuZENsaWVudCA9IG5ldyBVc2VyUG9vbENsaWVudCh0aGlzLCBcIkZyb250ZW5kVXNlclBvb2xDbGllbnRcIiwge1xuICAgICAgdXNlclBvb2w6IHByb3BzLnVzZXJQb29sLFxuXG4gICAgICAvLyBSZXF1aXJlZCBtaW5pbWFsIGNvbmZpZ3VyYXRpb24gZm9yIHVzZSB3aXRoIGFuIEVMQlxuICAgICAgZ2VuZXJhdGVTZWNyZXQ6IHRydWUsXG4gICAgICBhdXRoRmxvd3M6IHtcbiAgICAgICAgdXNlclBhc3N3b3JkOiB0cnVlLFxuICAgICAgfSxcblxuICAgICAgb0F1dGg6IHtcbiAgICAgICAgZmxvd3M6IHtcbiAgICAgICAgICBhdXRob3JpemF0aW9uQ29kZUdyYW50OiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBzY29wZXM6IFtPQXV0aFNjb3BlLk9QRU5JRCwgT0F1dGhTY29wZS5QUk9GSUxFXSxcbiAgICAgICAgY2FsbGJhY2tVcmxzOiBbXG4gICAgICAgICAgLi4ucHJvcHMuY2FsbGJhY2tVcmxzLFxuICAgICAgICAgIGBodHRwczovLyR7cHJvcHMuZnFkbn0vb2F1dGgyL2lkcHJlc3BvbnNlYCxcbiAgICAgICAgXSxcbiAgICAgICAgbG9nb3V0VXJsczogcHJvcHMubG9nb3V0VXJscyxcbiAgICAgIH0sXG4gICAgICBzdXBwb3J0ZWRJZGVudGl0eVByb3ZpZGVyczogW1VzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlci5DT0dOSVRPXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJjb2duaXRvXCIpO1xuXG4gICAgZXhwb3J0VmFsdWUoe1xuICAgICAgbmFtZTogXCJDb2duaXRvIEZ1bGwgQWNjZXNzIENsaWVudCBJZFwiLFxuICAgICAga2V5OiBcImZ1bGwtYWNjZXNzLWNsaWVudC1pZFwiLFxuICAgICAgdmFsdWU6IHRoaXMuYXBpQ2xpZW50LnVzZXJQb29sQ2xpZW50SWQsXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkNvZ25pdG8gVXNlciBQb29sIENsaWVudCBJZFwiLFxuICAgICAga2V5OiBcInVzZXItcG9vbC1jbGllbnQtaWRcIixcbiAgICAgIHZhbHVlOiB0aGlzLmZyb250ZW5kQ2xpZW50LnVzZXJQb29sQ2xpZW50SWQsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IVpc } from "aws-cdk-lib/aws-ec2";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
export interface DocumentDBProps {
|
|
4
|
+
readonly stackName: string;
|
|
5
|
+
readonly username: string;
|
|
6
|
+
readonly secretName: string;
|
|
7
|
+
readonly vpc: IVpc;
|
|
8
|
+
}
|
|
9
|
+
export declare class DocumentDB extends Construct {
|
|
10
|
+
private cluster;
|
|
11
|
+
constructor(scope: Construct, id: string, props: DocumentDBProps);
|
|
12
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DocumentDB = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
const aws_docdb_1 = require("aws-cdk-lib/aws-docdb");
|
|
8
|
+
const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
|
|
9
|
+
const aws_secretsmanager_1 = require("aws-cdk-lib/aws-secretsmanager");
|
|
10
|
+
const constructs_1 = require("constructs");
|
|
11
|
+
const utils_1 = require("../utils");
|
|
12
|
+
class DocumentDB extends constructs_1.Construct {
|
|
13
|
+
constructor(scope, id, props) {
|
|
14
|
+
super(scope, id);
|
|
15
|
+
this.cluster = new aws_docdb_1.DatabaseCluster(this, `DocumentDb`, {
|
|
16
|
+
masterUser: {
|
|
17
|
+
username: props.username,
|
|
18
|
+
secretName: props.secretName,
|
|
19
|
+
excludeCharacters: "\"@%&/\\{}()[]<>|`',:;+?~*=!^#_-",
|
|
20
|
+
},
|
|
21
|
+
instanceType: aws_ec2_1.InstanceType.of(aws_ec2_1.InstanceClass.T3, aws_ec2_1.InstanceSize.MEDIUM),
|
|
22
|
+
vpc: props.vpc,
|
|
23
|
+
});
|
|
24
|
+
const password = aws_secretsmanager_1.Secret.fromSecretNameV2(this, "Secret", props.secretName)
|
|
25
|
+
.secretValueFromJson("password")
|
|
26
|
+
// Unsafe unwrap is okay, since the only use is to wrap it in another secret
|
|
27
|
+
.unsafeUnwrap();
|
|
28
|
+
const secret = new aws_secretsmanager_1.Secret(this, "db-url-secret", {
|
|
29
|
+
secretStringValue: new aws_cdk_lib_1.SecretValue(`mongodb://${props.username}:${password}@${this.cluster.clusterEndpoint.hostname}:${this.cluster.clusterEndpoint.portAsString()}/?tls=true&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false`),
|
|
30
|
+
});
|
|
31
|
+
const exportValue = (0, utils_1.createExporter)(this, "document-db");
|
|
32
|
+
exportValue({
|
|
33
|
+
name: "DocumentDB Security Group Id",
|
|
34
|
+
key: "security-group-id",
|
|
35
|
+
value: this.cluster.securityGroupId,
|
|
36
|
+
});
|
|
37
|
+
exportValue({
|
|
38
|
+
name: "DocumentDB Secret ARN",
|
|
39
|
+
key: "secret-arn",
|
|
40
|
+
value: secret.secretArn,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.DocumentDB = DocumentDB;
|
|
45
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
46
|
+
DocumentDB[_a] = { fqn: "@btc-embedded/cdk-extensions.DocumentDB", version: "0.3.0" };
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRG9jdW1lbnREQi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9Eb2N1bWVudERCLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTBDO0FBQzFDLHFEQUF3RDtBQUN4RCxpREFLNkI7QUFDN0IsdUVBQXdEO0FBQ3hELDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFTMUMsTUFBYSxVQUFXLFNBQVEsc0JBQVM7SUFHdkMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUM5RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSwyQkFBZSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDckQsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDeEIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixpQkFBaUIsRUFBRSxrQ0FBa0M7YUFDdEQ7WUFDRCxZQUFZLEVBQUUsc0JBQVksQ0FBQyxFQUFFLENBQUMsdUJBQWEsQ0FBQyxFQUFFLEVBQUUsc0JBQVksQ0FBQyxNQUFNLENBQUM7WUFDcEUsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsMkJBQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUM7YUFDdkUsbUJBQW1CLENBQUMsVUFBVSxDQUFDO1lBQ2hDLDRFQUE0RTthQUMzRSxZQUFZLEVBQUUsQ0FBQztRQUVsQixNQUFNLE1BQU0sR0FBRyxJQUFJLDJCQUFNLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUMvQyxpQkFBaUIsRUFBRSxJQUFJLHlCQUFXLENBQ2hDLGFBQWEsS0FBSyxDQUFDLFFBQVEsSUFBSSxRQUFRLElBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFFBQy9CLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLCtFQUErRSxDQUMvSDtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFFeEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLDhCQUE4QjtZQUNwQyxHQUFHLEVBQUUsbUJBQW1CO1lBQ3hCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWU7U0FDcEMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixHQUFHLEVBQUUsWUFBWTtZQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVM7U0FDeEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUExQ0gsZ0NBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VjcmV0VmFsdWUgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IERhdGFiYXNlQ2x1c3RlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZG9jZGJcIjtcbmltcG9ydCB7XG4gIElWcGMsXG4gIEluc3RhbmNlQ2xhc3MsXG4gIEluc3RhbmNlU2l6ZSxcbiAgSW5zdGFuY2VUeXBlLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgU2VjcmV0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlclwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGNyZWF0ZUV4cG9ydGVyIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnREQlByb3BzIHtcbiAgcmVhZG9ubHkgc3RhY2tOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNlY3JldE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xufVxuXG5leHBvcnQgY2xhc3MgRG9jdW1lbnREQiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHByaXZhdGUgY2x1c3RlcjogRGF0YWJhc2VDbHVzdGVyO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEb2N1bWVudERCUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5jbHVzdGVyID0gbmV3IERhdGFiYXNlQ2x1c3Rlcih0aGlzLCBgRG9jdW1lbnREYmAsIHtcbiAgICAgIG1hc3RlclVzZXI6IHtcbiAgICAgICAgdXNlcm5hbWU6IHByb3BzLnVzZXJuYW1lLFxuICAgICAgICBzZWNyZXROYW1lOiBwcm9wcy5zZWNyZXROYW1lLFxuICAgICAgICBleGNsdWRlQ2hhcmFjdGVyczogXCJcXFwiQCUmL1xcXFx7fSgpW108PnxgJyw6Oys/fio9IV4jXy1cIixcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZS5vZihJbnN0YW5jZUNsYXNzLlQzLCBJbnN0YW5jZVNpemUuTUVESVVNKSxcbiAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcGFzc3dvcmQgPSBTZWNyZXQuZnJvbVNlY3JldE5hbWVWMih0aGlzLCBcIlNlY3JldFwiLCBwcm9wcy5zZWNyZXROYW1lKVxuICAgICAgLnNlY3JldFZhbHVlRnJvbUpzb24oXCJwYXNzd29yZFwiKVxuICAgICAgLy8gVW5zYWZlIHVud3JhcCBpcyBva2F5LCBzaW5jZSB0aGUgb25seSB1c2UgaXMgdG8gd3JhcCBpdCBpbiBhbm90aGVyIHNlY3JldFxuICAgICAgLnVuc2FmZVVud3JhcCgpO1xuXG4gICAgY29uc3Qgc2VjcmV0ID0gbmV3IFNlY3JldCh0aGlzLCBcImRiLXVybC1zZWNyZXRcIiwge1xuICAgICAgc2VjcmV0U3RyaW5nVmFsdWU6IG5ldyBTZWNyZXRWYWx1ZShcbiAgICAgICAgYG1vbmdvZGI6Ly8ke3Byb3BzLnVzZXJuYW1lfToke3Bhc3N3b3JkfUAke1xuICAgICAgICAgIHRoaXMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQuaG9zdG5hbWVcbiAgICAgICAgfToke3RoaXMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQucG9ydEFzU3RyaW5nKCl9Lz90bHM9dHJ1ZSZyZXBsaWNhU2V0PXJzMCZyZWFkUHJlZmVyZW5jZT1zZWNvbmRhcnlQcmVmZXJyZWQmcmV0cnlXcml0ZXM9ZmFsc2VgLFxuICAgICAgKSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJkb2N1bWVudC1kYlwiKTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiRG9jdW1lbnREQiBTZWN1cml0eSBHcm91cCBJZFwiLFxuICAgICAga2V5OiBcInNlY3VyaXR5LWdyb3VwLWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5jbHVzdGVyLnNlY3VyaXR5R3JvdXBJZCxcbiAgICB9KTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiRG9jdW1lbnREQiBTZWNyZXQgQVJOXCIsXG4gICAgICBrZXk6IFwic2VjcmV0LWFyblwiLFxuICAgICAgdmFsdWU6IHNlY3JldC5zZWNyZXRBcm4sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IRole } from "aws-cdk-lib/aws-iam";
|
|
2
|
+
import * as sqs from "aws-cdk-lib/aws-sqs";
|
|
3
|
+
import { Construct } from "constructs";
|
|
4
|
+
export interface MessageQueueProps {
|
|
5
|
+
readonly scope: Construct;
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly sourceServiceNames: string[];
|
|
8
|
+
readonly eventName: string;
|
|
9
|
+
readonly listenerServiceNames: string[];
|
|
10
|
+
readonly maxReceiveCount?: number;
|
|
11
|
+
readonly timeoutSeconds?: number;
|
|
12
|
+
readonly endlessRetry?: boolean;
|
|
13
|
+
readonly role: IRole;
|
|
14
|
+
}
|
|
15
|
+
export declare class MessageQueue extends Construct {
|
|
16
|
+
readonly queueUrls: Record<string, string>;
|
|
17
|
+
private sourceQueues;
|
|
18
|
+
private listenerQueues;
|
|
19
|
+
constructor(props: MessageQueueProps);
|
|
20
|
+
getListenerQueue(serviceName: string): sqs.Queue;
|
|
21
|
+
getSourceQueue(serviceName: string): sqs.Queue;
|
|
22
|
+
private createQueue;
|
|
23
|
+
}
|