@inrupt/solid-client
Version:
Make your web apps work with Solid Pods.
318 lines (312 loc) • 9.85 kB
text/typescript
/**
* Copyright 2020 Inrupt Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
import {
getFile,
getFileWithAcl,
deleteFile,
saveFileInContainer,
overwriteFile,
createSolidDataset,
getSolidDataset,
getResourceInfo,
getResourceInfoWithAcl,
getPodOwner,
isPodOwner,
isContainer,
isRawData,
getContentType,
getSourceUrl,
getSourceIri,
saveSolidDatasetAt,
deleteSolidDataset,
createContainerAt,
saveSolidDatasetInContainer,
createContainerInContainer,
deleteContainer,
getContainedResourceUrlAll,
saveAclFor,
deleteAclFor,
getThing,
getThingAll,
setThing,
removeThing,
createThing,
isThing,
asUrl,
asIri,
thingAsMarkdown,
getUrl,
getIri,
getBoolean,
getDatetime,
getDecimal,
getInteger,
getStringWithLocale,
getStringNoLocale,
getUrlAll,
getIriAll,
getBooleanAll,
getDatetimeAll,
getDecimalAll,
getIntegerAll,
getStringWithLocaleAll,
getStringByLocaleAll,
getStringNoLocaleAll,
getLiteral,
getNamedNode,
getTerm,
getLiteralAll,
getNamedNodeAll,
getTermAll,
addUrl,
addIri,
addBoolean,
addDatetime,
addDecimal,
addInteger,
addStringWithLocale,
addStringNoLocale,
addLiteral,
addNamedNode,
addTerm,
setUrl,
setIri,
setBoolean,
setDatetime,
setDecimal,
setInteger,
setStringWithLocale,
setStringNoLocale,
setLiteral,
setNamedNode,
setTerm,
removeAll,
removeUrl,
removeIri,
removeBoolean,
removeDatetime,
removeDecimal,
removeInteger,
removeStringWithLocale,
removeStringNoLocale,
removeLiteral,
removeNamedNode,
getSolidDatasetWithAcl,
solidDatasetAsMarkdown,
changeLogAsMarkdown,
hasAcl,
hasFallbackAcl,
getFallbackAcl,
hasResourceAcl,
getResourceAcl,
createAcl,
createAclFromFallbackAcl,
getAgentAccess,
getAgentAccessAll,
getAgentResourceAccess,
getAgentResourceAccessAll,
setAgentResourceAccess,
getAgentDefaultAccess,
getAgentDefaultAccessAll,
setAgentDefaultAccess,
getPublicAccess,
getPublicResourceAccess,
getPublicDefaultAccess,
setPublicResourceAccess,
setPublicDefaultAccess,
hasResourceInfo,
hasServerResourceInfo,
hasAccessibleAcl,
getGroupAccess,
getGroupAccessAll,
getGroupResourceAccess,
getGroupResourceAccessAll,
getGroupDefaultAccess,
getGroupDefaultAccessAll,
setGroupDefaultAccess,
setGroupResourceAccess,
mockSolidDatasetFrom,
mockContainerFrom,
mockFileFrom,
mockFetchError,
mockThingFrom,
addMockResourceAclTo,
addMockFallbackAclTo,
// Error classes:
SolidClientError,
FetchError,
ThingExpectedError,
// Preview API's exported for early adopters:
acp_v1,
acp_v2,
acp_v3,
access,
// Deprecated functions still exported for backwards compatibility:
} from "./index";
// These tests aren't too useful in preventing bugs, but they work around this issue:
// https://github.com/facebook/jest/issues/10032
it("exports the public API from the entry file", () => {
expect(getFile).toBeDefined();
expect(getFileWithAcl).toBeDefined();
expect(deleteFile).toBeDefined();
expect(saveFileInContainer).toBeDefined();
expect(overwriteFile).toBeDefined();
expect(createSolidDataset).toBeDefined();
expect(getSolidDataset).toBeDefined();
expect(getResourceInfo).toBeDefined();
expect(getResourceInfoWithAcl).toBeDefined();
expect(getPodOwner).toBeDefined();
expect(isPodOwner).toBeDefined();
expect(isContainer).toBeDefined();
expect(isRawData).toBeDefined();
expect(getContentType).toBeDefined();
expect(getSourceUrl).toBeDefined();
expect(getSourceIri).toBeDefined();
expect(saveSolidDatasetAt).toBeDefined();
expect(deleteSolidDataset).toBeDefined();
expect(createContainerAt).toBeDefined();
expect(saveSolidDatasetInContainer).toBeDefined();
expect(createContainerInContainer).toBeDefined();
expect(deleteContainer).toBeDefined();
expect(getContainedResourceUrlAll).toBeDefined();
expect(saveAclFor).toBeDefined();
expect(deleteAclFor).toBeDefined();
expect(getThing).toBeDefined();
expect(getThingAll).toBeDefined();
expect(setThing).toBeDefined();
expect(removeThing).toBeDefined();
expect(createThing).toBeDefined();
expect(isThing).toBeDefined();
expect(asUrl).toBeDefined();
expect(asIri).toBeDefined();
expect(thingAsMarkdown).toBeDefined();
expect(getUrl).toBeDefined();
expect(getIri).toBeDefined();
expect(getBoolean).toBeDefined();
expect(getDatetime).toBeDefined();
expect(getDecimal).toBeDefined();
expect(getInteger).toBeDefined();
expect(getStringWithLocale).toBeDefined();
expect(getStringNoLocale).toBeDefined();
expect(getStringByLocaleAll).toBeDefined();
expect(getUrlAll).toBeDefined();
expect(getIriAll).toBeDefined();
expect(getBooleanAll).toBeDefined();
expect(getDatetimeAll).toBeDefined();
expect(getDecimalAll).toBeDefined();
expect(getIntegerAll).toBeDefined();
expect(getStringWithLocaleAll).toBeDefined();
expect(getStringNoLocaleAll).toBeDefined();
expect(getLiteral).toBeDefined();
expect(getNamedNode).toBeDefined();
expect(getTerm).toBeDefined();
expect(getLiteralAll).toBeDefined();
expect(getNamedNodeAll).toBeDefined();
expect(getTermAll).toBeDefined();
expect(addUrl).toBeDefined();
expect(addIri).toBeDefined();
expect(addBoolean).toBeDefined();
expect(addDatetime).toBeDefined();
expect(addDecimal).toBeDefined();
expect(addInteger).toBeDefined();
expect(addStringWithLocale).toBeDefined();
expect(addStringNoLocale).toBeDefined();
expect(addLiteral).toBeDefined();
expect(addNamedNode).toBeDefined();
expect(addTerm).toBeDefined();
expect(setUrl).toBeDefined();
expect(setIri).toBeDefined();
expect(setBoolean).toBeDefined();
expect(setDatetime).toBeDefined();
expect(setDecimal).toBeDefined();
expect(setInteger).toBeDefined();
expect(setStringWithLocale).toBeDefined();
expect(setStringNoLocale).toBeDefined();
expect(setLiteral).toBeDefined();
expect(setNamedNode).toBeDefined();
expect(setTerm).toBeDefined();
expect(removeAll).toBeDefined();
expect(removeUrl).toBeDefined();
expect(removeIri).toBeDefined();
expect(removeBoolean).toBeDefined();
expect(removeDatetime).toBeDefined();
expect(removeDecimal).toBeDefined();
expect(removeInteger).toBeDefined();
expect(removeStringWithLocale).toBeDefined();
expect(removeStringNoLocale).toBeDefined();
expect(removeLiteral).toBeDefined();
expect(removeNamedNode).toBeDefined();
expect(getSolidDatasetWithAcl).toBeDefined();
expect(solidDatasetAsMarkdown).toBeDefined();
expect(changeLogAsMarkdown).toBeDefined();
expect(hasAcl).toBeDefined();
expect(hasFallbackAcl).toBeDefined();
expect(getFallbackAcl).toBeDefined();
expect(hasResourceAcl).toBeDefined();
expect(getResourceAcl).toBeDefined();
expect(createAcl).toBeDefined();
expect(createAclFromFallbackAcl).toBeDefined();
expect(getAgentAccess).toBeDefined();
expect(getAgentAccessAll).toBeDefined();
expect(getAgentResourceAccess).toBeDefined();
expect(getAgentResourceAccessAll).toBeDefined();
expect(setAgentResourceAccess).toBeDefined();
expect(getAgentDefaultAccess).toBeDefined();
expect(getAgentDefaultAccessAll).toBeDefined();
expect(setAgentDefaultAccess).toBeDefined();
expect(getPublicAccess).toBeDefined();
expect(getPublicResourceAccess).toBeDefined();
expect(getPublicDefaultAccess).toBeDefined();
expect(setPublicResourceAccess).toBeDefined();
expect(setPublicDefaultAccess).toBeDefined();
expect(getPublicDefaultAccess).toBeDefined();
expect(hasResourceInfo).toBeDefined();
expect(hasServerResourceInfo).toBeDefined();
expect(hasAccessibleAcl).toBeDefined();
expect(getGroupAccess).toBeDefined();
expect(getGroupAccessAll).toBeDefined();
expect(getGroupResourceAccess).toBeDefined();
expect(getGroupResourceAccessAll).toBeDefined();
expect(getGroupDefaultAccess).toBeDefined();
expect(getGroupDefaultAccessAll).toBeDefined();
expect(setGroupDefaultAccess).toBeDefined();
expect(setGroupResourceAccess).toBeDefined();
expect(mockSolidDatasetFrom).toBeDefined();
expect(mockContainerFrom).toBeDefined();
expect(mockFileFrom).toBeDefined();
expect(mockFetchError).toBeDefined();
expect(mockThingFrom).toBeDefined();
expect(addMockResourceAclTo).toBeDefined();
expect(addMockFallbackAclTo).toBeDefined();
});
it("exports error classes", () => {
expect(SolidClientError).toBeDefined();
expect(FetchError).toBeDefined();
expect(ThingExpectedError).toBeDefined();
});
it("exports preview API's for early adopters", () => {
expect(acp_v1).toBeDefined();
expect(acp_v2).toBeDefined();
expect(acp_v3).toBeDefined();
expect(access).toBeDefined();
});
// eslint-disable-next-line jest/expect-expect -- no deprecated functions are currently included:
it("still exports deprecated methods", () => {});