From 8f2b00b3bd6428995c338b3b9f2c08cbeb4760b2 Mon Sep 17 00:00:00 2001 From: leekelleher Date: Tue, 2 Apr 2024 10:17:51 +0100 Subject: [PATCH] Package Builder - reuses `blobDownload` function --- .../workspace/workspace-package-builder.element.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/packages/packages/package-builder/workspace/workspace-package-builder.element.ts b/src/Umbraco.Web.UI.Client/src/packages/packages/package-builder/workspace/workspace-package-builder.element.ts index b5fbb46501..2039464360 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/packages/package-builder/workspace/workspace-package-builder.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/packages/package-builder/workspace/workspace-package-builder.element.ts @@ -13,6 +13,7 @@ import { ifDefined, } from '@umbraco-cms/backoffice/external/lit'; // TODO: update to module imports when ready +import { blobDownload } from '@umbraco-cms/backoffice/utils'; import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element'; import type { PackageDefinitionResponseModel } from '@umbraco-cms/backoffice/external/backend-api'; import { PackageResource } from '@umbraco-cms/backoffice/external/backend-api'; @@ -57,7 +58,17 @@ export class UmbWorkspacePackageBuilderElement extends UmbLitElement { async #download() { if (!this._package?.id) return; - await tryExecuteAndNotify(this, PackageResource.getPackageCreatedByIdDownload({ id: this._package.id })); + const { data } = await tryExecuteAndNotify( + this, + PackageResource.getPackageCreatedByIdDownload({ id: this._package.id }), + ); + + if (!data) return; + + // TODO: [LK] Need to review what the server is doing, as different data is returned depending on schema configuration. + // e.g. selecting Media items will return a ZIP file, otherwise it's an XML file. It should be consistent. + //blobDownload(data, 'package.xml', 'text/xml'); + blobDownload(data, 'package.zip', 'application/zip'); } #nameDefined() {