@bemoje/cli 0.0.6 → 0.0.8
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/cjs/_example/bFindIn.js.map +1 -0
- package/cjs/arg/ArgumentBuilder.js.map +1 -0
- package/cjs/arg/ArgumentParserSelector.js.map +1 -0
- package/cjs/arg/ArgumentReader.js.map +1 -0
- package/cjs/arg/ArgumentValidatorSelector.js.map +1 -0
- package/{dist/cjs → cjs}/cmd/CommandBuilder.js +6 -2
- package/cjs/cmd/CommandBuilder.js.map +1 -0
- package/cjs/cmd/CommandBuilderMetaData.js.map +1 -0
- package/cjs/cmd/CommandFeatureSelector.js.map +1 -0
- package/cjs/cmd/DefaultHelpConfig.js.map +1 -0
- package/cjs/cmd/asdas.js.map +1 -0
- package/cjs/core/OutputManager.js.map +1 -0
- package/cjs/core/ParserSelector.js.map +1 -0
- package/cjs/core/ValidatorSelector.js.map +1 -0
- package/cjs/core/splitCombinedArgvShorts.js.map +1 -0
- package/cjs/db/AbstractJsonFileSection.js.map +1 -0
- package/cjs/db/AppDataSection.js.map +1 -0
- package/cjs/db/ConfigSection.js.map +1 -0
- package/cjs/db/JsonFile.js.map +1 -0
- package/cjs/db/PresetsSection.js.map +1 -0
- package/cjs/index.js.map +1 -0
- package/cjs/opt/OptionArgumentParserSelector.js.map +1 -0
- package/cjs/opt/OptionArgumentValidatorSelector.js.map +1 -0
- package/cjs/opt/OptionBuilder.js.map +1 -0
- package/cjs/opt/OptionHelpers.js.map +1 -0
- package/cjs/opt/OptionReader.js.map +1 -0
- package/cjs/types/IConfig.js.map +1 -0
- package/cjs/types/IPreset.js.map +1 -0
- package/cjs/util/array/arrLast.js.map +1 -0
- package/cjs/util/array/arrSome.js.map +1 -0
- package/cjs/util/array/types/ArrayPredicate.js.map +1 -0
- package/cjs/util/db/JsonDB.js.map +1 -0
- package/cjs/util/errors/ErrorParser.js.map +1 -0
- package/cjs/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +1 -0
- package/cjs/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +1 -0
- package/cjs/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +1 -0
- package/cjs/util/fs/readFile/readFileSafeSync.js.map +1 -0
- package/cjs/util/fs/readFile/readFileSync.js.map +1 -0
- package/cjs/util/fs/readJsonFile/readJsonFileSafeSync.js.map +1 -0
- package/cjs/util/fs/removeFile/removeFile.js.map +1 -0
- package/cjs/util/fs/tempFile/tempFileSync.js.map +1 -0
- package/cjs/util/fs/types/IReadJsonFileOptions.js.map +1 -0
- package/cjs/util/fs/writeFile/writeFileSafeSync.js.map +1 -0
- package/cjs/util/fs/writeFile/writeFileSync.js.map +1 -0
- package/cjs/util/fs/writeJsonFile/writeJsonFileSafe.js.map +1 -0
- package/cjs/util/function/MethodDisabler.js.map +1 -0
- package/cjs/util/function/funSetName.js.map +1 -0
- package/cjs/util/node/execInherit.js.map +1 -0
- package/cjs/util/node/formatTableForTerminal.js.map +1 -0
- package/cjs/util/object/arrAssign.js.map +1 -0
- package/cjs/util/object/createArrayMerger.js.map +1 -0
- package/cjs/util/object/createObjectMerger.js.map +1 -0
- package/cjs/util/object/objAssign.js.map +1 -0
- package/cjs/util/object/objUpdatePropertyDescriptors.js.map +1 -0
- package/cjs/util/object/realizeLazyProperty.js.map +1 -0
- package/cjs/util/object/setNonEnumerable.js.map +1 -0
- package/cjs/util/os/defaultOpenInEditorCommand.js.map +1 -0
- package/cjs/util/os/isOSX.js.map +1 -0
- package/cjs/util/os/isVsCodeInstalled.js.map +1 -0
- package/cjs/util/os/isWindows.js.map +1 -0
- package/cjs/util/path/getTempDataPath.js.map +1 -0
- package/cjs/util/regex/regexEscapeString.js.map +1 -0
- package/cjs/util/string/strEnsureStartsWith.js.map +1 -0
- package/cjs/util/string/strFirstCharToUpperCase.js.map +1 -0
- package/cjs/util/string/strIsLowerCase.js.map +1 -0
- package/cjs/util/string/strIsUpperCase.js.map +1 -0
- package/cjs/util/string/strSplitCamelCase.js.map +1 -0
- package/cjs/util/string-parsers/createBooleanParser.js.map +1 -0
- package/cjs/util/string-parsers/createTypedListParser.js.map +1 -0
- package/cjs/util/string-parsers/parseBoolean.js.map +1 -0
- package/cjs/util/string-parsers/parseInteger.js.map +1 -0
- package/cjs/util/string-parsers/parseNumber.js.map +1 -0
- package/cjs/util/string-parsers/parseString.js.map +1 -0
- package/cjs/util/types/Any.js.map +1 -0
- package/cjs/util/types/DeepArray.js.map +1 -0
- package/cjs/util/types/DeepObject.js.map +1 -0
- package/cjs/util/types/JsonArray.js.map +1 -0
- package/cjs/util/types/JsonDefinedPrimitive.js.map +1 -0
- package/cjs/util/types/JsonObject.js.map +1 -0
- package/cjs/util/types/JsonRawPrimitive.js.map +1 -0
- package/cjs/util/types/JsonValue.js.map +1 -0
- package/cjs/util/types/ObjectKey.js.map +1 -0
- package/cjs/util/types/TConstructor.js.map +1 -0
- package/cjs/util/types/TFunction.js.map +1 -0
- package/cjs/util/types/TFunctionNoNew.js.map +1 -0
- package/cjs/util/types/TPlainObject.js.map +1 -0
- package/cjs/util/types/TPrimitive.js.map +1 -0
- package/cjs/util/types/TStringParser.js.map +1 -0
- package/cjs/util/types/TValidator.js.map +1 -0
- package/cjs/util/validation/createTypedArrayValidator.js.map +1 -0
- package/cjs/util/validation/ensureThat.js.map +1 -0
- package/cjs/util/validation/isArray.js.map +1 -0
- package/cjs/util/validation/isBoolean.js.map +1 -0
- package/cjs/util/validation/isFunction.js.map +1 -0
- package/cjs/util/validation/isNamedFunction.js.map +1 -0
- package/cjs/util/validation/isNamedFunctionArray.js.map +1 -0
- package/cjs/util/validation/isObject.js.map +1 -0
- package/cjs/util/validation/isPlainObject.js.map +1 -0
- package/cjs/util/validation/isPrimitive.js.map +1 -0
- package/cjs/util/validation/isString.js.map +1 -0
- package/cjs/util/validation/isStringArray.js.map +1 -0
- package/cjs/util/validation/isStringWithNoSpacesOrDashes.js.map +1 -0
- package/cjs/util/validation/numbers/isInteger.js.map +1 -0
- package/cjs/util/validation/numbers/isValidNumber.js.map +1 -0
- package/esm/_example/bFindIn.js.map +1 -0
- package/esm/arg/ArgumentBuilder.js.map +1 -0
- package/esm/arg/ArgumentParserSelector.js.map +1 -0
- package/esm/arg/ArgumentReader.js.map +1 -0
- package/esm/arg/ArgumentValidatorSelector.js.map +1 -0
- package/{dist/esm → esm}/cmd/CommandBuilder.js +4 -1
- package/esm/cmd/CommandBuilder.js.map +1 -0
- package/esm/cmd/CommandBuilderMetaData.js.map +1 -0
- package/esm/cmd/CommandFeatureSelector.js.map +1 -0
- package/esm/cmd/DefaultHelpConfig.js.map +1 -0
- package/esm/cmd/asdas.js.map +1 -0
- package/esm/core/OutputManager.js.map +1 -0
- package/esm/core/ParserSelector.js.map +1 -0
- package/esm/core/ValidatorSelector.js.map +1 -0
- package/esm/core/splitCombinedArgvShorts.js.map +1 -0
- package/esm/db/AbstractJsonFileSection.js.map +1 -0
- package/esm/db/AppDataSection.js.map +1 -0
- package/esm/db/ConfigSection.js.map +1 -0
- package/esm/db/JsonFile.js.map +1 -0
- package/esm/db/PresetsSection.js.map +1 -0
- package/esm/index.js.map +1 -0
- package/esm/opt/OptionArgumentParserSelector.js.map +1 -0
- package/esm/opt/OptionArgumentValidatorSelector.js.map +1 -0
- package/esm/opt/OptionBuilder.js.map +1 -0
- package/esm/opt/OptionHelpers.js.map +1 -0
- package/esm/opt/OptionReader.js.map +1 -0
- package/esm/types/IConfig.js.map +1 -0
- package/esm/types/IPreset.js.map +1 -0
- package/esm/util/array/arrLast.js.map +1 -0
- package/esm/util/array/arrSome.js.map +1 -0
- package/esm/util/array/types/ArrayPredicate.js.map +1 -0
- package/{dist/cjs → esm}/util/db/JsonDB.js.map +1 -1
- package/esm/util/errors/ErrorParser.js.map +1 -0
- package/esm/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +1 -0
- package/esm/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +1 -0
- package/esm/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +1 -0
- package/esm/util/fs/readFile/readFileSafeSync.js.map +1 -0
- package/esm/util/fs/readFile/readFileSync.js.map +1 -0
- package/esm/util/fs/readJsonFile/readJsonFileSafeSync.js.map +1 -0
- package/esm/util/fs/removeFile/removeFile.js.map +1 -0
- package/esm/util/fs/tempFile/tempFileSync.js.map +1 -0
- package/esm/util/fs/types/IReadJsonFileOptions.js.map +1 -0
- package/esm/util/fs/writeFile/writeFileSafeSync.js.map +1 -0
- package/esm/util/fs/writeFile/writeFileSync.js.map +1 -0
- package/esm/util/fs/writeJsonFile/writeJsonFileSafe.js.map +1 -0
- package/esm/util/function/MethodDisabler.js.map +1 -0
- package/esm/util/function/funSetName.js.map +1 -0
- package/esm/util/node/execInherit.js.map +1 -0
- package/esm/util/node/formatTableForTerminal.js.map +1 -0
- package/esm/util/object/arrAssign.js.map +1 -0
- package/esm/util/object/createArrayMerger.js.map +1 -0
- package/esm/util/object/createObjectMerger.js.map +1 -0
- package/esm/util/object/objAssign.js.map +1 -0
- package/esm/util/object/objUpdatePropertyDescriptors.js.map +1 -0
- package/esm/util/object/realizeLazyProperty.js.map +1 -0
- package/esm/util/object/setNonEnumerable.js.map +1 -0
- package/esm/util/os/defaultOpenInEditorCommand.js.map +1 -0
- package/esm/util/os/isOSX.js.map +1 -0
- package/esm/util/os/isVsCodeInstalled.js.map +1 -0
- package/esm/util/os/isWindows.js.map +1 -0
- package/esm/util/path/getTempDataPath.js.map +1 -0
- package/esm/util/regex/regexEscapeString.js.map +1 -0
- package/esm/util/string/strEnsureStartsWith.js.map +1 -0
- package/esm/util/string/strFirstCharToUpperCase.js.map +1 -0
- package/esm/util/string/strIsLowerCase.js.map +1 -0
- package/esm/util/string/strIsUpperCase.js.map +1 -0
- package/esm/util/string/strSplitCamelCase.js.map +1 -0
- package/esm/util/string-parsers/createBooleanParser.js.map +1 -0
- package/esm/util/string-parsers/createTypedListParser.js.map +1 -0
- package/esm/util/string-parsers/parseBoolean.js.map +1 -0
- package/esm/util/string-parsers/parseInteger.js.map +1 -0
- package/esm/util/string-parsers/parseNumber.js.map +1 -0
- package/esm/util/string-parsers/parseString.js.map +1 -0
- package/esm/util/types/Any.js.map +1 -0
- package/esm/util/types/DeepArray.js.map +1 -0
- package/esm/util/types/DeepObject.js.map +1 -0
- package/esm/util/types/JsonArray.js.map +1 -0
- package/esm/util/types/JsonDefinedPrimitive.js.map +1 -0
- package/esm/util/types/JsonObject.js.map +1 -0
- package/esm/util/types/JsonRawPrimitive.js.map +1 -0
- package/esm/util/types/JsonValue.js.map +1 -0
- package/esm/util/types/ObjectKey.js.map +1 -0
- package/esm/util/types/TConstructor.js.map +1 -0
- package/esm/util/types/TFunction.js.map +1 -0
- package/esm/util/types/TFunctionNoNew.js.map +1 -0
- package/esm/util/types/TPlainObject.js.map +1 -0
- package/esm/util/types/TPrimitive.js.map +1 -0
- package/esm/util/types/TStringParser.js.map +1 -0
- package/esm/util/types/TValidator.js.map +1 -0
- package/esm/util/validation/createTypedArrayValidator.js.map +1 -0
- package/esm/util/validation/ensureThat.js.map +1 -0
- package/esm/util/validation/isArray.js.map +1 -0
- package/esm/util/validation/isBoolean.js.map +1 -0
- package/esm/util/validation/isFunction.js.map +1 -0
- package/esm/util/validation/isNamedFunction.js.map +1 -0
- package/esm/util/validation/isNamedFunctionArray.js.map +1 -0
- package/esm/util/validation/isObject.js.map +1 -0
- package/esm/util/validation/isPlainObject.js.map +1 -0
- package/esm/util/validation/isPrimitive.js.map +1 -0
- package/esm/util/validation/isString.js.map +1 -0
- package/esm/util/validation/isStringArray.js.map +1 -0
- package/esm/util/validation/isStringWithNoSpacesOrDashes.js.map +1 -0
- package/esm/util/validation/numbers/isInteger.js.map +1 -0
- package/esm/util/validation/numbers/isValidNumber.js.map +1 -0
- package/package.json +5 -10
- package/{dist/types → types}/cmd/CommandBuilder.d.ts +1 -0
- package/.eslintrc.json +0 -5
- package/.swcrc +0 -32
- package/dist/cjs/_example/bFindIn.js.map +0 -1
- package/dist/cjs/arg/ArgumentBuilder.js.map +0 -1
- package/dist/cjs/arg/ArgumentParserSelector.js.map +0 -1
- package/dist/cjs/arg/ArgumentReader.js.map +0 -1
- package/dist/cjs/arg/ArgumentValidatorSelector.js.map +0 -1
- package/dist/cjs/cmd/CommandBuilder.js.map +0 -1
- package/dist/cjs/cmd/CommandBuilderMetaData.js.map +0 -1
- package/dist/cjs/cmd/CommandFeatureSelector.js.map +0 -1
- package/dist/cjs/cmd/DefaultHelpConfig.js.map +0 -1
- package/dist/cjs/cmd/asdas.js.map +0 -1
- package/dist/cjs/core/OutputManager.js.map +0 -1
- package/dist/cjs/core/ParserSelector.js.map +0 -1
- package/dist/cjs/core/ValidatorSelector.js.map +0 -1
- package/dist/cjs/core/splitCombinedArgvShorts.js.map +0 -1
- package/dist/cjs/db/AbstractJsonFileSection.js.map +0 -1
- package/dist/cjs/db/AppDataSection.js.map +0 -1
- package/dist/cjs/db/ConfigSection.js.map +0 -1
- package/dist/cjs/db/JsonFile.js.map +0 -1
- package/dist/cjs/db/PresetsSection.js.map +0 -1
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/opt/OptionArgumentParserSelector.js.map +0 -1
- package/dist/cjs/opt/OptionArgumentValidatorSelector.js.map +0 -1
- package/dist/cjs/opt/OptionBuilder.js.map +0 -1
- package/dist/cjs/opt/OptionHelpers.js.map +0 -1
- package/dist/cjs/opt/OptionReader.js.map +0 -1
- package/dist/cjs/types/IConfig.js.map +0 -1
- package/dist/cjs/types/IPreset.js.map +0 -1
- package/dist/cjs/util/array/arrLast.js.map +0 -1
- package/dist/cjs/util/array/arrSome.js.map +0 -1
- package/dist/cjs/util/array/types/ArrayPredicate.js.map +0 -1
- package/dist/cjs/util/errors/ErrorParser.js.map +0 -1
- package/dist/cjs/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +0 -1
- package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +0 -1
- package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +0 -1
- package/dist/cjs/util/fs/readFile/readFileSafeSync.js.map +0 -1
- package/dist/cjs/util/fs/readFile/readFileSync.js.map +0 -1
- package/dist/cjs/util/fs/readJsonFile/readJsonFileSafeSync.js.map +0 -1
- package/dist/cjs/util/fs/removeFile/removeFile.js.map +0 -1
- package/dist/cjs/util/fs/tempFile/tempFileSync.js.map +0 -1
- package/dist/cjs/util/fs/types/IReadJsonFileOptions.js.map +0 -1
- package/dist/cjs/util/fs/writeFile/writeFileSafeSync.js.map +0 -1
- package/dist/cjs/util/fs/writeFile/writeFileSync.js.map +0 -1
- package/dist/cjs/util/fs/writeJsonFile/writeJsonFileSafe.js.map +0 -1
- package/dist/cjs/util/function/MethodDisabler.js.map +0 -1
- package/dist/cjs/util/function/funSetName.js.map +0 -1
- package/dist/cjs/util/node/execInherit.js.map +0 -1
- package/dist/cjs/util/node/formatTableForTerminal.js.map +0 -1
- package/dist/cjs/util/object/arrAssign.js.map +0 -1
- package/dist/cjs/util/object/createArrayMerger.js.map +0 -1
- package/dist/cjs/util/object/createObjectMerger.js.map +0 -1
- package/dist/cjs/util/object/objAssign.js.map +0 -1
- package/dist/cjs/util/object/objUpdatePropertyDescriptors.js.map +0 -1
- package/dist/cjs/util/object/realizeLazyProperty.js.map +0 -1
- package/dist/cjs/util/object/setNonEnumerable.js.map +0 -1
- package/dist/cjs/util/os/defaultOpenInEditorCommand.js.map +0 -1
- package/dist/cjs/util/os/isOSX.js.map +0 -1
- package/dist/cjs/util/os/isVsCodeInstalled.js.map +0 -1
- package/dist/cjs/util/os/isWindows.js.map +0 -1
- package/dist/cjs/util/path/getTempDataPath.js.map +0 -1
- package/dist/cjs/util/regex/regexEscapeString.js.map +0 -1
- package/dist/cjs/util/string/strEnsureStartsWith.js.map +0 -1
- package/dist/cjs/util/string/strFirstCharToUpperCase.js.map +0 -1
- package/dist/cjs/util/string/strIsLowerCase.js.map +0 -1
- package/dist/cjs/util/string/strIsUpperCase.js.map +0 -1
- package/dist/cjs/util/string/strSplitCamelCase.js.map +0 -1
- package/dist/cjs/util/string-parsers/createBooleanParser.js.map +0 -1
- package/dist/cjs/util/string-parsers/createTypedListParser.js.map +0 -1
- package/dist/cjs/util/string-parsers/parseBoolean.js.map +0 -1
- package/dist/cjs/util/string-parsers/parseInteger.js.map +0 -1
- package/dist/cjs/util/string-parsers/parseNumber.js.map +0 -1
- package/dist/cjs/util/string-parsers/parseString.js.map +0 -1
- package/dist/cjs/util/types/Any.js.map +0 -1
- package/dist/cjs/util/types/DeepArray.js.map +0 -1
- package/dist/cjs/util/types/DeepObject.js.map +0 -1
- package/dist/cjs/util/types/JsonArray.js.map +0 -1
- package/dist/cjs/util/types/JsonDefinedPrimitive.js.map +0 -1
- package/dist/cjs/util/types/JsonObject.js.map +0 -1
- package/dist/cjs/util/types/JsonRawPrimitive.js.map +0 -1
- package/dist/cjs/util/types/JsonValue.js.map +0 -1
- package/dist/cjs/util/types/ObjectKey.js.map +0 -1
- package/dist/cjs/util/types/TConstructor.js.map +0 -1
- package/dist/cjs/util/types/TFunction.js.map +0 -1
- package/dist/cjs/util/types/TFunctionNoNew.js.map +0 -1
- package/dist/cjs/util/types/TPlainObject.js.map +0 -1
- package/dist/cjs/util/types/TPrimitive.js.map +0 -1
- package/dist/cjs/util/types/TStringParser.js.map +0 -1
- package/dist/cjs/util/types/TValidator.js.map +0 -1
- package/dist/cjs/util/validation/createTypedArrayValidator.js.map +0 -1
- package/dist/cjs/util/validation/ensureThat.js.map +0 -1
- package/dist/cjs/util/validation/isArray.js.map +0 -1
- package/dist/cjs/util/validation/isBoolean.js.map +0 -1
- package/dist/cjs/util/validation/isFunction.js.map +0 -1
- package/dist/cjs/util/validation/isNamedFunction.js.map +0 -1
- package/dist/cjs/util/validation/isNamedFunctionArray.js.map +0 -1
- package/dist/cjs/util/validation/isObject.js.map +0 -1
- package/dist/cjs/util/validation/isPlainObject.js.map +0 -1
- package/dist/cjs/util/validation/isPrimitive.js.map +0 -1
- package/dist/cjs/util/validation/isString.js.map +0 -1
- package/dist/cjs/util/validation/isStringArray.js.map +0 -1
- package/dist/cjs/util/validation/isStringWithNoSpacesOrDashes.js.map +0 -1
- package/dist/cjs/util/validation/numbers/isInteger.js.map +0 -1
- package/dist/cjs/util/validation/numbers/isValidNumber.js.map +0 -1
- package/dist/esm/_example/bFindIn.js.map +0 -1
- package/dist/esm/arg/ArgumentBuilder.js.map +0 -1
- package/dist/esm/arg/ArgumentParserSelector.js.map +0 -1
- package/dist/esm/arg/ArgumentReader.js.map +0 -1
- package/dist/esm/arg/ArgumentValidatorSelector.js.map +0 -1
- package/dist/esm/cmd/CommandBuilder.js.map +0 -1
- package/dist/esm/cmd/CommandBuilderMetaData.js.map +0 -1
- package/dist/esm/cmd/CommandFeatureSelector.js.map +0 -1
- package/dist/esm/cmd/DefaultHelpConfig.js.map +0 -1
- package/dist/esm/cmd/asdas.js.map +0 -1
- package/dist/esm/core/OutputManager.js.map +0 -1
- package/dist/esm/core/ParserSelector.js.map +0 -1
- package/dist/esm/core/ValidatorSelector.js.map +0 -1
- package/dist/esm/core/splitCombinedArgvShorts.js.map +0 -1
- package/dist/esm/db/AbstractJsonFileSection.js.map +0 -1
- package/dist/esm/db/AppDataSection.js.map +0 -1
- package/dist/esm/db/ConfigSection.js.map +0 -1
- package/dist/esm/db/JsonFile.js.map +0 -1
- package/dist/esm/db/PresetsSection.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/opt/OptionArgumentParserSelector.js.map +0 -1
- package/dist/esm/opt/OptionArgumentValidatorSelector.js.map +0 -1
- package/dist/esm/opt/OptionBuilder.js.map +0 -1
- package/dist/esm/opt/OptionHelpers.js.map +0 -1
- package/dist/esm/opt/OptionReader.js.map +0 -1
- package/dist/esm/types/IConfig.js.map +0 -1
- package/dist/esm/types/IPreset.js.map +0 -1
- package/dist/esm/util/array/arrLast.js.map +0 -1
- package/dist/esm/util/array/arrSome.js.map +0 -1
- package/dist/esm/util/array/types/ArrayPredicate.js.map +0 -1
- package/dist/esm/util/db/JsonDB.js.map +0 -1
- package/dist/esm/util/errors/ErrorParser.js.map +0 -1
- package/dist/esm/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +0 -1
- package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +0 -1
- package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +0 -1
- package/dist/esm/util/fs/readFile/readFileSafeSync.js.map +0 -1
- package/dist/esm/util/fs/readFile/readFileSync.js.map +0 -1
- package/dist/esm/util/fs/readJsonFile/readJsonFileSafeSync.js.map +0 -1
- package/dist/esm/util/fs/removeFile/removeFile.js.map +0 -1
- package/dist/esm/util/fs/tempFile/tempFileSync.js.map +0 -1
- package/dist/esm/util/fs/types/IReadJsonFileOptions.js.map +0 -1
- package/dist/esm/util/fs/writeFile/writeFileSafeSync.js.map +0 -1
- package/dist/esm/util/fs/writeFile/writeFileSync.js.map +0 -1
- package/dist/esm/util/fs/writeJsonFile/writeJsonFileSafe.js.map +0 -1
- package/dist/esm/util/function/MethodDisabler.js.map +0 -1
- package/dist/esm/util/function/funSetName.js.map +0 -1
- package/dist/esm/util/node/execInherit.js.map +0 -1
- package/dist/esm/util/node/formatTableForTerminal.js.map +0 -1
- package/dist/esm/util/object/arrAssign.js.map +0 -1
- package/dist/esm/util/object/createArrayMerger.js.map +0 -1
- package/dist/esm/util/object/createObjectMerger.js.map +0 -1
- package/dist/esm/util/object/objAssign.js.map +0 -1
- package/dist/esm/util/object/objUpdatePropertyDescriptors.js.map +0 -1
- package/dist/esm/util/object/realizeLazyProperty.js.map +0 -1
- package/dist/esm/util/object/setNonEnumerable.js.map +0 -1
- package/dist/esm/util/os/defaultOpenInEditorCommand.js.map +0 -1
- package/dist/esm/util/os/isOSX.js.map +0 -1
- package/dist/esm/util/os/isVsCodeInstalled.js.map +0 -1
- package/dist/esm/util/os/isWindows.js.map +0 -1
- package/dist/esm/util/path/getTempDataPath.js.map +0 -1
- package/dist/esm/util/regex/regexEscapeString.js.map +0 -1
- package/dist/esm/util/string/strEnsureStartsWith.js.map +0 -1
- package/dist/esm/util/string/strFirstCharToUpperCase.js.map +0 -1
- package/dist/esm/util/string/strIsLowerCase.js.map +0 -1
- package/dist/esm/util/string/strIsUpperCase.js.map +0 -1
- package/dist/esm/util/string/strSplitCamelCase.js.map +0 -1
- package/dist/esm/util/string-parsers/createBooleanParser.js.map +0 -1
- package/dist/esm/util/string-parsers/createTypedListParser.js.map +0 -1
- package/dist/esm/util/string-parsers/parseBoolean.js.map +0 -1
- package/dist/esm/util/string-parsers/parseInteger.js.map +0 -1
- package/dist/esm/util/string-parsers/parseNumber.js.map +0 -1
- package/dist/esm/util/string-parsers/parseString.js.map +0 -1
- package/dist/esm/util/types/Any.js.map +0 -1
- package/dist/esm/util/types/DeepArray.js.map +0 -1
- package/dist/esm/util/types/DeepObject.js.map +0 -1
- package/dist/esm/util/types/JsonArray.js.map +0 -1
- package/dist/esm/util/types/JsonDefinedPrimitive.js.map +0 -1
- package/dist/esm/util/types/JsonObject.js.map +0 -1
- package/dist/esm/util/types/JsonRawPrimitive.js.map +0 -1
- package/dist/esm/util/types/JsonValue.js.map +0 -1
- package/dist/esm/util/types/ObjectKey.js.map +0 -1
- package/dist/esm/util/types/TConstructor.js.map +0 -1
- package/dist/esm/util/types/TFunction.js.map +0 -1
- package/dist/esm/util/types/TFunctionNoNew.js.map +0 -1
- package/dist/esm/util/types/TPlainObject.js.map +0 -1
- package/dist/esm/util/types/TPrimitive.js.map +0 -1
- package/dist/esm/util/types/TStringParser.js.map +0 -1
- package/dist/esm/util/types/TValidator.js.map +0 -1
- package/dist/esm/util/validation/createTypedArrayValidator.js.map +0 -1
- package/dist/esm/util/validation/ensureThat.js.map +0 -1
- package/dist/esm/util/validation/isArray.js.map +0 -1
- package/dist/esm/util/validation/isBoolean.js.map +0 -1
- package/dist/esm/util/validation/isFunction.js.map +0 -1
- package/dist/esm/util/validation/isNamedFunction.js.map +0 -1
- package/dist/esm/util/validation/isNamedFunctionArray.js.map +0 -1
- package/dist/esm/util/validation/isObject.js.map +0 -1
- package/dist/esm/util/validation/isPlainObject.js.map +0 -1
- package/dist/esm/util/validation/isPrimitive.js.map +0 -1
- package/dist/esm/util/validation/isString.js.map +0 -1
- package/dist/esm/util/validation/isStringArray.js.map +0 -1
- package/dist/esm/util/validation/isStringWithNoSpacesOrDashes.js.map +0 -1
- package/dist/esm/util/validation/numbers/isInteger.js.map +0 -1
- package/dist/esm/util/validation/numbers/isValidNumber.js.map +0 -1
- package/jest.config.ts +0 -11
- package/notes/tsc.md +0 -1
- package/project.json +0 -44
- package/scripts/currentBemojeUtils.txt +0 -41
- package/scripts/rollupUtils.ts +0 -184
- package/src/_example/CommandBuilder.example.ts +0 -92
- package/src/_example/CommandBuilder.example2.ts +0 -30
- package/src/_example/bFindIn.ts +0 -200
- package/src/arg/ArgumentBuilder.test.ts +0 -102
- package/src/arg/ArgumentBuilder.ts +0 -47
- package/src/arg/ArgumentParserSelector.test.ts +0 -53
- package/src/arg/ArgumentParserSelector.ts +0 -14
- package/src/arg/ArgumentReader.test.ts +0 -60
- package/src/arg/ArgumentReader.ts +0 -33
- package/src/arg/ArgumentValidatorSelector.test.ts +0 -80
- package/src/arg/ArgumentValidatorSelector.ts +0 -14
- package/src/cmd/CommandBuilder.test.ts +0 -611
- package/src/cmd/CommandBuilder.ts +0 -1164
- package/src/cmd/CommandBuilderMetaData.test.ts +0 -54
- package/src/cmd/CommandBuilderMetaData.ts +0 -45
- package/src/cmd/CommandFeatureSelector.test.ts +0 -185
- package/src/cmd/CommandFeatureSelector.ts +0 -113
- package/src/cmd/DefaultHelpConfig.test.ts +0 -22
- package/src/cmd/DefaultHelpConfig.ts +0 -141
- package/src/cmd/asdas.ts +0 -40
- package/src/core/OutputManager.test.ts +0 -129
- package/src/core/OutputManager.ts +0 -103
- package/src/core/ParserSelector.test.ts +0 -7
- package/src/core/ParserSelector.ts +0 -38
- package/src/core/ValidatorSelector.test.ts +0 -7
- package/src/core/ValidatorSelector.ts +0 -38
- package/src/core/splitCombinedArgvShorts.test.ts +0 -9
- package/src/core/splitCombinedArgvShorts.ts +0 -10
- package/src/db/AbstractJsonFileSection.test.ts +0 -274
- package/src/db/AbstractJsonFileSection.ts +0 -218
- package/src/db/AppDataSection.test.ts +0 -69
- package/src/db/AppDataSection.ts +0 -46
- package/src/db/ConfigSection.test.ts +0 -95
- package/src/db/ConfigSection.ts +0 -74
- package/src/db/JsonFile.test.ts +0 -56
- package/src/db/JsonFile.ts +0 -52
- package/src/db/PresetsSection.test.ts +0 -130
- package/src/db/PresetsSection.ts +0 -92
- package/src/index.ts +0 -102
- package/src/opt/OptionArgumentParserSelector.test.ts +0 -55
- package/src/opt/OptionArgumentParserSelector.ts +0 -14
- package/src/opt/OptionArgumentValidatorSelector.test.ts +0 -89
- package/src/opt/OptionArgumentValidatorSelector.ts +0 -16
- package/src/opt/OptionBuilder.test.ts +0 -229
- package/src/opt/OptionBuilder.ts +0 -85
- package/src/opt/OptionHelpers.test.ts +0 -229
- package/src/opt/OptionHelpers.ts +0 -57
- package/src/opt/OptionReader.test.ts +0 -106
- package/src/opt/OptionReader.ts +0 -61
- package/src/types/IConfig.ts +0 -25
- package/src/types/IPreset.ts +0 -16
- package/src/util/array/arrLast.test.ts +0 -25
- package/src/util/array/arrLast.ts +0 -15
- package/src/util/array/arrSome.test.ts +0 -78
- package/src/util/array/arrSome.ts +0 -23
- package/src/util/array/types/ArrayPredicate.ts +0 -10
- package/src/util/db/JsonDB.test.ts +0 -214
- package/src/util/db/JsonDB.ts +0 -138
- package/src/util/errors/ErrorParser.ts +0 -165
- package/src/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.ts +0 -15
- package/src/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.ts +0 -30
- package/src/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.ts +0 -25
- package/src/util/fs/readFile/readFileSafeSync.ts +0 -20
- package/src/util/fs/readFile/readFileSync.ts +0 -13
- package/src/util/fs/readJsonFile/readJsonFileSafeSync.ts +0 -17
- package/src/util/fs/removeFile/removeFile.ts +0 -1
- package/src/util/fs/tempFile/tempFileSync.ts +0 -21
- package/src/util/fs/types/IReadJsonFileOptions.ts +0 -1
- package/src/util/fs/writeFile/writeFileSafeSync.ts +0 -1
- package/src/util/fs/writeFile/writeFileSync.ts +0 -1
- package/src/util/fs/writeJsonFile/writeJsonFileSafe.ts +0 -1
- package/src/util/function/MethodDisabler.test.ts +0 -112
- package/src/util/function/MethodDisabler.ts +0 -94
- package/src/util/function/funSetName.test.ts +0 -12
- package/src/util/function/funSetName.ts +0 -16
- package/src/util/node/execInherit.ts +0 -14
- package/src/util/node/formatTableForTerminal.ts +0 -12
- package/src/util/object/arrAssign.ts +0 -3
- package/src/util/object/createArrayMerger.test.ts +0 -11
- package/src/util/object/createArrayMerger.ts +0 -15
- package/src/util/object/createObjectMerger.test.ts +0 -11
- package/src/util/object/createObjectMerger.ts +0 -17
- package/src/util/object/objAssign.ts +0 -3
- package/src/util/object/objUpdatePropertyDescriptors.test.ts +0 -40
- package/src/util/object/objUpdatePropertyDescriptors.ts +0 -29
- package/src/util/object/realizeLazyProperty.ts +0 -9
- package/src/util/object/setNonEnumerable.test.ts +0 -63
- package/src/util/object/setNonEnumerable.ts +0 -22
- package/src/util/os/defaultOpenInEditorCommand.ts +0 -14
- package/src/util/os/isOSX.ts +0 -9
- package/src/util/os/isVsCodeInstalled.test.ts +0 -7
- package/src/util/os/isVsCodeInstalled.ts +0 -14
- package/src/util/os/isWindows.ts +0 -12
- package/src/util/path/getTempDataPath.test.ts +0 -9
- package/src/util/path/getTempDataPath.ts +0 -14
- package/src/util/regex/regexEscapeString.test.ts +0 -35
- package/src/util/regex/regexEscapeString.ts +0 -13
- package/src/util/string/strEnsureStartsWith.test.ts +0 -13
- package/src/util/string/strEnsureStartsWith.ts +0 -14
- package/src/util/string/strFirstCharToUpperCase.test.ts +0 -33
- package/src/util/string/strFirstCharToUpperCase.ts +0 -11
- package/src/util/string/strIsLowerCase.test.ts +0 -42
- package/src/util/string/strIsLowerCase.ts +0 -13
- package/src/util/string/strIsUpperCase.test.ts +0 -48
- package/src/util/string/strIsUpperCase.ts +0 -13
- package/src/util/string/strSplitCamelCase.test.ts +0 -54
- package/src/util/string/strSplitCamelCase.ts +0 -51
- package/src/util/string-parsers/createBooleanParser.test.ts +0 -58
- package/src/util/string-parsers/createBooleanParser.ts +0 -21
- package/src/util/string-parsers/createTypedListParser.test.ts +0 -19
- package/src/util/string-parsers/createTypedListParser.ts +0 -19
- package/src/util/string-parsers/parseBoolean.test.ts +0 -30
- package/src/util/string-parsers/parseBoolean.ts +0 -12
- package/src/util/string-parsers/parseInteger.test.ts +0 -52
- package/src/util/string-parsers/parseInteger.ts +0 -9
- package/src/util/string-parsers/parseNumber.test.ts +0 -53
- package/src/util/string-parsers/parseNumber.ts +0 -6
- package/src/util/string-parsers/parseString.test.ts +0 -7
- package/src/util/string-parsers/parseString.ts +0 -3
- package/src/util/types/Any.ts +0 -2
- package/src/util/types/DeepArray.ts +0 -12
- package/src/util/types/DeepObject.ts +0 -16
- package/src/util/types/JsonArray.ts +0 -8
- package/src/util/types/JsonDefinedPrimitive.ts +0 -5
- package/src/util/types/JsonObject.ts +0 -8
- package/src/util/types/JsonRawPrimitive.ts +0 -7
- package/src/util/types/JsonValue.ts +0 -14
- package/src/util/types/ObjectKey.ts +0 -1
- package/src/util/types/TConstructor.ts +0 -6
- package/src/util/types/TFunction.ts +0 -5
- package/src/util/types/TFunctionNoNew.ts +0 -3
- package/src/util/types/TPlainObject.ts +0 -4
- package/src/util/types/TPrimitive.ts +0 -1
- package/src/util/types/TStringParser.ts +0 -1
- package/src/util/types/TValidator.ts +0 -3
- package/src/util/validation/createTypedArrayValidator.test.ts +0 -34
- package/src/util/validation/createTypedArrayValidator.ts +0 -25
- package/src/util/validation/ensureThat.test.ts +0 -37
- package/src/util/validation/ensureThat.ts +0 -14
- package/src/util/validation/isArray.test.ts +0 -7
- package/src/util/validation/isArray.ts +0 -1
- package/src/util/validation/isBoolean.test.ts +0 -31
- package/src/util/validation/isBoolean.ts +0 -3
- package/src/util/validation/isFunction.test.ts +0 -54
- package/src/util/validation/isFunction.ts +0 -14
- package/src/util/validation/isNamedFunction.test.ts +0 -28
- package/src/util/validation/isNamedFunction.ts +0 -8
- package/src/util/validation/isNamedFunctionArray.test.ts +0 -14
- package/src/util/validation/isNamedFunctionArray.ts +0 -5
- package/src/util/validation/isObject.test.ts +0 -57
- package/src/util/validation/isObject.ts +0 -17
- package/src/util/validation/isPlainObject.test.ts +0 -21
- package/src/util/validation/isPlainObject.ts +0 -14
- package/src/util/validation/isPrimitive.ts +0 -15
- package/src/util/validation/isString.test.ts +0 -23
- package/src/util/validation/isString.ts +0 -3
- package/src/util/validation/isStringArray.test.ts +0 -24
- package/src/util/validation/isStringArray.ts +0 -8
- package/src/util/validation/isStringWithNoSpacesOrDashes.test.ts +0 -28
- package/src/util/validation/isStringWithNoSpacesOrDashes.ts +0 -5
- package/src/util/validation/numbers/isInteger.test.ts +0 -25
- package/src/util/validation/numbers/isInteger.ts +0 -13
- package/src/util/validation/numbers/isValidNumber.test.ts +0 -20
- package/src/util/validation/numbers/isValidNumber.ts +0 -17
- package/tsconfig.json +0 -32
- package/tsconfig.lib.json +0 -18
- package/tsconfig.spec.json +0 -10
- /package/{dist/cjs → cjs}/_example/bFindIn.js +0 -0
- /package/{dist/cjs → cjs}/arg/ArgumentBuilder.js +0 -0
- /package/{dist/cjs → cjs}/arg/ArgumentParserSelector.js +0 -0
- /package/{dist/cjs → cjs}/arg/ArgumentReader.js +0 -0
- /package/{dist/cjs → cjs}/arg/ArgumentValidatorSelector.js +0 -0
- /package/{dist/cjs → cjs}/cmd/CommandBuilderMetaData.js +0 -0
- /package/{dist/cjs → cjs}/cmd/CommandFeatureSelector.js +0 -0
- /package/{dist/cjs → cjs}/cmd/DefaultHelpConfig.js +0 -0
- /package/{dist/cjs → cjs}/cmd/asdas.js +0 -0
- /package/{dist/cjs → cjs}/core/OutputManager.js +0 -0
- /package/{dist/cjs → cjs}/core/ParserSelector.js +0 -0
- /package/{dist/cjs → cjs}/core/ValidatorSelector.js +0 -0
- /package/{dist/cjs → cjs}/core/splitCombinedArgvShorts.js +0 -0
- /package/{dist/cjs → cjs}/db/AbstractJsonFileSection.js +0 -0
- /package/{dist/cjs → cjs}/db/AppDataSection.js +0 -0
- /package/{dist/cjs → cjs}/db/ConfigSection.js +0 -0
- /package/{dist/cjs → cjs}/db/JsonFile.js +0 -0
- /package/{dist/cjs → cjs}/db/PresetsSection.js +0 -0
- /package/{dist/cjs → cjs}/index.js +0 -0
- /package/{dist/cjs → cjs}/opt/OptionArgumentParserSelector.js +0 -0
- /package/{dist/cjs → cjs}/opt/OptionArgumentValidatorSelector.js +0 -0
- /package/{dist/cjs → cjs}/opt/OptionBuilder.js +0 -0
- /package/{dist/cjs → cjs}/opt/OptionHelpers.js +0 -0
- /package/{dist/cjs → cjs}/opt/OptionReader.js +0 -0
- /package/{dist/cjs → cjs}/types/IConfig.js +0 -0
- /package/{dist/cjs → cjs}/types/IPreset.js +0 -0
- /package/{dist/cjs → cjs}/util/array/arrLast.js +0 -0
- /package/{dist/cjs → cjs}/util/array/arrSome.js +0 -0
- /package/{dist/cjs → cjs}/util/array/types/ArrayPredicate.js +0 -0
- /package/{dist/cjs → cjs}/util/db/JsonDB.js +0 -0
- /package/{dist/cjs → cjs}/util/errors/ErrorParser.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/readFile/readFileSafeSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/readFile/readFileSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/readJsonFile/readJsonFileSafeSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/removeFile/removeFile.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/tempFile/tempFileSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/types/IReadJsonFileOptions.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/writeFile/writeFileSafeSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/writeFile/writeFileSync.js +0 -0
- /package/{dist/cjs → cjs}/util/fs/writeJsonFile/writeJsonFileSafe.js +0 -0
- /package/{dist/cjs → cjs}/util/function/MethodDisabler.js +0 -0
- /package/{dist/cjs → cjs}/util/function/funSetName.js +0 -0
- /package/{dist/cjs → cjs}/util/node/execInherit.js +0 -0
- /package/{dist/cjs → cjs}/util/node/formatTableForTerminal.js +0 -0
- /package/{dist/cjs → cjs}/util/object/arrAssign.js +0 -0
- /package/{dist/cjs → cjs}/util/object/createArrayMerger.js +0 -0
- /package/{dist/cjs → cjs}/util/object/createObjectMerger.js +0 -0
- /package/{dist/cjs → cjs}/util/object/objAssign.js +0 -0
- /package/{dist/cjs → cjs}/util/object/objUpdatePropertyDescriptors.js +0 -0
- /package/{dist/cjs → cjs}/util/object/realizeLazyProperty.js +0 -0
- /package/{dist/cjs → cjs}/util/object/setNonEnumerable.js +0 -0
- /package/{dist/cjs → cjs}/util/os/defaultOpenInEditorCommand.js +0 -0
- /package/{dist/cjs → cjs}/util/os/isOSX.js +0 -0
- /package/{dist/cjs → cjs}/util/os/isVsCodeInstalled.js +0 -0
- /package/{dist/cjs → cjs}/util/os/isWindows.js +0 -0
- /package/{dist/cjs → cjs}/util/path/getTempDataPath.js +0 -0
- /package/{dist/cjs → cjs}/util/regex/regexEscapeString.js +0 -0
- /package/{dist/cjs → cjs}/util/string/strEnsureStartsWith.js +0 -0
- /package/{dist/cjs → cjs}/util/string/strFirstCharToUpperCase.js +0 -0
- /package/{dist/cjs → cjs}/util/string/strIsLowerCase.js +0 -0
- /package/{dist/cjs → cjs}/util/string/strIsUpperCase.js +0 -0
- /package/{dist/cjs → cjs}/util/string/strSplitCamelCase.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/createBooleanParser.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/createTypedListParser.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/parseBoolean.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/parseInteger.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/parseNumber.js +0 -0
- /package/{dist/cjs → cjs}/util/string-parsers/parseString.js +0 -0
- /package/{dist/cjs → cjs}/util/types/Any.js +0 -0
- /package/{dist/cjs → cjs}/util/types/DeepArray.js +0 -0
- /package/{dist/cjs → cjs}/util/types/DeepObject.js +0 -0
- /package/{dist/cjs → cjs}/util/types/JsonArray.js +0 -0
- /package/{dist/cjs → cjs}/util/types/JsonDefinedPrimitive.js +0 -0
- /package/{dist/cjs → cjs}/util/types/JsonObject.js +0 -0
- /package/{dist/cjs → cjs}/util/types/JsonRawPrimitive.js +0 -0
- /package/{dist/cjs → cjs}/util/types/JsonValue.js +0 -0
- /package/{dist/cjs → cjs}/util/types/ObjectKey.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TConstructor.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TFunction.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TFunctionNoNew.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TPlainObject.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TPrimitive.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TStringParser.js +0 -0
- /package/{dist/cjs → cjs}/util/types/TValidator.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/createTypedArrayValidator.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/ensureThat.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isArray.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isBoolean.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isFunction.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isNamedFunction.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isNamedFunctionArray.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isObject.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isPlainObject.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isPrimitive.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isString.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isStringArray.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/isStringWithNoSpacesOrDashes.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/numbers/isInteger.js +0 -0
- /package/{dist/cjs → cjs}/util/validation/numbers/isValidNumber.js +0 -0
- /package/{dist/esm → esm}/_example/bFindIn.js +0 -0
- /package/{dist/esm → esm}/arg/ArgumentBuilder.js +0 -0
- /package/{dist/esm → esm}/arg/ArgumentParserSelector.js +0 -0
- /package/{dist/esm → esm}/arg/ArgumentReader.js +0 -0
- /package/{dist/esm → esm}/arg/ArgumentValidatorSelector.js +0 -0
- /package/{dist/esm → esm}/cmd/CommandBuilderMetaData.js +0 -0
- /package/{dist/esm → esm}/cmd/CommandFeatureSelector.js +0 -0
- /package/{dist/esm → esm}/cmd/DefaultHelpConfig.js +0 -0
- /package/{dist/esm → esm}/cmd/asdas.js +0 -0
- /package/{dist/esm → esm}/core/OutputManager.js +0 -0
- /package/{dist/esm → esm}/core/ParserSelector.js +0 -0
- /package/{dist/esm → esm}/core/ValidatorSelector.js +0 -0
- /package/{dist/esm → esm}/core/splitCombinedArgvShorts.js +0 -0
- /package/{dist/esm → esm}/db/AbstractJsonFileSection.js +0 -0
- /package/{dist/esm → esm}/db/AppDataSection.js +0 -0
- /package/{dist/esm → esm}/db/ConfigSection.js +0 -0
- /package/{dist/esm → esm}/db/JsonFile.js +0 -0
- /package/{dist/esm → esm}/db/PresetsSection.js +0 -0
- /package/{dist/esm → esm}/index.js +0 -0
- /package/{dist/esm → esm}/opt/OptionArgumentParserSelector.js +0 -0
- /package/{dist/esm → esm}/opt/OptionArgumentValidatorSelector.js +0 -0
- /package/{dist/esm → esm}/opt/OptionBuilder.js +0 -0
- /package/{dist/esm → esm}/opt/OptionHelpers.js +0 -0
- /package/{dist/esm → esm}/opt/OptionReader.js +0 -0
- /package/{dist/esm → esm}/types/IConfig.js +0 -0
- /package/{dist/esm → esm}/types/IPreset.js +0 -0
- /package/{dist/esm → esm}/util/array/arrLast.js +0 -0
- /package/{dist/esm → esm}/util/array/arrSome.js +0 -0
- /package/{dist/esm → esm}/util/array/types/ArrayPredicate.js +0 -0
- /package/{dist/esm → esm}/util/db/JsonDB.js +0 -0
- /package/{dist/esm → esm}/util/errors/ErrorParser.js +0 -0
- /package/{dist/esm → esm}/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js +0 -0
- /package/{dist/esm → esm}/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/readFile/readFileSafeSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/readFile/readFileSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/readJsonFile/readJsonFileSafeSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/removeFile/removeFile.js +0 -0
- /package/{dist/esm → esm}/util/fs/tempFile/tempFileSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/types/IReadJsonFileOptions.js +0 -0
- /package/{dist/esm → esm}/util/fs/writeFile/writeFileSafeSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/writeFile/writeFileSync.js +0 -0
- /package/{dist/esm → esm}/util/fs/writeJsonFile/writeJsonFileSafe.js +0 -0
- /package/{dist/esm → esm}/util/function/MethodDisabler.js +0 -0
- /package/{dist/esm → esm}/util/function/funSetName.js +0 -0
- /package/{dist/esm → esm}/util/node/execInherit.js +0 -0
- /package/{dist/esm → esm}/util/node/formatTableForTerminal.js +0 -0
- /package/{dist/esm → esm}/util/object/arrAssign.js +0 -0
- /package/{dist/esm → esm}/util/object/createArrayMerger.js +0 -0
- /package/{dist/esm → esm}/util/object/createObjectMerger.js +0 -0
- /package/{dist/esm → esm}/util/object/objAssign.js +0 -0
- /package/{dist/esm → esm}/util/object/objUpdatePropertyDescriptors.js +0 -0
- /package/{dist/esm → esm}/util/object/realizeLazyProperty.js +0 -0
- /package/{dist/esm → esm}/util/object/setNonEnumerable.js +0 -0
- /package/{dist/esm → esm}/util/os/defaultOpenInEditorCommand.js +0 -0
- /package/{dist/esm → esm}/util/os/isOSX.js +0 -0
- /package/{dist/esm → esm}/util/os/isVsCodeInstalled.js +0 -0
- /package/{dist/esm → esm}/util/os/isWindows.js +0 -0
- /package/{dist/esm → esm}/util/path/getTempDataPath.js +0 -0
- /package/{dist/esm → esm}/util/regex/regexEscapeString.js +0 -0
- /package/{dist/esm → esm}/util/string/strEnsureStartsWith.js +0 -0
- /package/{dist/esm → esm}/util/string/strFirstCharToUpperCase.js +0 -0
- /package/{dist/esm → esm}/util/string/strIsLowerCase.js +0 -0
- /package/{dist/esm → esm}/util/string/strIsUpperCase.js +0 -0
- /package/{dist/esm → esm}/util/string/strSplitCamelCase.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/createBooleanParser.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/createTypedListParser.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/parseBoolean.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/parseInteger.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/parseNumber.js +0 -0
- /package/{dist/esm → esm}/util/string-parsers/parseString.js +0 -0
- /package/{dist/esm → esm}/util/types/Any.js +0 -0
- /package/{dist/esm → esm}/util/types/DeepArray.js +0 -0
- /package/{dist/esm → esm}/util/types/DeepObject.js +0 -0
- /package/{dist/esm → esm}/util/types/JsonArray.js +0 -0
- /package/{dist/esm → esm}/util/types/JsonDefinedPrimitive.js +0 -0
- /package/{dist/esm → esm}/util/types/JsonObject.js +0 -0
- /package/{dist/esm → esm}/util/types/JsonRawPrimitive.js +0 -0
- /package/{dist/esm → esm}/util/types/JsonValue.js +0 -0
- /package/{dist/esm → esm}/util/types/ObjectKey.js +0 -0
- /package/{dist/esm → esm}/util/types/TConstructor.js +0 -0
- /package/{dist/esm → esm}/util/types/TFunction.js +0 -0
- /package/{dist/esm → esm}/util/types/TFunctionNoNew.js +0 -0
- /package/{dist/esm → esm}/util/types/TPlainObject.js +0 -0
- /package/{dist/esm → esm}/util/types/TPrimitive.js +0 -0
- /package/{dist/esm → esm}/util/types/TStringParser.js +0 -0
- /package/{dist/esm → esm}/util/types/TValidator.js +0 -0
- /package/{dist/esm → esm}/util/validation/createTypedArrayValidator.js +0 -0
- /package/{dist/esm → esm}/util/validation/ensureThat.js +0 -0
- /package/{dist/esm → esm}/util/validation/isArray.js +0 -0
- /package/{dist/esm → esm}/util/validation/isBoolean.js +0 -0
- /package/{dist/esm → esm}/util/validation/isFunction.js +0 -0
- /package/{dist/esm → esm}/util/validation/isNamedFunction.js +0 -0
- /package/{dist/esm → esm}/util/validation/isNamedFunctionArray.js +0 -0
- /package/{dist/esm → esm}/util/validation/isObject.js +0 -0
- /package/{dist/esm → esm}/util/validation/isPlainObject.js +0 -0
- /package/{dist/esm → esm}/util/validation/isPrimitive.js +0 -0
- /package/{dist/esm → esm}/util/validation/isString.js +0 -0
- /package/{dist/esm → esm}/util/validation/isStringArray.js +0 -0
- /package/{dist/esm → esm}/util/validation/isStringWithNoSpacesOrDashes.js +0 -0
- /package/{dist/esm → esm}/util/validation/numbers/isInteger.js +0 -0
- /package/{dist/esm → esm}/util/validation/numbers/isValidNumber.js +0 -0
- /package/{dist/types → types}/_example/bFindIn.d.ts +0 -0
- /package/{dist/types → types}/arg/ArgumentBuilder.d.ts +0 -0
- /package/{dist/types → types}/arg/ArgumentParserSelector.d.ts +0 -0
- /package/{dist/types → types}/arg/ArgumentReader.d.ts +0 -0
- /package/{dist/types → types}/arg/ArgumentValidatorSelector.d.ts +0 -0
- /package/{dist/types → types}/cmd/CommandBuilderMetaData.d.ts +0 -0
- /package/{dist/types → types}/cmd/CommandFeatureSelector.d.ts +0 -0
- /package/{dist/types → types}/cmd/DefaultHelpConfig.d.ts +0 -0
- /package/{dist/types → types}/cmd/asdas.d.ts +0 -0
- /package/{dist/types → types}/core/OutputManager.d.ts +0 -0
- /package/{dist/types → types}/core/ParserSelector.d.ts +0 -0
- /package/{dist/types → types}/core/ValidatorSelector.d.ts +0 -0
- /package/{dist/types → types}/core/splitCombinedArgvShorts.d.ts +0 -0
- /package/{dist/types → types}/db/AbstractJsonFileSection.d.ts +0 -0
- /package/{dist/types → types}/db/AppDataSection.d.ts +0 -0
- /package/{dist/types → types}/db/ConfigSection.d.ts +0 -0
- /package/{dist/types → types}/db/JsonFile.d.ts +0 -0
- /package/{dist/types → types}/db/PresetsSection.d.ts +0 -0
- /package/{dist/types → types}/index.d.ts +0 -0
- /package/{dist/types → types}/opt/OptionArgumentParserSelector.d.ts +0 -0
- /package/{dist/types → types}/opt/OptionArgumentValidatorSelector.d.ts +0 -0
- /package/{dist/types → types}/opt/OptionBuilder.d.ts +0 -0
- /package/{dist/types → types}/opt/OptionHelpers.d.ts +0 -0
- /package/{dist/types → types}/opt/OptionReader.d.ts +0 -0
- /package/{dist/types → types}/types/IConfig.d.ts +0 -0
- /package/{dist/types → types}/types/IPreset.d.ts +0 -0
- /package/{dist/types → types}/util/array/arrLast.d.ts +0 -0
- /package/{dist/types → types}/util/array/arrSome.d.ts +0 -0
- /package/{dist/types → types}/util/array/types/ArrayPredicate.d.ts +0 -0
- /package/{dist/types → types}/util/db/JsonDB.d.ts +0 -0
- /package/{dist/types → types}/util/errors/ErrorParser.d.ts +0 -0
- /package/{dist/types → types}/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.d.ts +0 -0
- /package/{dist/types → types}/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/readFile/readFileSafeSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/readFile/readFileSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/readJsonFile/readJsonFileSafeSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/removeFile/removeFile.d.ts +0 -0
- /package/{dist/types → types}/util/fs/tempFile/tempFileSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/types/IReadJsonFileOptions.d.ts +0 -0
- /package/{dist/types → types}/util/fs/writeFile/writeFileSafeSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/writeFile/writeFileSync.d.ts +0 -0
- /package/{dist/types → types}/util/fs/writeJsonFile/writeJsonFileSafe.d.ts +0 -0
- /package/{dist/types → types}/util/function/MethodDisabler.d.ts +0 -0
- /package/{dist/types → types}/util/function/funSetName.d.ts +0 -0
- /package/{dist/types → types}/util/node/execInherit.d.ts +0 -0
- /package/{dist/types → types}/util/node/formatTableForTerminal.d.ts +0 -0
- /package/{dist/types → types}/util/object/arrAssign.d.ts +0 -0
- /package/{dist/types → types}/util/object/createArrayMerger.d.ts +0 -0
- /package/{dist/types → types}/util/object/createObjectMerger.d.ts +0 -0
- /package/{dist/types → types}/util/object/objAssign.d.ts +0 -0
- /package/{dist/types → types}/util/object/objUpdatePropertyDescriptors.d.ts +0 -0
- /package/{dist/types → types}/util/object/realizeLazyProperty.d.ts +0 -0
- /package/{dist/types → types}/util/object/setNonEnumerable.d.ts +0 -0
- /package/{dist/types → types}/util/os/defaultOpenInEditorCommand.d.ts +0 -0
- /package/{dist/types → types}/util/os/isOSX.d.ts +0 -0
- /package/{dist/types → types}/util/os/isVsCodeInstalled.d.ts +0 -0
- /package/{dist/types → types}/util/os/isWindows.d.ts +0 -0
- /package/{dist/types → types}/util/path/getTempDataPath.d.ts +0 -0
- /package/{dist/types → types}/util/regex/regexEscapeString.d.ts +0 -0
- /package/{dist/types → types}/util/string/strEnsureStartsWith.d.ts +0 -0
- /package/{dist/types → types}/util/string/strFirstCharToUpperCase.d.ts +0 -0
- /package/{dist/types → types}/util/string/strIsLowerCase.d.ts +0 -0
- /package/{dist/types → types}/util/string/strIsUpperCase.d.ts +0 -0
- /package/{dist/types → types}/util/string/strSplitCamelCase.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/createBooleanParser.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/createTypedListParser.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/parseBoolean.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/parseInteger.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/parseNumber.d.ts +0 -0
- /package/{dist/types → types}/util/string-parsers/parseString.d.ts +0 -0
- /package/{dist/types → types}/util/types/Any.d.ts +0 -0
- /package/{dist/types → types}/util/types/DeepArray.d.ts +0 -0
- /package/{dist/types → types}/util/types/DeepObject.d.ts +0 -0
- /package/{dist/types → types}/util/types/JsonArray.d.ts +0 -0
- /package/{dist/types → types}/util/types/JsonDefinedPrimitive.d.ts +0 -0
- /package/{dist/types → types}/util/types/JsonObject.d.ts +0 -0
- /package/{dist/types → types}/util/types/JsonRawPrimitive.d.ts +0 -0
- /package/{dist/types → types}/util/types/JsonValue.d.ts +0 -0
- /package/{dist/types → types}/util/types/ObjectKey.d.ts +0 -0
- /package/{dist/types → types}/util/types/TConstructor.d.ts +0 -0
- /package/{dist/types → types}/util/types/TFunction.d.ts +0 -0
- /package/{dist/types → types}/util/types/TFunctionNoNew.d.ts +0 -0
- /package/{dist/types → types}/util/types/TPlainObject.d.ts +0 -0
- /package/{dist/types → types}/util/types/TPrimitive.d.ts +0 -0
- /package/{dist/types → types}/util/types/TStringParser.d.ts +0 -0
- /package/{dist/types → types}/util/types/TValidator.d.ts +0 -0
- /package/{dist/types → types}/util/validation/createTypedArrayValidator.d.ts +0 -0
- /package/{dist/types → types}/util/validation/ensureThat.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isArray.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isBoolean.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isFunction.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isNamedFunction.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isNamedFunctionArray.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isObject.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isPlainObject.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isPrimitive.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isString.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isStringArray.d.ts +0 -0
- /package/{dist/types → types}/util/validation/isStringWithNoSpacesOrDashes.d.ts +0 -0
- /package/{dist/types → types}/util/validation/numbers/isInteger.d.ts +0 -0
- /package/{dist/types → types}/util/validation/numbers/isValidNumber.d.ts +0 -0
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { objUpdatePropertyDescriptors } from './objUpdatePropertyDescriptors'
|
|
2
|
-
|
|
3
|
-
describe(objUpdatePropertyDescriptors.name, () => {
|
|
4
|
-
it('should update property descriptors of specified properties on the object', () => {
|
|
5
|
-
const object = {
|
|
6
|
-
name: 'John',
|
|
7
|
-
age: 30,
|
|
8
|
-
}
|
|
9
|
-
objUpdatePropertyDescriptors(object, ['name'], (descriptor, property) => ({
|
|
10
|
-
...descriptor,
|
|
11
|
-
enumerable: false,
|
|
12
|
-
}))
|
|
13
|
-
expect(Object.getOwnPropertyDescriptor(object, 'name')).toEqual({
|
|
14
|
-
value: 'John',
|
|
15
|
-
writable: true,
|
|
16
|
-
enumerable: false,
|
|
17
|
-
configurable: true,
|
|
18
|
-
})
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
it('should throw an error if a specified property does not exist on the object', () => {
|
|
22
|
-
const object = {
|
|
23
|
-
name: 'John',
|
|
24
|
-
age: 30,
|
|
25
|
-
}
|
|
26
|
-
expect(() => {
|
|
27
|
-
objUpdatePropertyDescriptors(object, ['address'], (descriptor, property) => descriptor)
|
|
28
|
-
}).toThrowError("Property, 'address' does not exist on object.")
|
|
29
|
-
})
|
|
30
|
-
|
|
31
|
-
it('should throw an error if any of the specified properties do not exist on the object', () => {
|
|
32
|
-
const object = {
|
|
33
|
-
name: 'John',
|
|
34
|
-
age: 30,
|
|
35
|
-
}
|
|
36
|
-
expect(() => {
|
|
37
|
-
objUpdatePropertyDescriptors(object, ['name', 'address'], (descriptor, property) => descriptor)
|
|
38
|
-
}).toThrowError("Property, 'address' does not exist on object.")
|
|
39
|
-
})
|
|
40
|
-
})
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { ObjectKey } from '../types/ObjectKey'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Updates the property descriptors of the specified properties on the given object.
|
|
5
|
-
* @param object - The object whose property descriptors are to be updated.
|
|
6
|
-
* @param properties - An array of property names for which the descriptors are to be updated.
|
|
7
|
-
* @param update - A function that takes a property descriptor and a property name, and returns a new property descriptor.
|
|
8
|
-
* @throws Will throw an error if any of the specified properties do not exist on the object.
|
|
9
|
-
* @example ```ts
|
|
10
|
-
* const obj = { a: 1, b: 2 };
|
|
11
|
-
* objUpdatePropertyDescriptors(obj, ['a', 'b'], (descriptor, property) => {
|
|
12
|
-
* descriptor.writable = true;
|
|
13
|
-
* return obj;
|
|
14
|
-
* });
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
17
|
-
export function objUpdatePropertyDescriptors<V>(
|
|
18
|
-
object: Record<ObjectKey, V>,
|
|
19
|
-
properties: string[],
|
|
20
|
-
update: <T extends PropertyDescriptor>(descriptor: T, property: string) => T
|
|
21
|
-
): void {
|
|
22
|
-
for (const p of properties) {
|
|
23
|
-
if (!Reflect.has(object, p)) {
|
|
24
|
-
throw new Error(`Property, '${p}' does not exist on object.`)
|
|
25
|
-
}
|
|
26
|
-
const descriptor = update(Object.getOwnPropertyDescriptor(object, p) as PropertyDescriptor, p)
|
|
27
|
-
Object.defineProperty(object, p, descriptor)
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { setNonEnumerable } from './setNonEnumerable'
|
|
2
|
-
|
|
3
|
-
describe(setNonEnumerable.name, () => {
|
|
4
|
-
it('should set the enumerable property to true.', () => {
|
|
5
|
-
const o = { a: 1 }
|
|
6
|
-
expect(Object.keys(o).includes('a')).toBe(true)
|
|
7
|
-
setNonEnumerable(o, 'a')
|
|
8
|
-
expect(Object.keys(o).includes('a')).toBe(false)
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
describe('when a property does not exist on the object', () => {
|
|
12
|
-
const object = {
|
|
13
|
-
prop1: 'value1',
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
it('should throw an error when one property does not exist', () => {
|
|
17
|
-
expect(() => setNonEnumerable(object, 'prop2')).toThrow("Property, 'prop2' does not exist on object.")
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
it('should throw an error when multiple properties do not exist', () => {
|
|
21
|
-
expect(() => setNonEnumerable(object, 'prop2', 'prop3')).toThrow("Property, 'prop2' does not exist on object.")
|
|
22
|
-
})
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
describe('when a property does not have a descriptor', () => {
|
|
26
|
-
Object.defineProperty(Object.prototype, 'inheritedProp', {
|
|
27
|
-
value: 'value2',
|
|
28
|
-
writable: true,
|
|
29
|
-
configurable: true,
|
|
30
|
-
enumerable: true,
|
|
31
|
-
})
|
|
32
|
-
const object = {
|
|
33
|
-
prop1: 'value1',
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
it('should throw an error when a property does not have a descriptor', () => {
|
|
37
|
-
expect(() => setNonEnumerable(object, 'inheritedProp')).toThrow()
|
|
38
|
-
})
|
|
39
|
-
|
|
40
|
-
it('should throw an error when multiple properties do not have a descriptor', () => {
|
|
41
|
-
expect(() => setNonEnumerable(object, 'inheritedProp', 'prop2')).toThrow()
|
|
42
|
-
})
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
describe('when all properties exist and have descriptors', () => {
|
|
46
|
-
const object = {
|
|
47
|
-
prop1: 'value1',
|
|
48
|
-
prop2: 'value2',
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
it('should make a single property non-enumerable', () => {
|
|
52
|
-
setNonEnumerable(object, 'prop1')
|
|
53
|
-
expect(Object.getOwnPropertyDescriptor(object, 'prop1')?.enumerable).toBe(false)
|
|
54
|
-
expect(Object.getOwnPropertyDescriptor(object, 'prop2')?.enumerable).toBe(true)
|
|
55
|
-
})
|
|
56
|
-
|
|
57
|
-
it('should make multiple properties non-enumerable', () => {
|
|
58
|
-
setNonEnumerable(object, 'prop1', 'prop2')
|
|
59
|
-
expect(Object.getOwnPropertyDescriptor(object, 'prop1')?.enumerable).toBe(false)
|
|
60
|
-
expect(Object.getOwnPropertyDescriptor(object, 'prop2')?.enumerable).toBe(false)
|
|
61
|
-
})
|
|
62
|
-
})
|
|
63
|
-
})
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { ObjectKey } from '../types/ObjectKey'
|
|
2
|
-
import { objUpdatePropertyDescriptors } from './objUpdatePropertyDescriptors'
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Sets the specified properties of an object as non-enumerable.
|
|
6
|
-
* @remarks This function modifies the original object by setting the specified properties as non-enumerable.
|
|
7
|
-
* If the object or any of the property names are not valid, it throws an error.
|
|
8
|
-
* @param object The object whose properties are to be set as non-enumerable.
|
|
9
|
-
* @param properties The names of the properties to be set as non-enumerable.
|
|
10
|
-
* @throws Will throw an error if any of the specified properties do not exist on the object.
|
|
11
|
-
* @example ```ts
|
|
12
|
-
* setNonEnumerable({ a: 1, b: 2, c: 3 }, 'a', 'b');
|
|
13
|
-
* Object.keys({ a: 1, b: 2, c: 3 });;
|
|
14
|
-
* //=> ['c']
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
17
|
-
export function setNonEnumerable(object: Record<ObjectKey, any>, ...properties: string[]): void {
|
|
18
|
-
objUpdatePropertyDescriptors(object, properties, (descriptor) => {
|
|
19
|
-
descriptor.enumerable = false
|
|
20
|
-
return descriptor
|
|
21
|
-
})
|
|
22
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { isOSX } from './isOSX'
|
|
2
|
-
import { isVsCodeInstalled } from './isVsCodeInstalled'
|
|
3
|
-
import { isWindows } from './isWindows'
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Get the default command to open a file in in a text editor.
|
|
7
|
-
* If VSCode is installed, this is used. Otherwise, the default text editor of the OS is used.
|
|
8
|
-
*/
|
|
9
|
-
export function defaultOpenInEditorCommand() {
|
|
10
|
-
if (!COMMAND) COMMAND = isVsCodeInstalled() ? 'code -w' : isWindows() ? 'notepad' : isOSX() ? 'open vi' : 'xdg-open'
|
|
11
|
-
return COMMAND
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
let COMMAND = ''
|
package/src/util/os/isOSX.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if the current platform is OSX.
|
|
3
|
-
* It checks the 'process' object and the 'platform' property to determine if the platform is 'darwin'.
|
|
4
|
-
* @returns A boolean indicating whether the current platform is OSX.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export function isOSX(): boolean {
|
|
8
|
-
return process.platform === 'darwin'
|
|
9
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { execSync } from 'child_process'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Returns whether Visual Studio Code is installed on the system.
|
|
5
|
-
* @example isVsCodeInstalled() //=> true
|
|
6
|
-
*/
|
|
7
|
-
export function isVsCodeInstalled(): boolean {
|
|
8
|
-
try {
|
|
9
|
-
const stdout = execSync('code --help').toString()
|
|
10
|
-
return stdout.startsWith('Visual Studio Code') && stdout.includes('-w --wait')
|
|
11
|
-
} catch (e) {
|
|
12
|
-
return false
|
|
13
|
-
}
|
|
14
|
-
}
|
package/src/util/os/isWindows.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if the current platform is Windows.
|
|
3
|
-
* @remarks
|
|
4
|
-
* It checks the 'process' object and the 'platform' property to determine if the platform is 'win32'.
|
|
5
|
-
* It also checks the 'OSTYPE' environment variable to see if it matches 'msys' or 'cygwin'.
|
|
6
|
-
* @returns A boolean indicating whether the current platform is Windows.
|
|
7
|
-
*/
|
|
8
|
-
export function isWindows(): boolean {
|
|
9
|
-
return isWin
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
const isWin = process && (process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env['OSTYPE'] || ''))
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { getTempDataPath } from './getTempDataPath'
|
|
2
|
-
|
|
3
|
-
describe(getTempDataPath.name, () => {
|
|
4
|
-
it('returns the path to the os temp dir', () => {
|
|
5
|
-
expect(typeof getTempDataPath()).toBe('string')
|
|
6
|
-
expect(getTempDataPath('myapp').endsWith('myapp')).toBe(true)
|
|
7
|
-
expect(getTempDataPath('myapp', 'dir').endsWith('dir')).toBe(true)
|
|
8
|
-
})
|
|
9
|
-
})
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra'
|
|
2
|
-
import os from 'os'
|
|
3
|
-
import path from 'path'
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Returns a path to the os tmpdir location.
|
|
7
|
-
*
|
|
8
|
-
* @param paths - The paths to join to the os tmpdir location.
|
|
9
|
-
*/
|
|
10
|
-
export function getTempDataPath(...paths: string[]): string {
|
|
11
|
-
return path.join(tempdir, ...paths)
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
const tempdir = fs.realpathSync(os.tmpdir())
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { regexEscapeString } from './regexEscapeString'
|
|
2
|
-
|
|
3
|
-
describe('regexEscapeString', () => {
|
|
4
|
-
it('escapes correctly', () => {
|
|
5
|
-
expect(regexEscapeString('[click](google.com)')).toBe('\\[click\\]\\(google\\.com\\)')
|
|
6
|
-
})
|
|
7
|
-
|
|
8
|
-
it('works when creating RegExp object', () => {
|
|
9
|
-
expect(() => {
|
|
10
|
-
new RegExp(regexEscapeString('[.^$()]*(wow)+'), 'g')
|
|
11
|
-
}).not.toThrowError()
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
it('should escape special characters', () => {
|
|
15
|
-
const str = '.*+?^${}()|[\\]'
|
|
16
|
-
const expected = '\\.\\*\\+\\?\\^\\$\\{\\}\\(\\)\\|\\[\\\\\\]'
|
|
17
|
-
expect(regexEscapeString(str)).toBe(expected)
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
it('should return the same string if there are no special characters', () => {
|
|
21
|
-
const str = 'abc123'
|
|
22
|
-
expect(regexEscapeString(str)).toBe(str)
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
it('should handle empty strings', () => {
|
|
26
|
-
const str = ''
|
|
27
|
-
expect(regexEscapeString(str)).toBe(str)
|
|
28
|
-
})
|
|
29
|
-
|
|
30
|
-
it('should escape special characters in a string with alphanumeric characters', () => {
|
|
31
|
-
const str = 'abc.*+?^${}()|[\\]123'
|
|
32
|
-
const expected = 'abc\\.\\*\\+\\?\\^\\$\\{\\}\\(\\)\\|\\[\\\\\\]123'
|
|
33
|
-
expect(regexEscapeString(str)).toBe(expected)
|
|
34
|
-
})
|
|
35
|
-
})
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Escapes special characters in a string to be used in a regular expression.
|
|
3
|
-
* @param str The input string to escape.
|
|
4
|
-
* @returns The escaped string.
|
|
5
|
-
* @example ```ts
|
|
6
|
-
* const input = 'Hello, world!';
|
|
7
|
-
* regexEscapeString(input);;
|
|
8
|
-
* //=> 'Hello, world!'
|
|
9
|
-
* ```
|
|
10
|
-
*/
|
|
11
|
-
export function regexEscapeString(str: string): string {
|
|
12
|
-
return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') // $& means the whole matched string
|
|
13
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { strEnsureStartsWith } from './strEnsureStartsWith'
|
|
2
|
-
|
|
3
|
-
describe('strEnsureStartsWith', () => {
|
|
4
|
-
it('should return the original string if it already starts with the specified substring', () => {
|
|
5
|
-
const result = strEnsureStartsWith('.json', '.')
|
|
6
|
-
expect(result).toBe('.json')
|
|
7
|
-
})
|
|
8
|
-
|
|
9
|
-
it('should prepend the specified substring to the start of the string if it does not already start with it', () => {
|
|
10
|
-
const result = strEnsureStartsWith('json', '.')
|
|
11
|
-
expect(result).toBe('.json')
|
|
12
|
-
})
|
|
13
|
-
})
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Ensures that a string starts with a specified substring. If the string already starts with the specified substring, it is returned as is. Otherwise, the substring is appended to the end of the string.
|
|
3
|
-
* @param string The string to be processed.
|
|
4
|
-
* @param startsWith The substring that the string should end with.
|
|
5
|
-
* @example ```ts
|
|
6
|
-
* strEnsureStartsWith('json', '.');
|
|
7
|
-
* //=> '.json'
|
|
8
|
-
* strEnsureStartsWith('.json', '.');
|
|
9
|
-
* //=> '.json'
|
|
10
|
-
* ```
|
|
11
|
-
*/
|
|
12
|
-
export function strEnsureStartsWith(string: string, startsWith: string): string {
|
|
13
|
-
return string.startsWith(startsWith) ? string : startsWith + string
|
|
14
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { strFirstCharToUpperCase } from './strFirstCharToUpperCase'
|
|
2
|
-
|
|
3
|
-
describe('strFirstCharToUpperCase', () => {
|
|
4
|
-
it('should convert the first character of a string to uppercase', () => {
|
|
5
|
-
const result = strFirstCharToUpperCase('hello')
|
|
6
|
-
expect(result).toBe('Hello')
|
|
7
|
-
})
|
|
8
|
-
|
|
9
|
-
it('should return the same string if the first character is already uppercase', () => {
|
|
10
|
-
const result = strFirstCharToUpperCase('Hello')
|
|
11
|
-
expect(result).toBe('Hello')
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
it('should return the same string if it starts with a non-alphabetical character', () => {
|
|
15
|
-
const result = strFirstCharToUpperCase('1hello')
|
|
16
|
-
expect(result).toBe('1hello')
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
it('should return an empty string if the input is an empty string', () => {
|
|
20
|
-
const result = strFirstCharToUpperCase('')
|
|
21
|
-
expect(result).toBe('')
|
|
22
|
-
})
|
|
23
|
-
|
|
24
|
-
it('should handle strings with only one character', () => {
|
|
25
|
-
const result = strFirstCharToUpperCase('h')
|
|
26
|
-
expect(result).toBe('H')
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
it('should handle strings with only one uppercase character', () => {
|
|
30
|
-
const result = strFirstCharToUpperCase('H')
|
|
31
|
-
expect(result).toBe('H')
|
|
32
|
-
})
|
|
33
|
-
})
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts the first character of a string to uppercase.
|
|
3
|
-
* @param string The string to be converted.
|
|
4
|
-
* @example ```ts
|
|
5
|
-
* strFirstCharToUpperCase('hello');
|
|
6
|
-
* //=> 'Hello'
|
|
7
|
-
* ```
|
|
8
|
-
*/
|
|
9
|
-
export function strFirstCharToUpperCase(string: string): string {
|
|
10
|
-
return string.charAt(0).toUpperCase() + string.substring(1)
|
|
11
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { strIsLowerCase } from './strIsLowerCase'
|
|
2
|
-
|
|
3
|
-
describe('strIsLowerCase', () => {
|
|
4
|
-
it('example', () => {
|
|
5
|
-
expect(strIsLowerCase('input')).toBe(true)
|
|
6
|
-
expect(strIsLowerCase('Input')).toBe(false)
|
|
7
|
-
expect(strIsLowerCase('')).toBe(true)
|
|
8
|
-
expect(strIsLowerCase('.')).toBe(true)
|
|
9
|
-
})
|
|
10
|
-
|
|
11
|
-
it('should return true for a lowercase string', () => {
|
|
12
|
-
expect(strIsLowerCase('hello')).toBe(true)
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
it('should return false for an uppercase string', () => {
|
|
16
|
-
expect(strIsLowerCase('HELLO')).toBe(false)
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
it('should return false for a mixed case string', () => {
|
|
20
|
-
expect(strIsLowerCase('Hello')).toBe(false)
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
it('should return true for an empty string', () => {
|
|
24
|
-
expect(strIsLowerCase('')).toBe(true)
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
it('should return true for a string with spaces', () => {
|
|
28
|
-
expect(strIsLowerCase('hello world')).toBe(true)
|
|
29
|
-
})
|
|
30
|
-
|
|
31
|
-
it('should return false for a string with spaces and uppercase letters', () => {
|
|
32
|
-
expect(strIsLowerCase('Hello World')).toBe(false)
|
|
33
|
-
})
|
|
34
|
-
|
|
35
|
-
it('should return true for a string with special characters', () => {
|
|
36
|
-
expect(strIsLowerCase('hello@world.com')).toBe(true)
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
it('should return false for a string with special characters and uppercase letters', () => {
|
|
40
|
-
expect(strIsLowerCase('Hello@World.com')).toBe(false)
|
|
41
|
-
})
|
|
42
|
-
})
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if the given string is in lower case.
|
|
3
|
-
* @param input The string to be checked.
|
|
4
|
-
* @example ```ts
|
|
5
|
-
* strIsLowerCase('hello');
|
|
6
|
-
* //=> true
|
|
7
|
-
* strIsLowerCase('Hello');
|
|
8
|
-
* //=> false
|
|
9
|
-
* ```
|
|
10
|
-
*/
|
|
11
|
-
export function strIsLowerCase(input: string): boolean {
|
|
12
|
-
return input === input.toLowerCase()
|
|
13
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { strIsUpperCase } from './strIsUpperCase'
|
|
2
|
-
|
|
3
|
-
describe('strIsUpperCase', () => {
|
|
4
|
-
it('example', () => {
|
|
5
|
-
expect(strIsUpperCase('INPUT')).toBe(true)
|
|
6
|
-
expect(strIsUpperCase('Input')).toBe(false)
|
|
7
|
-
})
|
|
8
|
-
|
|
9
|
-
it('should return true for a string in upper case', () => {
|
|
10
|
-
expect(strIsUpperCase('HELLO')).toBe(true)
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
it('should return false for a string in lower case', () => {
|
|
14
|
-
expect(strIsUpperCase('hello')).toBe(false)
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
it('should return false for a string in mixed case', () => {
|
|
18
|
-
expect(strIsUpperCase('Hello')).toBe(false)
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
it('should return true for a string with upper case special characters', () => {
|
|
22
|
-
expect(strIsUpperCase('HELLO WORLD!')).toBe(true)
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
it('should return false for a string with lower case special characters', () => {
|
|
26
|
-
expect(strIsUpperCase('hello world!')).toBe(false)
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
it('should return true for an empty string', () => {
|
|
30
|
-
expect(strIsUpperCase('')).toBe(true)
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
it('should return true for a string with only spaces', () => {
|
|
34
|
-
expect(strIsUpperCase(' ')).toBe(true)
|
|
35
|
-
})
|
|
36
|
-
|
|
37
|
-
it('should return true for a string with numbers', () => {
|
|
38
|
-
expect(strIsUpperCase('123')).toBe(true)
|
|
39
|
-
})
|
|
40
|
-
|
|
41
|
-
it('should return true for a string with upper case numbers and special characters', () => {
|
|
42
|
-
expect(strIsUpperCase('HELLO123!')).toBe(true)
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
it('should return false for a string with lower case numbers and special characters', () => {
|
|
46
|
-
expect(strIsUpperCase('hello123!')).toBe(false)
|
|
47
|
-
})
|
|
48
|
-
})
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if the given string is in upper case.
|
|
3
|
-
* @param input The string to be checked.
|
|
4
|
-
* @example ```ts
|
|
5
|
-
* strIsUpperCase('HELLO');;
|
|
6
|
-
* //=> true
|
|
7
|
-
* strIsUpperCase('HEllo');;
|
|
8
|
-
* //=> false
|
|
9
|
-
* ```
|
|
10
|
-
*/
|
|
11
|
-
export function strIsUpperCase(input: string): boolean {
|
|
12
|
-
return input === input.toUpperCase()
|
|
13
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { strSplitCamelCase } from './strSplitCamelCase'
|
|
2
|
-
|
|
3
|
-
describe('strSplitCamelCase', () => {
|
|
4
|
-
it('example', () => {
|
|
5
|
-
expect(strSplitCamelCase('someCamelCase')).toStrictEqual(['some', 'Camel', 'Case'])
|
|
6
|
-
})
|
|
7
|
-
|
|
8
|
-
it('handles numbers', () => {
|
|
9
|
-
expect(strSplitCamelCase('camelCase18')).toStrictEqual(['camel', 'Case18'])
|
|
10
|
-
expect(strSplitCamelCase('camel18Case')).toStrictEqual(['camel18', 'Case'])
|
|
11
|
-
expect(strSplitCamelCase('camel18case')).toStrictEqual(['camel18case'])
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
it('should handle empty strings', () => {
|
|
15
|
-
expect(strSplitCamelCase('')).toEqual([])
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
it('should handle strings with only one character', () => {
|
|
19
|
-
expect(strSplitCamelCase('a')).toEqual(['a'])
|
|
20
|
-
expect(strSplitCamelCase('A')).toEqual(['A'])
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
it('should not split words with only two characters', () => {
|
|
24
|
-
expect(strSplitCamelCase('ab')).toEqual(['ab'])
|
|
25
|
-
expect(strSplitCamelCase('aB')).toEqual(['aB'])
|
|
26
|
-
expect(strSplitCamelCase('bA')).toEqual(['bA'])
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
it('handles short strings', () => {
|
|
30
|
-
expect(strSplitCamelCase('aWo')).toStrictEqual(['a', 'Wo'])
|
|
31
|
-
expect(strSplitCamelCase('aaWo')).toStrictEqual(['aa', 'Wo'])
|
|
32
|
-
expect(strSplitCamelCase('aaaW')).toStrictEqual(['aaa', 'W'])
|
|
33
|
-
})
|
|
34
|
-
|
|
35
|
-
it('should split camel case words correctly', () => {
|
|
36
|
-
expect(strSplitCamelCase('camelCaseWord')).toEqual(['camel', 'Case', 'Word'])
|
|
37
|
-
expect(strSplitCamelCase('anotherCamelCaseWord')).toEqual(['another', 'Camel', 'Case', 'Word'])
|
|
38
|
-
})
|
|
39
|
-
|
|
40
|
-
it('should return the word as it was if no splits needed', () => {
|
|
41
|
-
expect(strSplitCamelCase('word')).toEqual(['word'])
|
|
42
|
-
expect(strSplitCamelCase('anotherword')).toEqual(['anotherword'])
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
it('should handle strings with numeric characters', () => {
|
|
46
|
-
expect(strSplitCamelCase('camelCase1Word')).toEqual(['camel', 'Case1', 'Word'])
|
|
47
|
-
expect(strSplitCamelCase('anotherCamelCase2Word')).toEqual(['another', 'Camel', 'Case2', 'Word'])
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
it('should handle strings with special characters', () => {
|
|
51
|
-
expect(strSplitCamelCase('camelCase$Word')).toEqual(['camel', 'Case$', 'Word'])
|
|
52
|
-
expect(strSplitCamelCase('anotherCamelCase#Word')).toEqual(['another', 'Camel', 'Case#', 'Word'])
|
|
53
|
-
})
|
|
54
|
-
})
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { strIsLowerCase } from './strIsLowerCase'
|
|
2
|
-
import { strIsUpperCase } from './strIsUpperCase'
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Returns an array of words in the string
|
|
6
|
-
* @param word The camel case word to split.
|
|
7
|
-
* @throws Throws an error if the input is not a string.
|
|
8
|
-
* @param input input string
|
|
9
|
-
* @example ```ts
|
|
10
|
-
* strSplitCamelCase('someCamel10Case')
|
|
11
|
-
* //=> ['some', 'Camel10', 'Case']
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
export function strSplitCamelCase(word: string): string[] {
|
|
15
|
-
if (!word) return []
|
|
16
|
-
if (word.length <= 2) return [word]
|
|
17
|
-
const result: string[] = []
|
|
18
|
-
const lastCharIndex = word.length - 1
|
|
19
|
-
let lastSplitIndex = 0
|
|
20
|
-
let foundCamelCase = false
|
|
21
|
-
for (let i = 1; i < word.length; i++) {
|
|
22
|
-
if (isWordSplitIndex(word, i)) {
|
|
23
|
-
const sub = word.substring(lastSplitIndex, i)
|
|
24
|
-
if (sub) {
|
|
25
|
-
result.push(sub)
|
|
26
|
-
lastSplitIndex = i
|
|
27
|
-
foundCamelCase = true
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
if (foundCamelCase && i === lastCharIndex) {
|
|
31
|
-
const sub = word.substring(lastSplitIndex)
|
|
32
|
-
if (sub) result.push(sub)
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
if (!foundCamelCase) result.push(word)
|
|
36
|
-
return result
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const regInteger = /\d+/g
|
|
40
|
-
const regSpecial = /[^\w]+/g
|
|
41
|
-
|
|
42
|
-
function isWordSplitIndex(word: string, index: number) {
|
|
43
|
-
return (
|
|
44
|
-
strIsLowerCase(word[index - 1]) &&
|
|
45
|
-
strIsUpperCase(word[index]) &&
|
|
46
|
-
!regInteger.test(word[index - 1]) &&
|
|
47
|
-
!regInteger.test(word[index]) &&
|
|
48
|
-
!regSpecial.test(word[index - 1]) &&
|
|
49
|
-
!regSpecial.test(word[index])
|
|
50
|
-
)
|
|
51
|
-
}
|