excelize/xmlContentTypes.go

42 lines
1.5 KiB
Go
Raw Normal View History

// Copyright 2016 - 2023 The excelize Authors. All rights reserved. Use of
2018-09-14 00:44:23 +08:00
// this source code is governed by a BSD-style license that can be found in
// the LICENSE file.
//
// Package excelize providing a set of functions that allow you to write to and
// read from XLAM / XLSM / XLSX / XLTM / XLTX files. Supports reading and
// writing spreadsheet documents generated by Microsoft Excel™ 2007 and later.
// Supports complex components by high compatibility, and provided streaming
// API for generating or reading data from a worksheet with huge amounts of
// data. This library needs Go version 1.16 or later.
2018-09-14 00:58:48 +08:00
2016-08-30 11:51:31 +08:00
package excelize
2021-07-06 00:31:04 +08:00
import (
"encoding/xml"
"sync"
)
2016-08-30 11:51:31 +08:00
// xlsxTypes directly maps the types' element of content types for relationship
// parts, it takes a Multipurpose Internet Mail Extension (MIME) media type as a
// value.
2016-08-30 11:51:31 +08:00
type xlsxTypes struct {
2021-07-06 00:31:04 +08:00
sync.Mutex
2016-08-30 11:51:31 +08:00
XMLName xml.Name `xml:"http://schemas.openxmlformats.org/package/2006/content-types Types"`
Defaults []xlsxDefault `xml:"Default"`
Overrides []xlsxOverride `xml:"Override"`
2016-08-30 11:51:31 +08:00
}
// xlsxOverride directly maps the override element in the namespace
// http://schemas.openxmlformats.org/package/2006/content-types
2016-08-30 11:51:31 +08:00
type xlsxOverride struct {
PartName string `xml:",attr"`
ContentType string `xml:",attr"`
}
// xlsxDefault directly maps the default element in the namespace
// http://schemas.openxmlformats.org/package/2006/content-types
2016-08-30 11:51:31 +08:00
type xlsxDefault struct {
Extension string `xml:",attr"`
ContentType string `xml:",attr"`
}