swiss_knife 3.2.3 swiss_knife: ^3.2.3 copied to clipboard
Dart Useful Tools - collections, math, date, uri, json, events, resources, regexp, etc...
3.2.3 #
-
Optimize
toFlatListOfStrings
. -
Added
trimListOfStrings
. -
sdk: '>=3.4.0 <4.0.0'
-
lints: ^4.0.0
-
test: ^1.25.14
-
dependency_validator: ^4.1.2
-
coverage: ^1.11.1
3.2.2 #
MimeType
:- Added
isYAML
,isFont
,isPDF
,isDart
,isOctetStream
, - Added
isZip
,isGZip
,isBZip2
,isXZ
,isCompressed
. - Added
isTar
,isTarGZip
,isTarBZip2
,isTarXZ
,isTarCompressed
.
3.2.1 #
-
MimeType
:- Added
applicationOctetStream
andbytes
.
- Added
-
test: ^1.25.8
-
coverage: ^1.9.0
3.2.0 #
-
sdk: '>=3.3.0 <4.0.0'
-
intl: ^0.19.0
-
lints: ^3.0.0
-
test: ^1.25.2
-
dependency_validator: ^3.2.3
-
collection: ^1.18.0
-
coverage: ^1.7.2
3.1.6 #
-
MimeType: fix charset for
text/html
type. -
sdk: '>=2.18.0 <4.0.0'
-
intl: ^0.18.1
-
resource_portable: ^3.1.0
3.1.5 #
MimeType
:parse
: optimize and update recognized types.byExtension
: add more extensions.
- Added
getCharsetEncoding
.
3.1.4 #
EventStream
:listen
: new parameteroverwriteSingletonSubscription
.cancelSingletonSubscription
: now ensures that the previous subscription is removed from internal handler.
- coverage: ^1.6.3
3.1.3 #
- Code adjustments for
lints: ^2.0.1
. - intl: ^0.18.0
- resource_portable: ^3.0.1
- lints: ^2.0.1
- test: ^1.22.1
3.1.2 #
DataURLBase64
:- Added constructor
DataURLBase64.from
. - Improved Null Safety code.
- Added constructor
- Fix typo.
- test: ^1.17.12
- dependency_validator: ^3.2.2
- collection: ^1.17.0
- coverage: ^1.6.1
3.1.1 #
parseBool
:- Improve possible valid values.
3.1.0 #
- Migrate to
lints
:- NOTE: some constants were renamed to lowercase camel case.
- Improved GitHub CI.
- Added browser tests.
- lints: ^1.0.1
- coverage: ^1.0.4
3.0.8 #
- Fixed
ResourceContent
load with errors. - Test coverage.
- Added FOSSA Status.
3.0.7 #
- Added
Math.clamp
. - Fixed
formatDecimal
for scientific notation.
3.0.6 #
- Added
UniqueCaller
andparseIntList
. - Null safety migration adjustments.
3.0.5 #
- Null safety migration adjustments.
3.0.4 #
collections
: improve Null Safety usage.
3.0.3 #
- Null safety migration adjustments.
3.0.2 #
- Null safety migration adjustments.
3.0.1 #
- Null safety migration adjustments.
3.0.0 #
- Dart 2.12.0:
- Sound null safety compatibility.
- Update CI dart commands.
- sdk: '>=2.12.0 <3.0.0'
- intl: ^0.17.0
- resource_portable: ^3.0.0
- collection: ^1.15.0
- pedantic: ^1.11.0
- test: ^1.16.5
2.5.26 #
- Optimize:
parseInt
,parseDouble
andparseNum
. - Fix:
listNotMatchesAll
andlistMatchesAny
when leading with lists withnull
elements. - Dart 2.12.0+ compliant:
dartfmt
anddartanalyzer
.
2.5.25 #
TreeReferenceMap
: ensure thatroot
is not null.EventStream
: AddedlistenOneShot
.
2.5.24 #
TreeReferenceMap
:- fix
getParentKey
.
- fix
2.5.23 #
- Added
TreeReferenceMap
: an alternative to Weak References (nonexistent in Dart).
2.5.22 #
MimeType.byExtension
: Added parameterdefaultAsApplication
.
2.5.21 #
MimeType
: AddedhtmlTag
andisAudio
.- Added
unquoteString
.
2.5.20 #
- Added
ObjectCache
. - Added
Dimension
. - Added
ContextualResource
andContextualResourceResolver
:- Resolves a resource based into a context, like screen dimension.
- Added:
parseFromInlineProperties
anddateFormat_YYYY_MM
. EventStream
:- Added
eventValidator
.
- Added
Math
:minMax
,maxInList
andminInList
: added optionalcomparator
parameter.
2.5.19 #
MimeType
: AddedisCharsetUTF16
,isText
,isXML
,isXHTML
,isFormURLEncoded
,isStringType
.dateFormat_YY*
: added optional parameterdelimiter
.InteractionCompleter
: Added fieldtriggerDelayLimit
.Math
:- Added collection methods:
subtract
,multiply
anddivide
.
- Added collection methods:
2.5.18 #
- Improve API Documentation.
2.5.17 #
- Added
resolveURL
, similar toresolveUri
. - Added
replaceStringMarks
. buildStringPattern
usingreplaceStringMarks
and now returns empty string for null parameters.- Added
EventStreamDelegator
, to point to instances ofEventStream
not instantiated yet. - Added
ListenerWrapper
, to handleStreamSubscription
related to a listener and useful to create one shot listeners.
2.5.16 #
- New
AsyncValue
: to handle values that comes fromFuture
. - Added
isEncodedJSON
,isEncodedJSONList
andisEncodedJSONMap
: to check if aString
is an encoded JSON. - ADded
isDigit
,isAlphaNumeric
,isDigitString
,isAlphaNumericString
. - Added
listMatchesAny
,isListValuesIdentical
,listContainsAll
,ensureNotEmptyString
,deepCatchesValues
. MimeType.fileExtension
: support forsvg
,xhtml
,mpeg
,mp3
,ico
.- Changed method signature:
getUriRootURL
,getUriBaseHostAndPort
,resolveUri
.
2.5.15 #
- Added:
isEmptyString
,isNotEmptyString
,isListEntriesAllOfType
. - Added
deepCopyMap
. deepCopy
: added parametercopier
.NNField
: Addedresolver
.MimeType
: added SVG support.InteractionCompleter
:interact
: Added parametersinteractionParameters
andignoreConsecutiveEqualsParameters
.- Added
dispose
.
encodeJSON
: Added parametertoEncodable
.- Added:
toEncodableJSON
. parseInt
,parseDouble
andparseNum
now returns default value (def
) in case of parsing error.- isDouble now can parse
.00
pattern. - Fix:
dataSizeFormat
.
2.5.14 #
MimeType
: Added new types.- Added constructor
MimeType.byExtension
. MimeType
: Fixed parsing ofgif
.EventStream
: AddedcancelAllSingletonSubscriptions
,cancelSingletonSubscription
,getSingletonSubscription
.- Added
listenStreamWithInteractionCompleter
. - pedantic: ^1.9.2
2.5.13 #
removeUriQueryString
: avoid blank fragment in the URL.
2.5.12 #
- Added
isPositiveNumber
,isNegativeNumber
. - Added
MimeType.APPLICATION_ZIP
. - Added
maxInIterable
,minInIterable
. - Added
deepReplaceValues
,deepReplaceListValues
,deepReplaceMapValues
. - Added
parseComparable
,removeEmptyEntries
,sortMapEntries
,sortMapEntriesByValue
,sortMapEntriesByKey
.
2.5.11 #
- Added
NNField
. - Added
clipNumber
. parseBool
: if value is a num: true = v > 0- More tests.
2.5.10 #
- Fix typo.
2.5.9 #
MimeType
: Addedcharset
.- Added:
parseJSON
,isBlankString
,isBlankStringInRange
,isEqualsSet
,isEqualsIterable
. - Added:
asTreeOfKeyString
,parseMapEntry
,groupIterableBy
,sumIterable
,averageIterable
. - Added:
parseJSON
,encodeJSON
. - Removed
splitRegExp
.split
now acceptsPattern
(String
andRegExp
). - Optimized
isBlankCodeUnit
.
2.5.8 #
- Added string helpers:
isBlankChar
,isBlankCodeUnit
,hasBlankChar
,hasBlankCharInRange
. - IO:
catFile
,catFileBytes
,saveFile
,saveFileBytes
. InteractionCompleter
:cancel
- `MimeType``: equals and hashcode.
- Added:
isEqualsList
,isEqualsMap
.
2.5.7 #
- Added:
isInUnixEpochRange
- New event handler:
InteractionCompleter
.
2.5.6 #
- dartfmt
- test_coverage: ^0.4.2
2.5.5 #
- Change
isEmptyValue
to isisEmptyObject
. - Added
isNotEmptyObject
.
2.5.4 #
- Fix
MimeType.parse
when parametermimeType
is empty anddefaultMimeType
is null. - Fix
DataURLBase64.asDataURLString
- dartfmt.
2.5.3 #
- fix buildStringPattern() extraParameters issue.
2.5.2 #
- Math.mean() returns 0 on empty lists.
- dartfmt.
- Add badges to README.md
2.5.1 #
- Math.sum()
- More API Documentation.
2.5.0 #
- dartfmt.
2.4.2 #
- Added API Documentation.
- dataSizeFormat() now accepts decimalBase and binaryBase parameters.
- Pair.swapAB().
- Scale and ScaleNum.
- getPathWithoutFileName(...).
- MimeType: added alias and file extension for gzip.
- (FIX) LoadController: _idCounter to private.
- (FIX) EventStream.listenAsFuture(): ensure that completer is called only once.
2.4.1 #
- isIPAddress()
- parseDateTime() accepts
int
: parsing withDateTime.fromMillisecondsSinceEpoch(v)
. - parseDuration()
- enum Unit: getUnitByIndex(), getUnitByName(), parseUnit(), getUnitAsMilliseconds(), getMillisecondsAsUnit()
- getDateTimeWeekDayByName(), getDateTimeStartOf(), getDateTimeEndOf()
2.4.0 #
- date.dart:
- parseDateTime(...), parseDateTimeFromInlineList(...)
- formatTimeMillis() change form to be ISO compliant.
- DateTimeWeekDay: getDateTimeWeekDay(), getDateTimeWeekDay_from_ISO_8601_index().
- getDateTimeDayStart(), getDateTimeDayEnd(), getDateTimeYesterday(), getDateTimeLastNDays(), getDateTimeThisWeek().
- getDateTimeLastWeek(), getDateTimeThisMonth(), getDateTimeLastMonth(), getDateTimePreviousMonth(), getDateTimeWeekStart(), getDateTimeWeekEnd().
- DateRangeType: getDateTimeRange(rangeType, ...)
- uri.dart:
- getUriBase(), getUriRoot(), getUriBaseScheme(), getUriBaseHost(), getUriBasePort(),
- getUriBaseHostAndPort(suppressPort80), getUriBaseURL(), buildUri(), resolveUri(), removeUriFragment().
- removeUriQueryString(), isUriBaseLocalhost(), isUriBaseIP(), isIPv4Address(), getPathFileName().
- utils.dart: toCamelCase()
- math.dart:
- events.dart: EventStream.isUsed: non used EventStream won't broadcast events (add() and addError() suppressed for optimization).
- data.dart:
- MimeType
- Base64: encodeArrayBuffer(), decodeAsArrayBuffer()
- DataURLBase64: parsePayloadAsBase64(), parsePayloadAsArrayBuffer(), parsePayloadAsString(), DataURLBase64.mimeType.
- collections.dart:
- Pair
- MapProperties: getPropertyAsDateTime(), findPropertyAsDateTime(), getPropertyAsDateTimeList(), findPropertyAsDateTimeList(), getPropertyAsStringMap(), findPropertyAsStringMap().
- sortMapEntries()
- toFlatListOfStrings()
- isListOfNum(), isListOfType
- parseListOf(...), parseListOfList(...)
- isMapOfStringKeysAndListValues(), isMapOfStringKeysAndNumValues().
- isEmptyValue(val).
- loader.dart: LoadController
2.3.10 #
- MapDelegate ; MapProperties
- isEmail()
- ResourceContent.isLoadedWithError
2.3.9 #
- deepCopy()
- buildStringPattern(), isHttpURL(), getPathExtension(), isAllEquals()
- findKeyPathValue(), parseFromInlineMap()
- ResourceContent, ResourceContentCache (moved from intl_messages)
- fix default value of parseNum().
- remove swiss_knife_browser.dart: moved to package 'dom_tools'.
- resource_portable: ^2.1.7
2.3.8 #
- Accepts dynamic value as input: parseStringFromInlineList, parseIntsFromInlineList, parseNumsFromInlineList, parseDoublesFromInlineList, parseBoolsFromInlineList
- New: isInt, isIntList, isNum, isNumList, isDouble, isDoubleList, isBool, isBoolList
2.3.7 #
- regExpReplaceAll(): allow ${1} marks (previously was only $1).
- fix regExpReplaceAll() when group match is optional.
- regExpDialect()
- isEqualsAsString()
- swiss_knife_vm.dart: catFile(), saveFile()
2.3.6 #
- regExpHasMatch
- regExpReplaceAll
2.3.5 #
- Fix return of parseIntsFromInlineList().
- Added default value for parseXXFromInlineList().
2.3.4 #
- deepHashCode
2.3.3 #
- splitRegExp().
- Tests: split() and splitRegExp() (limits: Java compliant).
2.3.2 #
- isEqualsDeep() ; parseFromInlineList() ;
- parseString() ; parseStringFromInlineList() ;
- parseBool() ; parseNumsFromInlineList() ; parseIntsFromInlineList() ; parseBoolsFromInlineList() ;
2.3.1 #
- Clean code.
2.3.0 #
- More tests.
- Math.min/max/ceil/floor/round/mean/standardDeviation
- parseNum(), parseInt(), parseDouble(), parsePercent(), getEntryIgnoreCase(), putIgnoreCase().
- dataSizeFormat()
- Base64 and DataURLBase64.
2.2.1 #
- Organize code in different dart files.
- Code analysis.
- Upgrade dependencies:
- intl: ^0.16.1
- remove "enum_to_string".
2.2.0 #
- Remove locales to package intl_messages.
- Remove rest_client to package mercury_client.
2.1.2 #
- Add LocalesManager.onDefineLocale and LocalesManager.onDefineLocaleGlobal
2.1.1 #
- Small fixes.
2.1.0 #
- Added Authorization and Credential/Token handling to REST Client.
2.0.0 #
- Update to Dart 2.0.1 and small fixes. Now able to import only utils (swiss_knife_utils.dart)
1.0.1 #
- Fix swiss_knife_browser.dart exports.
1.0.0 #
- Added events example.
- Initial version, created by Stagehand