mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-06-16 11:58:52 -04:00
* adds pkg/jmap/jmap_integration_test.go
* uses ghcr.io/stalwartlabs/stalwart:v0.13.2-alpine
* can be disabled by setting one of the following environment
variables, in the same fashion as ca0493b28
- CI=woodpecker
- CI_SYSTEM_NAME=woodpecker
- USE_TESTCONTAINERS=false
* dependencies:
- bump github.com/go-test/deep from 1.1.0 to 1.1.1
- add github.com/cention-sany/utf7
- add github.com/dustinkirkland/golang-petname
- add github.com/emersion/go-imap/v2
- add github.com/emersion/go-message
- add github.com/emersion/go-sasl
- add github.com/go-crypt/crypt
- add github.com/go-crypt/x
- add github.com/gogs/chardet
- add github.com/inbucket/html2text
- add github.com/jhilleryerd/enmime/v2
- add github.com/ssor/bom
- add gopkg.in/loremipsum.v1
34 lines
729 B
Go
34 lines
729 B
Go
package enmime
|
|
|
|
type EncoderOption interface {
|
|
apply(p *Encoder)
|
|
}
|
|
|
|
// Encoder implements MIME part encoding options
|
|
type Encoder struct {
|
|
forceQuotedPrintableCteOption bool
|
|
}
|
|
|
|
// ForceQuotedPrintableCte forces "quoted-printable" transfer encoding when selecting Content Transfer Encoding, preventing the use of base64.
|
|
func ForceQuotedPrintableCte(b bool) EncoderOption {
|
|
return forceQuotedPrintableCteOption(b)
|
|
}
|
|
|
|
type forceQuotedPrintableCteOption bool
|
|
|
|
func (o forceQuotedPrintableCteOption) apply(p *Encoder) {
|
|
p.forceQuotedPrintableCteOption = bool(o)
|
|
}
|
|
|
|
func NewEncoder(ops ...EncoderOption) *Encoder {
|
|
e := Encoder{
|
|
forceQuotedPrintableCteOption: false,
|
|
}
|
|
|
|
for _, o := range ops {
|
|
o.apply(&e)
|
|
}
|
|
|
|
return &e
|
|
}
|