@voiceflow/common 8.2.4 → 8.2.6
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/build/cjs/constants/environment.d.ts +1 -0
- package/build/cjs/constants/environment.d.ts.map +1 -0
- package/build/cjs/constants/environment.js +0 -1
- package/build/cjs/constants/index.d.ts +1 -0
- package/build/cjs/constants/index.d.ts.map +1 -0
- package/build/cjs/constants/index.js +0 -1
- package/build/cjs/constants/intent.d.ts +1 -0
- package/build/cjs/constants/intent.d.ts.map +1 -0
- package/build/cjs/constants/intent.js +0 -1
- package/build/cjs/constants/regexp.d.ts +1 -0
- package/build/cjs/constants/regexp.d.ts.map +1 -0
- package/build/cjs/constants/regexp.js +0 -1
- package/build/cjs/constants/runtime.d.ts +1 -0
- package/build/cjs/constants/runtime.d.ts.map +1 -0
- package/build/cjs/constants/runtime.js +0 -1
- package/build/cjs/constants/slot.d.ts +1 -0
- package/build/cjs/constants/slot.d.ts.map +1 -0
- package/build/cjs/constants/slot.js +0 -1
- package/build/cjs/crypto/base64.d.ts +1 -0
- package/build/cjs/crypto/base64.d.ts.map +1 -0
- package/build/cjs/crypto/base64.js +0 -1
- package/build/cjs/crypto/hex2abc.d.ts +1 -0
- package/build/cjs/crypto/hex2abc.d.ts.map +1 -0
- package/build/cjs/crypto/hex2abc.js +0 -1
- package/build/cjs/crypto/hex2abc.test.d.ts +2 -0
- package/build/cjs/crypto/hex2abc.test.d.ts.map +1 -0
- package/build/cjs/crypto/hex2abc.test.js +12 -0
- package/build/cjs/crypto/index.d.ts +1 -0
- package/build/cjs/crypto/index.d.ts.map +1 -0
- package/build/cjs/crypto/index.js +0 -1
- package/build/cjs/crypto/murmurhash.d.ts +1 -0
- package/build/cjs/crypto/murmurhash.d.ts.map +1 -0
- package/build/cjs/crypto/murmurhash.js +1 -2
- package/build/cjs/crypto/murmurhash.test.d.ts +2 -0
- package/build/cjs/crypto/murmurhash.test.d.ts.map +1 -0
- package/build/cjs/crypto/murmurhash.test.js +23 -0
- package/build/cjs/crypto/synchronous.d.ts +2 -0
- package/build/cjs/crypto/synchronous.d.ts.map +1 -0
- package/build/cjs/crypto/synchronous.js +0 -1
- package/build/cjs/index.d.ts +1 -0
- package/build/cjs/index.d.ts.map +1 -0
- package/build/cjs/index.js +0 -1
- package/build/cjs/package.json +1 -0
- package/build/cjs/types.d.ts +1 -0
- package/build/cjs/types.d.ts.map +1 -0
- package/build/cjs/types.js +0 -1
- package/build/cjs/utils/__fixtures__/name.json +64 -0
- package/build/cjs/utils/array.d.ts +2 -1
- package/build/cjs/utils/array.d.ts.map +1 -0
- package/build/cjs/utils/array.js +0 -1
- package/build/cjs/utils/array.test.d.ts +2 -0
- package/build/cjs/utils/array.test.d.ts.map +1 -0
- package/build/cjs/utils/array.test.js +237 -0
- package/build/cjs/utils/email.test.d.ts +2 -0
- package/build/cjs/utils/email.test.d.ts.map +1 -0
- package/build/cjs/utils/email.test.js +22 -0
- package/build/cjs/utils/emails.d.ts +1 -0
- package/build/cjs/utils/emails.d.ts.map +1 -0
- package/build/cjs/utils/emails.js +0 -1
- package/build/cjs/utils/functional.d.ts +1 -0
- package/build/cjs/utils/functional.d.ts.map +1 -0
- package/build/cjs/utils/functional.js +8 -11
- package/build/cjs/utils/functional.test.d.ts +2 -0
- package/build/cjs/utils/functional.test.d.ts.map +1 -0
- package/build/cjs/utils/functional.test.js +139 -0
- package/build/cjs/utils/generate.d.ts +1 -0
- package/build/cjs/utils/generate.d.ts.map +1 -0
- package/build/cjs/utils/generate.js +0 -1
- package/build/cjs/utils/id.d.ts +1 -0
- package/build/cjs/utils/id.d.ts.map +1 -0
- package/build/cjs/utils/id.js +0 -1
- package/build/cjs/utils/id.test.d.ts +2 -0
- package/build/cjs/utils/id.test.d.ts.map +1 -0
- package/build/cjs/utils/id.test.js +66 -0
- package/build/cjs/utils/index.d.ts +1 -0
- package/build/cjs/utils/index.d.ts.map +1 -0
- package/build/cjs/utils/index.js +0 -1
- package/build/cjs/utils/intent.d.ts +7 -6
- package/build/cjs/utils/intent.d.ts.map +1 -0
- package/build/cjs/utils/intent.js +10 -14
- package/build/cjs/utils/intent.test.d.ts +2 -0
- package/build/cjs/utils/intent.test.d.ts.map +1 -0
- package/build/cjs/utils/intent.test.js +100 -0
- package/build/cjs/utils/map.d.ts +1 -0
- package/build/cjs/utils/map.d.ts.map +1 -0
- package/build/cjs/utils/map.js +0 -1
- package/build/cjs/utils/map.test.d.ts +2 -0
- package/build/cjs/utils/map.test.d.ts.map +1 -0
- package/build/cjs/utils/map.test.js +22 -0
- package/build/cjs/utils/mathjs.d.ts +1 -0
- package/build/cjs/utils/mathjs.d.ts.map +1 -0
- package/build/cjs/utils/mathjs.js +0 -1
- package/build/cjs/utils/normalized.d.ts +2 -1
- package/build/cjs/utils/normalized.d.ts.map +1 -0
- package/build/cjs/utils/normalized.js +18 -21
- package/build/cjs/utils/number.d.ts +1 -0
- package/build/cjs/utils/number.d.ts.map +1 -0
- package/build/cjs/utils/number.js +0 -1
- package/build/cjs/utils/object/common.d.ts +2 -1
- package/build/cjs/utils/object/common.d.ts.map +1 -0
- package/build/cjs/utils/object/common.js +2 -3
- package/build/cjs/utils/object/common.test.d.ts +2 -0
- package/build/cjs/utils/object/common.test.d.ts.map +1 -0
- package/build/cjs/utils/object/common.test.js +175 -0
- package/build/cjs/utils/object/deepMap.d.ts +2 -1
- package/build/cjs/utils/object/deepMap.d.ts.map +1 -0
- package/build/cjs/utils/object/deepMap.js +0 -1
- package/build/cjs/utils/object/deepMap.test.d.ts +2 -0
- package/build/cjs/utils/object/deepMap.test.d.ts.map +1 -0
- package/build/cjs/utils/object/deepMap.test.js +114 -0
- package/build/cjs/utils/object/diff.d.ts +2 -1
- package/build/cjs/utils/object/diff.d.ts.map +1 -0
- package/build/cjs/utils/object/diff.js +0 -1
- package/build/cjs/utils/object/diff.test.d.ts +2 -0
- package/build/cjs/utils/object/diff.test.d.ts.map +1 -0
- package/build/cjs/utils/object/diff.test.js +19 -0
- package/build/cjs/utils/object/index.d.ts +1 -0
- package/build/cjs/utils/object/index.d.ts.map +1 -0
- package/build/cjs/utils/object/index.js +0 -1
- package/build/cjs/utils/object/keys.d.ts +1 -0
- package/build/cjs/utils/object/keys.d.ts.map +1 -0
- package/build/cjs/utils/object/keys.js +0 -1
- package/build/cjs/utils/object/keys.test.d.ts +2 -0
- package/build/cjs/utils/object/keys.test.d.ts.map +1 -0
- package/build/cjs/utils/object/keys.test.js +15 -0
- package/build/cjs/utils/promise.d.ts +1 -0
- package/build/cjs/utils/promise.d.ts.map +1 -0
- package/build/cjs/utils/promise.js +0 -1
- package/build/cjs/utils/promise.test.d.ts +2 -0
- package/build/cjs/utils/promise.test.d.ts.map +1 -0
- package/build/cjs/utils/promise.test.js +25 -0
- package/build/cjs/utils/protocol.d.ts +1 -0
- package/build/cjs/utils/protocol.d.ts.map +1 -0
- package/build/cjs/utils/protocol.js +0 -1
- package/build/cjs/utils/protocol.test.d.ts +2 -0
- package/build/cjs/utils/protocol.test.d.ts.map +1 -0
- package/build/cjs/utils/protocol.test.js +40 -0
- package/build/cjs/utils/slot.d.ts +1 -0
- package/build/cjs/utils/slot.d.ts.map +1 -0
- package/build/cjs/utils/slot.js +4 -2
- package/build/cjs/utils/slot.test.d.ts +2 -0
- package/build/cjs/utils/slot.test.d.ts.map +1 -0
- package/build/cjs/utils/slot.test.js +38 -0
- package/build/cjs/utils/string.d.ts +1 -0
- package/build/cjs/utils/string.d.ts.map +1 -0
- package/build/cjs/utils/string.js +0 -1
- package/build/cjs/utils/string.test.d.ts +2 -0
- package/build/cjs/utils/string.test.d.ts.map +1 -0
- package/build/cjs/utils/string.test.js +53 -0
- package/build/cjs/utils/time.d.ts +1 -0
- package/build/cjs/utils/time.d.ts.map +1 -0
- package/build/cjs/utils/time.js +0 -1
- package/build/cjs/utils/timezones.d.ts +1 -0
- package/build/cjs/utils/timezones.d.ts.map +1 -0
- package/build/cjs/utils/timezones.js +0 -1
- package/build/cjs/utils/timezones.test.d.ts +2 -0
- package/build/cjs/utils/timezones.test.d.ts.map +1 -0
- package/build/cjs/utils/timezones.test.js +12 -0
- package/build/cjs/utils/typeguard.d.ts +1 -0
- package/build/cjs/utils/typeguard.d.ts.map +1 -0
- package/build/cjs/utils/typeguard.js +0 -1
- package/build/cjs/utils/typeguard.test.d.ts +2 -0
- package/build/cjs/utils/typeguard.test.d.ts.map +1 -0
- package/build/cjs/utils/typeguard.test.js +55 -0
- package/build/cjs/utils/variables.d.ts +2 -1
- package/build/cjs/utils/variables.d.ts.map +1 -0
- package/build/cjs/utils/variables.js +1 -2
- package/build/esm/constants/environment.d.ts +1 -0
- package/build/esm/constants/environment.d.ts.map +1 -0
- package/build/esm/constants/environment.js +0 -1
- package/build/esm/constants/index.d.ts +6 -5
- package/build/esm/constants/index.d.ts.map +1 -0
- package/build/esm/constants/index.js +5 -6
- package/build/esm/constants/intent.d.ts +1 -0
- package/build/esm/constants/intent.d.ts.map +1 -0
- package/build/esm/constants/intent.js +0 -1
- package/build/esm/constants/regexp.d.ts +1 -0
- package/build/esm/constants/regexp.d.ts.map +1 -0
- package/build/esm/constants/regexp.js +0 -1
- package/build/esm/constants/runtime.d.ts +1 -0
- package/build/esm/constants/runtime.d.ts.map +1 -0
- package/build/esm/constants/runtime.js +0 -1
- package/build/esm/constants/slot.d.ts +1 -0
- package/build/esm/constants/slot.d.ts.map +1 -0
- package/build/esm/constants/slot.js +0 -1
- package/build/esm/crypto/base64.d.ts +1 -0
- package/build/esm/crypto/base64.d.ts.map +1 -0
- package/build/esm/crypto/base64.js +0 -1
- package/build/esm/crypto/hex2abc.d.ts +1 -0
- package/build/esm/crypto/hex2abc.d.ts.map +1 -0
- package/build/esm/crypto/hex2abc.js +0 -1
- package/build/esm/crypto/hex2abc.test.d.ts +2 -0
- package/build/esm/crypto/hex2abc.test.d.ts.map +1 -0
- package/build/esm/crypto/hex2abc.test.js +10 -0
- package/build/esm/crypto/index.d.ts +4 -3
- package/build/esm/crypto/index.d.ts.map +1 -0
- package/build/esm/crypto/index.js +3 -4
- package/build/esm/crypto/murmurhash.d.ts +1 -0
- package/build/esm/crypto/murmurhash.d.ts.map +1 -0
- package/build/esm/crypto/murmurhash.js +1 -2
- package/build/esm/crypto/murmurhash.test.d.ts +2 -0
- package/build/esm/crypto/murmurhash.test.d.ts.map +1 -0
- package/build/esm/crypto/murmurhash.test.js +21 -0
- package/build/esm/crypto/synchronous.d.ts +2 -0
- package/build/esm/crypto/synchronous.d.ts.map +1 -0
- package/build/esm/crypto/synchronous.js +0 -1
- package/build/esm/index.d.ts +6 -5
- package/build/esm/index.d.ts.map +1 -0
- package/build/esm/index.js +5 -6
- package/build/esm/package.json +1 -0
- package/build/esm/types.d.ts +1 -0
- package/build/esm/types.d.ts.map +1 -0
- package/build/esm/types.js +0 -1
- package/build/esm/utils/__fixtures__/name.json +64 -0
- package/build/esm/utils/array.d.ts +3 -2
- package/build/esm/utils/array.d.ts.map +1 -0
- package/build/esm/utils/array.js +0 -1
- package/build/esm/utils/array.test.d.ts +2 -0
- package/build/esm/utils/array.test.d.ts.map +1 -0
- package/build/esm/utils/array.test.js +235 -0
- package/build/esm/utils/email.test.d.ts +2 -0
- package/build/esm/utils/email.test.d.ts.map +1 -0
- package/build/esm/utils/email.test.js +20 -0
- package/build/esm/utils/emails.d.ts +1 -0
- package/build/esm/utils/emails.d.ts.map +1 -0
- package/build/esm/utils/emails.js +0 -1
- package/build/esm/utils/functional.d.ts +2 -1
- package/build/esm/utils/functional.d.ts.map +1 -0
- package/build/esm/utils/functional.js +8 -11
- package/build/esm/utils/functional.test.d.ts +2 -0
- package/build/esm/utils/functional.test.d.ts.map +1 -0
- package/build/esm/utils/functional.test.js +137 -0
- package/build/esm/utils/generate.d.ts +1 -0
- package/build/esm/utils/generate.d.ts.map +1 -0
- package/build/esm/utils/generate.js +1 -2
- package/build/esm/utils/id.d.ts +2 -1
- package/build/esm/utils/id.d.ts.map +1 -0
- package/build/esm/utils/id.js +1 -2
- package/build/esm/utils/id.test.d.ts +2 -0
- package/build/esm/utils/id.test.d.ts.map +1 -0
- package/build/esm/utils/id.test.js +64 -0
- package/build/esm/utils/index.d.ts +22 -21
- package/build/esm/utils/index.d.ts.map +1 -0
- package/build/esm/utils/index.js +21 -22
- package/build/esm/utils/intent.d.ts +7 -6
- package/build/esm/utils/intent.d.ts.map +1 -0
- package/build/esm/utils/intent.js +11 -15
- package/build/esm/utils/intent.test.d.ts +2 -0
- package/build/esm/utils/intent.test.d.ts.map +1 -0
- package/build/esm/utils/intent.test.js +75 -0
- package/build/esm/utils/map.d.ts +1 -0
- package/build/esm/utils/map.d.ts.map +1 -0
- package/build/esm/utils/map.js +1 -2
- package/build/esm/utils/map.test.d.ts +2 -0
- package/build/esm/utils/map.test.d.ts.map +1 -0
- package/build/esm/utils/map.test.js +20 -0
- package/build/esm/utils/mathjs.d.ts +1 -0
- package/build/esm/utils/mathjs.d.ts.map +1 -0
- package/build/esm/utils/mathjs.js +0 -1
- package/build/esm/utils/normalized.d.ts +2 -1
- package/build/esm/utils/normalized.d.ts.map +1 -0
- package/build/esm/utils/normalized.js +20 -23
- package/build/esm/utils/number.d.ts +1 -0
- package/build/esm/utils/number.d.ts.map +1 -0
- package/build/esm/utils/number.js +0 -1
- package/build/esm/utils/object/common.d.ts +2 -1
- package/build/esm/utils/object/common.d.ts.map +1 -0
- package/build/esm/utils/object/common.js +2 -3
- package/build/esm/utils/object/common.test.d.ts +2 -0
- package/build/esm/utils/object/common.test.d.ts.map +1 -0
- package/build/esm/utils/object/common.test.js +173 -0
- package/build/esm/utils/object/deepMap.d.ts +2 -1
- package/build/esm/utils/object/deepMap.d.ts.map +1 -0
- package/build/esm/utils/object/deepMap.js +1 -2
- package/build/esm/utils/object/deepMap.test.d.ts +2 -0
- package/build/esm/utils/object/deepMap.test.d.ts.map +1 -0
- package/build/esm/utils/object/deepMap.test.js +109 -0
- package/build/esm/utils/object/diff.d.ts +2 -1
- package/build/esm/utils/object/diff.d.ts.map +1 -0
- package/build/esm/utils/object/diff.js +0 -1
- package/build/esm/utils/object/diff.test.d.ts +2 -0
- package/build/esm/utils/object/diff.test.d.ts.map +1 -0
- package/build/esm/utils/object/diff.test.js +17 -0
- package/build/esm/utils/object/index.d.ts +5 -4
- package/build/esm/utils/object/index.d.ts.map +1 -0
- package/build/esm/utils/object/index.js +4 -5
- package/build/esm/utils/object/keys.d.ts +1 -0
- package/build/esm/utils/object/keys.d.ts.map +1 -0
- package/build/esm/utils/object/keys.js +0 -1
- package/build/esm/utils/object/keys.test.d.ts +2 -0
- package/build/esm/utils/object/keys.test.d.ts.map +1 -0
- package/build/esm/utils/object/keys.test.js +13 -0
- package/build/esm/utils/promise.d.ts +1 -0
- package/build/esm/utils/promise.d.ts.map +1 -0
- package/build/esm/utils/promise.js +0 -1
- package/build/esm/utils/promise.test.d.ts +2 -0
- package/build/esm/utils/promise.test.d.ts.map +1 -0
- package/build/esm/utils/promise.test.js +23 -0
- package/build/esm/utils/protocol.d.ts +1 -0
- package/build/esm/utils/protocol.d.ts.map +1 -0
- package/build/esm/utils/protocol.js +0 -1
- package/build/esm/utils/protocol.test.d.ts +2 -0
- package/build/esm/utils/protocol.test.d.ts.map +1 -0
- package/build/esm/utils/protocol.test.js +38 -0
- package/build/esm/utils/slot.d.ts +1 -0
- package/build/esm/utils/slot.d.ts.map +1 -0
- package/build/esm/utils/slot.js +5 -3
- package/build/esm/utils/slot.test.d.ts +2 -0
- package/build/esm/utils/slot.test.d.ts.map +1 -0
- package/build/esm/utils/slot.test.js +13 -0
- package/build/esm/utils/string.d.ts +1 -0
- package/build/esm/utils/string.d.ts.map +1 -0
- package/build/esm/utils/string.js +0 -1
- package/build/esm/utils/string.test.d.ts +2 -0
- package/build/esm/utils/string.test.d.ts.map +1 -0
- package/build/esm/utils/string.test.js +51 -0
- package/build/esm/utils/time.d.ts +1 -0
- package/build/esm/utils/time.d.ts.map +1 -0
- package/build/esm/utils/time.js +0 -1
- package/build/esm/utils/timezones.d.ts +1 -0
- package/build/esm/utils/timezones.d.ts.map +1 -0
- package/build/esm/utils/timezones.js +0 -1
- package/build/esm/utils/timezones.test.d.ts +2 -0
- package/build/esm/utils/timezones.test.d.ts.map +1 -0
- package/build/esm/utils/timezones.test.js +10 -0
- package/build/esm/utils/typeguard.d.ts +1 -0
- package/build/esm/utils/typeguard.d.ts.map +1 -0
- package/build/esm/utils/typeguard.js +0 -1
- package/build/esm/utils/typeguard.test.d.ts +2 -0
- package/build/esm/utils/typeguard.test.d.ts.map +1 -0
- package/build/esm/utils/typeguard.test.js +53 -0
- package/build/esm/utils/variables.d.ts +2 -1
- package/build/esm/utils/variables.d.ts.map +1 -0
- package/build/esm/utils/variables.js +2 -3
- package/package.json +16 -17
- package/build/cjs/constants/environment.js.map +0 -1
- package/build/cjs/constants/index.js.map +0 -1
- package/build/cjs/constants/intent.js.map +0 -1
- package/build/cjs/constants/regexp.js.map +0 -1
- package/build/cjs/constants/runtime.js.map +0 -1
- package/build/cjs/constants/slot.js.map +0 -1
- package/build/cjs/crypto/base64.js.map +0 -1
- package/build/cjs/crypto/hex2abc.js.map +0 -1
- package/build/cjs/crypto/index.js.map +0 -1
- package/build/cjs/crypto/murmurhash.js.map +0 -1
- package/build/cjs/crypto/synchronous.js.map +0 -1
- package/build/cjs/index.js.map +0 -1
- package/build/cjs/types.js.map +0 -1
- package/build/cjs/utils/array.js.map +0 -1
- package/build/cjs/utils/emails.js.map +0 -1
- package/build/cjs/utils/functional.js.map +0 -1
- package/build/cjs/utils/generate.js.map +0 -1
- package/build/cjs/utils/id.js.map +0 -1
- package/build/cjs/utils/index.js.map +0 -1
- package/build/cjs/utils/intent.js.map +0 -1
- package/build/cjs/utils/map.js.map +0 -1
- package/build/cjs/utils/mathjs.js.map +0 -1
- package/build/cjs/utils/normalized.js.map +0 -1
- package/build/cjs/utils/number.js.map +0 -1
- package/build/cjs/utils/object/common.js.map +0 -1
- package/build/cjs/utils/object/deepMap.js.map +0 -1
- package/build/cjs/utils/object/diff.js.map +0 -1
- package/build/cjs/utils/object/index.js.map +0 -1
- package/build/cjs/utils/object/keys.js.map +0 -1
- package/build/cjs/utils/promise.js.map +0 -1
- package/build/cjs/utils/protocol.js.map +0 -1
- package/build/cjs/utils/slot.js.map +0 -1
- package/build/cjs/utils/string.js.map +0 -1
- package/build/cjs/utils/time.js.map +0 -1
- package/build/cjs/utils/timezones.js.map +0 -1
- package/build/cjs/utils/typeguard.js.map +0 -1
- package/build/cjs/utils/variables.js.map +0 -1
- package/build/esm/constants/environment.js.map +0 -1
- package/build/esm/constants/index.js.map +0 -1
- package/build/esm/constants/intent.js.map +0 -1
- package/build/esm/constants/regexp.js.map +0 -1
- package/build/esm/constants/runtime.js.map +0 -1
- package/build/esm/constants/slot.js.map +0 -1
- package/build/esm/crypto/base64.js.map +0 -1
- package/build/esm/crypto/hex2abc.js.map +0 -1
- package/build/esm/crypto/index.js.map +0 -1
- package/build/esm/crypto/murmurhash.js.map +0 -1
- package/build/esm/crypto/synchronous.js.map +0 -1
- package/build/esm/index.js.map +0 -1
- package/build/esm/types.js.map +0 -1
- package/build/esm/utils/array.js.map +0 -1
- package/build/esm/utils/emails.js.map +0 -1
- package/build/esm/utils/functional.js.map +0 -1
- package/build/esm/utils/generate.js.map +0 -1
- package/build/esm/utils/id.js.map +0 -1
- package/build/esm/utils/index.js.map +0 -1
- package/build/esm/utils/intent.js.map +0 -1
- package/build/esm/utils/map.js.map +0 -1
- package/build/esm/utils/mathjs.js.map +0 -1
- package/build/esm/utils/normalized.js.map +0 -1
- package/build/esm/utils/number.js.map +0 -1
- package/build/esm/utils/object/common.js.map +0 -1
- package/build/esm/utils/object/deepMap.js.map +0 -1
- package/build/esm/utils/object/diff.js.map +0 -1
- package/build/esm/utils/object/index.js.map +0 -1
- package/build/esm/utils/object/keys.js.map +0 -1
- package/build/esm/utils/promise.js.map +0 -1
- package/build/esm/utils/protocol.js.map +0 -1
- package/build/esm/utils/slot.js.map +0 -1
- package/build/esm/utils/string.js.map +0 -1
- package/build/esm/utils/time.js.map +0 -1
- package/build/esm/utils/timezones.js.map +0 -1
- package/build/esm/utils/typeguard.js.map +0 -1
- package/build/esm/utils/variables.js.map +0 -1
- package/build/tsconfig.build.tsbuildinfo +0 -1
- package/build/tsconfig.esm.tsbuildinfo +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.test.d.ts","sourceRoot":"","sources":["../../../src/utils/email.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const emails_1 = require("./emails");
|
|
4
|
+
describe('Utils | email', () => {
|
|
5
|
+
describe('isValid()', () => {
|
|
6
|
+
it('should be valid', () => {
|
|
7
|
+
const validEmails = ['joe.doe@test.com', 'john.-last@sub.domain.com', 'test+@voiceflow.com', 't-est+34@voice-flow.com'];
|
|
8
|
+
validEmails.forEach((email) => expect((0, emails_1.isValidEmail)(email)).toBe(true));
|
|
9
|
+
});
|
|
10
|
+
it('should be invalid', () => {
|
|
11
|
+
const invalidEmails = ['joe@.com', 'joe@', '@voiceflow.com', '', 'voiceflow.com'];
|
|
12
|
+
invalidEmails.forEach((email) => expect((0, emails_1.isValidEmail)(email)).toBe(false));
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
describe('getEmailDomain()', () => {
|
|
16
|
+
it('works', () => {
|
|
17
|
+
expect((0, emails_1.getEmailDomain)('test@voiceflow.com')).toBe('voiceflow.com');
|
|
18
|
+
expect((0, emails_1.getEmailDomain)('')).toBe('');
|
|
19
|
+
expect((0, emails_1.getEmailDomain)('totally@invalid@voiceflow.com')).toBe('voiceflow.com');
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../../src/utils/emails.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,UAAW,MAAM,KAAG,OAAmD,CAAC;AAEjG,eAAO,MAAM,cAAc,UAAW,MAAM,KAAG,MAA8D,CAAC"}
|
|
@@ -6,4 +6,3 @@ const isValidEmail = (email) => email.length < 320 && FORMAT.test(email);
|
|
|
6
6
|
exports.isValidEmail = isValidEmail;
|
|
7
7
|
const getEmailDomain = (email) => email.slice(Math.max(0, email.lastIndexOf('@') + 1));
|
|
8
8
|
exports.getEmailDomain = getEmailDomain;
|
|
9
|
-
//# sourceMappingURL=emails.js.map
|
|
@@ -22,3 +22,4 @@ export declare const chainAsync: <A extends any[]>(fns_0: Nullish<ChainCallback<
|
|
|
22
22
|
export declare const chainVoidAsync: (fns_0: Nullish<VoidFunction>, ...fns_1: Nullish<VoidFunction>[]) => () => Promise<void>;
|
|
23
23
|
export declare const withEffect: <T>(callback: (value: T) => void) => (value: T) => T;
|
|
24
24
|
export {};
|
|
25
|
+
//# sourceMappingURL=functional.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functional.d.ts","sourceRoot":"","sources":["../../../src/utils/functional.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,37 +20,35 @@ exports.identity = identity;
|
|
|
20
20
|
const stringify = (value) => (typeof value === 'string' ? value : String(value));
|
|
21
21
|
exports.stringify = stringify;
|
|
22
22
|
const chain = (...fns) => (...args) => {
|
|
23
|
-
var _a, _b, _c;
|
|
24
23
|
// perf optimization, most of the time we have one or two functions
|
|
25
24
|
if (fns.length === 1) {
|
|
26
|
-
|
|
25
|
+
fns[0]?.(...args);
|
|
27
26
|
}
|
|
28
27
|
else if (fns.length === 2) {
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
fns[0]?.(...args);
|
|
29
|
+
fns[1]?.(...args);
|
|
31
30
|
}
|
|
32
31
|
else {
|
|
33
|
-
fns.forEach((fn) => fn
|
|
32
|
+
fns.forEach((fn) => fn?.(...args));
|
|
34
33
|
}
|
|
35
34
|
};
|
|
36
35
|
exports.chain = chain;
|
|
37
36
|
const chainVoid = (...fns) => () => (0, exports.chain)(...fns)();
|
|
38
37
|
exports.chainVoid = chainVoid;
|
|
39
38
|
const chainAsync = (...fns) => async (...args) => {
|
|
40
|
-
var _a, _b, _c;
|
|
41
39
|
// perf optimization, most of the time we have one or two functions
|
|
42
40
|
if (fns.length === 1) {
|
|
43
|
-
await
|
|
41
|
+
await fns[0]?.(...args);
|
|
44
42
|
}
|
|
45
43
|
else if (fns.length === 2) {
|
|
46
|
-
await
|
|
47
|
-
await
|
|
44
|
+
await fns[0]?.(...args);
|
|
45
|
+
await fns[1]?.(...args);
|
|
48
46
|
}
|
|
49
47
|
else {
|
|
50
48
|
// eslint-disable-next-line no-restricted-syntax
|
|
51
49
|
for (const fn of fns) {
|
|
52
50
|
// eslint-disable-next-line no-await-in-loop
|
|
53
|
-
await
|
|
51
|
+
await fn?.(...args);
|
|
54
52
|
}
|
|
55
53
|
}
|
|
56
54
|
};
|
|
@@ -62,4 +60,3 @@ const withEffect = (callback) => (value) => {
|
|
|
62
60
|
return value;
|
|
63
61
|
};
|
|
64
62
|
exports.withEffect = withEffect;
|
|
65
|
-
//# sourceMappingURL=functional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functional.test.d.ts","sourceRoot":"","sources":["../../../src/utils/functional.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const functional_1 = require("./functional");
|
|
4
|
+
const promise_1 = require("./promise");
|
|
5
|
+
describe('Utils | functional', () => {
|
|
6
|
+
describe('isFunction()', () => {
|
|
7
|
+
it('checks if the provided argument is a function', () => {
|
|
8
|
+
expect((0, functional_1.isFunction)(null)).toBe(false);
|
|
9
|
+
expect((0, functional_1.isFunction)({})).toBe(false);
|
|
10
|
+
expect((0, functional_1.isFunction)(() => null)).toBe(true);
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
describe('compose()', () => {
|
|
14
|
+
it('composes from right-to-left', () => {
|
|
15
|
+
const add = (x) => x + 1;
|
|
16
|
+
const div = (x) => x / 3;
|
|
17
|
+
const mult = (x) => x * 2;
|
|
18
|
+
expect((0, functional_1.compose)(mult, div, add)(5)).toBe(4);
|
|
19
|
+
expect((0, functional_1.compose)(add, mult, div)(9)).toBe(7);
|
|
20
|
+
expect((0, functional_1.compose)(mult, add)(6)).toBe(14);
|
|
21
|
+
expect((0, functional_1.compose)(mult)(6)).toBe(12);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
describe('noop()', () => {
|
|
25
|
+
it('does nothing', () => {
|
|
26
|
+
expect((0, functional_1.noop)()).toBeUndefined();
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe('identity()', () => {
|
|
30
|
+
it('returns the input', () => {
|
|
31
|
+
const input = () => null;
|
|
32
|
+
expect((0, functional_1.identity)(input)).toEqual(input);
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
describe('stringify()', () => {
|
|
36
|
+
it('returns the input as a string', () => {
|
|
37
|
+
expect((0, functional_1.stringify)('foo')).toBe('foo');
|
|
38
|
+
expect((0, functional_1.stringify)(123)).toBe('123');
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
describe('chain()', () => {
|
|
42
|
+
it('chains multiple function calls from left to right', () => {
|
|
43
|
+
let result = 5;
|
|
44
|
+
const outerArgs = ['a', false, -3];
|
|
45
|
+
const add = (...args) => {
|
|
46
|
+
expect(args).toEqual(outerArgs);
|
|
47
|
+
result += 1;
|
|
48
|
+
};
|
|
49
|
+
const div = (...args) => {
|
|
50
|
+
expect(args).toEqual(outerArgs);
|
|
51
|
+
result /= 3;
|
|
52
|
+
};
|
|
53
|
+
const mult = (...args) => {
|
|
54
|
+
expect(args).toEqual(outerArgs);
|
|
55
|
+
result *= 2;
|
|
56
|
+
};
|
|
57
|
+
(0, functional_1.chain)(add, div, mult)(...outerArgs);
|
|
58
|
+
expect(result).toBe(4);
|
|
59
|
+
result = 5;
|
|
60
|
+
(0, functional_1.chain)(add, mult)(...outerArgs);
|
|
61
|
+
expect(result).toBe(12);
|
|
62
|
+
result = 5;
|
|
63
|
+
(0, functional_1.chain)(add)(...outerArgs);
|
|
64
|
+
expect(result).toBe(6);
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
describe('chainVoid()', () => {
|
|
68
|
+
it('chains multiple function calls from left to right', () => {
|
|
69
|
+
let result = 5;
|
|
70
|
+
const add = () => {
|
|
71
|
+
result += 1;
|
|
72
|
+
};
|
|
73
|
+
const div = () => {
|
|
74
|
+
result /= 3;
|
|
75
|
+
};
|
|
76
|
+
const mult = () => {
|
|
77
|
+
result *= 2;
|
|
78
|
+
};
|
|
79
|
+
(0, functional_1.chainVoid)(add, div, mult)();
|
|
80
|
+
expect(result).toBe(4);
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
describe('chainAsync()', () => {
|
|
84
|
+
it('chains multiple async function calls in sequence from left to right', async () => {
|
|
85
|
+
let result = 5;
|
|
86
|
+
const outerArgs = ['a', false, -3];
|
|
87
|
+
const add = async (...args) => {
|
|
88
|
+
expect(args).toEqual(outerArgs);
|
|
89
|
+
await (0, promise_1.delay)(1);
|
|
90
|
+
result += 1;
|
|
91
|
+
};
|
|
92
|
+
const div = async (...args) => {
|
|
93
|
+
expect(args).toEqual(outerArgs);
|
|
94
|
+
await (0, promise_1.delay)(1);
|
|
95
|
+
result /= 3;
|
|
96
|
+
};
|
|
97
|
+
const mult = async (...args) => {
|
|
98
|
+
expect(args).toEqual(outerArgs);
|
|
99
|
+
await (0, promise_1.delay)(1);
|
|
100
|
+
result *= 2;
|
|
101
|
+
};
|
|
102
|
+
await (0, functional_1.chainAsync)(add, div, mult)(...outerArgs);
|
|
103
|
+
expect(result).toBe(4);
|
|
104
|
+
result = 5;
|
|
105
|
+
await (0, functional_1.chainAsync)(add, mult)(...outerArgs);
|
|
106
|
+
expect(result).toBe(12);
|
|
107
|
+
result = 5;
|
|
108
|
+
await (0, functional_1.chainAsync)(add)(...outerArgs);
|
|
109
|
+
expect(result).toBe(6);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
describe('chainVoidAsync()', () => {
|
|
113
|
+
it('chains multiple async function calls in sequence from left to right', async () => {
|
|
114
|
+
let result = 5;
|
|
115
|
+
const add = async () => {
|
|
116
|
+
await (0, promise_1.delay)(1);
|
|
117
|
+
result += 1;
|
|
118
|
+
};
|
|
119
|
+
const div = async () => {
|
|
120
|
+
await (0, promise_1.delay)(1);
|
|
121
|
+
result /= 3;
|
|
122
|
+
};
|
|
123
|
+
const mult = async () => {
|
|
124
|
+
await (0, promise_1.delay)(1);
|
|
125
|
+
result *= 2;
|
|
126
|
+
};
|
|
127
|
+
await (0, functional_1.chainVoidAsync)(add, div, mult)();
|
|
128
|
+
expect(result).toBe(4);
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
describe('withEffect()', () => {
|
|
132
|
+
it('apply effect to a value and return the value', () => {
|
|
133
|
+
const input = 4;
|
|
134
|
+
const spy = jest.fn();
|
|
135
|
+
(0, functional_1.withEffect)(spy)(input);
|
|
136
|
+
expect(spy).toHaveBeenCalledWith(4);
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/utils/generate.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY,WAAY,OAAO,KAAG,MAkB9C,CAAC;AAEF,UAAU,QAAQ;IAChB,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC;IAElC,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAE9B,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAE/C,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;IAE/B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAEpC,MAAM,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAElF,KAAK,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;CAChE;AAED,eAAO,MAAM,QAAQ,EAAE,QAoBtB,CAAC"}
|
package/build/cjs/utils/id.d.ts
CHANGED
|
@@ -3,3 +3,4 @@ import { EmptyObject } from '../types';
|
|
|
3
3
|
export { cuid };
|
|
4
4
|
export declare const objectID: () => string;
|
|
5
5
|
export declare const remapObjectIDs: <T extends Readonly<EmptyObject>>(object: T, lookupMap: Record<string, string> | Map<string, string>) => T;
|
|
6
|
+
//# sourceMappingURL=id.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../src/utils/id.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,eAAO,MAAM,QAAQ,QAAO,MAAsC,CAAC;AAEnE,eAAO,MAAM,cAAc,0DAA2D,OAAO,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,MAAM,EAAE,MAAM,CAAC,MAYjI,CAAC"}
|
package/build/cjs/utils/id.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.test.d.ts","sourceRoot":"","sources":["../../../src/utils/id.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const id_1 = require("./id");
|
|
4
|
+
// sample ObjectIds
|
|
5
|
+
const Sample = {
|
|
6
|
+
A: 'aaaaaaaaaaaaaaaaaaaaaaaa',
|
|
7
|
+
B: 'bbbbbbbbbbbbbbbbbbbbbbbb',
|
|
8
|
+
C: 'cccccccccccccccccccccccc',
|
|
9
|
+
REAL: '61dcebb839fc80002d048dbd',
|
|
10
|
+
};
|
|
11
|
+
describe('Utils | id', () => {
|
|
12
|
+
describe('remapObjectIDs()', () => {
|
|
13
|
+
it('shallow nested', () => {
|
|
14
|
+
const map = { [Sample.A]: Sample.B };
|
|
15
|
+
expect((0, id_1.remapObjectIDs)({ cool: Sample.A }, map)).toEqual({ cool: Sample.B });
|
|
16
|
+
});
|
|
17
|
+
it('converts string', () => {
|
|
18
|
+
const map = { [Sample.A]: Sample.B };
|
|
19
|
+
expect((0, id_1.remapObjectIDs)(Sample.A, map)).toBe(Sample.B);
|
|
20
|
+
});
|
|
21
|
+
it('converts multiple', () => {
|
|
22
|
+
const map = { [Sample.A]: Sample.B, [Sample.REAL]: Sample.C };
|
|
23
|
+
expect((0, id_1.remapObjectIDs)({ 1: Sample.A, 2: Sample.REAL }, map)).toEqual({ 1: Sample.B, 2: Sample.C });
|
|
24
|
+
expect((0, id_1.remapObjectIDs)({ 1: { 2: { 3: Sample.A, 4: [Sample.REAL] } } }, map)).toEqual({ 1: { 2: { 3: Sample.B, 4: [Sample.C] } } });
|
|
25
|
+
});
|
|
26
|
+
it('converts multiple maps', () => {
|
|
27
|
+
const map = new Map([
|
|
28
|
+
[Sample.A, Sample.B],
|
|
29
|
+
[Sample.REAL, Sample.C],
|
|
30
|
+
]);
|
|
31
|
+
expect((0, id_1.remapObjectIDs)({ 1: Sample.A, 2: Sample.REAL }, map)).toEqual({ 1: Sample.B, 2: Sample.C });
|
|
32
|
+
expect((0, id_1.remapObjectIDs)({ 1: { 2: { 3: Sample.A, 4: [Sample.REAL] } } }, map)).toEqual({ 1: { 2: { 3: Sample.B, 4: [Sample.C] } } });
|
|
33
|
+
});
|
|
34
|
+
it('converts very nested', () => {
|
|
35
|
+
const object = {
|
|
36
|
+
a: { b: { c: { d: { e: 'id1' } } } },
|
|
37
|
+
id1: {
|
|
38
|
+
id2: {
|
|
39
|
+
id3: {
|
|
40
|
+
id4: ['id5'],
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
b: 'id2',
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
const map = {
|
|
47
|
+
id1: 'new1',
|
|
48
|
+
id2: 'new2',
|
|
49
|
+
id3: 'new3',
|
|
50
|
+
id4: 'new4',
|
|
51
|
+
id5: 'new5',
|
|
52
|
+
};
|
|
53
|
+
expect((0, id_1.remapObjectIDs)(object, map)).toEqual({
|
|
54
|
+
a: { b: { c: { d: { e: 'new1' } } } },
|
|
55
|
+
new1: {
|
|
56
|
+
new2: {
|
|
57
|
+
new3: {
|
|
58
|
+
new4: ['new5'],
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
b: 'new2',
|
|
62
|
+
},
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC"}
|
package/build/cjs/utils/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { BuiltinSlot } from
|
|
1
|
+
import { BuiltinSlot } from '../constants';
|
|
2
2
|
export declare const formatIntentName: (name: string) => string;
|
|
3
3
|
export declare const getUtterancesWithSlotNames: ({ slots, utterances, }: {
|
|
4
4
|
slots?: {
|
|
5
5
|
key: string;
|
|
6
6
|
name: string;
|
|
7
|
-
}[];
|
|
7
|
+
}[] | undefined;
|
|
8
8
|
utterances?: {
|
|
9
9
|
text: string;
|
|
10
|
-
}[];
|
|
10
|
+
}[] | undefined;
|
|
11
11
|
}) => string[];
|
|
12
12
|
export declare const getSlotType: (slots: BuiltinSlot<string, string>[], slot: {
|
|
13
13
|
name: string;
|
|
@@ -32,9 +32,10 @@ export declare const utteranceEntityPermutations: ({ utterances, entitiesByID, l
|
|
|
32
32
|
inputs: string[];
|
|
33
33
|
name: string;
|
|
34
34
|
}>;
|
|
35
|
-
limit?: number;
|
|
36
|
-
replacer?: (sample: string, entityID: string) => string;
|
|
37
|
-
getSamples?: (inputs: string[]) => string[];
|
|
35
|
+
limit?: number | undefined;
|
|
36
|
+
replacer?: ((sample: string, entityID: string) => string) | undefined;
|
|
37
|
+
getSamples?: ((inputs: string[]) => string[]) | undefined;
|
|
38
38
|
}) => JSONUtterance[];
|
|
39
39
|
export declare const injectUtteranceSpaces: (originalUtterance: string) => string;
|
|
40
40
|
export declare const cleanVFIntentName: (intentName: string) => string;
|
|
41
|
+
//# sourceMappingURL=intent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent.d.ts","sourceRoot":"","sources":["../../../src/utils/intent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAA0D,MAAM,cAAc,CAAC;AAGnG,eAAO,MAAM,gBAAgB,SAAU,MAAM,KAAG,MAY/C,CAAC;AAEF,eAAO,MAAM,0BAA0B;;aAItB,MAAM;cAAQ,MAAM;;;cACd,MAAM;;MACzB,MAAM,EASL,CAAC;AAEN,eAAO,MAAM,WAAW,UAAW,YAAY,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ;IAAE,MAAM,MAAM,CAAC;IAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,KAAG,MAepH,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAoC,CAAC;AAElE,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AACD,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAiBD,eAAO,MAAM,2BAA2B;gBAO1B,MAAM,EAAE;kBACN,OAAO,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,MAAM,CAAA;KAAE,CAAC;;yBAE5C,MAAM,YAAY,MAAM,KAAK,MAAM;2BACjC,MAAM,EAAE,KAAK,MAAM,EAAE;MAEzC,aAAa,EAyEhB,CAAC;AAIF,eAAO,MAAM,qBAAqB,sBAAuB,MAAM,KAAG,MAuBjE,CAAC;AAGF,eAAO,MAAM,iBAAiB,eAAgB,MAAM,WAAoF,CAAC"}
|
|
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.cleanVFIntentName = exports.injectUtteranceSpaces = exports.utteranceEntityPermutations = exports.VF_ENTITY_REGEXP = exports.getSlotType = exports.getUtterancesWithSlotNames = exports.formatIntentName = void 0;
|
|
7
|
-
const constants_1 = require("../constants");
|
|
8
7
|
const sample_1 = __importDefault(require("lodash/sample"));
|
|
8
|
+
const constants_1 = require("../constants");
|
|
9
9
|
const slot_1 = require("./slot");
|
|
10
10
|
const formatIntentName = (name) => {
|
|
11
11
|
if (!name) {
|
|
@@ -20,16 +20,15 @@ const formatIntentName = (name) => {
|
|
|
20
20
|
};
|
|
21
21
|
exports.formatIntentName = formatIntentName;
|
|
22
22
|
const getUtterancesWithSlotNames = ({ slots = [], utterances = [], }) => utterances
|
|
23
|
-
.filter((utterance) =>
|
|
23
|
+
.filter((utterance) => !!utterance.text?.trim())
|
|
24
24
|
.map(({ text }) => text.replace(constants_1.SLOT_REGEXP, (substring, _name, key) => {
|
|
25
25
|
const slot = slots.find((_slot) => _slot.key === key);
|
|
26
|
-
return
|
|
26
|
+
return slot?.name ? `{${slot.name}}` : substring;
|
|
27
27
|
}));
|
|
28
28
|
exports.getUtterancesWithSlotNames = getUtterancesWithSlotNames;
|
|
29
29
|
const getSlotType = (slots, slot) => {
|
|
30
|
-
var _a, _b;
|
|
31
30
|
let type = slot.name;
|
|
32
|
-
const lowerCaseType =
|
|
31
|
+
const lowerCaseType = slot.type.value?.toLowerCase() ?? '';
|
|
33
32
|
if (!!slot.type.value && lowerCaseType !== constants_1.LOWER_CASE_CUSTOM_SLOT_TYPE) {
|
|
34
33
|
const builtinSlot = slots.find((_slot) => _slot.label.toLowerCase() === lowerCaseType);
|
|
35
34
|
if (!builtinSlot) {
|
|
@@ -57,23 +56,21 @@ const continuousReplace = (text, regex, replacer) => {
|
|
|
57
56
|
return current;
|
|
58
57
|
};
|
|
59
58
|
const utteranceEntityPermutations = ({ utterances, entitiesByID, limit = 22, replacer, getSamples = slot_1.getAllSamples, }) => {
|
|
60
|
-
var _a;
|
|
61
59
|
const newUtterances = [];
|
|
62
60
|
const entityRef = {};
|
|
63
61
|
const addNewUtterance = (utterance) => {
|
|
64
|
-
if (!
|
|
62
|
+
if (!utterance?.trim())
|
|
65
63
|
return;
|
|
66
64
|
const entities = [];
|
|
67
65
|
// Find all occurences of {entityName} in training utterances
|
|
68
66
|
const text = continuousReplace(utterance, exports.VF_ENTITY_REGEXP, (_match, entityName, entityID, offset) => {
|
|
69
|
-
var _a, _b, _c, _d;
|
|
70
67
|
const entity = entitiesByID[entityID];
|
|
71
68
|
if (!entity)
|
|
72
69
|
return entityName;
|
|
73
|
-
const sample = (
|
|
74
|
-
if (!
|
|
70
|
+
const sample = (entityRef[entityID]?.samples.shift() || (0, sample_1.default)(getSamples(entity?.inputs)) || entityName).trim();
|
|
71
|
+
if (!entityRef[entityID]?.samples?.length)
|
|
75
72
|
delete entityRef[entityID];
|
|
76
|
-
const replacement =
|
|
73
|
+
const replacement = replacer?.(sample, entityID) ?? sample;
|
|
77
74
|
// This module should additionally create one full training utterance with positional entity (startPos, endPos, entityName).
|
|
78
75
|
const startPos = offset || 0;
|
|
79
76
|
const endPos = startPos + replacement.length - 1;
|
|
@@ -112,8 +109,8 @@ const utteranceEntityPermutations = ({ utterances, entitiesByID, limit = 22, rep
|
|
|
112
109
|
});
|
|
113
110
|
while (Object.keys(entityRef).length > 0 && newUtterances.length < limit) {
|
|
114
111
|
const entityID = Object.keys(entityRef)[0];
|
|
115
|
-
const utterancesUsingEntity =
|
|
116
|
-
if (utterancesUsingEntity
|
|
112
|
+
const utterancesUsingEntity = entityRef[entityID]?.utterances;
|
|
113
|
+
if (utterancesUsingEntity?.length) {
|
|
117
114
|
addNewUtterance(utterancesUsingEntity[newUtterances.length % utterancesUsingEntity.length]);
|
|
118
115
|
}
|
|
119
116
|
else {
|
|
@@ -149,4 +146,3 @@ exports.injectUtteranceSpaces = injectUtteranceSpaces;
|
|
|
149
146
|
// VF.HELP -> help
|
|
150
147
|
const cleanVFIntentName = (intentName) => (intentName.startsWith('VF.') ? intentName.slice(3).toLowerCase() : intentName);
|
|
151
148
|
exports.cleanVFIntentName = cleanVFIntentName;
|
|
152
|
-
//# sourceMappingURL=intent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent.test.d.ts","sourceRoot":"","sources":["../../../src/utils/intent.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
const data = __importStar(require("./__fixtures__/name.json"));
|
|
27
|
+
const intent_1 = require("./intent");
|
|
28
|
+
describe('utteranceEntityPermutations unit tests', () => {
|
|
29
|
+
it('works correctly', async () => {
|
|
30
|
+
const utterances = data.intents[0].inputs.map(({ text }) => text);
|
|
31
|
+
const entitiesByID = Object.fromEntries(data.slots.map((slot) => [slot.key, slot]));
|
|
32
|
+
const key = '4i3h3mmi';
|
|
33
|
+
const luisUtterances = (0, intent_1.utteranceEntityPermutations)({ utterances, entitiesByID });
|
|
34
|
+
expect(luisUtterances.length).toBe(Math.min(entitiesByID[key].inputs.length, 22));
|
|
35
|
+
// Check that each slot value is within one of the utterances
|
|
36
|
+
entitiesByID[key].inputs.forEach((input, i) => {
|
|
37
|
+
if (i < 22) {
|
|
38
|
+
expect(luisUtterances.filter((utt) => utt.text?.includes(input)).length).toBeGreaterThan(0);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
// Check that a fake name is not within the utterances
|
|
42
|
+
expect(luisUtterances.filter((utt) => utt.text?.includes('fakeName')).length).toBe(0);
|
|
43
|
+
});
|
|
44
|
+
it('with replacer', async () => {
|
|
45
|
+
const utterances = [
|
|
46
|
+
'{{[slot].4i3h3mmi}} testing {{[slotmans].4i3h3mmi}} {{[third].third}}',
|
|
47
|
+
'close {{[slotmans].4i3h3mmi}}{{[third].third}} together',
|
|
48
|
+
];
|
|
49
|
+
const entitiesByID = {
|
|
50
|
+
'4i3h3mmi': { name: 'slotmans', inputs: ['value1', 'value_super_long', 'v3'] },
|
|
51
|
+
third: { name: 'third', inputs: ['thirdvalue'] },
|
|
52
|
+
};
|
|
53
|
+
// this generates the rasa format
|
|
54
|
+
const replacer = (sample, entityID) => {
|
|
55
|
+
return `[${sample}](${entitiesByID[entityID].name})`;
|
|
56
|
+
};
|
|
57
|
+
const replacedUtterances = (0, intent_1.utteranceEntityPermutations)({ utterances, entitiesByID, replacer });
|
|
58
|
+
expect(replacedUtterances.map(({ text }) => text)).toEqual([
|
|
59
|
+
'[value1](slotmans) testing [value_super_long](slotmans) [thirdvalue](third)',
|
|
60
|
+
'close [v3](slotmans)[thirdvalue](third) together',
|
|
61
|
+
]);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe('injectUtteranceSpaces', () => {
|
|
65
|
+
const testUtterances = [
|
|
66
|
+
'',
|
|
67
|
+
'{{[slot].4i3h3mmi}}',
|
|
68
|
+
'{{[slot].4i3h3mmi}}{{[slotmans].4i3h3mmi}}',
|
|
69
|
+
'hello there {{[slotmans].4i3h3mma}}',
|
|
70
|
+
'hello there {{[slotmans].4i3h3mmb}} words',
|
|
71
|
+
'hello there{{[slotmans].4i3h3mmc}} words',
|
|
72
|
+
'hello there {{[slotmans].4i3h3mmd}}words',
|
|
73
|
+
'hello there{{[slotmans].4i3h3mme}}words',
|
|
74
|
+
'hello there {{[slotmans].4i3h3mmf}}, words',
|
|
75
|
+
'hello there:{{[slotmans].4i3h3mmg}},words',
|
|
76
|
+
'{{[slot].4i3h3mmi}}and{{[third].third}}',
|
|
77
|
+
'{{[slot].4i3h3mmi}}{{[slotmans].4i3h3mmi}}{{[third].third}}',
|
|
78
|
+
'multiple{{[slotmans].4i3h3mmi}}slots{{[slotmans].4i3h3mmi}}words{{[slotmans].4i3h3mmi}}',
|
|
79
|
+
];
|
|
80
|
+
const expectedResults = [
|
|
81
|
+
'',
|
|
82
|
+
'{{[slot].4i3h3mmi}}',
|
|
83
|
+
'{{[slot].4i3h3mmi}} {{[slotmans].4i3h3mmi}}',
|
|
84
|
+
'hello there {{[slotmans].4i3h3mma}}',
|
|
85
|
+
'hello there {{[slotmans].4i3h3mmb}} words',
|
|
86
|
+
'hello there {{[slotmans].4i3h3mmc}} words',
|
|
87
|
+
'hello there {{[slotmans].4i3h3mmd}} words',
|
|
88
|
+
'hello there {{[slotmans].4i3h3mme}} words',
|
|
89
|
+
'hello there {{[slotmans].4i3h3mmf}}, words',
|
|
90
|
+
'hello there:{{[slotmans].4i3h3mmg}},words',
|
|
91
|
+
'{{[slot].4i3h3mmi}} and {{[third].third}}',
|
|
92
|
+
'{{[slot].4i3h3mmi}} {{[slotmans].4i3h3mmi}} {{[third].third}}',
|
|
93
|
+
'multiple {{[slotmans].4i3h3mmi}} slots {{[slotmans].4i3h3mmi}} words {{[slotmans].4i3h3mmi}}',
|
|
94
|
+
];
|
|
95
|
+
it('add spaces around slots if needed', () => {
|
|
96
|
+
for (let i = 0; i < testUtterances.length; ++i) {
|
|
97
|
+
expect((0, intent_1.injectUtteranceSpaces)(testUtterances[i])).toBe(expectedResults[i]);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
});
|
package/build/cjs/utils/map.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../src/utils/map.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;AAC/E,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC"}
|
package/build/cjs/utils/map.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.test.d.ts","sourceRoot":"","sources":["../../../src/utils/map.test.ts"],"names":[],"mappings":""}
|