mirror of
https://github.com/penpot/penpot.git
synced 2026-09-30 07:46:16 +00:00
Merge remote-tracking branch 'origin/staging' into develop
This commit is contained in:
commit
cdb0b3950d
@ -305,8 +305,9 @@
|
||||
(defn write-export!
|
||||
[{:keys [::bfc/include-libraries ::bfc/embed-assets] :as cfg}]
|
||||
(when (and include-libraries embed-assets)
|
||||
(throw (IllegalArgumentException.
|
||||
"the `include-libraries` and `embed-assets` are mutally excluding options")))
|
||||
(ex/raise :type :validation
|
||||
:code :incompatible-options
|
||||
:hint "the `include-libraries` and `embed-assets` are mutually exclusive options"))
|
||||
|
||||
(write-export cfg))
|
||||
|
||||
|
||||
@ -10,12 +10,19 @@ export class TextContent implements TextItem {
|
||||
constructor(public text: string) {}
|
||||
|
||||
/**
|
||||
* @param data - Text data as string or as object (from JSON representation where indices are mapped to character codes)
|
||||
* @param data - Text data as string or as object (wrapped base64 data or JSON representation of array where
|
||||
* indices are mapped to character codes)
|
||||
*/
|
||||
public static textData(data: string | object): string {
|
||||
if (typeof data === "object") {
|
||||
// convert object containing character codes (as obtained from JSON conversion of string) back to string
|
||||
return String.fromCharCode(...(Object.values(data) as number[]));
|
||||
// check for wrapped base64 data
|
||||
if ("__type" in data && data["__type"] === "base64" && "data" in data && typeof data["data"] === "string") {
|
||||
return Buffer.from(data["data"], "base64").toString("utf-8");
|
||||
}
|
||||
// legacy fallback: assume object containing character codes (as obtained from direct JSON conversion)
|
||||
else {
|
||||
return String.fromCharCode(...(Object.values(data) as number[]));
|
||||
}
|
||||
} else {
|
||||
return data;
|
||||
}
|
||||
@ -84,8 +91,8 @@ export class TextResponse extends ToolResponse {
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a TextResponse from text data given as string or as object (from JSON representation where indices are mapped to
|
||||
* character codes).
|
||||
* Creates a TextResponse from text data given as string or as object (wrapped base64 data or JSON representation
|
||||
* of array where indices are mapped to character codes).
|
||||
*
|
||||
* @param data - Text data as string or as object (from JSON representation where indices are mapped to character codes)
|
||||
*/
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user