Add early (and incomplete) implementation of `Adaptive Card` format
(new `adaptivecard` package). This new package is an alternative to
the current implementation of the legacy `MessageCard` format
(`messagecard` package).
Remove `botapi` package. This package was a partial implementation and
intended as a temporary resource until the `adaptivecard` package was
developed sufficiently to replace it. This package could make an
appearance later in a more complete form if there is need for it.
CHANGES
The changes listed here are in comparison to the previous
v2.7.0-alpha.1 release.
- add initial implementation of the `adaptivecard` package
- remove partial implementation of `botapi` package
- incomplete implementation, known issues (atc0005/send2teams#225)
- example code
- create subdir for new `adaptivecard` examples and populate with
equivalents
- create subdir for existing `messagecard` examples
- refresh doc comments of existing examples
- attempt to simplify implementation of examples
- documentation refresh
- cover new features provided by the new `adaptivecard` package
- make note of plans to extend v2 branch features while retaining
backwards compatibility with an eye towards a future v3 series
- add `goteamsnotify.InList()` helper func
- simplify `goteamsnotify.messagePreparer` interface
- simplify `MessageCard.Prepare()` implementation
- explicitly mark files containing exclusively deprecated code
- explicitly mark existing formatting functionality as specific to the
`MessageCard` format
LIMITATIONS
- the `adaptivecard` package is new and its API is subject to change
before the next stable release
- the `adaptivecard` package is incomplete
- while the new package contains sufficient functionality to be
useful and provide a close approximation of functionality to the
existing `messagecard` package, it is still missing support for
some (available) features that the older package provides
- there are many TODO items for the new `adaptivecard` package, most
of which are intended to be removed before the next stable release
- there are active `gocognit` linter warnings for the `Validate()`
method for multiple types in the new `adaptivecard` package
- this method is responsible for asserting known requirements for
multiple field values for its type
- more "bake time" is needed to determine a simpler approach
REFERENCES
- refs GH-157
- refs atc0005/send2teams#225