@bitblit/ratchet-common 4.0.183-alpha → 4.0.185-alpha

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.
Files changed (111) hide show
  1. package/lib/2d/line-2d.d.ts +5 -0
  2. package/lib/2d/plane-2d.d.ts +6 -0
  3. package/lib/2d/point-2d.d.ts +4 -0
  4. package/lib/2d/poly-line-2d.d.ts +4 -0
  5. package/lib/2d/ratchet-2d.d.ts +37 -0
  6. package/lib/2d/ratchet-2d.spec.d.ts +1 -0
  7. package/lib/build/build-information.d.ts +8 -0
  8. package/lib/build/ratchet-common-info.d.ts +5 -0
  9. package/lib/histogram/histogram-entry.d.ts +4 -0
  10. package/lib/histogram/histogram.d.ts +12 -0
  11. package/lib/histogram/histogram.spec.d.ts +1 -0
  12. package/lib/index.d.ts +1 -0
  13. package/lib/index.mjs +1 -1
  14. package/lib/index.mjs.map +1 -1
  15. package/lib/jwt/common-jwt-token.d.ts +6 -0
  16. package/lib/jwt/expired-jwt-handling.d.ts +5 -0
  17. package/lib/jwt/jwt-ratchet-like.d.ts +15 -0
  18. package/lib/jwt/jwt-ratchet.d.ts +30 -0
  19. package/lib/jwt/jwt-ratchet.spec.d.ts +1 -0
  20. package/lib/jwt/jwt-token-base.d.ts +9 -0
  21. package/lib/lang/array-ratchet.d.ts +14 -0
  22. package/lib/lang/array-ratchet.spec.d.ts +1 -0
  23. package/lib/lang/base64-ratchet.d.ts +10 -0
  24. package/lib/lang/base64-ratchet.spec.d.ts +1 -0
  25. package/lib/lang/boolean-ratchet.d.ts +7 -0
  26. package/lib/lang/boolean-ratchet.spec.d.ts +1 -0
  27. package/lib/lang/composite-last-success-provider.d.ts +7 -0
  28. package/lib/lang/composite-last-success-provider.spec.d.ts +1 -0
  29. package/lib/lang/date-ratchet.d.ts +11 -0
  30. package/lib/lang/date-ratchet.spec.d.ts +1 -0
  31. package/lib/lang/duration-ratchet.d.ts +7 -0
  32. package/lib/lang/duration-ratchet.spec.d.ts +1 -0
  33. package/lib/lang/enum-ratchet.d.ts +5 -0
  34. package/lib/lang/enum-ratchet.spec.d.ts +5 -0
  35. package/lib/lang/error-ratchet.d.ts +6 -0
  36. package/lib/lang/error-ratchet.spec.d.ts +1 -0
  37. package/lib/lang/esm-ratchet.d.ts +4 -0
  38. package/lib/lang/expiring-object.d.ts +20 -0
  39. package/lib/lang/expiring-object.spec.d.ts +1 -0
  40. package/lib/lang/geolocation-ratchet.d.ts +40 -0
  41. package/lib/lang/geolocation-ratchet.spec.d.ts +1 -0
  42. package/lib/lang/global-ratchet.d.ts +6 -0
  43. package/lib/lang/global-ratchet.spec.d.ts +1 -0
  44. package/lib/lang/key-value.d.ts +4 -0
  45. package/lib/lang/last-success-provider.d.ts +3 -0
  46. package/lib/lang/map-ratchet.d.ts +15 -0
  47. package/lib/lang/map-ratchet.spec.d.ts +1 -0
  48. package/lib/lang/no.d.ts +3 -0
  49. package/lib/lang/no.spec.d.ts +1 -0
  50. package/lib/lang/number-ratchet.d.ts +20 -0
  51. package/lib/lang/number-ratchet.spec.d.ts +1 -0
  52. package/lib/lang/parsed-url.d.ts +10 -0
  53. package/lib/lang/promise-ratchet.d.ts +18 -0
  54. package/lib/lang/promise-ratchet.spec.d.ts +1 -0
  55. package/lib/lang/require-ratchet.d.ts +11 -0
  56. package/lib/lang/require-ratchet.spec.d.ts +3 -0
  57. package/lib/lang/stop-watch.d.ts +17 -0
  58. package/lib/lang/string-ratchet.d.ts +28 -0
  59. package/lib/lang/string-ratchet.spec.d.ts +1 -0
  60. package/lib/lang/time-zone-ratchet.d.ts +19 -0
  61. package/lib/lang/time-zone-ratchet.spec.d.ts +1 -0
  62. package/lib/lang/timeout-token.d.ts +9 -0
  63. package/lib/lang/timeout-token.spec.d.ts +1 -0
  64. package/lib/logger/classic-single-line-log-message-formatter.d.ts +6 -0
  65. package/lib/logger/log-message-builder.d.ts +14 -0
  66. package/lib/logger/log-message-format-type.d.ts +5 -0
  67. package/lib/logger/log-message-formatter.d.ts +5 -0
  68. package/lib/logger/log-message-processor.d.ts +5 -0
  69. package/lib/logger/log-message.d.ts +8 -0
  70. package/lib/logger/log-snapshot.d.ts +5 -0
  71. package/lib/logger/logger-instance.d.ts +46 -0
  72. package/lib/logger/logger-level-name.d.ts +8 -0
  73. package/lib/logger/logger-meta.d.ts +6 -0
  74. package/lib/logger/logger-options.d.ts +13 -0
  75. package/lib/logger/logger-output-function.d.ts +5 -0
  76. package/lib/logger/logger-ring-buffer.d.ts +18 -0
  77. package/lib/logger/logger-util.d.ts +8 -0
  78. package/lib/logger/logger-util.spec.d.ts +1 -0
  79. package/lib/logger/logger.d.ts +43 -0
  80. package/lib/logger/logger.spec.d.ts +1 -0
  81. package/lib/logger/none-log-message-formatter.d.ts +6 -0
  82. package/lib/logger/structured-json-log-message-formatter.d.ts +6 -0
  83. package/lib/network/browser-local-ip-provider.d.ts +7 -0
  84. package/lib/network/browser-local-ip-provider.spec.d.ts +1 -0
  85. package/lib/network/fixed-local-ip-provider.d.ts +6 -0
  86. package/lib/network/local-ip-provider.d.ts +3 -0
  87. package/lib/network/network-ratchet.d.ts +9 -0
  88. package/lib/network/network-ratchet.spec.d.ts +1 -0
  89. package/lib/network/restful-api-http-error.d.ts +41 -0
  90. package/lib/network/restful-api-http-error.spec.d.ts +1 -0
  91. package/lib/stream/buffer-writable.d.ts +9 -0
  92. package/lib/stream/multi-stream.d.ts +7 -0
  93. package/lib/stream/stream-ratchet.d.ts +12 -0
  94. package/lib/stream/stream-ratchet.spec.d.ts +1 -0
  95. package/lib/stream/string-writable.d.ts +8 -0
  96. package/lib/stream/string-writable.spec.d.ts +1 -0
  97. package/lib/template/ratchet-template-renderer.d.ts +4 -0
  98. package/lib/third-party/google/google-recaptcha-ratchet.d.ts +4 -0
  99. package/lib/third-party/google/google-recaptcha-ratchet.spec.d.ts +1 -0
  100. package/lib/third-party/twilio/twilio-ratchet.d.ts +11 -0
  101. package/lib/transform/built-in-transforms.d.ts +18 -0
  102. package/lib/transform/transform-ratchet.d.ts +7 -0
  103. package/lib/transform/transform-ratchet.spec.d.ts +1 -0
  104. package/lib/transform/transform-rule.d.ts +3 -0
  105. package/lib/tx/transaction-configuration.d.ts +7 -0
  106. package/lib/tx/transaction-final-state.d.ts +5 -0
  107. package/lib/tx/transaction-ratchet.d.ts +6 -0
  108. package/lib/tx/transaction-ratchet.spec.d.ts +1 -0
  109. package/lib/tx/transaction-result.d.ts +9 -0
  110. package/lib/tx/transaction-step.d.ts +5 -0
  111. package/package.json +3 -3
package/lib/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/logger/logger-level-name.ts","../src/logger/logger-output-function.ts","../src/logger/log-message-format-type.ts","../src/jwt/expired-jwt-handling.ts","../src/tx/transaction-final-state.ts","../src/logger/logger-ring-buffer.ts","../src/logger/logger-util.ts","../src/logger/classic-single-line-log-message-formatter.ts","../src/logger/none-log-message-formatter.ts","../src/logger/structured-json-log-message-formatter.ts","../src/lang/require-ratchet.ts","../src/lang/string-ratchet.ts","../src/logger/logger-instance.ts","../src/logger/logger.ts","../src/lang/number-ratchet.ts","../src/lang/boolean-ratchet.ts","../src/2d/ratchet-2d.ts","../src/build/ratchet-common-info.ts","../src/histogram/histogram.ts","../src/lang/duration-ratchet.ts","../src/jwt/jwt-ratchet.ts","../src/lang/error-ratchet.ts","../src/lang/map-ratchet.ts","../src/lang/array-ratchet.ts","../src/lang/base64-ratchet.ts","../src/lang/composite-last-success-provider.ts","../src/lang/date-ratchet.ts","../src/lang/enum-ratchet.ts","../src/lang/esm-ratchet.ts","../src/lang/expiring-object.ts","../src/lang/geolocation-ratchet.ts","../src/lang/global-ratchet.ts","../src/lang/key-value.ts","../src/lang/no.ts","../src/lang/timeout-token.ts","../src/lang/stop-watch.ts","../src/lang/promise-ratchet.ts","../src/lang/time-zone-ratchet.ts","../src/logger/log-message-builder.ts","../src/network/network-ratchet.ts","../src/network/browser-local-ip-provider.ts","../src/network/fixed-local-ip-provider.ts","../src/stream/buffer-writable.ts","../src/stream/multi-stream.ts","../src/stream/stream-ratchet.ts","../src/stream/string-writable.ts","../src/third-party/google/google-recaptcha-ratchet.ts","../src/third-party/twilio/twilio-ratchet.ts","../src/transform/built-in-transforms.ts","../src/transform/transform-ratchet.ts","../src/tx/transaction-ratchet.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["LoggerLevelName","LoggerOutputFunction","LogMessageFormatType","ExpiredJwtHandling","TransactionFinalState","LoggerRingBuffer","_lastLogMessage","messageSource","timestamp","Date","getTime","lvl","info","_buffer","_bufferIdx","_lastSnapshotIdx","_bufferSize","constructor","size","Error","this","currentIndex","lastSnapshotIdx","bufferSize","newSize","clearRingBuffer","getMessages","inStartFrom","clear","reverseSort","rval","start","slice","firstIdx","i","Math","max","push","reverse","takeSnapshot","trailingEdge","messages","logMessagesTruncated","getLastLogMessage","Object","assign","addToRingBuffer","newMsg","LoggerUtil","static","error","warn","verbose","debug","silly","outputFn","Console","output","Map","StdOut","process","stdout","write","myStdOut","chunk","cb","set","console","ConsoleNoDebug","log","targetLevel","currentEnabled","idxTarget","LOG_LEVELS_IN_ORDER","indexOf","ClassicSingleLineLogMessageFormatter","formatMessage","msg","meta","tmp","options","trace","util","format","subsVars","NoneLogMessageFormatter","StructuredJsonLogMessageFormatter","globalVars","params","toISOString","loggerInstanceName","loggerInstanceId","JSON","stringify","RequireRatchet","ob","name","isNullOrUndefined","trim","length","ob1","ob2","message","equal","arr","expectedLength","customMsg","notNullOrUndefined","restArgs","args","Array","from","arguments","len","noNullOrUndefinedValuesInArray","StringRatchet","val","TextEncoder","encode","TextDecoder","decode","trimToNull","parse","err","attemptJsonParse","input","check","Set","test","charAt","has","add","alphabet","true","allUnique","step","allPermutationsOfLength","forEach","s","replace","c","r","random","toString","floor","value","toLowerCase","RFC_3986_RESERVED","bytes","decimals","dm","parseFloat","pow","toFixed","String","inVal","validCharsIn","validChars","prefixLength","suffixLength","pl","sl","rem","substring","pad","negative","sVal","startsWith","safeString","x","trimToEmpty","trimAllStringPropertiesInPlace","toEmpty","keys","key","stringContainsOnlyNumbers","split","join","reduce","previousValue","currentValue","charCodeAt","LoggerInstance","_loggerMeta","_ringBuffer","_formatter","_level","_handlerFunctionMap","_options","inOptions","addPreProcessor","proc","preProcessors","ringBuffer","dumpConfigurationIntoLog","dumpOptionsIntoLog","labels","map","p","label","changeRingBufferSize","ringBufferSize","updateTracePrefix","newValue","newOpts","formatType","None","StructuredJson","initialLevel","handlerFunctionMap","outputFunction","oldId","createRandomHexString","level","newLevel","consoleLogPassThru","levelIsEnabled","passThruPrefix","unshift","get","defaultHandlerFunction","createLogMessage","now","formatMessages","msgs","m","filter","recordMessageBuilder","msgBuild","recordMessage","toMessage","inMsg","errorP","warnP","infoP","verboseP","debugP","sillyP","logByLevel","importMessages","prefixIn","addTimestamp","prefix","mOut","Logger","ClassicSingleLine","DEFAULT_OPTIONS","retroactive","LOGGER_INSTANCES","values","li","loggerName","inst","applyDefaultsToOptions","getLogger","buf","NumberRatchet","placesAfterPoint","v","safeNumber","MAX_LEADING_ZEROS_FORMAT_LENGTH","inTest","inP1","inP2","p1","p2","ifNotNumber","useDefaultForNullAndUndefined","type","Number","isNaN","undefined","inputCSV","b1","b2","low","min","high","windowSize","inputData","minRangeSize","sort","a","b","singles","ranges","j","items","buckets","offset","loc","minInclusive","maxExclusive","BooleanRatchet","vals","emptyArraysReturn","parseBool","Ratchet2d","points","validPoints","y","width","height","src","dst","validPlane","plane","line","validPoint","samePoint","lines","allTrue","l","validLine","pline","pts","validPolyLine","polyLine","validLines","currentPLine","lineToPolyLine","lastPointOnPolyLine","pt","planeContainsPoint","flat","times","translate","translateToOriginVector","minimalContainingPlane","xToY","mirrorPointsOnPlane","timesToRotate","rotateRightAboutOrigin90Degrees","planeContainsPoints","planeContainsLines","polyLineToLines","xlate","mirrorX","mirrorY","scale","scaleVector","rightToLeft","topToBottom","point","transformPointsToNewPlane","curveDef","inputX","idx","xSpread","ySpread","yAdd","RatchetInfo","version","hash","branch","tag","timeBuiltISO","notes","Histogram","entries","update","addValue","entry","find","e","item","count","localeCompare","sortKeys","getEntries","getTotalCount","h","countForValue","percentForValue","total","DurationRatchet","ms","includeMS","rem_ms","seconds","minutes","hours","days","f","leadingZeros","d1","d2","DateTime","fromJSDate","diff","startEpochMS","endEpochMS","timezone","outputFormat","stepUnit","curDate","fromMillis","setZone","endDate","toFormat","plus","JwtRatchet","_encryptionKeyPromise","_decryptKeysPromise","_jtiGenerator","_decryptOnlyKeyUseLogLevel","_parseFailureLogLevel","createType4Guid","encryptionKeyPromise","decryptKeysPromise","jtiGenerator","decryptOnlyKeyUseLogLevel","parseFailureLogLevel","EXPIRED_FLAG_NAME","payloadString","decryptKey","logLevel","jwt","verify","ignoreExpiration","decodeTokenNoVerify","nowSecond","exp","expSeconds","secs","secondsRemainingUntilExpiration","async","expiredHandling","RETURN_NULL","encKeys","encryptionKeyArray","decKeys","concat","keysTried","payload","obscure","invalidSafeDecode","nowSeconds","nbfSeconds","nbf","age","formatMsDuration","THROW_EXCEPTION","ADD_FLAG","encKey","isArray","expirationSeconds","overrideEncryptionKey","selectRandomEncryptionKey","jti","expires","sign","tokenString","allowExpired","handling","decodeToken","originalDurationSeconds","iat","newExpirationSeconds","removeJwtFields","removeExpiredFlag","createTokenString","token","k","ErrorRatchet","err2","fErr","MapRatchet","separator","path","target","splice","propName","toSearch","findValue","dotPath","object1","object2","returnArray","list","obj","stripZero","stripNull","stripUndefined","stripEmptyString","o","cleanup","finder","newVal","fnName","keyName","keyNameCI","ArrayRatchet","ar1","ar2","fn","id1","id2","matching","setOneOnly","setTwoOnly","aVal","pVal","comp","fieldDotPath","bottomIdx","findSplit","topIdx","bottomValue","findValueDotPath","curIdx","curVal","Base64Ratchet","generateBase64VersionOfString","base64StringToString","blob","Promise","resolve","reject","reader","FileReader","onloadend","result","readAsDataURL","generateBase64VersionOfBuffer","Buffer","encoding","CompositeLastSuccessProvider","sources","mostRecent","mostRecentSrc","lastSuccess","DateRatchet","FULL_DATE_FORMAT","DEFAULT_DATE_FORMAT","fromFormat","toJSDate","templ","COMMON_US_DATE_FORMAT","EnumRatchet","enumeration","$enum","getValues","caseSensitive","asValueOrDefault","mKey","listEnumKeys","toUpperCase","keyToEnum","EsmRatchet","root","url","fileURLToPath","URL","ExpiringObject","_config","_cacheObject","_lastUpdatedEpochMS","_timeRemainingMS","inputConfig","defaultConfig","overrideTimeRemainingMS","timeToLiveMS","throwFormattedErr","initialValue","defaultTimeRemainingMS","generator","lastUpdatedEpochMS","ageMS","doNotUpdateClock","ExpiringObjectConfig","GeolocationRatchet","lat1","lon1","lat2","lon2","unit","uU","radlat1","PI","radlat2","theta","radtheta","dist","sin","cos","acos","loc1","loc2","distanceBetweenLocations","lat","lng","latitudeInDecimalDegress","latInRads","cosLat","miles","degreeOfLatLngInMiles","bounds","extent","origin","slices","field","centerOfBounds","splits","inputVal","latSlices","lngSlices","lngSplits","calculateSplits","lngStartIdx","lngEndIdx","lngBatch","latSplits","latStartIdx","latEndIdx","latBatch","combineBounds","inp","allowCrossover","minLat","maxLat","minLng","maxLng","roundDigits","radiusMiles","milesInDegLatLng","bound","between","inBounds","minPointsBeforeMapping","mp","buildRatchetLocationBoundsMap","pointInRatchetLocationBoundsMap","pointInBounds","findRatchetLocationBoundsMapEntry","latOffset","lngOffset","ltIdx","trunc","lngIdx","mapping","latEntries","lngEntries","newRow","row","GlobalRatchet","returnNullOnNone","env","global","envVar","fetchGlobalRecord","KeyValue","No","TimeoutToken","title","timeoutMS","__timeoutTokenFlagField","writeToLog","StopWatch","starts","ends","createTime","notNullUndefinedOrOnlyWhitespaceString","stop","reset","delete","hasTimer","shortForm","dump","logExpected","pctComplete","dumpExpected","cleanName","end","elapsedMS","remainMS","PromiseRatchet","evtSrc","okEvtNames","errEvtNames","res","rej","on","srcPromise","race","createTimeoutPromise","id","setTimeout","clearTimeout","time","autoDebug","exit","promise","then","dumpResult","catch","dumpError","testFunction","expectedValue","intervalMS","maxCycles","wait","waitFor","promiseFn","context","maxConcurrent","sw","remain","ctx","processed","totalCount","curBatch","proms","apply","all","pct","wrappedParams","wrapElementsInArray","runBoundedParallel","array","callback","index","TimeZoneRatchet","currentHour","local","hour","toEpochSeconds","dt","round","toMillis","startOfTodayEpochSeconds","minute","second","millisecond","startOfMatchingDayEpochSeconds","inputTS","startOfMatchingDayEpochMS","startOfCurrentHourEpochSeconds","startOfCurrentMinuteEpochSeconds","startOfCurrentSecondEpochSeconds","startOfTodayEpochMS","dailySlotCount","slotWidthMs","ceil","currentTimeSlotIdx","startOfToday","delta","matchingTimeSlotIdx","startOfCurrentSlotEpochMS","startOfMatchingSlotEpochMS","LogMessageBuilder","wrapped","clone","subVars","NetworkRatchet","useCache","LOCAL_IP","window","RTCPeerConnection","rtc","iceServers","addrs","create","createDataChannel","reliable","onicecandidate","evt","candidate","grepSDP","createOffer","offerDesc","sdp","setLocalDescription","updateLocalIP","href","match","protocol","host","hostname","port","pathname","search","newIp","parts","addr","updateAddressList","newAddr","displayAddrs","multi","BrowserLocalIpProvider","currentIp","findLocalIp","ready","currentLocalIpAddress","FixedLocalIpProvider","fixed","BufferWritable","Writable","_val","super","_write","MultiStream","Readable","_object","object","objectMode","_read","StreamRatchet","stream","bufs","next","read","out","writer","WritableStream","controller","stringToUint8Array","abort","reason","highWaterMark","pipeTo","webReadableStreamToBuffer","ReadableStream","enqueue","close","stringToReadable","StringWritable","GoogleRecaptchaRatchet","keySecret","fetchFn","fetch","GOOGLE_VERIFY_URL","resp","body","json","success","TwilioRatchet","accountSid","authToken","outBoundNumber","isValidE164Number","recipientPhoneNumbers","ratchet","sendMessage","sid","phoneNumber","encodeURIComponent","post","method","headers","authorization","generateTwilioBasicAuth","TWILLIO_BASE_API_URL","parsedResponse","num","BuiltInTransforms","rule","transform","isKey","group1","newFieldName","oldFieldNamesInOrder","abortIfFieldMissing","n","temp","fieldNames","oldVal","oldName","newName","valueToAdd","oldFormat","newFormat","oldValue","TransformRatchet","toTransform","rules","transformGeneric","applyTransformToPrimitive","applyTransformToObject","newKey","TransactionRatchet","steps","initialContext","inConfiguration","config","stepLogLevel","finalContext","finalState","stepNames","execute","errorStep","rollback","rollbackError","rollbackErrorStep","RollbackFailed","RolledBack","Success","executeAfterRollback","executeAfterRollbackFailure"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/logger/logger-level-name.ts","../src/logger/logger-output-function.ts","../src/logger/log-message-format-type.ts","../src/jwt/expired-jwt-handling.ts","../src/tx/transaction-final-state.ts","../src/logger/logger-ring-buffer.ts","../src/logger/logger-util.ts","../src/logger/classic-single-line-log-message-formatter.ts","../src/logger/none-log-message-formatter.ts","../src/logger/structured-json-log-message-formatter.ts","../src/lang/require-ratchet.ts","../src/lang/string-ratchet.ts","../src/logger/logger-instance.ts","../src/logger/logger.ts","../src/lang/number-ratchet.ts","../src/lang/boolean-ratchet.ts","../src/2d/ratchet-2d.ts","../src/build/ratchet-common-info.ts","../src/histogram/histogram.ts","../src/lang/duration-ratchet.ts","../src/jwt/jwt-ratchet.ts","../src/lang/error-ratchet.ts","../src/lang/map-ratchet.ts","../src/lang/array-ratchet.ts","../src/lang/base64-ratchet.ts","../src/lang/composite-last-success-provider.ts","../src/lang/date-ratchet.ts","../src/lang/enum-ratchet.ts","../src/lang/esm-ratchet.ts","../src/lang/expiring-object.ts","../src/lang/geolocation-ratchet.ts","../src/lang/global-ratchet.ts","../src/lang/key-value.ts","../src/lang/no.ts","../src/lang/timeout-token.ts","../src/lang/stop-watch.ts","../src/lang/promise-ratchet.ts","../src/lang/time-zone-ratchet.ts","../src/logger/log-message-builder.ts","../src/network/network-ratchet.ts","../src/network/browser-local-ip-provider.ts","../src/network/fixed-local-ip-provider.ts","../src/network/restful-api-http-error.ts","../src/stream/buffer-writable.ts","../src/stream/multi-stream.ts","../src/stream/stream-ratchet.ts","../src/stream/string-writable.ts","../src/third-party/google/google-recaptcha-ratchet.ts","../src/third-party/twilio/twilio-ratchet.ts","../src/transform/built-in-transforms.ts","../src/transform/transform-ratchet.ts","../src/tx/transaction-ratchet.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["LoggerLevelName","LoggerOutputFunction","LogMessageFormatType","ExpiredJwtHandling","TransactionFinalState","LoggerRingBuffer","_lastLogMessage","messageSource","timestamp","Date","getTime","lvl","info","_buffer","_bufferIdx","_lastSnapshotIdx","_bufferSize","constructor","size","Error","this","currentIndex","lastSnapshotIdx","bufferSize","newSize","clearRingBuffer","getMessages","inStartFrom","clear","reverseSort","rval","start","slice","firstIdx","i","Math","max","push","reverse","takeSnapshot","trailingEdge","messages","logMessagesTruncated","getLastLogMessage","Object","assign","addToRingBuffer","newMsg","LoggerUtil","static","error","warn","verbose","debug","silly","outputFn","Console","output","Map","StdOut","process","stdout","write","myStdOut","chunk","cb","set","console","ConsoleNoDebug","log","targetLevel","currentEnabled","idxTarget","LOG_LEVELS_IN_ORDER","indexOf","ClassicSingleLineLogMessageFormatter","formatMessage","msg","meta","tmp","options","trace","util","format","subsVars","NoneLogMessageFormatter","StructuredJsonLogMessageFormatter","globalVars","params","toISOString","loggerInstanceName","loggerInstanceId","JSON","stringify","RequireRatchet","ob","name","isNullOrUndefined","trim","length","ob1","ob2","message","equal","arr","expectedLength","customMsg","notNullOrUndefined","restArgs","args","Array","from","arguments","len","noNullOrUndefinedValuesInArray","StringRatchet","val","TextEncoder","encode","TextDecoder","decode","trimToNull","parse","err","attemptJsonParse","input","check","Set","test","charAt","has","add","alphabet","true","allUnique","step","allPermutationsOfLength","forEach","s","replace","c","r","random","toString","floor","value","toLowerCase","RFC_3986_RESERVED","bytes","decimals","dm","parseFloat","pow","toFixed","String","inVal","validCharsIn","validChars","prefixLength","suffixLength","pl","sl","rem","substring","pad","negative","sVal","startsWith","safeString","x","trimToEmpty","trimAllStringPropertiesInPlace","toEmpty","keys","key","stringContainsOnlyNumbers","split","join","reduce","previousValue","currentValue","charCodeAt","LoggerInstance","_loggerMeta","_ringBuffer","_formatter","_level","_handlerFunctionMap","_options","inOptions","addPreProcessor","proc","preProcessors","ringBuffer","dumpConfigurationIntoLog","dumpOptionsIntoLog","labels","map","p","label","changeRingBufferSize","ringBufferSize","updateTracePrefix","newValue","newOpts","formatType","None","StructuredJson","initialLevel","handlerFunctionMap","outputFunction","oldId","createRandomHexString","level","newLevel","consoleLogPassThru","levelIsEnabled","passThruPrefix","unshift","get","defaultHandlerFunction","createLogMessage","now","formatMessages","msgs","m","filter","recordMessageBuilder","msgBuild","recordMessage","toMessage","inMsg","errorP","warnP","infoP","verboseP","debugP","sillyP","logByLevel","importMessages","prefixIn","addTimestamp","prefix","mOut","Logger","ClassicSingleLine","DEFAULT_OPTIONS","retroactive","LOGGER_INSTANCES","values","li","loggerName","inst","applyDefaultsToOptions","getLogger","buf","NumberRatchet","placesAfterPoint","v","safeNumber","MAX_LEADING_ZEROS_FORMAT_LENGTH","inTest","inP1","inP2","p1","p2","ifNotNumber","useDefaultForNullAndUndefined","type","Number","isNaN","undefined","inputCSV","b1","b2","low","min","high","windowSize","inputData","minRangeSize","sort","a","b","singles","ranges","j","items","buckets","offset","loc","minInclusive","maxExclusive","BooleanRatchet","vals","emptyArraysReturn","parseBool","Ratchet2d","points","validPoints","y","width","height","src","dst","validPlane","plane","line","validPoint","samePoint","lines","allTrue","l","validLine","pline","pts","validPolyLine","polyLine","validLines","currentPLine","lineToPolyLine","lastPointOnPolyLine","pt","planeContainsPoint","flat","times","translate","translateToOriginVector","minimalContainingPlane","xToY","mirrorPointsOnPlane","timesToRotate","rotateRightAboutOrigin90Degrees","planeContainsPoints","planeContainsLines","polyLineToLines","xlate","mirrorX","mirrorY","scale","scaleVector","rightToLeft","topToBottom","point","transformPointsToNewPlane","curveDef","inputX","idx","xSpread","ySpread","yAdd","RatchetInfo","version","hash","branch","tag","timeBuiltISO","notes","Histogram","entries","update","addValue","entry","find","e","item","count","localeCompare","sortKeys","getEntries","getTotalCount","h","countForValue","percentForValue","total","DurationRatchet","ms","includeMS","rem_ms","seconds","minutes","hours","days","f","leadingZeros","d1","d2","DateTime","fromJSDate","diff","startEpochMS","endEpochMS","timezone","outputFormat","stepUnit","curDate","fromMillis","setZone","endDate","toFormat","plus","JwtRatchet","_encryptionKeyPromise","_decryptKeysPromise","_jtiGenerator","_decryptOnlyKeyUseLogLevel","_parseFailureLogLevel","createType4Guid","encryptionKeyPromise","decryptKeysPromise","jtiGenerator","decryptOnlyKeyUseLogLevel","parseFailureLogLevel","EXPIRED_FLAG_NAME","payloadString","decryptKey","logLevel","jwt","verify","ignoreExpiration","decodeTokenNoVerify","nowSecond","exp","expSeconds","secs","secondsRemainingUntilExpiration","async","expiredHandling","RETURN_NULL","encKeys","encryptionKeyArray","decKeys","concat","keysTried","payload","obscure","invalidSafeDecode","nowSeconds","nbfSeconds","nbf","age","formatMsDuration","THROW_EXCEPTION","ADD_FLAG","encKey","isArray","expirationSeconds","overrideEncryptionKey","selectRandomEncryptionKey","jti","expires","sign","tokenString","allowExpired","handling","decodeToken","originalDurationSeconds","iat","newExpirationSeconds","removeJwtFields","removeExpiredFlag","createTokenString","token","k","ErrorRatchet","err2","fErr","MapRatchet","separator","path","target","splice","propName","toSearch","findValue","dotPath","object1","object2","returnArray","list","obj","stripZero","stripNull","stripUndefined","stripEmptyString","o","cleanup","finder","newVal","fnName","keyName","keyNameCI","ArrayRatchet","ar1","ar2","fn","id1","id2","matching","setOneOnly","setTwoOnly","aVal","pVal","comp","fieldDotPath","bottomIdx","findSplit","topIdx","bottomValue","findValueDotPath","curIdx","curVal","Base64Ratchet","generateBase64VersionOfString","base64StringToString","blob","Promise","resolve","reject","reader","FileReader","onloadend","result","readAsDataURL","generateBase64VersionOfBuffer","Buffer","encoding","CompositeLastSuccessProvider","sources","mostRecent","mostRecentSrc","lastSuccess","DateRatchet","FULL_DATE_FORMAT","DEFAULT_DATE_FORMAT","fromFormat","toJSDate","templ","COMMON_US_DATE_FORMAT","EnumRatchet","enumeration","$enum","getValues","caseSensitive","asValueOrDefault","mKey","listEnumKeys","toUpperCase","keyToEnum","EsmRatchet","root","url","fileURLToPath","URL","ExpiringObject","_config","_cacheObject","_lastUpdatedEpochMS","_timeRemainingMS","inputConfig","defaultConfig","overrideTimeRemainingMS","timeToLiveMS","throwFormattedErr","initialValue","defaultTimeRemainingMS","generator","lastUpdatedEpochMS","ageMS","doNotUpdateClock","ExpiringObjectConfig","GeolocationRatchet","lat1","lon1","lat2","lon2","unit","uU","radlat1","PI","radlat2","theta","radtheta","dist","sin","cos","acos","loc1","loc2","distanceBetweenLocations","lat","lng","latitudeInDecimalDegress","latInRads","cosLat","miles","degreeOfLatLngInMiles","bounds","extent","origin","slices","field","centerOfBounds","splits","inputVal","latSlices","lngSlices","lngSplits","calculateSplits","lngStartIdx","lngEndIdx","lngBatch","latSplits","latStartIdx","latEndIdx","latBatch","combineBounds","inp","allowCrossover","minLat","maxLat","minLng","maxLng","roundDigits","radiusMiles","milesInDegLatLng","bound","between","inBounds","minPointsBeforeMapping","mp","buildRatchetLocationBoundsMap","pointInRatchetLocationBoundsMap","pointInBounds","findRatchetLocationBoundsMapEntry","latOffset","lngOffset","ltIdx","trunc","lngIdx","mapping","latEntries","lngEntries","newRow","row","GlobalRatchet","returnNullOnNone","env","global","envVar","fetchGlobalRecord","KeyValue","No","TimeoutToken","title","timeoutMS","__timeoutTokenFlagField","writeToLog","StopWatch","starts","ends","createTime","notNullUndefinedOrOnlyWhitespaceString","stop","reset","delete","hasTimer","shortForm","dump","logExpected","pctComplete","dumpExpected","cleanName","end","elapsedMS","remainMS","PromiseRatchet","evtSrc","okEvtNames","errEvtNames","res","rej","on","srcPromise","race","createTimeoutPromise","id","setTimeout","clearTimeout","time","autoDebug","exit","promise","then","dumpResult","catch","dumpError","testFunction","expectedValue","intervalMS","maxCycles","wait","waitFor","promiseFn","context","maxConcurrent","sw","remain","ctx","processed","totalCount","curBatch","proms","apply","all","pct","wrappedParams","wrapElementsInArray","runBoundedParallel","array","callback","index","TimeZoneRatchet","currentHour","local","hour","toEpochSeconds","dt","round","toMillis","startOfTodayEpochSeconds","minute","second","millisecond","startOfMatchingDayEpochSeconds","inputTS","startOfMatchingDayEpochMS","startOfCurrentHourEpochSeconds","startOfCurrentMinuteEpochSeconds","startOfCurrentSecondEpochSeconds","startOfTodayEpochMS","dailySlotCount","slotWidthMs","ceil","currentTimeSlotIdx","startOfToday","delta","matchingTimeSlotIdx","startOfCurrentSlotEpochMS","startOfMatchingSlotEpochMS","LogMessageBuilder","wrapped","clone","subVars","NetworkRatchet","useCache","LOCAL_IP","window","RTCPeerConnection","rtc","iceServers","addrs","create","createDataChannel","reliable","onicecandidate","evt","candidate","grepSDP","createOffer","offerDesc","sdp","setLocalDescription","updateLocalIP","href","match","protocol","host","hostname","port","pathname","search","newIp","parts","addr","updateAddressList","newAddr","displayAddrs","multi","BrowserLocalIpProvider","currentIp","findLocalIp","ready","currentLocalIpAddress","FixedLocalIpProvider","fixed","RestfulApiHttpError","_httpStatusCode","_errors","_detailErrorCode","_endUserErrors","_details","_requestId","_wrappedError","errors","super","combineErrorStringsWithDefault","setPrototypeOf","prototype","RATCHET_RESTFUL_API_HTTP_ERROR_FLAG_KEY","defMessage","setFormattedErrorMessage","withFormattedErrorMessage","withHttpStatusCode","httpStatusCode","withErrors","withDetailErrorCode","detailErrorCode","withEndUserErrors","endUserErrors","withDetails","details","withRequestId","requestId","withWrappedError","isWrappedError","objectIsRestfulApiHttpError","wrappedError","errIn","xClass","bot","errorIsX0x","BufferWritable","Writable","_val","_write","MultiStream","Readable","_object","object","objectMode","_read","StreamRatchet","stream","bufs","next","read","out","writer","WritableStream","controller","stringToUint8Array","abort","reason","highWaterMark","pipeTo","webReadableStreamToBuffer","ReadableStream","enqueue","close","stringToReadable","StringWritable","GoogleRecaptchaRatchet","keySecret","fetchFn","fetch","GOOGLE_VERIFY_URL","resp","body","json","success","TwilioRatchet","accountSid","authToken","outBoundNumber","isValidE164Number","recipientPhoneNumbers","ratchet","sendMessage","sid","phoneNumber","encodeURIComponent","post","method","headers","authorization","generateTwilioBasicAuth","TWILLIO_BASE_API_URL","parsedResponse","num","BuiltInTransforms","rule","transform","isKey","group1","newFieldName","oldFieldNamesInOrder","abortIfFieldMissing","n","temp","fieldNames","oldVal","oldName","newName","valueToAdd","oldFormat","newFormat","oldValue","TransformRatchet","toTransform","rules","transformGeneric","applyTransformToPrimitive","applyTransformToObject","newKey","TransactionRatchet","steps","initialContext","inConfiguration","config","stepLogLevel","finalContext","finalState","stepNames","execute","errorStep","rollback","rollbackError","rollbackErrorStep","RollbackFailed","RolledBack","Success","executeAfterRollback","executeAfterRollbackFailure"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { JwtTokenBase } from './jwt-token-base.js';
2
+ export interface CommonJwtToken<T> extends JwtTokenBase {
3
+ user: T;
4
+ proxy: T;
5
+ roles: string[];
6
+ }
@@ -0,0 +1,5 @@
1
+ export declare enum ExpiredJwtHandling {
2
+ RETURN_NULL = 0,
3
+ THROW_EXCEPTION = 1,
4
+ ADD_FLAG = 2
5
+ }
@@ -0,0 +1,15 @@
1
+ import { JwtTokenBase } from './jwt-token-base.js';
2
+ import { LoggerLevelName } from '../logger/logger-level-name.js';
3
+ import { ExpiredJwtHandling } from './expired-jwt-handling.js';
4
+ export interface JwtRatchetLike {
5
+ get encryptionKeyPromise(): Promise<string | string[]>;
6
+ get decryptKeysPromise(): Promise<string[]>;
7
+ get jtiGenerator(): () => string;
8
+ get decryptOnlyKeyUseLogLevel(): LoggerLevelName;
9
+ get parseFailureLogLevel(): LoggerLevelName;
10
+ decodeToken<T extends JwtTokenBase>(payloadString: string, expiredHandling?: ExpiredJwtHandling): Promise<T>;
11
+ encryptionKeyArray(): Promise<string[]>;
12
+ selectRandomEncryptionKey(): Promise<string>;
13
+ createTokenString(payload: any, expirationSeconds?: number, overrideEncryptionKey?: string): Promise<string>;
14
+ refreshJWTString(tokenString: string, allowExpired?: boolean, expirationSeconds?: number): Promise<string>;
15
+ }
@@ -0,0 +1,30 @@
1
+ import { JwtTokenBase } from './jwt-token-base.js';
2
+ import { LoggerLevelName } from '../logger/logger-level-name.js';
3
+ import { ExpiredJwtHandling } from './expired-jwt-handling.js';
4
+ import { JwtRatchetLike } from './jwt-ratchet-like.js';
5
+ export declare class JwtRatchet implements JwtRatchetLike {
6
+ private _encryptionKeyPromise;
7
+ private _decryptKeysPromise?;
8
+ private _jtiGenerator;
9
+ private _decryptOnlyKeyUseLogLevel;
10
+ private _parseFailureLogLevel;
11
+ private static readonly EXPIRED_FLAG_NAME;
12
+ constructor(_encryptionKeyPromise: Promise<string | string[]>, _decryptKeysPromise?: Promise<string[]>, _jtiGenerator?: () => string, _decryptOnlyKeyUseLogLevel?: LoggerLevelName, _parseFailureLogLevel?: LoggerLevelName);
13
+ get encryptionKeyPromise(): Promise<string | string[]>;
14
+ get decryptKeysPromise(): Promise<string[]>;
15
+ get jtiGenerator(): () => string;
16
+ get decryptOnlyKeyUseLogLevel(): LoggerLevelName;
17
+ get parseFailureLogLevel(): LoggerLevelName;
18
+ static hasExpiredFlag(ob: any): boolean;
19
+ static invalidSafeDecode<T>(payloadString: string, decryptKey: string, logLevel?: LoggerLevelName): Promise<T>;
20
+ static secondsRemainingUntilExpiration(payloadString: string): Promise<number>;
21
+ static msRemainingUntilExpiration(payloadString: string): Promise<number>;
22
+ decodeToken<T extends JwtTokenBase>(payloadString: string, expiredHandling?: ExpiredJwtHandling): Promise<T>;
23
+ encryptionKeyArray(): Promise<string[]>;
24
+ selectRandomEncryptionKey(): Promise<string>;
25
+ createTokenString(payload: any, expirationSeconds?: number, overrideEncryptionKey?: string): Promise<string>;
26
+ refreshJWTString(tokenString: string, allowExpired?: boolean, expirationSeconds?: number): Promise<string>;
27
+ static decodeTokenNoVerify<T extends JwtTokenBase>(token: string): T;
28
+ static removeJwtFields(ob: any): void;
29
+ static removeExpiredFlag(ob: any): void;
30
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ export interface JwtTokenBase {
2
+ iss?: string;
3
+ sub?: string;
4
+ aud?: string;
5
+ exp?: number;
6
+ nbf?: number;
7
+ iat?: number;
8
+ jti?: string;
9
+ }
@@ -0,0 +1,14 @@
1
+ export declare class ArrayRatchet {
2
+ static wrapElementsInArray(input: any[]): any[][];
3
+ static compareTwoArrays<T>(ar1: T[], ar2: T[], fn: ComparisonFunction<T>): MatchReport<T>;
4
+ static extractSubarrayFromSortedByNumberField<T>(input: T[], fieldDotPath: string, minInclusive: number, maxExclusive: number): T[];
5
+ static findSplit(input: any[], fieldDotPath: string, target: number): number;
6
+ }
7
+ export interface ComparisonFunction<T> {
8
+ (t1: T, t2: T): number;
9
+ }
10
+ export interface MatchReport<T> {
11
+ matching: T[];
12
+ setOneOnly: T[];
13
+ setTwoOnly: T[];
14
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ export declare class Base64Ratchet {
3
+ static safeObjectToBase64JSON(input: any): any;
4
+ static safeBase64JSONParse(input: string): any;
5
+ static generateBase64VersionOfBlob(blob: Blob): Promise<string>;
6
+ static generateBase64VersionOfString(input: string): string;
7
+ static generateBase64VersionOfBuffer(input: Buffer): string;
8
+ static base64StringToBuffer(input: string): Buffer;
9
+ static base64StringToString(input: string, encoding?: BufferEncoding): string;
10
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ export declare class BooleanRatchet {
2
+ static allTrue(vals: boolean[], emptyArraysReturn?: boolean): boolean;
3
+ static anyTrue(vals: boolean[], emptyArraysReturn?: boolean): boolean;
4
+ static parseBool(val: any): boolean;
5
+ static intToBool(val: any): boolean;
6
+ static boolToInt(val: any): number;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import { LastSuccessProvider } from './last-success-provider.js';
2
+ export declare class CompositeLastSuccessProvider implements LastSuccessProvider {
3
+ private sources;
4
+ private mostRecent;
5
+ constructor(src: LastSuccessProvider[], mostRecentSrc?: boolean);
6
+ lastSuccess(): number;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ export declare class DateRatchet {
2
+ static COMMON_US_DATE_FORMAT: string;
3
+ static DEFAULT_DATE_FORMAT: string;
4
+ static FULL_DATE_FORMAT: string;
5
+ static PACIFIC_TIME_ZONE: string;
6
+ static UTC_TIME_ZONE: string;
7
+ static formatFullDate(input: Date): string;
8
+ static formatDefaultDateOnly(input: Date): string;
9
+ static parseDefaultDate(input: string): Date;
10
+ static parseCommonUsDate(input: string): Date;
11
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import { DurationLike } from 'luxon';
2
+ export declare class DurationRatchet {
3
+ static formatMsDuration(ms: number, includeMS?: boolean): string;
4
+ static colonFormatMsDuration(ms: number, includeMS?: boolean): string;
5
+ static daysBetween(d1: Date, d2: Date): number;
6
+ static createSteps(startEpochMS: number, endEpochMS: number, timezone: string, outputFormat: string, stepUnit: DurationLike): string[];
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export declare class EnumRatchet {
2
+ static listEnumKeys(enumeration: any): string[];
3
+ static keyToEnum<T>(enumeration: any, val: string, caseSensitive?: boolean): T;
4
+ static parseCsvToEnumArray<T>(enumeration: any, input: string): T[];
5
+ }
@@ -0,0 +1,5 @@
1
+ export declare enum TestEnum {
2
+ A = "a",
3
+ B = "b",
4
+ C = "c"
5
+ }
@@ -0,0 +1,6 @@
1
+ export declare class ErrorRatchet {
2
+ static safeStringifyErr(err: any, log?: boolean): string;
3
+ static asErr(input: any): Error;
4
+ static fErr(format: string, ...input: any[]): Error;
5
+ static throwFormattedErr(format: string, ...input: any[]): Error;
6
+ }