@eluvio/elv-client-js 4.0.117 → 4.0.118
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ElvClient-min.js +14 -15
- package/dist/ElvClient-node-min.js +13 -14
- package/dist/ElvFrameClient-min.js +10 -10
- package/dist/ElvPermissionsClient-min.js +9 -9
- package/dist/ElvWalletClient-min.js +14 -15
- package/dist/ElvWalletClient-node-min.js +13 -14
- package/dist/src/AuthorizationClient.js +12 -9
- package/dist/src/ContentObjectAudit.js +3 -3
- package/dist/src/ContentObjectVerification.js +3 -3
- package/dist/src/Crypto.js +2 -2
- package/dist/src/ElvClient.js +28 -47
- package/dist/src/ElvWallet.js +5 -7
- package/dist/src/EthClient.js +9 -8
- package/dist/src/FrameClient.js +9 -8
- package/dist/src/HttpClient.js +2 -1
- package/dist/src/Id.js +2 -1
- package/dist/src/PermissionsClient.js +19 -31
- package/dist/src/RemoteSigner.js +8 -6
- package/dist/src/UserProfileClient.js +20 -35
- package/dist/src/Utils.js +3 -2
- package/dist/src/client/ABRPublishing.js +2 -2
- package/dist/src/client/AccessGroups.js +2 -2
- package/dist/src/client/ContentAccess.js +32 -39
- package/dist/src/client/ContentManagement.js +3 -3
- package/dist/src/client/Contracts.js +2 -2
- package/dist/src/client/Files.js +2 -2
- package/dist/src/client/LiveConf.js +6 -4
- package/dist/src/client/LiveStream.js +2 -0
- package/dist/src/client/NFT.js +2 -2
- package/dist/src/walletClient/ClientMethods.js +2 -2
- package/dist/src/walletClient/Profile.js +2 -2
- package/dist/src/walletClient/Utils.js +2 -2
- package/dist/src/walletClient/index.js +14 -17
- package/package.json +1 -1
- package/src/client/ContentAccess.js +1 -1
- package/src/walletClient/index.js +23 -123
|
@@ -185,6 +185,12 @@ class ElvWalletClient {
|
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
|
|
188
|
+
walletClient.topLevelInfo = await client.utils.ResponseToJson(
|
|
189
|
+
client.MakeAuthServiceRequest({
|
|
190
|
+
path: "/as/mw/toplevel"
|
|
191
|
+
})
|
|
192
|
+
);
|
|
193
|
+
|
|
188
194
|
if(!skipMarketplaceLoad) {
|
|
189
195
|
await walletClient.LoadAvailableMarketplaces();
|
|
190
196
|
}
|
|
@@ -749,136 +755,29 @@ class ElvWalletClient {
|
|
|
749
755
|
return;
|
|
750
756
|
}
|
|
751
757
|
|
|
752
|
-
|
|
753
|
-
libraryId: this.mainSiteLibraryId,
|
|
754
|
-
objectId: this.mainSiteId,
|
|
755
|
-
metadataSubtree: "public/asset_metadata",
|
|
756
|
-
resolveLinks: true,
|
|
757
|
-
linkDepthLimit: 2,
|
|
758
|
-
resolveIncludeSource: true,
|
|
759
|
-
resolveIgnoreErrors: true,
|
|
760
|
-
produceLinkUrls: true,
|
|
761
|
-
authorizationToken: this.publicStaticToken,
|
|
762
|
-
noAuth: true,
|
|
763
|
-
select: [
|
|
764
|
-
"info/marketplace_order",
|
|
765
|
-
"tenants/*/.",
|
|
766
|
-
"tenants/*/info/branding/show",
|
|
767
|
-
"tenants/*/info/branding/name",
|
|
768
|
-
"tenants/*/marketplaces/*/.",
|
|
769
|
-
"tenants/*/marketplaces/*/info/tenant_id",
|
|
770
|
-
"tenants/*/marketplaces/*/info/tenant_name",
|
|
771
|
-
"tenants/*/marketplaces/*/info/branding/show",
|
|
772
|
-
"tenants/*/marketplaces/*/info/branding/name"
|
|
773
|
-
]
|
|
774
|
-
});
|
|
758
|
+
const marketplaces = this.topLevelInfo.marketplaces;
|
|
775
759
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
// If preview marketplace is specified, load it appropriately
|
|
780
|
-
if(this.previewMarketplaceId) {
|
|
781
|
-
let previewTenantSlug = "PREVIEW";
|
|
782
|
-
let previewMarketplaceSlug, previewMarketplaceMetadata;
|
|
783
|
-
Object.keys(metadata || {}).forEach(tenantSlug =>
|
|
784
|
-
Object.keys(metadata[tenantSlug].marketplaces || {}).forEach(marketplaceSlug => {
|
|
785
|
-
const versionHash = metadata[tenantSlug].marketplaces[marketplaceSlug]["."].source;
|
|
786
|
-
const objectId = this.utils.DecodeVersionHash(versionHash).objectId;
|
|
787
|
-
|
|
788
|
-
if(objectId === this.previewMarketplaceId) {
|
|
789
|
-
// Marketplace exists in site meta
|
|
790
|
-
previewTenantSlug = tenantSlug;
|
|
791
|
-
previewMarketplaceSlug = marketplaceSlug;
|
|
792
|
-
|
|
793
|
-
// Deployed marketplace is same as preview marketplace
|
|
794
|
-
if(versionHash === this.previewMarketplaceHash) {
|
|
795
|
-
previewMarketplaceMetadata = metadata[tenantSlug].marketplaces[marketplaceSlug];
|
|
796
|
-
}
|
|
797
|
-
}
|
|
798
|
-
})
|
|
799
|
-
);
|
|
800
|
-
|
|
801
|
-
// Marketplace not present in branch, or preview version is different - Load metadata directly
|
|
802
|
-
if(!previewMarketplaceMetadata) {
|
|
803
|
-
previewMarketplaceMetadata = await this.client.ContentObjectMetadata({
|
|
804
|
-
versionHash: this.previewMarketplaceHash,
|
|
805
|
-
metadataSubtree: "public/asset_metadata",
|
|
806
|
-
produceLinkUrls: true,
|
|
807
|
-
authorizationToken: this.publicStaticToken,
|
|
808
|
-
noAuth: true,
|
|
809
|
-
select: [
|
|
810
|
-
"slug",
|
|
811
|
-
"info/tenant_id",
|
|
812
|
-
"info/tenant_name",
|
|
813
|
-
"info/branding",
|
|
814
|
-
],
|
|
815
|
-
remove: [
|
|
816
|
-
"info/branding/custom_css"
|
|
817
|
-
]
|
|
818
|
-
});
|
|
760
|
+
let availableMarketplaces = { ...(this.availableMarketplaces || {}) };
|
|
761
|
+
let availableMarketplacesById = { ...(this.availableMarketplacesById || {}) };
|
|
819
762
|
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
}
|
|
763
|
+
marketplaces.map(marketplaceInfo => {
|
|
764
|
+
const marketplaceId = Utils.DecodeVersionHash(marketplaceInfo.source_hash).objectId;
|
|
765
|
+
const marketplaceSlug = marketplaceInfo.slug || marketplaceInfo.name;
|
|
824
766
|
|
|
825
|
-
|
|
826
|
-
source: this.previewMarketplaceHash
|
|
827
|
-
};
|
|
767
|
+
availableMarketplaces[marketplaceInfo.tenant_slug] = availableMarketplaces[marketplaceInfo.tenant_slug] || {};
|
|
828
768
|
|
|
829
|
-
|
|
830
|
-
|
|
769
|
+
availableMarketplaces[marketplaceInfo.tenant_slug][marketplaceSlug] = {
|
|
770
|
+
tenantName: marketplaceInfo.tenant_slug,
|
|
771
|
+
tenantSlug: marketplaceInfo.tenant_slug,
|
|
772
|
+
tenantId: marketplaceInfo.tenant_id,
|
|
773
|
+
marketplaceSlug: marketplaceSlug,
|
|
774
|
+
marketplaceId,
|
|
775
|
+
marketplaceHash: marketplaceInfo.source_hash,
|
|
831
776
|
};
|
|
832
777
|
|
|
833
|
-
|
|
834
|
-
previewMarketplaceMetadata.info.branding.show = true;
|
|
835
|
-
|
|
836
|
-
metadata[previewTenantSlug] = metadata[previewTenantSlug] || {};
|
|
837
|
-
metadata[previewTenantSlug].marketplaces = metadata[previewTenantSlug].marketplaces || {};
|
|
838
|
-
metadata[previewTenantSlug].marketplaces[previewMarketplaceSlug] = previewMarketplaceMetadata;
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
let availableMarketplaces = { ...(this.availableMarketplaces || {}) };
|
|
842
|
-
let availableMarketplacesById = { ...(this.availableMarketplacesById || {}) };
|
|
843
|
-
Object.keys(metadata || {}).forEach(tenantSlug => {
|
|
844
|
-
try {
|
|
845
|
-
availableMarketplaces[tenantSlug] = metadata[tenantSlug]["."] ?
|
|
846
|
-
{ versionHash: metadata[tenantSlug]["."].source } : { };
|
|
778
|
+
availableMarketplacesById[marketplaceId] = availableMarketplaces[marketplaceInfo.tenant_slug][marketplaceSlug];
|
|
847
779
|
|
|
848
|
-
|
|
849
|
-
try {
|
|
850
|
-
const versionHash = metadata[tenantSlug].marketplaces[marketplaceSlug]["."].source;
|
|
851
|
-
const objectId = this.utils.DecodeVersionHash(versionHash).objectId;
|
|
852
|
-
|
|
853
|
-
availableMarketplaces[tenantSlug][marketplaceSlug] = {
|
|
854
|
-
...(metadata[tenantSlug].marketplaces[marketplaceSlug].info || {}),
|
|
855
|
-
tenantName: metadata[tenantSlug].marketplaces[marketplaceSlug].info.tenant_name,
|
|
856
|
-
tenantId: metadata[tenantSlug].marketplaces[marketplaceSlug].info.tenant_id,
|
|
857
|
-
tenantSlug,
|
|
858
|
-
marketplaceSlug,
|
|
859
|
-
marketplaceId: objectId,
|
|
860
|
-
marketplaceHash: versionHash,
|
|
861
|
-
tenantBranding: (metadata[tenantSlug].info || {}).branding || {},
|
|
862
|
-
order: marketplaceOrder.findIndex(slug => slug === marketplaceSlug)
|
|
863
|
-
};
|
|
864
|
-
|
|
865
|
-
availableMarketplacesById[objectId] = availableMarketplaces[tenantSlug][marketplaceSlug];
|
|
866
|
-
|
|
867
|
-
this.marketplaceHashes[objectId] = versionHash;
|
|
868
|
-
|
|
869
|
-
// Fill out selected marketplace info
|
|
870
|
-
if(this.selectedMarketplaceInfo) {
|
|
871
|
-
if((this.selectedMarketplaceInfo.tenantSlug === tenantSlug && this.selectedMarketplaceInfo.marketplaceSlug === marketplaceSlug) || this.selectedMarketplaceInfo.marketplaceId === objectId) {
|
|
872
|
-
this.selectedMarketplaceInfo = availableMarketplaces[tenantSlug][marketplaceSlug];
|
|
873
|
-
}
|
|
874
|
-
}
|
|
875
|
-
} catch(error) {
|
|
876
|
-
this.Log(`Eluvio Wallet Client: Unable to load info for marketplace ${tenantSlug}/${marketplaceSlug}`, true);
|
|
877
|
-
}
|
|
878
|
-
});
|
|
879
|
-
} catch(error) {
|
|
880
|
-
this.Log(`Eluvio Wallet Client: Failed to load tenant info ${tenantSlug}`, true, error);
|
|
881
|
-
}
|
|
780
|
+
this.marketplaceHashes[marketplaceId] = marketplaceInfo.source_hash;
|
|
882
781
|
});
|
|
883
782
|
|
|
884
783
|
this.availableMarketplaces = availableMarketplaces;
|
|
@@ -1352,6 +1251,7 @@ class ElvWalletClient {
|
|
|
1352
1251
|
}
|
|
1353
1252
|
|
|
1354
1253
|
if(op === "nft-claim-entitlement") {
|
|
1254
|
+
// eslint-disable-next-line no-unused-vars
|
|
1355
1255
|
let [op, marketplace, sku, purchaseId ] = status.op.split(":");
|
|
1356
1256
|
confirmationId = purchaseId;
|
|
1357
1257
|
if(status.extra && status.extra["0"]) {
|