contensis-delivery-api
Advanced tools
Comparing version 1.1.9 to 1.2.0
import { Entry, EntryGetOptions, EntryListOptions, IEntryOperations } from '../models'; | ||
import { IHttpClient, IParamsProvider, PagedList } from 'contensis-core-api'; | ||
import { IHttpClient, IParamsProvider, PagedList, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export declare class EntryOperations implements IEntryOperations { | ||
@@ -9,5 +9,6 @@ private httpClient; | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(query: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
private searchUsingQuery; | ||
private searchUsingPost; | ||
} |
import { LinkResolver } from './link-resolver'; | ||
import { defaultMapperForLanguage, defaultMapperForPublishedVersionStatus, isBrowser, isIE, UrlBuilder } from 'contensis-core-api'; | ||
import { defaultMapperForLanguage, defaultMapperForPublishedVersionStatus, isBrowser, isIE, Query, UrlBuilder, ZenqlQuery } from 'contensis-core-api'; | ||
const defaultListUrl = `/api/delivery/projects/:projectId/entries`; | ||
let listUrl = (options, params) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: defaultListUrl; | ||
}; | ||
let getMappers = { | ||
@@ -9,7 +15,2 @@ language: defaultMapperForLanguage, | ||
}; | ||
let listUrl = (options, params) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: `/api/delivery/projects/:projectId/entries`; | ||
}; | ||
let listMappers = { | ||
@@ -49,6 +50,23 @@ ...getMappers, | ||
} | ||
let deliveryQuery = query instanceof Query ? query : null; | ||
// use duck-typing for backwards compatibility pre v1.2.0 | ||
if (deliveryQuery !== null || !!query.where || !!query.orderBy) { | ||
return this.searchUsingQuery(deliveryQuery || query, linkDepth); | ||
} | ||
let zenqlQuery = query instanceof ZenqlQuery ? query : null; | ||
if (zenqlQuery === null) { | ||
if (typeof query === 'string') { | ||
zenqlQuery = new ZenqlQuery(query); | ||
} | ||
else { | ||
throw new Error('A valid query needs to be specified.'); | ||
} | ||
} | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = query.pageSize || params.pageSize; | ||
let pageIndex = query.pageIndex || 0; | ||
let orderBy = (query.orderBy && (query.orderBy._items || query.orderBy)); | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields = []; | ||
pageSize = zenqlQuery.pageSize || pageSize; | ||
pageIndex = zenqlQuery.pageIndex || pageIndex; | ||
fields = zenqlQuery.fields || fields; | ||
let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus, ...requestParams } = params; | ||
@@ -60,6 +78,46 @@ let payload = { | ||
pageIndex, | ||
fields: query.fields && query.fields.length > 0 ? query.fields : null, | ||
where: JSON.stringify(query.where), | ||
zenql: zenqlQuery.zenql, | ||
}; | ||
if (orderBy && orderBy.length > 0) { | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
let url = UrlBuilder.create(defaultListUrl, { ...payload }) | ||
.setParams({ ...payload, projectId }) | ||
.addMappers(searchMappers) | ||
.toUrl(); | ||
return this.httpClient.request(url, { | ||
method: 'GET', | ||
headers: { 'Content-Type': 'application/json; charset=utf-8' } | ||
}); | ||
} | ||
resolve(entryOrList, fields = null) { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new LinkResolver(entryOrList, fields, params.versionStatus, (query) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
searchUsingQuery(query, linkDepth = 0) { | ||
if (!query) { | ||
return new Promise((resolve) => { resolve(null); }); | ||
} | ||
let deliveryQuery = query; | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields = []; | ||
pageSize = deliveryQuery.pageSize || pageSize; | ||
pageIndex = deliveryQuery.pageIndex || pageIndex; | ||
fields = deliveryQuery.fields || fields; | ||
let orderBy = (deliveryQuery.orderBy && (deliveryQuery.orderBy._items || deliveryQuery.orderBy)); | ||
let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus, ...requestParams } = params; | ||
let payload = { | ||
...requestParams, | ||
linkDepth, | ||
pageSize, | ||
pageIndex, | ||
where: JSON.stringify(deliveryQuery.where) | ||
}; | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
if (deliveryQuery.orderBy && (!Array.isArray(deliveryQuery.orderBy) || deliveryQuery.orderBy.length > 0)) { | ||
payload['orderBy'] = JSON.stringify(orderBy); | ||
@@ -79,7 +137,2 @@ } | ||
} | ||
resolve(entryOrList, fields = null) { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new LinkResolver(entryOrList, fields, params.versionStatus, (query) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
searchUsingPost(query, linkDepth = 0) { | ||
@@ -86,0 +139,0 @@ if (!query) { |
@@ -9,620 +9,609 @@ import * as Contensis from '../index'; | ||
describe('Entry Operations', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
describe('Get entry', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
}); | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
describe('List entries', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('Search entries', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
let orderBy = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
let where = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
it('Do Search - simple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
let where = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API v2', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search - multiple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
it('Do Search with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
it('Do Search using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
@@ -634,343 +623,450 @@ distanceWithin: { | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: 'or' | ||
it('Do Search for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
it('Do Search for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorTypeEnum.And | ||
term: 'term1' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
it('Do Search for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorTypeEnum.Or | ||
operator: 'or' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
}); | ||
describe('Entry Operations in IE browser', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
it('Do Search non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorTypeEnum.And | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
it('Do Search for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorTypeEnum.Or | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
it('Do Search via the Client API with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using a ZenqlQuery instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let zenqlQuery = new Contensis.ZenqlQuery('sys.contentTypeId = plant and sys.version.created >= startOfWeek()'); | ||
zenqlQuery.fields = ['title']; | ||
zenqlQuery.pageIndex = 1; | ||
zenqlQuery.pageSize = 50; | ||
client.entries.search(zenqlQuery, 99); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
zenql: zenqlQuery.zenql | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1860 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
it('Do Search using a ZenqlQuery string', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let zenqlQueryString = 'sys.contentTypeId = plant and sys.version.created >= startOfWeek()'; | ||
client.entries.search(zenqlQueryString, 99); | ||
let expectedQueryString = toQuery({ | ||
linkDepth: 99, | ||
pageIndex: 0, | ||
pageSize: 20, | ||
zenql: zenqlQueryString | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('Entry Operations in IE browser', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1861 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using an object with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1860 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
// use string with length = 1860 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search using an object with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
// use string with length = 1861 | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1860 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
// use string with length = 1861 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
it('Do Search using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1861 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
}); | ||
}); |
@@ -1,2 +0,2 @@ | ||
export { Query, Op, OrderBy } from 'contensis-core-api'; | ||
export { Op, OrderBy, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export { Client } from './client/client'; |
@@ -1,2 +0,2 @@ | ||
export { Query, Op, OrderBy } from 'contensis-core-api'; | ||
export { Op, OrderBy, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export { Client } from './client/client'; |
import { Entry } from './Entry'; | ||
import { EntryGetOptions } from './EntryGetOptions'; | ||
import { EntryListOptions } from './EntryListOptions'; | ||
import { PagedList } from 'contensis-core-api'; | ||
import { PagedList, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export interface IEntryOperations { | ||
get(idOrOptions: string | EntryGetOptions): Promise<Entry>; | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(json: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
} |
@@ -6,3 +6,3 @@ interface ContensisQuery { | ||
pageSize: number; | ||
fields: string[]; | ||
fields?: string[]; | ||
} | ||
@@ -41,3 +41,3 @@ | ||
asc(fieldName: string): ContensisQueryOrderBy; | ||
desc(fieldName: any): ContensisQueryOrderBy; | ||
desc(fieldName: string): ContensisQueryOrderBy; | ||
} | ||
@@ -126,7 +126,98 @@ | ||
* from './FreeTextSearchOperatorType'; | ||
* from './ManagementQuery'; | ||
* from './ManagementZenqlQuery'; | ||
* from './Operators'; | ||
* from './OperatorType'; | ||
* from './query'; | ||
* from './Query'; | ||
* from './QueryTypes'; | ||
* from './ZenqlQuery'; | ||
//# sourceMappingURL=index.js.map | ||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/search/index.ts"],"names":[],"mappings":"AAKA,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"} | ||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/search/index.ts"],"names":[],"mappings":"AAKA,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAI7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"} | ||
interface IZenqlQuery { | ||
zenql: string; | ||
pageIndex: number; | ||
pageSize: number; | ||
fields?: string[]; | ||
} | ||
//# sourceMappingURL=IZenqlQuery.js.map | ||
{"version":3,"file":"IZenqlQuery.js","sourceRoot":"","sources":["../../../src/models/search/IZenqlQuery.ts"],"names":[],"mappings":""} | ||
declare class ManagementQuery implements Omit<ContensisQuery, 'fields'> { | ||
where: WhereExpression; | ||
orderBy: string | string[] | ContensisQueryOrderBy; | ||
pageIndex: number; | ||
pageSize: number; | ||
includeArchived?: boolean; | ||
includeDeleted?: boolean; | ||
constructor(...whereExpressions: IExpression[]); | ||
toJSON(): any; | ||
} | ||
var ManagementQuery = /** @class */ (function () { | ||
function ManagementQuery() { | ||
var whereExpressions = []; | ||
for (var _i = 0; _i < arguments.length; _i++) { | ||
whereExpressions[_i] = arguments[_i]; | ||
} | ||
this.where = new WhereExpression(); | ||
this.orderBy = []; | ||
this.pageIndex = 0; | ||
this.pageSize = 20; | ||
this.includeArchived = false; | ||
this.includeDeleted = false; | ||
if (whereExpressions) { | ||
this.where.addRange(whereExpressions); | ||
} | ||
} | ||
ManagementQuery.prototype.toJSON = function () { | ||
var result = {}; | ||
result.pageIndex = this.pageIndex; | ||
result.pageSize = this.pageSize; | ||
var orderByDtos = serializeOrder(this.orderBy); | ||
if (orderByDtos && orderByDtos.length > 0) { | ||
result.orderBy = orderByDtos; | ||
} | ||
result.where = this.where; | ||
result.includeArchived = this.includeArchived; | ||
result.includeDeleted = this.includeDeleted; | ||
return result; | ||
}; | ||
return ManagementQuery; | ||
}()); | ||
{ ManagementQuery }; | ||
//# sourceMappingURL=ManagementQuery.js.map | ||
{"version":3,"file":"ManagementQuery.js","sourceRoot":"","sources":["../../../src/models/search/ManagementQuery.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C;IAQI;QAAY,0BAAkC;aAAlC,UAAkC,EAAlC,qBAAkC,EAAlC,IAAkC;YAAlC,qCAAkC;;QAP9C,UAAK,GAAoB,IAAI,eAAe,EAAE,CAAC;QAC/C,YAAO,GAA8C,EAAE,CAAC;QACxD,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QACtB,oBAAe,GAAa,KAAK,CAAC;QAClC,mBAAc,GAAa,KAAK,CAAC;QAG7B,IAAI,gBAAgB,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;SACzC;IACL,CAAC;IAED,gCAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEhC,IAAI,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;SAChC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC9C,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC5C,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,sBAAC;AAAD,CAAC,AA7BD,IA6BC"} | ||
declare class ManagementZenqlQuery implements Omit<IZenqlQuery, 'fields'> { | ||
zenql: string; | ||
pageIndex: number; | ||
pageSize: number; | ||
includeArchived?: boolean; | ||
includeDeleted?: boolean; | ||
constructor(zenql: string); | ||
toJSON(): any; | ||
} | ||
var ManagementZenqlQuery = /** @class */ (function () { | ||
function ManagementZenqlQuery(zenql) { | ||
this.zenql = ''; | ||
this.pageIndex = 0; | ||
this.pageSize = 20; | ||
this.includeArchived = false; | ||
this.includeDeleted = false; | ||
this.zenql = zenql; | ||
} | ||
ManagementZenqlQuery.prototype.toJSON = function () { | ||
var result = {}; | ||
result.pageIndex = this.pageIndex; | ||
result.pageSize = this.pageSize; | ||
result.zenql = this.zenql; | ||
result.includeArchived = this.includeArchived; | ||
result.includeDeleted = this.includeDeleted; | ||
return result; | ||
}; | ||
return ManagementZenqlQuery; | ||
}()); | ||
{ ManagementZenqlQuery }; | ||
//# sourceMappingURL=ManagementZenqlQuery.js.map | ||
{"version":3,"file":"ManagementZenqlQuery.js","sourceRoot":"","sources":["../../../src/models/search/ManagementZenqlQuery.ts"],"names":[],"mappings":"AAGA;IAOI,8BAAY,KAAa;QANzB,UAAK,GAAW,EAAE,CAAC;QACnB,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QACtB,oBAAe,GAAa,KAAK,CAAC;QAClC,mBAAc,GAAa,KAAK,CAAC;QAG7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,qCAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC9C,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAE5C,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,2BAAC;AAAD,CAAC,AArBD,IAqBC"} | ||
declare abstract class ExpressionBase implements IExpression { | ||
@@ -512,23 +603,28 @@ fieldName: string; | ||
{"version":3,"file":"OperatorType.js","sourceRoot":"","sources":["../../../src/models/search/OperatorType.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC5B,GAAG,EAAE,KAAqB;IAC1B,OAAO,EAAE,SAAyB;IAClC,QAAQ,EAAE,UAA0B;IACpC,QAAQ,EAAE,UAA0B;IACpC,OAAO,EAAE,SAAyB;IAClC,MAAM,EAAE,QAAwB;IAChC,QAAQ,EAAE,UAA0B;IACpC,WAAW,EAAE,aAA6B;IAC1C,oBAAoB,EAAE,sBAAsC;IAC5D,EAAE,EAAE,IAAoB;IACxB,QAAQ,EAAE,UAA0B;IACpC,iBAAiB,EAAE,mBAAmC;IACtD,GAAG,EAAE,KAAqB;IAC1B,EAAE,EAAE,IAAoB;IACxB,UAAU,EAAE,YAA4B;IACxC,KAAK,EAAE,OAAuB;IAC9B,cAAc,EAAE,gBAAgC;CACnD,CAAC"} | ||
declare const Op: Operators; | ||
declare const OrderBy: ContensisQueryOrderBy; | ||
declare class Query implements ContensisQuery { | ||
where: WhereExpression; | ||
orderBy: string | string[] | ContensisQueryOrderBy; | ||
pageIndex: number; | ||
pageSize: number; | ||
fields: string[]; | ||
constructor(...whereExpressions: IExpression[]); | ||
toJSON(): any; | ||
declare class OrderByFactory implements ContensisQueryOrderBy { | ||
asc(fieldName: string): ContensisQueryOrderBy; | ||
desc(fieldName: string): ContensisQueryOrderBy; | ||
} | ||
declare class ManagementQuery implements Omit<ContensisQuery, 'fields'> { | ||
where: WhereExpression; | ||
orderBy: string | string[] | ContensisQueryOrderBy; | ||
pageIndex: number; | ||
pageSize: number; | ||
constructor(...whereExpressions: IExpression[]); | ||
toJSON(): any; | ||
var OrderByFactory = /** @class */ (function () { | ||
function OrderByFactory() { | ||
} | ||
OrderByFactory.prototype.asc = function (fieldName) { | ||
return (new Ordering()).asc(fieldName); | ||
}; | ||
OrderByFactory.prototype.desc = function (fieldName) { | ||
return (new Ordering()).desc(fieldName); | ||
}; | ||
return OrderByFactory; | ||
}()); | ||
{ OrderByFactory }; | ||
//# sourceMappingURL=OrderByFactory.js.map | ||
{"version":3,"file":"OrderByFactory.js","sourceRoot":"","sources":["../../../src/models/search/OrderByFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;IAAA;IAQA,CAAC;IAPG,4BAAG,GAAH,UAAI,SAAiB;QACjB,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,6BAAI,GAAJ,UAAK,SAAiB;QAClB,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IACL,qBAAC;AAAD,CAAC,AARD,IAQC"} | ||
declare class Ordering implements ContensisQueryOrderBy { | ||
private _items; | ||
asc(fieldName: string): ContensisQueryOrderBy; | ||
desc(fieldName: string): ContensisQueryOrderBy; | ||
toArray(): ContensisQueryOrderByDto[]; | ||
} | ||
var Op = new Operators(); | ||
var Ordering = /** @class */ (function () { | ||
@@ -551,40 +647,15 @@ function Ordering() { | ||
}()); | ||
var OrderByFactory = /** @class */ (function () { | ||
function OrderByFactory() { | ||
} | ||
OrderByFactory.prototype.asc = function (fieldName) { | ||
return (new Ordering()).asc(fieldName); | ||
}; | ||
OrderByFactory.prototype.desc = function (fieldName) { | ||
return (new Ordering()).desc(fieldName); | ||
}; | ||
return OrderByFactory; | ||
}()); | ||
var OrderBy = new OrderByFactory(); | ||
function toOrderBy(value) { | ||
var _a; | ||
if (!value) { | ||
return null; | ||
} | ||
var firstChar = value.substr(0, 1); | ||
if (firstChar === '+' || firstChar === '-') { | ||
var direction = (firstChar === '-') ? 'desc' : 'asc'; | ||
return _a = {}, _a[direction] = value.substring(1), _a; | ||
} | ||
return { 'asc': value }; | ||
{ Ordering }; | ||
//# sourceMappingURL=Ordering.js.map | ||
{"version":3,"file":"Ordering.js","sourceRoot":"","sources":["../../../src/models/search/Ordering.ts"],"names":[],"mappings":"AAEA;IAAA;QACY,WAAM,GAA+B,EAAE,CAAC;IAepD,CAAC;IAbG,sBAAG,GAAH,UAAI,SAAiB;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,uBAAI,GAAJ,UAAK,SAAiB;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0BAAO,GAAP;QACI,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACL,eAAC;AAAD,CAAC,AAhBD,IAgBC"} | ||
declare class Query implements ContensisQuery { | ||
where: WhereExpression; | ||
orderBy: string | string[] | ContensisQueryOrderBy; | ||
pageIndex: number; | ||
pageSize: number; | ||
fields?: string[]; | ||
constructor(...whereExpressions: IExpression[]); | ||
toJSON(): any; | ||
} | ||
function serializeOrder(orderBy) { | ||
if (!orderBy) { | ||
return []; | ||
} | ||
var o; | ||
if (typeof orderBy === 'string') { | ||
o = toOrderBy(orderBy); | ||
return !!o ? [o] : []; | ||
} | ||
if (Array.isArray(orderBy)) { | ||
return orderBy.map(toOrderBy).filter(function (o) { return !!o; }); | ||
} | ||
return (orderBy.toArray) ? orderBy.toArray() : null; | ||
} | ||
var Query = /** @class */ (function () { | ||
@@ -622,32 +693,76 @@ function Query() { | ||
{ Query }; | ||
var ManagementQuery = /** @class */ (function () { | ||
function ManagementQuery() { | ||
var whereExpressions = []; | ||
for (var _i = 0; _i < arguments.length; _i++) { | ||
whereExpressions[_i] = arguments[_i]; | ||
//# sourceMappingURL=Query.js.map | ||
{"version":3,"file":"Query.js","sourceRoot":"","sources":["../../../src/models/search/Query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C;IAOI;QAAY,0BAAkC;aAAlC,UAAkC,EAAlC,qBAAkC,EAAlC,IAAkC;YAAlC,qCAAkC;;QAN9C,UAAK,GAAoB,IAAI,eAAe,EAAE,CAAC;QAC/C,YAAO,GAA8C,EAAE,CAAC;QACxD,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QACtB,WAAM,GAAc,EAAE,CAAC;QAGnB,IAAI,gBAAgB,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;SACzC;IACL,CAAC;IAED,sBAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEhC,IAAI,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;SAChC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SAC/B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,YAAC;AAAD,CAAC,AA/BD,IA+BC"} | ||
declare const Op: Operators; | ||
declare const OrderBy: ContensisQueryOrderBy; | ||
declare function serializeOrder(orderBy: string | string[] | ContensisQueryOrderBy | ContensisQueryOrderBy[]): ContensisQueryOrderByDto[]; | ||
var Op = new Operators(); | ||
var OrderBy = new OrderByFactory(); | ||
function toOrderByDto(value) { | ||
var _a; | ||
if (!value) { | ||
return null; | ||
} | ||
if (typeof value === 'string') { | ||
var firstChar = value.substring(0, 1); | ||
if (firstChar === '+' || firstChar === '-') { | ||
var direction = (firstChar === '-') ? 'desc' : 'asc'; | ||
return _a = {}, _a[direction] = value.substring(1), _a; | ||
} | ||
this.where = new WhereExpression(); | ||
this.orderBy = []; | ||
return { 'asc': value }; | ||
} | ||
return value; | ||
} | ||
function serializeOrder(orderBy) { | ||
if (!orderBy) { | ||
return []; | ||
} | ||
if (typeof orderBy === 'string') { | ||
var o = toOrderByDto(orderBy); | ||
return !!o ? [o] : []; | ||
} | ||
if (Array.isArray(orderBy)) { | ||
return orderBy.map(toOrderByDto).filter(function (o) { return !!o; }); | ||
} | ||
var orderByAsOrdering = orderBy instanceof Ordering ? orderBy : null; | ||
if (orderByAsOrdering === null) { | ||
return []; | ||
} | ||
return orderByAsOrdering.toArray(); | ||
} | ||
//# sourceMappingURL=QueryTypes.js.map | ||
{"version":3,"file":"QueryTypes.js","sourceRoot":"","sources":["../../../src/models/search/QueryTypes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,CAAC,IAAM,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;AAElC,MAAM,CAAC,IAAM,OAAO,GAA0B,IAAI,cAAc,EAAE,CAAC;AAEnE,SAAS,YAAY,CAAC,KAAwC;;IAC1D,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,IAAI,CAAC;KACf;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC3B,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtC,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,EAAE;YACxC,IAAI,SAAS,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;YACrD,gBAAS,GAAC,SAAS,IAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAG;SAC9C;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KAC3B;IAED,OAAO,KAAiC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAA4E;IACvG,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,EAAE,CAAC;KACb;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC7B,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACzB;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACxB,OAAQ,OAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAC,CAAC;KAC9D;IAED,IAAI,iBAAiB,GAAG,OAAO,YAAY,QAAQ,CAAC,CAAC,CAAC,OAAmB,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,IAAI,iBAAiB,KAAK,IAAI,EAAE;QAC5B,OAAO,EAAE,CAAC;KACb;IAED,OAAO,iBAAiB,CAAC,OAAO,EAAE,CAAC;AACvC,CAAC"} | ||
declare class ZenqlQuery implements IZenqlQuery { | ||
zenql: string; | ||
pageIndex: number; | ||
pageSize: number; | ||
fields?: string[]; | ||
constructor(zenql: string); | ||
toJSON(): any; | ||
} | ||
var ZenqlQuery = /** @class */ (function () { | ||
function ZenqlQuery(zenql) { | ||
this.zenql = ''; | ||
this.pageIndex = 0; | ||
this.pageSize = 20; | ||
if (whereExpressions) { | ||
this.where.addRange(whereExpressions); | ||
} | ||
this.fields = []; | ||
this.zenql = zenql; | ||
} | ||
ManagementQuery.prototype.toJSON = function () { | ||
ZenqlQuery.prototype.toJSON = function () { | ||
var result = {}; | ||
result.pageIndex = this.pageIndex; | ||
result.pageSize = this.pageSize; | ||
var orderByDtos = serializeOrder(this.orderBy); | ||
if (orderByDtos && orderByDtos.length > 0) { | ||
result.orderBy = orderByDtos; | ||
result.zenql = this.zenql; | ||
if (this.fields && this.fields.length > 0) { | ||
result.fields = this.fields; | ||
} | ||
result.where = this.where; | ||
return result; | ||
}; | ||
return ManagementQuery; | ||
return ZenqlQuery; | ||
}()); | ||
{ ManagementQuery }; | ||
//# sourceMappingURL=query.js.map | ||
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/models/search/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGzD,MAAM,CAAC,IAAM,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;AAElC;IAAA;QACY,WAAM,GAA+B,EAAE,CAAC;IAepD,CAAC;IAbG,sBAAG,GAAH,UAAI,SAAiB;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,uBAAI,GAAJ,UAAK,SAAiB;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0BAAO,GAAP;QACI,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACL,eAAC;AAAD,CAAC,AAhBD,IAgBC;AAED;IAAA;IAQA,CAAC;IAPG,4BAAG,GAAH,UAAI,SAAiB;QACjB,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,6BAAI,GAAJ,UAAK,SAAiB;QAClB,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IACL,qBAAC;AAAD,CAAC,AARD,IAQC;AAED,MAAM,CAAC,IAAM,OAAO,GAA0B,IAAI,cAAc,EAAE,CAAC;AAEnE,SAAS,SAAS,CAAC,KAAa;;IAC5B,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,IAAI,CAAC;KACf;IACD,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,EAAE;QACxC,IAAI,SAAS,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,gBAAS,GAAC,SAAS,IAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAG;KAC9C;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,OAAkD;IACtE,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,EAAE,CAAC;KACb;IACD,IAAI,CAAC,CAAC;IACN,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC7B,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACzB;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACxB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAC,CAAC;KAClD;IACD,OAAO,CAAE,OAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,OAAoB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC;AAED;IAOI;QAAY,0BAAkC;aAAlC,UAAkC,EAAlC,qBAAkC,EAAlC,IAAkC;YAAlC,qCAAkC;;QAN9C,UAAK,GAAoB,IAAI,eAAe,EAAE,CAAC;QAC/C,YAAO,GAA8C,EAAE,CAAC;QACxD,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QACtB,WAAM,GAAa,EAAE,CAAC;QAGlB,IAAI,gBAAgB,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;SACzC;IACL,CAAC;IAED,sBAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEhC,IAAI,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;SAChC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SAC/B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,YAAC;AAAD,CAAC,AA/BD,IA+BC;;AAED;IAMI;QAAY,0BAAkC;aAAlC,UAAkC,EAAlC,qBAAkC,EAAlC,IAAkC;YAAlC,qCAAkC;;QAL9C,UAAK,GAAoB,IAAI,eAAe,EAAE,CAAC;QAC/C,YAAO,GAA8C,EAAE,CAAC;QACxD,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QAGlB,IAAI,gBAAgB,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;SACzC;IACL,CAAC;IAED,gCAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEhC,IAAI,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;SAChC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1B,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,sBAAC;AAAD,CAAC,AA1BD,IA0BC"} | ||
{ ZenqlQuery }; | ||
//# sourceMappingURL=ZenqlQuery.js.map | ||
{"version":3,"file":"ZenqlQuery.js","sourceRoot":"","sources":["../../../src/models/search/ZenqlQuery.ts"],"names":[],"mappings":"AAGA;IAMI,oBAAY,KAAa;QALzB,UAAK,GAAW,EAAE,CAAC;QACnB,cAAS,GAAW,CAAC,CAAC;QACtB,aAAQ,GAAW,EAAE,CAAC;QACtB,WAAM,GAAc,EAAE,CAAC;QAGnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,2BAAM,GAAN;QACI,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SAC/B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IACL,iBAAC;AAAD,CAAC,AAtBD,IAsBC"} | ||
interface AssetUpload { | ||
@@ -1104,3 +1219,3 @@ fileId: string; | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(json: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
@@ -1107,0 +1222,0 @@ } |
@@ -1,2 +0,2 @@ | ||
var Zengenti=Zengenti||{};Zengenti.Contensis=function(e){function __webpack_require__(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,__webpack_require__),n.l=!0,n.exports}var t={};return __webpack_require__.m=e,__webpack_require__.c=t,__webpack_require__.d=function(e,t,r){__webpack_require__.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},__webpack_require__.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(t,"a",t),t},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.p="/bundle/",__webpack_require__(__webpack_require__.s=6)}([function(e,t,r){"use strict";function __extends(e,t){function __(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}function __rest(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]]);return r}function __decorate(e,t,r,n){var o,i=arguments.length,s=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(i<3?o(s):i>3?o(t,r,s):o(t,r))||s);return i>3&&s&&Object.defineProperty(t,r,s),s}function __param(e,t){return function(r,n){t(r,n,e)}}function __metadata(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function __awaiter(e,t,r,n){return new(r||(r=Promise))(function(o,i){function fulfilled(e){try{step(n.next(e))}catch(e){i(e)}}function rejected(e){try{step(n.throw(e))}catch(e){i(e)}}function step(e){e.done?o(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})}function __generator(e,t){function verb(e){return function(t){return step([e,t])}}function step(i){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,n=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(o=s.trys,!(o=o.length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){s.label=i[1];break}if(6===i[0]&&s.label<o[1]){s.label=o[1],o=i;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(i);break}o[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}var r,n,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:verb(0),throw:verb(1),return:verb(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i}function __exportStar(e,t){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}function __values(e){var t="function"==typeof Symbol&&e[Symbol.iterator],r=0;return t?t.call(e):{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}function __read(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s}function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}function __spreadArrays(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),o=0,t=0;t<r;t++)for(var i=arguments[t],s=0,a=i.length;s<a;s++,o++)n[o]=i[s];return n}function __await(e){return this instanceof __await?(this.v=e,this):new __await(e)}function __asyncGenerator(e,t,r){function verb(e){o[e]&&(n[e]=function(t){return new Promise(function(r,n){i.push([e,t,r,n])>1||resume(e,t)})})}function resume(e,t){try{step(o[e](t))}catch(e){settle(i[0][3],e)}}function step(e){e.value instanceof __await?Promise.resolve(e.value.v).then(fulfill,reject):settle(i[0][2],e)}function fulfill(e){resume("next",e)}function reject(e){resume("throw",e)}function settle(e,t){e(t),i.shift(),i.length&&resume(i[0][0],i[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,o=r.apply(e,t||[]),i=[];return n={},verb("next"),verb("throw"),verb("return"),n[Symbol.asyncIterator]=function(){return this},n}function __asyncDelegator(e){function verb(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:__await(e[n](t)),done:"return"===n}:o?o(t):t}:o}var t,r;return t={},verb("next"),verb("throw",function(e){throw e}),verb("return"),t[Symbol.iterator]=function(){return this},t}function __asyncValues(e){function verb(r){t[r]=e[r]&&function(t){return new Promise(function(n,o){t=e[r](t),settle(n,o,t.done,t.value)})}}function settle(e,t,r,n){Promise.resolve(n).then(function(t){e({value:t,done:r})},t)}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},verb("next"),verb("throw"),verb("return"),t[Symbol.asyncIterator]=function(){return this},t)}function __makeTemplateObject(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function __importStar(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function __importDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.__extends=__extends,r.d(t,"__assign",function(){return o}),t.__rest=__rest,t.__decorate=__decorate,t.__param=__param,t.__metadata=__metadata,t.__awaiter=__awaiter,t.__generator=__generator,t.__exportStar=__exportStar,t.__values=__values,t.__read=__read,t.__spread=__spread,t.__spreadArrays=__spreadArrays,t.__await=__await,t.__asyncGenerator=__asyncGenerator,t.__asyncDelegator=__asyncDelegator,t.__asyncValues=__asyncValues,t.__makeTemplateObject=__makeTemplateObject,t.__importStar=__importStar,t.__importDefault=__importDefault;var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},o=function(){return o=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o.apply(this,arguments)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(7),t),n.__exportStar(r(3),t),n.__exportStar(r(2),t)},function(e,t,r){"use strict";function hasProp(e,t){return!!e&&void 0!==e[t]}function toQuery(e){var t=Object.keys(e).filter(function(t){return t&&null!==e[t]&&""!==e[t]});t.sort();var r=t.map(function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])});return r.length>0?"?"+r.join("&"):""}function isString(e){return"string"==typeof e||e instanceof String}function isBrowser(){return"undefined"!=typeof window}function isIE(){var e;return!!(e=window&&window.document&&window.document.documentMode?window.document.documentMode:null)&&e<=11}function isNodejs(){return n}Object.defineProperty(t,"__esModule",{value:!0});var n=r(9);t.hasProp=hasProp,t.toQuery=toQuery,t.isString=isString,t.isBrowser=isBrowser,t.isIE=isIE,t.isNodejs=isNodejs,t.defaultMapperForLanguage=function(e,t,r){return!e&&r?r.language:e},t.defaultMapperForPublishedVersionStatus=function(e,t,r){return"published"===e?null:e},t.defaultMapperForLatestVersionStatus=function(e,t,r){return"latest"===e?null:e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(11),t),n.__exportStar(r(12),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FreeTextSearchOperatorTypeEnum={And:"and",Or:"or"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),o=r(3),i=r(4),s=function(){function ExpressionBase(e,t,r,n){void 0===t&&(t=[]),this.fieldName=e,this.values=t,this.operatorName=r,this.valueType=n,this._weight=0}return ExpressionBase.prototype.addValue=function(e){return this.values[this.values.length]=e,this},ExpressionBase.prototype.weight=function(e){return this._weight=e,this},ExpressionBase.prototype.toJSON=function(){var e={};return this.fieldName&&(e.field=this.fieldName),this.valueType===o.ExpressionValueTypeEnum.Single?e[this.operatorName]=this.values[0]:this.valueType===o.ExpressionValueTypeEnum.Array?e[this.operatorName]=this.values:this.values&&1===this.values.length?e[this.operatorName]=this.values[0]:e[this.operatorName]=this.values,this._weight&&this._weight>1&&(e.weight=this._weight),e},ExpressionBase}();t.ExpressionBase=s;var a=function(e){function LogicalExpression(t,r,n){return void 0===t&&(t=[]),e.call(this,null,t,r,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(LogicalExpression,e),LogicalExpression.prototype.getItem=function(e){return this.values[e]},LogicalExpression.prototype.setItem=function(e,t){return this.values[e]=t,this},LogicalExpression.prototype.add=function(e){return this.values[this.values.length]=e,this},LogicalExpression.prototype.addRange=function(e){return Array.prototype.push.apply(this.values,e),this},LogicalExpression.prototype.indexOf=function(e){return this.values.indexOf(e)},LogicalExpression.prototype.insert=function(e,t){return this.values.splice(e,0,t),this},LogicalExpression.prototype.remove=function(e){var t=this.indexOf(e);return t>=0&&(this.removeAt(t),!0)},LogicalExpression.prototype.removeAt=function(e){return this.values.splice(e,1),this},LogicalExpression.prototype.clear=function(){return this.values.length=0,this},LogicalExpression.prototype.contains=function(e){return this.indexOf(e)>=0},LogicalExpression.prototype.count=function(){return this.values.length},LogicalExpression}(s);t.LogicalExpression=a;var u=function(e){function AndExpression(t){return e.call(this,t,o.OperatorTypeEnum.And,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(AndExpression,e),AndExpression}(a),l=function(e){function BetweenExpression(t,r,n){return e.call(this,t,[r,n],o.OperatorTypeEnum.Between,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(BetweenExpression,e),BetweenExpression}(s),p=function(e){function ContainsExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.Contains,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(ContainsExpression,e),ContainsExpression}(s),c=function(e){function DistanceWithinExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.DistanceWithin,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(DistanceWithinExpression,e),DistanceWithinExpression}(s),d=function(e){function EndsWithExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.EndsWith,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(EndsWithExpression,e),EndsWithExpression}(s),h=function(e){function EqualToExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.EqualTo,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(EqualToExpression,e),EqualToExpression}(s),f=function(e){function ExistsExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.Exists,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(ExistsExpression,e),ExistsExpression}(s),y=function(e){function FreeTextExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.FreeText,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(FreeTextExpression,e),FreeTextExpression}(s),v=function(e){function GreaterThanExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.GreaterThan,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(GreaterThanExpression,e),GreaterThanExpression}(s),g=function(e){function GreaterThanOrEqualToExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.GreaterThanOrEqualTo,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(GreaterThanOrEqualToExpression,e),GreaterThanOrEqualToExpression}(s),_=function(e){function InExpression(t,r){return e.call(this,t,r,o.OperatorTypeEnum.In,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(InExpression,e),InExpression}(s),m=function(e){function LessThanExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.LessThan,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(LessThanExpression,e),LessThanExpression}(s),E=function(e){function LessThanOrEqualToExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.LessThanOrEqualTo,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(LessThanOrEqualToExpression,e),LessThanOrEqualToExpression}(s),O=function(e){function NotExpression(t){return e.call(this,[t],o.OperatorTypeEnum.Not,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(NotExpression,e),NotExpression}(a),b=function(e){function OrExpression(t){return e.call(this,t,o.OperatorTypeEnum.Or,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(OrExpression,e),OrExpression}(a),x=function(e){function StartsWithExpression(t,r){return e.call(this,t,[r],o.OperatorTypeEnum.StartsWith,o.ExpressionValueTypeEnum.Single)||this}return n.__extends(StartsWithExpression,e),StartsWithExpression}(s),w=function(e){function WhereExpression(t){return void 0===t&&(t=[]),e.call(this,t,o.OperatorTypeEnum.Where,o.ExpressionValueTypeEnum.Array)||this}return n.__extends(WhereExpression,e),WhereExpression.prototype.toJSON=function(){return e.prototype.toJSON.call(this)[o.OperatorTypeEnum.Where]},WhereExpression}(a);t.WhereExpression=w;var T=function(){function Operators(){}return Operators.prototype.and=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new u(e)},Operators.prototype.between=function(e,t,r){return new l(e,t,r)},Operators.prototype.contains=function(e,t){return new p(e,t)},Operators.prototype.distanceWithin=function(e,t,r,n){return new c(e,{lat:t,lon:r,distance:n})},Operators.prototype.endsWith=function(e,t){return new d(e,t)},Operators.prototype.equalTo=function(e,t){return new h(e,t)},Operators.prototype.exists=function(e,t){return new f(e,t)},Operators.prototype.freeText=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=i.FreeTextSearchOperatorTypeEnum.And),new y(e,{term:t,fuzzy:r,operator:n})},Operators.prototype.greaterThan=function(e,t){return new v(e,t)},Operators.prototype.greaterThanOrEqualTo=function(e,t){return new g(e,t)},Operators.prototype.in=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return new _(e,t)},Operators.prototype.lessThan=function(e,t){return new m(e,t)},Operators.prototype.lessThanOrEqualTo=function(e,t){return new E(e,t)},Operators.prototype.not=function(e){return new O(e)},Operators.prototype.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new b(e)},Operators.prototype.startsWith=function(e,t){return new x(e,t)},Operators}();t.Operators=T},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1);r.n(n);r.o(n,"Query")&&r.d(t,"Query",function(){return n.Query}),r.o(n,"Op")&&r.d(t,"Op",function(){return n.Op}),r.o(n,"OrderBy")&&r.d(t,"OrderBy",function(){return n.OrderBy});var o=r(16);r.d(t,"Client",function(){return o.a})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(8),t),n.__exportStar(r(10),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2),o=function(){function HttpClient(e,t){this.paramsProvider=e,this.fetchFn=t}return HttpClient.prototype.request=function(e,t){void 0===t&&(t={});var r=this.paramsProvider.getParams(),o=!r.rootUrl||"/"===r.rootUrl;if(!n.isBrowser()&&o)throw new Error("You cannot specify a relative root url if not in a browser context.");t.method=t.method||(t.body?"POST":"GET"),o||(t.mode="cors"),t.headers=t.headers||{};var i=t.headers;if(!i.accessToken&&r.accessToken&&(i.accessToken=r.accessToken),"none"===r.clientType&&!i.accessToken)throw new Error('If the property clientType is set to "'+r.clientType+'" then the property accessToken must be provided.');if("client_credentials"===r.clientType&&!r.clientDetails)throw new Error('If the property client type is set to "'+r.clientType+'" then the property clientDetails must be set to a ClientCredentialsGrant value.');if(r.defaultHeaders){Object.keys(r.defaultHeaders).forEach(function(e){!i[e]&&r.defaultHeaders[e]&&(i[e]=r.defaultHeaders[e])})}var s=o?""+e:""+r.rootUrl+e;return this.fetchFn(s,t).then(function(e){var t=null;r.responseHandler&&(r.responseHandler["*"]&&(t=r.responseHandler["*"]),r.responseHandler[e.status]&&(t=r.responseHandler[e.status]));var n={status:e.status,statusText:e.statusText,url:e.url,data:null};return e.text().then(function(e){return e&&e.length&&e.length>0?JSON.parse(e):{}}).then(function(r){return n.data=r,e.ok?(t&&t(e,n),r):t?t(e,n):Promise.reject(n)},function(r){return n.data=r,t?t(e,n):Promise.reject(n)})}).then(function(e){return e})},HttpClient}();t.HttpClient=o},function(e,t){e.exports=!1},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),o=r(2),i=function(){function UrlBuilder(e,t){this.url=e,this.query=t,this.paramMatcher=/(:\b\D\w*)/g,this.options={},this.mappers={}}return UrlBuilder.create=function(e,t){return void 0===t&&(t=null),new UrlBuilder(e,t)},UrlBuilder.prototype.addOptions=function(e,t){return void 0===t&&(t=null),o.isString(e)&&t?this.options[t]=e:this.options=n.__assign({},this.options,e),this},UrlBuilder.prototype.setParams=function(e){return this.clientParams=e,this},UrlBuilder.prototype.addMappers=function(e){var t=this;return e&&Object.keys(e).forEach(function(r){t.mappers[r]=e[r]}),this},UrlBuilder.prototype.toUrl=function(){var e=this,t={},r="function"==typeof this.url?this.url(this.options,this.clientParams):this.url,i=r.match(this.paramMatcher);i&&i.forEach(function(r){var n=r.substring(1),i=null;o.hasProp(e.options,n)&&null!==e.options[n]?i=e.options[n]:o.hasProp(e.clientParams,n)&&null!==e.clientParams[n]&&(i=e.clientParams[n]);var s=null;e.mappers[r]&&(s=e.mappers[r](i,e.options,e.clientParams)),t[r]=null!==s?s:i});var s={};return this.query&&(s=n.__assign({},this.query),Object.keys(this.query).forEach(function(t){var r=s[t];o.hasProp(e.options,t)&&null!==e.options[t]?r=e.options[t]:o.hasProp(e.clientParams,t)&&null!==e.clientParams[t]&&(r=e.clientParams[t]),s[t]=e.mappers[t]?e.mappers[t](r,e.options,e.clientParams):r})),""+Object.keys(t).reduce(function(e,r){return e.replace(r,t[r])},r)+o.toQuery(s)},UrlBuilder}();t.UrlBuilder=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),o=function(e){function ContensisApplicationError(t){var r=this.constructor,n=e.call(this,t)||this;return n.name="ContensisApplicationError",Object.setPrototypeOf(n,r.prototype),n}return n.__extends(ContensisApplicationError,e),ContensisApplicationError}(Error);t.ContensisApplicationError=o;var i=function(e){function ContensisAuthenticationError(t){var r=this.constructor,n=e.call(this,t)||this;return n.name="ContensisAuthenticationError",Object.setPrototypeOf(n,r.prototype),n}return n.__extends(ContensisAuthenticationError,e),ContensisAuthenticationError}(Error);t.ContensisAuthenticationError=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(13),t),n.__exportStar(r(4),t),n.__exportStar(r(5),t),n.__exportStar(r(14),t),n.__exportStar(r(15),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExpressionValueTypeEnum={Single:"single",Array:"array",Unknown:"unknown"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OperatorTypeEnum={And:"and",Between:"between",Contains:"contains",EndsWith:"endsWith",EqualTo:"equalTo",Exists:"exists",FreeText:"freeText",GreaterThan:"greaterThan",GreaterThanOrEqualTo:"greaterThanOrEqualTo",In:"in",LessThan:"lessThan",LessThanOrEqualTo:"lessThanOrEqualTo",Not:"not",Or:"or",StartsWith:"startsWith",Where:"where",DistanceWithin:"distanceWithin"}},function(e,t,r){"use strict";function toOrderBy(e){var t;if(!e)return null;var r=e.substr(0,1);if("+"===r||"-"===r){var n="-"===r?"desc":"asc";return t={},t[n]=e.substring(1),t}return{asc:e}}function serializeOrder(e){if(!e)return[];var t;return"string"==typeof e?(t=toOrderBy(e),t?[t]:[]):Array.isArray(e)?e.map(toOrderBy).filter(function(e){return!!e}):e.toArray?e.toArray():null}Object.defineProperty(t,"__esModule",{value:!0});var n=r(5);t.Op=new n.Operators;var o=function(){function Ordering(){this._items=[]}return Ordering.prototype.asc=function(e){return this._items.push({asc:e}),this},Ordering.prototype.desc=function(e){return this._items.push({desc:e}),this},Ordering.prototype.toArray=function(){return this._items},Ordering}(),i=function(){function OrderByFactory(){}return OrderByFactory.prototype.asc=function(e){return(new o).asc(e)},OrderByFactory.prototype.desc=function(e){return(new o).desc(e)},OrderByFactory}();t.OrderBy=new i;var s=function(){function Query(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.where=new n.WhereExpression,this.orderBy=[],this.pageIndex=0,this.pageSize=20,this.fields=[],e&&this.where.addRange(e)}return Query.prototype.toJSON=function(){var e={};e.pageIndex=this.pageIndex,e.pageSize=this.pageSize;var t=serializeOrder(this.orderBy);return t&&t.length>0&&(e.orderBy=t),e.where=this.where,this.fields&&this.fields.length>0&&(e.fields=this.fields),e},Query}();t.Query=s;var a=function(){function ManagementQuery(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.where=new n.WhereExpression,this.orderBy=[],this.pageIndex=0,this.pageSize=20,e&&this.where.addRange(e)}return ManagementQuery.prototype.toJSON=function(){var e={};e.pageIndex=this.pageIndex,e.pageSize=this.pageSize;var t=serializeOrder(this.orderBy);return t&&t.length>0&&(e.orderBy=t),e.where=this.where,e},ManagementQuery}();t.ManagementQuery=a},function(e,t,r){"use strict";r.d(t,"a",function(){return d});var n=r(17),o=r(19),i=r(20),s=r(21),a=r(22),u=r(23),l=r(1),p=(r.n(l),r(24)),c=r.n(p),d=function(){function Client(e){void 0===e&&(e=null),this.clientConfig=null,this.clientConfig=new a.a(e,Client.defaultClientConfig),this.fetchFn=this.clientConfig.fetchFn?this.clientConfig.fetchFn:c.a,this.httpClient=new l.HttpClient(this,this.fetchFn),this.entries=new n.a(this.httpClient,this),this.project=new i.a(this.httpClient,this),this.contentTypes=new o.a(this.httpClient,this),this.nodes=new u.a(this.httpClient,this),this.taxonomy=new s.a(this.httpClient,this)}return Client.create=function(e){return void 0===e&&(e=null),new Client(e)},Client.configure=function(e){Client.defaultClientConfig=new a.a(e,Client.defaultClientConfig)},Client.prototype.getParams=function(){return this.clientConfig.toParams()},Client.defaultClientConfig=null,Client}()},function(e,t,r){"use strict";r.d(t,"a",function(){return p});var n=r(0),o=r(18),i=r(1),s=(r.n(i),{language:i.defaultMapperForLanguage,versionStatus:i.defaultMapperForPublishedVersionStatus,fields:function(e){return e&&e.length>0?e:null},linkDepth:function(e){return e&&e>0?e:null}}),a=function(e,t){return e.contentTypeId?"/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries":"/api/delivery/projects/:projectId/entries"},u=n.__assign({},s,{order:function(e){return e&&e.length>0?e:null},pageIndex:function(e,t,r){return t&&t.pageOptions&&t.pageOptions.pageIndex||r.pageIndex},pageSize:function(e,t,r){return t&&t.pageOptions&&t.pageOptions.pageSize||r.pageSize}}),l={linkDepth:function(e){return e&&e>0?e:null}},p=function(){function EntryOperations(e,t){this.httpClient=e,this.paramsProvider=t}return EntryOperations.prototype.get=function(e){var t=i.UrlBuilder.create("/api/delivery/projects/:projectId/entries/:id",{language:null,versionStatus:null,linkDepth:null,fields:null}).addOptions(e,"id").setParams(this.paramsProvider.getParams()).addMappers(s).toUrl();return this.httpClient.request(t)},EntryOperations.prototype.list=function(e){var t=i.UrlBuilder.create(a,{language:null,versionStatus:null,linkDepth:null,order:null,fields:null,pageIndex:null,pageSize:null}).addOptions(e,"contentTypeId").setParams(this.paramsProvider.getParams()).addMappers(u).toUrl();return this.httpClient.request(t)},EntryOperations.prototype.search=function(e,t){if(void 0===t&&(t=0),!e)return new Promise(function(e){e(null)});var r=this.paramsProvider.getParams(),o=e.pageSize||r.pageSize,s=e.pageIndex||0,a=e.orderBy&&(e.orderBy._items||e.orderBy),u=(r.accessToken,r.projectId),p=(r.language,r.responseHandler,r.rootUrl,r.versionStatus,n.__rest(r,["accessToken","projectId","language","responseHandler","rootUrl","versionStatus"])),c=n.__assign({},p,{linkDepth:t,pageSize:o,pageIndex:s,fields:e.fields&&e.fields.length>0?e.fields:null,where:JSON.stringify(e.where)});a&&a.length>0&&(c.orderBy=JSON.stringify(a));var d=i.UrlBuilder.create("/api/delivery/projects/:projectId/entries/search",n.__assign({},c)).setParams(n.__assign({},c,{projectId:u})).addMappers(l).toUrl();return Object(i.isBrowser)()&&Object(i.isIE)()&&d.length>2083?this.searchUsingPost(e,t):this.httpClient.request(d,{method:"GET",headers:{"Content-Type":"application/json; charset=utf-8"}})},EntryOperations.prototype.resolve=function(e,t){var r=this;void 0===t&&(t=null);var n=this.paramsProvider.getParams();return new o.a(e,t,n.versionStatus,function(e){return r.search(e)}).resolve()},EntryOperations.prototype.searchUsingPost=function(e,t){if(void 0===t&&(t=0),!e)return new Promise(function(e){e(null)});var r=this.paramsProvider.getParams();e.pageSize=e.pageSize||r.pageSize,e.pageIndex=e.pageIndex||0;var n=i.UrlBuilder.create("/api/delivery/projects/:projectId/entries/search",{linkDepth:t}).setParams(this.paramsProvider.getParams()).addMappers(l).toUrl();return this.httpClient.request(n,{method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},body:JSON.stringify(e)})},EntryOperations}()},function(e,t,r){"use strict";function isUnresolvedEntry(e){if(e&&e.sys&&e.sys.id){return 1===Object.keys(e).length}return!1}function isUnresolvedImage(e){if(e&&e.asset){return Object.keys(e).length<=2&&isUnresolvedEntry(e.asset)}return!1}function isComposer(e){return!!(Array.isArray(e)&&e.length>0)&&isComposerItem(e[0])}function isComposerItem(e){if(e&&e.type&&e.value){return 2===Object.keys(e).length}return!1}r.d(t,"a",function(){return a});var n=r(1),o=(r.n(n),function(){function DeferredEntry(e,t){var r=this;this.sys=e,this.versionStatus=t,this.promise=new Promise(function(e,t){r.resolve=e,r.reject=t}),this.expression=n.Op.and(n.Op.equalTo("sys.id",e.id),n.Op.equalTo("sys.language",e.language),n.Op.equalTo("sys.versionStatus",this.versionStatus))}return DeferredEntry.prototype.is=function(e){return!!(e&&e.id&&e.language&&e.id===this.sys.id&&e.language===this.sys.language)},DeferredEntry}()),i=function(){function ListResolver(e,t,r,n){this.entries=e,this.paths=t,this.versionStatus=r,this.search=n,this.deferredEntries=[]}return ListResolver.prototype.resolve=function(){var e=this;this.deferredEntries=[];var t=this.entries.map(function(t){return new s(t,e.paths,function(t,r){return e.getEntry(t,r)}).resolve()});return this.nestedSearch(),Promise.all(t).then(function(t){return e.entries})},ListResolver.prototype.getEntry=function(e,t){var r=new o({id:e,language:t},this.versionStatus);return this.deferredEntries.push(r),r.promise},ListResolver.prototype.nestedSearch=function(){var e=this,t=this.deferredEntries.map(function(e){return e.expression}),r=new n.Query(n.Op.or.apply(n.Op,t));return r.pageIndex=0,r.pageSize=t.length,this.search(r).then(function(t){var r=e.deferredEntries;e.deferredEntries=[];for(var n=[],o=0,i=t.items;o<i.length;o++){var s=i[o];!function(e){for(var t=r.filter(function(t){return t.is(e.sys)}),o=0,i=t;o<i.length;o++){var s=i[o];s.resolve(e),n.push(s.promise)}}(s)}return Promise.all(n).then(function(){return Promise.resolve(t)})}).then(function(t){return e.deferredEntries.length>0?e.nestedSearch():t})},ListResolver}(),s=function(){function EntryResolver(e,t,r){this.entry=e,this.paths=t,this.getEntry=r}return EntryResolver.prototype.resolve=function(){var e=this,t=this.paths||Object.keys(this.entry),r=t.map(function(t){var r=t.split("."),n=r.shift(),o=null,i=e.entry[n];if(i&&!(o=e.resolveField(i))&&isComposer(i)){var s=r.length>0?r.shift():null;o=e.resolveComposerField(i,s)}return o=o?o.then(function(t){return e.entry[n]=t.value,t}):Promise.resolve(null),o.then(function(t){return e.next(t,r.join("."))})});return Promise.all(r).then(function(t){return e.entry})},EntryResolver.prototype.next=function(e,t){var r=this;if(!t||!e||!e.entries||e.entries.length<=0)return Promise.resolve(e);var n=e.entries.map(function(e){return new EntryResolver(e,[t],function(e,t){return r.getEntry(e,t)}).resolve()});return Promise.all(n)},EntryResolver.prototype.resolveField=function(e){var t=this;if(isUnresolvedEntry(e))return this.resolveEntry(e);if(isUnresolvedImage(e))return this.resolveImage(e);if(Array.isArray(e)){var r=!1,n=e.map(function(e){return isUnresolvedEntry(e)?(r=!0,t.resolveEntry(e)):isUnresolvedImage(e)?(r=!0,t.resolveImage(e)):Promise.resolve({entries:[],value:e})});if(r)return Promise.all(n).then(function(e){for(var t=[],r=[],n=0,o=e;n<o.length;n++){var i=o[n];t.push(i.value),r=r.concat(i.entries)}return{entries:r,value:t}})}return null},EntryResolver.prototype.resolveComposerField=function(e,t){var r=this;if(Array.isArray(e)){var n=!1,o=e.map(function(e){if(isComposerItem(e)&&(!t||t===e.type)){var o=r.resolveField(e.value);if(o)return n=!0,o.then(function(t){return e.value=t,e})}return Promise.resolve({entries:[],value:e})});if(n)return Promise.all(o).then(function(e){for(var t=[],r=[],n=0,o=e;n<o.length;n++){var i=o[n];t.push(i.value),r=r.concat(i.entries)}return{entries:r,value:t}})}return null},EntryResolver.prototype.resolveEntry=function(e){if(e&&e.sys&&e.sys.id){var t=e.sys.language||this.entry.sys.language;return this.getEntry(e.sys.id,t).then(function(e){return{entries:[e],value:e}})}return Promise.resolve({entries:[],value:e})},EntryResolver.prototype.resolveImage=function(e){if(e&&e.asset&&e.asset.sys&&e.asset.sys.id){var t=e.asset.sys.language||this.entry.sys.language;return this.getEntry(e.asset.sys.id,t).then(function(t){return e.asset=t,{entries:[t],value:e}})}return Promise.resolve({entries:[],value:e})},EntryResolver}(),a=function(){function LinkResolver(e,t,r,n){this.entryOrList=e,this.paths=t,this.versionStatus=r,this.search=n}return LinkResolver.prototype.resolve=function(){var e=this,t=this.getEntries(),r=Promise.resolve([]);if(t.length>0){r=new i(t,this.paths,this.versionStatus,this.search).resolve()}return r.then(function(){return e.entryOrList})},LinkResolver.prototype.getEntries=function(){var e=this.entryOrList;return e?Array.isArray(e)?e:e.items&&Array.isArray(e.items)?e.items:[e]:[]},LinkResolver}()},function(e,t,r){"use strict";r.d(t,"a",function(){return o});var n=r(1),o=(r.n(n),function(){function ContentTypeOperations(e,t){this.httpClient=e,this.paramsProvider=t}return ContentTypeOperations.prototype.get=function(e){var t=n.UrlBuilder.create("/api/delivery/projects/:projectId/contentTypes/:contentTypeId").addOptions(e,"contentTypeId").setParams(this.paramsProvider.getParams()).toUrl();return this.httpClient.request(t)},ContentTypeOperations}())},function(e,t,r){"use strict";r.d(t,"a",function(){return o});var n=r(1),o=(r.n(n),function(){function ProjectOperations(e,t){this.httpClient=e,this.paramsProvider=t}return ProjectOperations.prototype.get=function(){var e=n.UrlBuilder.create("/api/delivery/projects/:projectId").setParams(this.paramsProvider.getParams()).toUrl();return this.httpClient.request(e)},ProjectOperations}())},function(e,t,r){"use strict";r.d(t,"a",function(){return s});var n=r(0),o=r(1),i=(r.n(o),{order:function(e){return"defined"===e?e:null}}),s=function(){function TaxonomyOperations(e,t){this.httpClient=e,this.paramsProvider=t}return TaxonomyOperations.prototype.getNodeByKey=function(e){var t=o.UrlBuilder.create("/api/delivery/projects/:projectId/taxonomy/nodes/:key",{order:null,childDepth:null,language:null}).addOptions(e,"key").setParams(this.paramsProvider.getParams()).addMappers(i).toUrl();return this.httpClient.request(t)},TaxonomyOperations.prototype.getNodeByPath=function(e){var t=o.UrlBuilder.create("/api/delivery/projects/:projectId/taxonomy/nodes",{order:null,childDepth:null,language:null,path:null}).addOptions(e,"path").setParams(this.paramsProvider.getParams()).addMappers(i).toUrl();return this.httpClient.request(t)},TaxonomyOperations.prototype.resolveChildren=function(e){var t=e,r=null,o={childDepth:1};return t.node?(r=t.node,o={childDepth:t.childDepth||1,order:t.order,language:t.language}):t.key?e.path?r=e:(r=t.key,o={childDepth:t.childDepth||1,order:t.order,language:t.language}):r=e,"string"==typeof r?this.getNodeByKey(n.__assign({},o,{key:r})):r.hasChildren?r.children&&r.children.length>0?Promise.resolve(n.__assign({},r)):this.getNodeByKey(n.__assign({},o,{key:r.key})):Promise.resolve(n.__assign({},r,{children:[]}))},TaxonomyOperations}()},function(e,t,r){"use strict";r.d(t,"a",function(){return n});var n=function(){function ClientConfig(e,t){for(this.currentConfig=e,this.previousConfig=t,this.rootUrl=null,this.accessToken=null,this.defaultHeaders=null,this.projectId=null,this.language=null,this.versionStatus="published",this.pageSize=25,this.responseHandler=null,this.fetchFn=null,this.rootUrl=this.getValue(function(e){return e.rootUrl}),this.accessToken=this.getValue(function(e){return e.accessToken}),this.defaultHeaders=this.getValue(function(e){return e.defaultHeaders}),this.projectId=this.getValue(function(e){return e.projectId}),this.language=this.getValue(function(e){return e.language}),this.versionStatus=this.getValue(function(e){return e.versionStatus}),this.pageSize=this.getValue(function(e){return e.pageSize}),this.responseHandler=this.getValue(function(e){return e.responseHandler}),this.fetchFn=this.getValue(function(e){return e.fetchFn});this.rootUrl&&"/"===this.rootUrl.substr(this.rootUrl.length-1,1);)this.rootUrl=this.rootUrl.substr(0,this.rootUrl.length-1)}return ClientConfig.prototype.toParams=function(){return{rootUrl:this.rootUrl,accessToken:this.accessToken,defaultHeaders:this.defaultHeaders,language:this.language,versionStatus:this.versionStatus,projectId:this.projectId,pageIndex:0,pageSize:this.pageSize,responseHandler:this.responseHandler}},ClientConfig.prototype.getValue=function(e){var t=null;return this.currentConfig&&(t=e(this.currentConfig)),this.previousConfig&&!t&&(t=e(this.previousConfig)),t||e(this)},ClientConfig}()},function(e,t,r){"use strict";r.d(t,"a",function(){return c});var n=r(0),o=r(1),i=(r.n(o),{language:o.defaultMapperForLanguage,versionStatus:o.defaultMapperForPublishedVersionStatus,entryFields:function(e){return e&&e.length>0?e:null},entryLinkDepth:function(e){return e&&e>0?e:null}}),s=n.__assign({},i,{depth:function(e){return e&&e>0?e:null}}),a=n.__assign({},s,{allowPartialMatch:function(e){return!!e||null}}),u=n.__assign({},i,{entryId:function(e){return e||null}}),l=n.__assign({},s,{startLevel:function(e){return e&&e>0?e:null}}),p=n.__assign({},i,{startLevel:function(e){return e&&e>0?e:null}}),c=function(){function NodeOperations(e,t){if(this.httpClient=e,this.paramsProvider=t,!this.httpClient||!this.paramsProvider)throw new Error("The class was not initialised correctly.")}return NodeOperations.prototype.getRoot=function(e){var t=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/root",{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(s).toUrl();return this.httpClient.request(t)},NodeOperations.prototype.get=function(e){if(Object(o.isString)(e)&&!e||"object"==typeof e&&(null===e||!e.id&&!e.path))throw new Error("A valid node id or path needs to be specified.");var t=Object(o.isString)(e)&&e.startsWith("/")||!!e&&!!e.path,r=t?"/api/delivery/projects/:projectId/nodes:path":"/api/delivery/projects/:projectId/nodes/:id",n=o.UrlBuilder.create(r,{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null,allowPartialMatch:null}).addOptions(e,t?"path":"id").setParams(this.paramsProvider.getParams()).addMappers(a).toUrl();return this.httpClient.request(n)},NodeOperations.prototype.getByEntry=function(e){var t="A valid entry id needs to be specified.";if(Object(o.isString)(e)&&!e)throw new Error(t);if("object"==typeof e){if(null===e)throw new Error(t);if(!(e.entryId||e.entry&&e.entry.sys&&e.entry.sys.id||e.sys&&e.sys.id))throw new Error(t)}var r=null;Object(o.isString)(e)?r=e:"object"==typeof e&&(e.sys&&(r=e.sys.id),e.entry&&e.entry.sys&&(r=e.entry.sys.id));var n=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/",{entryId:null,language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(r,"entryId").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(u).toUrl();return this.httpClient.request(n)},NodeOperations.prototype.getChildren=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/children",{language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(i).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getParent=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/parent",{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(s).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getAncestorAtLevel=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/ancestor",{language:null,startLevel:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(l).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getAncestors=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/ancestors",{language:null,startLevel:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(p).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getSiblings=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=o.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/siblings",{language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(i).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.validateNodeId=function(e){var t="A valid node id needs to be specified.";if(Object(o.isString)(e)&&!e)throw new Error(t);if("object"==typeof e){if(null===e)throw new Error(t);if(!(e.id||e.node&&e.node.id))throw new Error(t)}},NodeOperations.prototype.getNodeIdFromOptions=function(e){var t=null;return Object(o.isString)(e)?t=e:"object"==typeof e&&(e.id?t=e.id:e.node&&(t=e.node.id)),t},NodeOperations}()},function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function F(){this.fetch=!1,this.DOMException=r.DOMException}return F.prototype=r,new F}();!function(e){!function(t){function isDataView(e){return e&&DataView.prototype.isPrototypeOf(e)}function normalizeName(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function normalizeValue(e){return"string"!=typeof e&&(e=String(e)),e}function iteratorFor(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function Headers(e){this.map={},e instanceof Headers?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}function consumed(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function fileReaderReady(e){return new Promise(function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}})}function readBlobAsArrayBuffer(e){var t=new FileReader,r=fileReaderReady(t);return t.readAsArrayBuffer(e),r}function readBlobAsText(e){var t=new FileReader,r=fileReaderReady(t);return t.readAsText(e),r}function readArrayBufferAsText(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n<t.length;n++)r[n]=String.fromCharCode(t[n]);return r.join("")}function bufferClone(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function Body(){return this.bodyUsed=!1,this._initBody=function(e){this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:r.blob&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:r.formData&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():r.arrayBuffer&&r.blob&&isDataView(e)?(this._bodyArrayBuffer=bufferClone(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||o(e))?this._bodyArrayBuffer=bufferClone(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r.blob&&(this.blob=function(){var e=consumed(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?consumed(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(readBlobAsArrayBuffer)}),this.text=function(){var e=consumed(this);if(e)return e;if(this._bodyBlob)return readBlobAsText(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(decode)}),this.json=function(){return this.text().then(JSON.parse)},this}function normalizeMethod(e){var t=e.toUpperCase();return i.indexOf(t)>-1?t:e}function Request(e,t){t=t||{};var r=t.body;if(e instanceof Request){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new Headers(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,r||null==e._bodyInit||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"same-origin",!t.headers&&this.headers||(this.headers=new Headers(t.headers)),this.method=normalizeMethod(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(r)}function decode(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(o))}}),t}function parseHeaders(e){var t=new Headers;return e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(e){var r=e.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();t.append(n,o)}}),t}function Response(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new Headers(t.headers),this.url=t.url||"",this._initBody(e)}function fetch(e,n){return new Promise(function(o,i){function abortXhr(){a.abort()}var s=new Request(e,n);if(s.signal&&s.signal.aborted)return i(new t.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;a.onload=function(){var e={status:a.status,statusText:a.statusText,headers:parseHeaders(a.getAllResponseHeaders()||"")};e.url="responseURL"in a?a.responseURL:e.headers.get("X-Request-URL");var t="response"in a?a.response:a.responseText;o(new Response(t,e))},a.onerror=function(){i(new TypeError("Network request failed"))},a.ontimeout=function(){i(new TypeError("Network request failed"))},a.onabort=function(){i(new t.DOMException("Aborted","AbortError"))},a.open(s.method,s.url,!0),"include"===s.credentials?a.withCredentials=!0:"omit"===s.credentials&&(a.withCredentials=!1),"responseType"in a&&r.blob&&(a.responseType="blob"),s.headers.forEach(function(e,t){a.setRequestHeader(t,e)}),s.signal&&(s.signal.addEventListener("abort",abortXhr),a.onreadystatechange=function(){4===a.readyState&&s.signal.removeEventListener("abort",abortXhr)}),a.send(void 0===s._bodyInit?null:s._bodyInit)})}var r={searchParams:"URLSearchParams"in e,iterable:"Symbol"in e&&"iterator"in Symbol,blob:"FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in e,arrayBuffer:"ArrayBuffer"in e};if(r.arrayBuffer)var n=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],o=ArrayBuffer.isView||function(e){return e&&n.indexOf(Object.prototype.toString.call(e))>-1};Headers.prototype.append=function(e,t){e=normalizeName(e),t=normalizeValue(t);var r=this.map[e];this.map[e]=r?r+", "+t:t},Headers.prototype.delete=function(e){delete this.map[normalizeName(e)]},Headers.prototype.get=function(e){return e=normalizeName(e),this.has(e)?this.map[e]:null},Headers.prototype.has=function(e){return this.map.hasOwnProperty(normalizeName(e))},Headers.prototype.set=function(e,t){this.map[normalizeName(e)]=normalizeValue(t)},Headers.prototype.forEach=function(e,t){for(var r in this.map)this.map.hasOwnProperty(r)&&e.call(t,this.map[r],r,this)},Headers.prototype.keys=function(){var e=[];return this.forEach(function(t,r){e.push(r)}),iteratorFor(e)},Headers.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),iteratorFor(e)},Headers.prototype.entries=function(){var e=[];return this.forEach(function(t,r){e.push([r,t])}),iteratorFor(e)},r.iterable&&(Headers.prototype[Symbol.iterator]=Headers.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})},Body.call(Request.prototype),Body.call(Response.prototype),Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})},Response.error=function(){var e=new Response(null,{status:0,statusText:""});return e.type="error",e};var s=[301,302,303,307,308];Response.redirect=function(e,t){if(-1===s.indexOf(t))throw new RangeError("Invalid status code");return new Response(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}fetch.polyfill=!0,e.fetch||(e.fetch=fetch,e.Headers=Headers,e.Request=Request,e.Response=Response),t.Headers=Headers,t.Request=Request,t.Response=Response,t.fetch=fetch,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var o=n;t=o.fetch,t.default=o.fetch,t.fetch=o.fetch,t.Headers=o.Headers,t.Request=o.Request,t.Response=o.Response,e.exports=t}]); | ||
var Zengenti=Zengenti||{};Zengenti.Contensis=function(e){function __webpack_require__(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,__webpack_require__),n.l=!0,n.exports}var t={};return __webpack_require__.m=e,__webpack_require__.c=t,__webpack_require__.d=function(e,t,r){__webpack_require__.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},__webpack_require__.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(t,"a",t),t},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.p="/bundle/",__webpack_require__(__webpack_require__.s=8)}([function(e,t,r){"use strict";function __extends(e,t){function __(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}function __rest(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var i=0,n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]]);return r}function __decorate(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s}function __param(e,t){return function(r,n){t(r,n,e)}}function __metadata(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function __awaiter(e,t,r,n){return new(r||(r=Promise))(function(i,o){function fulfilled(e){try{step(n.next(e))}catch(e){o(e)}}function rejected(e){try{step(n.throw(e))}catch(e){o(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})}function __generator(e,t){function verb(e){return function(t){return step([e,t])}}function step(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(i=s.trys,!(i=i.length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:verb(0),throw:verb(1),return:verb(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o}function __exportStar(e,t){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}function __values(e){var t="function"==typeof Symbol&&e[Symbol.iterator],r=0;return t?t.call(e):{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}function __read(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s}function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}function __spreadArrays(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),i=0,t=0;t<r;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,i++)n[i]=o[s];return n}function __await(e){return this instanceof __await?(this.v=e,this):new __await(e)}function __asyncGenerator(e,t,r){function verb(e){i[e]&&(n[e]=function(t){return new Promise(function(r,n){o.push([e,t,r,n])>1||resume(e,t)})})}function resume(e,t){try{step(i[e](t))}catch(e){settle(o[0][3],e)}}function step(e){e.value instanceof __await?Promise.resolve(e.value.v).then(fulfill,reject):settle(o[0][2],e)}function fulfill(e){resume("next",e)}function reject(e){resume("throw",e)}function settle(e,t){e(t),o.shift(),o.length&&resume(o[0][0],o[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,i=r.apply(e,t||[]),o=[];return n={},verb("next"),verb("throw"),verb("return"),n[Symbol.asyncIterator]=function(){return this},n}function __asyncDelegator(e){function verb(n,i){t[n]=e[n]?function(t){return(r=!r)?{value:__await(e[n](t)),done:"return"===n}:i?i(t):t}:i}var t,r;return t={},verb("next"),verb("throw",function(e){throw e}),verb("return"),t[Symbol.iterator]=function(){return this},t}function __asyncValues(e){function verb(r){t[r]=e[r]&&function(t){return new Promise(function(n,i){t=e[r](t),settle(n,i,t.done,t.value)})}}function settle(e,t,r,n){Promise.resolve(n).then(function(t){e({value:t,done:r})},t)}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},verb("next"),verb("throw"),verb("return"),t[Symbol.asyncIterator]=function(){return this},t)}function __makeTemplateObject(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function __importStar(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function __importDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.__extends=__extends,r.d(t,"__assign",function(){return i}),t.__rest=__rest,t.__decorate=__decorate,t.__param=__param,t.__metadata=__metadata,t.__awaiter=__awaiter,t.__generator=__generator,t.__exportStar=__exportStar,t.__values=__values,t.__read=__read,t.__spread=__spread,t.__spreadArrays=__spreadArrays,t.__await=__await,t.__asyncGenerator=__asyncGenerator,t.__asyncDelegator=__asyncDelegator,t.__asyncValues=__asyncValues,t.__makeTemplateObject=__makeTemplateObject,t.__importStar=__importStar,t.__importDefault=__importDefault;var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},i=function(){return i=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e},i.apply(this,arguments)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(9),t),n.__exportStar(r(5),t),n.__exportStar(r(3),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),i=r(5),o=r(6),s=function(){function ExpressionBase(e,t,r,n){void 0===t&&(t=[]),this.fieldName=e,this.values=t,this.operatorName=r,this.valueType=n,this._weight=0}return ExpressionBase.prototype.addValue=function(e){return this.values[this.values.length]=e,this},ExpressionBase.prototype.weight=function(e){return this._weight=e,this},ExpressionBase.prototype.toJSON=function(){var e={};return this.fieldName&&(e.field=this.fieldName),this.valueType===i.ExpressionValueTypeEnum.Single?e[this.operatorName]=this.values[0]:this.valueType===i.ExpressionValueTypeEnum.Array?e[this.operatorName]=this.values:this.values&&1===this.values.length?e[this.operatorName]=this.values[0]:e[this.operatorName]=this.values,this._weight&&this._weight>1&&(e.weight=this._weight),e},ExpressionBase}();t.ExpressionBase=s;var a=function(e){function LogicalExpression(t,r,n){return void 0===t&&(t=[]),e.call(this,null,t,r,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(LogicalExpression,e),LogicalExpression.prototype.getItem=function(e){return this.values[e]},LogicalExpression.prototype.setItem=function(e,t){return this.values[e]=t,this},LogicalExpression.prototype.add=function(e){return this.values[this.values.length]=e,this},LogicalExpression.prototype.addRange=function(e){return Array.prototype.push.apply(this.values,e),this},LogicalExpression.prototype.indexOf=function(e){return this.values.indexOf(e)},LogicalExpression.prototype.insert=function(e,t){return this.values.splice(e,0,t),this},LogicalExpression.prototype.remove=function(e){var t=this.indexOf(e);return t>=0&&(this.removeAt(t),!0)},LogicalExpression.prototype.removeAt=function(e){return this.values.splice(e,1),this},LogicalExpression.prototype.clear=function(){return this.values.length=0,this},LogicalExpression.prototype.contains=function(e){return this.indexOf(e)>=0},LogicalExpression.prototype.count=function(){return this.values.length},LogicalExpression}(s);t.LogicalExpression=a;var u=function(e){function AndExpression(t){return e.call(this,t,i.OperatorTypeEnum.And,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(AndExpression,e),AndExpression}(a),l=function(e){function BetweenExpression(t,r,n){return e.call(this,t,[r,n],i.OperatorTypeEnum.Between,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(BetweenExpression,e),BetweenExpression}(s),p=function(e){function ContainsExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.Contains,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(ContainsExpression,e),ContainsExpression}(s),c=function(e){function DistanceWithinExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.DistanceWithin,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(DistanceWithinExpression,e),DistanceWithinExpression}(s),d=function(e){function EndsWithExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.EndsWith,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(EndsWithExpression,e),EndsWithExpression}(s),h=function(e){function EqualToExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.EqualTo,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(EqualToExpression,e),EqualToExpression}(s),f=function(e){function ExistsExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.Exists,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(ExistsExpression,e),ExistsExpression}(s),y=function(e){function FreeTextExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.FreeText,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(FreeTextExpression,e),FreeTextExpression}(s),v=function(e){function GreaterThanExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.GreaterThan,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(GreaterThanExpression,e),GreaterThanExpression}(s),g=function(e){function GreaterThanOrEqualToExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.GreaterThanOrEqualTo,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(GreaterThanOrEqualToExpression,e),GreaterThanOrEqualToExpression}(s),_=function(e){function InExpression(t,r){return e.call(this,t,r,i.OperatorTypeEnum.In,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(InExpression,e),InExpression}(s),m=function(e){function LessThanExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.LessThan,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(LessThanExpression,e),LessThanExpression}(s),E=function(e){function LessThanOrEqualToExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.LessThanOrEqualTo,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(LessThanOrEqualToExpression,e),LessThanOrEqualToExpression}(s),O=function(e){function NotExpression(t){return e.call(this,[t],i.OperatorTypeEnum.Not,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(NotExpression,e),NotExpression}(a),b=function(e){function OrExpression(t){return e.call(this,t,i.OperatorTypeEnum.Or,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(OrExpression,e),OrExpression}(a),x=function(e){function StartsWithExpression(t,r){return e.call(this,t,[r],i.OperatorTypeEnum.StartsWith,i.ExpressionValueTypeEnum.Single)||this}return n.__extends(StartsWithExpression,e),StartsWithExpression}(s),w=function(e){function WhereExpression(t){return void 0===t&&(t=[]),e.call(this,t,i.OperatorTypeEnum.Where,i.ExpressionValueTypeEnum.Array)||this}return n.__extends(WhereExpression,e),WhereExpression.prototype.toJSON=function(){return e.prototype.toJSON.call(this)[i.OperatorTypeEnum.Where]},WhereExpression}(a);t.WhereExpression=w;var T=function(){function Operators(){}return Operators.prototype.and=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new u(e)},Operators.prototype.between=function(e,t,r){return new l(e,t,r)},Operators.prototype.contains=function(e,t){return new p(e,t)},Operators.prototype.distanceWithin=function(e,t,r,n){return new c(e,{lat:t,lon:r,distance:n})},Operators.prototype.endsWith=function(e,t){return new d(e,t)},Operators.prototype.equalTo=function(e,t){return new h(e,t)},Operators.prototype.exists=function(e,t){return new f(e,t)},Operators.prototype.freeText=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=o.FreeTextSearchOperatorTypeEnum.And),new y(e,{term:t,fuzzy:r,operator:n})},Operators.prototype.greaterThan=function(e,t){return new v(e,t)},Operators.prototype.greaterThanOrEqualTo=function(e,t){return new g(e,t)},Operators.prototype.in=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return new _(e,t)},Operators.prototype.lessThan=function(e,t){return new m(e,t)},Operators.prototype.lessThanOrEqualTo=function(e,t){return new E(e,t)},Operators.prototype.not=function(e){return new O(e)},Operators.prototype.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new b(e)},Operators.prototype.startsWith=function(e,t){return new x(e,t)},Operators}();t.Operators=T},function(e,t,r){"use strict";function hasProp(e,t){return!!e&&void 0!==e[t]}function toQuery(e,t){void 0===t&&(t=!1);var r=Object.keys(e).filter(function(t){return t&&null!==e[t]&&""!==e[t]&&(!Array.isArray(e[t])||e[t].length>0)});t||r.sort();var n=r.map(function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])});return n.length>0?"?"+n.join("&"):""}function isString(e){return"string"==typeof e||e instanceof String}function isBrowser(){return"undefined"!=typeof window}function isIE(){var e;return!!(e=window&&window.document&&window.document.documentMode?window.document.documentMode:null)&&e<=11}function isNodejs(){return n}Object.defineProperty(t,"__esModule",{value:!0});var n=r(11);t.hasProp=hasProp,t.toQuery=toQuery,t.isString=isString,t.isBrowser=isBrowser,t.isIE=isIE,t.isNodejs=isNodejs,t.defaultMapperForLanguage=function(e,t,r){return!e&&r?r.language:e},t.defaultMapperForPublishedVersionStatus=function(e,t,r){return"published"===e?null:e},t.defaultMapperForLatestVersionStatus=function(e,t,r){return"latest"===e?null:e}},function(e,t,r){"use strict";function toOrderByDto(e){var t;if(!e)return null;if("string"==typeof e){var r=e.substring(0,1);if("+"===r||"-"===r){var n="-"===r?"desc":"asc";return t={},t[n]=e.substring(1),t}return{asc:e}}return e}function serializeOrder(e){if(!e)return[];if("string"==typeof e){var t=toOrderByDto(e);return t?[t]:[]}if(Array.isArray(e))return e.map(toOrderByDto).filter(function(e){return!!e});var r=e instanceof o.Ordering?e:null;return null===r?[]:r.toArray()}Object.defineProperty(t,"__esModule",{value:!0});var n=r(2),i=r(17),o=r(7);t.Op=new n.Operators,t.OrderBy=new i.OrderByFactory,t.serializeOrder=serializeOrder},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(13),t),n.__exportStar(r(14),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FreeTextSearchOperatorTypeEnum={And:"and",Or:"or"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function Ordering(){this._items=[]}return Ordering.prototype.asc=function(e){return this._items.push({asc:e}),this},Ordering.prototype.desc=function(e){return this._items.push({desc:e}),this},Ordering.prototype.toArray=function(){return this._items},Ordering}();t.Ordering=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1);r.n(n);r.o(n,"Op")&&r.d(t,"Op",function(){return n.Op}),r.o(n,"OrderBy")&&r.d(t,"OrderBy",function(){return n.OrderBy}),r.o(n,"Query")&&r.d(t,"Query",function(){return n.Query}),r.o(n,"ZenqlQuery")&&r.d(t,"ZenqlQuery",function(){return n.ZenqlQuery});var i=r(22);r.d(t,"Client",function(){return i.a})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(10),t),n.__exportStar(r(12),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(3),i=function(){function HttpClient(e,t){this.paramsProvider=e,this.fetchFn=t}return HttpClient.prototype.request=function(e,t){void 0===t&&(t={});var r=this.paramsProvider.getParams(),i=!r.rootUrl||"/"===r.rootUrl;if(!n.isBrowser()&&i)throw new Error("You cannot specify a relative root url if not in a browser context.");t.method=t.method||(t.body?"POST":"GET"),i||(t.mode="cors"),t.headers=t.headers||{};var o=t.headers;if(!o.accessToken&&r.accessToken&&(o.accessToken=r.accessToken),"none"===r.clientType&&!o.accessToken)throw new Error('If the property clientType is set to "'+r.clientType+'" then the property accessToken must be provided.');if("client_credentials"===r.clientType&&!r.clientDetails)throw new Error('If the property client type is set to "'+r.clientType+'" then the property clientDetails must be set to a ClientCredentialsGrant value.');if(r.defaultHeaders){Object.keys(r.defaultHeaders).forEach(function(e){!o[e]&&r.defaultHeaders[e]&&(o[e]=r.defaultHeaders[e])})}var s=i?""+e:""+r.rootUrl+e;return this.fetchFn(s,t).then(function(e){var t=null;r.responseHandler&&(r.responseHandler["*"]&&(t=r.responseHandler["*"]),r.responseHandler[e.status]&&(t=r.responseHandler[e.status]));var n={status:e.status,statusText:e.statusText,url:e.url,data:null};return e.text().then(function(e){return e&&e.length&&e.length>0?JSON.parse(e):{}}).then(function(r){return n.data=r,e.ok?(t&&t(e,n),r):t?t(e,n):Promise.reject(n)},function(r){return n.data=r,t?t(e,n):Promise.reject(n)})}).then(function(e){return e})},HttpClient}();t.HttpClient=i},function(e,t){e.exports=!1},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),i=r(3),o=function(){function UrlBuilder(e,t){this.url=e,this.query=t,this.paramMatcher=/(:\b\D\w*)/g,this.options={},this.mappers={}}return UrlBuilder.create=function(e,t){return void 0===t&&(t=null),new UrlBuilder(e,t)},UrlBuilder.prototype.addOptions=function(e,t){return void 0===t&&(t=null),i.isString(e)&&t?this.options[t]=e:this.options=n.__assign({},this.options,e),this},UrlBuilder.prototype.setParams=function(e){return this.clientParams=e,this},UrlBuilder.prototype.addMappers=function(e){var t=this;return e&&Object.keys(e).forEach(function(r){t.mappers[r]=e[r]}),this},UrlBuilder.prototype.toUrl=function(){var e=this,t={},r="function"==typeof this.url?this.url(this.options,this.clientParams):this.url,o=r.match(this.paramMatcher);o&&o.forEach(function(r){var n=r.substring(1),o=null;i.hasProp(e.options,n)&&null!==e.options[n]?o=e.options[n]:i.hasProp(e.clientParams,n)&&null!==e.clientParams[n]&&(o=e.clientParams[n]);var s=null;e.mappers[r]&&(s=e.mappers[r](o,e.options,e.clientParams)),t[r]=null!==s?s:o});var s={};return this.query&&(s=n.__assign({},this.query),Object.keys(this.query).forEach(function(t){var r=s[t];i.hasProp(e.options,t)&&null!==e.options[t]?r=e.options[t]:i.hasProp(e.clientParams,t)&&null!==e.clientParams[t]&&(r=e.clientParams[t]),s[t]=e.mappers[t]?e.mappers[t](r,e.options,e.clientParams):r})),""+Object.keys(t).reduce(function(e,r){return e.replace(r,t[r])},r)+i.toQuery(s)},UrlBuilder}();t.UrlBuilder=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),i=function(e){function ContensisApplicationError(t){var r=this.constructor,n=e.call(this,t)||this;return n.name="ContensisApplicationError",Object.setPrototypeOf(n,r.prototype),n}return n.__extends(ContensisApplicationError,e),ContensisApplicationError}(Error);t.ContensisApplicationError=i;var o=function(e){function ContensisAuthenticationError(t){var r=this.constructor,n=e.call(this,t)||this;return n.name="ContensisAuthenticationError",Object.setPrototypeOf(n,r.prototype),n}return n.__extends(ContensisAuthenticationError,e),ContensisAuthenticationError}(Error);t.ContensisAuthenticationError=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0);n.__exportStar(r(15),t),n.__exportStar(r(6),t),n.__exportStar(r(16),t),n.__exportStar(r(18),t),n.__exportStar(r(2),t),n.__exportStar(r(19),t),n.__exportStar(r(20),t),n.__exportStar(r(4),t),n.__exportStar(r(21),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExpressionValueTypeEnum={Single:"single",Array:"array",Unknown:"unknown"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2),i=r(4),o=function(){function ManagementQuery(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.where=new n.WhereExpression,this.orderBy=[],this.pageIndex=0,this.pageSize=20,this.includeArchived=!1,this.includeDeleted=!1,e&&this.where.addRange(e)}return ManagementQuery.prototype.toJSON=function(){var e={};e.pageIndex=this.pageIndex,e.pageSize=this.pageSize;var t=i.serializeOrder(this.orderBy);return t&&t.length>0&&(e.orderBy=t),e.where=this.where,e.includeArchived=this.includeArchived,e.includeDeleted=this.includeDeleted,e},ManagementQuery}();t.ManagementQuery=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7),i=function(){function OrderByFactory(){}return OrderByFactory.prototype.asc=function(e){return(new n.Ordering).asc(e)},OrderByFactory.prototype.desc=function(e){return(new n.Ordering).desc(e)},OrderByFactory}();t.OrderByFactory=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function ManagementZenqlQuery(e){this.zenql="",this.pageIndex=0,this.pageSize=20,this.includeArchived=!1,this.includeDeleted=!1,this.zenql=e}return ManagementZenqlQuery.prototype.toJSON=function(){var e={};return e.pageIndex=this.pageIndex,e.pageSize=this.pageSize,e.zenql=this.zenql,e.includeArchived=this.includeArchived,e.includeDeleted=this.includeDeleted,e},ManagementZenqlQuery}();t.ManagementZenqlQuery=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OperatorTypeEnum={And:"and",Between:"between",Contains:"contains",EndsWith:"endsWith",EqualTo:"equalTo",Exists:"exists",FreeText:"freeText",GreaterThan:"greaterThan",GreaterThanOrEqualTo:"greaterThanOrEqualTo",In:"in",LessThan:"lessThan",LessThanOrEqualTo:"lessThanOrEqualTo",Not:"not",Or:"or",StartsWith:"startsWith",Where:"where",DistanceWithin:"distanceWithin"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2),i=r(4),o=function(){function Query(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.where=new n.WhereExpression,this.orderBy=[],this.pageIndex=0,this.pageSize=20,this.fields=[],e&&this.where.addRange(e)}return Query.prototype.toJSON=function(){var e={};e.pageIndex=this.pageIndex,e.pageSize=this.pageSize;var t=i.serializeOrder(this.orderBy);return t&&t.length>0&&(e.orderBy=t),e.where=this.where,this.fields&&this.fields.length>0&&(e.fields=this.fields),e},Query}();t.Query=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function ZenqlQuery(e){this.zenql="",this.pageIndex=0,this.pageSize=20,this.fields=[],this.zenql=e}return ZenqlQuery.prototype.toJSON=function(){var e={};return e.pageIndex=this.pageIndex,e.pageSize=this.pageSize,e.zenql=this.zenql,this.fields&&this.fields.length>0&&(e.fields=this.fields),e},ZenqlQuery}();t.ZenqlQuery=n},function(e,t,r){"use strict";r.d(t,"a",function(){return d});var n=r(23),i=r(25),o=r(26),s=r(27),a=r(28),u=r(29),l=r(1),p=(r.n(l),r(30)),c=r.n(p),d=function(){function Client(e){void 0===e&&(e=null),this.clientConfig=null,this.clientConfig=new a.a(e,Client.defaultClientConfig),this.fetchFn=this.clientConfig.fetchFn?this.clientConfig.fetchFn:c.a,this.httpClient=new l.HttpClient(this,this.fetchFn),this.entries=new n.a(this.httpClient,this),this.project=new o.a(this.httpClient,this),this.contentTypes=new i.a(this.httpClient,this),this.nodes=new u.a(this.httpClient,this),this.taxonomy=new s.a(this.httpClient,this)}return Client.create=function(e){return void 0===e&&(e=null),new Client(e)},Client.configure=function(e){Client.defaultClientConfig=new a.a(e,Client.defaultClientConfig)},Client.prototype.getParams=function(){return this.clientConfig.toParams()},Client.defaultClientConfig=null,Client}()},function(e,t,r){"use strict";r.d(t,"a",function(){return p});var n=r(0),i=r(24),o=r(1),s=(r.n(o),function(e,t){return e.contentTypeId?"/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries":"/api/delivery/projects/:projectId/entries"}),a={language:o.defaultMapperForLanguage,versionStatus:o.defaultMapperForPublishedVersionStatus,fields:function(e){return e&&e.length>0?e:null},linkDepth:function(e){return e&&e>0?e:null}},u=n.__assign({},a,{order:function(e){return e&&e.length>0?e:null},pageIndex:function(e,t,r){return t&&t.pageOptions&&t.pageOptions.pageIndex||r.pageIndex},pageSize:function(e,t,r){return t&&t.pageOptions&&t.pageOptions.pageSize||r.pageSize}}),l={linkDepth:function(e){return e&&e>0?e:null}},p=function(){function EntryOperations(e,t){this.httpClient=e,this.paramsProvider=t}return EntryOperations.prototype.get=function(e){var t=o.UrlBuilder.create("/api/delivery/projects/:projectId/entries/:id",{language:null,versionStatus:null,linkDepth:null,fields:null}).addOptions(e,"id").setParams(this.paramsProvider.getParams()).addMappers(a).toUrl();return this.httpClient.request(t)},EntryOperations.prototype.list=function(e){var t=o.UrlBuilder.create(s,{language:null,versionStatus:null,linkDepth:null,order:null,fields:null,pageIndex:null,pageSize:null}).addOptions(e,"contentTypeId").setParams(this.paramsProvider.getParams()).addMappers(u).toUrl();return this.httpClient.request(t)},EntryOperations.prototype.search=function(e,t){if(void 0===t&&(t=0),!e)return new Promise(function(e){e(null)});var r=e instanceof o.Query?e:null;if(null!==r||e.where||e.orderBy)return this.searchUsingQuery(r||e,t);var i=e instanceof o.ZenqlQuery?e:null;if(null===i){if("string"!=typeof e)throw new Error("A valid query needs to be specified.");i=new o.ZenqlQuery(e)}var s=this.paramsProvider.getParams(),a=s.pageSize||25,u=s.pageIndex||0,p=[];a=i.pageSize||a,u=i.pageIndex||u,p=i.fields||p;var c=(s.accessToken,s.projectId),d=(s.language,s.responseHandler,s.rootUrl,s.versionStatus,n.__rest(s,["accessToken","projectId","language","responseHandler","rootUrl","versionStatus"])),h=n.__assign({},d,{linkDepth:t,pageSize:a,pageIndex:u,zenql:i.zenql});p&&p.length>0&&(h.fields=p);var f=o.UrlBuilder.create("/api/delivery/projects/:projectId/entries",n.__assign({},h)).setParams(n.__assign({},h,{projectId:c})).addMappers(l).toUrl();return this.httpClient.request(f,{method:"GET",headers:{"Content-Type":"application/json; charset=utf-8"}})},EntryOperations.prototype.resolve=function(e,t){var r=this;void 0===t&&(t=null);var n=this.paramsProvider.getParams();return new i.a(e,t,n.versionStatus,function(e){return r.search(e)}).resolve()},EntryOperations.prototype.searchUsingQuery=function(e,t){if(void 0===t&&(t=0),!e)return new Promise(function(e){e(null)});var r=e,i=this.paramsProvider.getParams(),s=i.pageSize||25,a=i.pageIndex||0,u=[];s=r.pageSize||s,a=r.pageIndex||a,u=r.fields||u;var p=r.orderBy&&(r.orderBy._items||r.orderBy),c=(i.accessToken,i.projectId),d=(i.language,i.responseHandler,i.rootUrl,i.versionStatus,n.__rest(i,["accessToken","projectId","language","responseHandler","rootUrl","versionStatus"])),h=n.__assign({},d,{linkDepth:t,pageSize:s,pageIndex:a,where:JSON.stringify(r.where)});u&&u.length>0&&(h.fields=u),r.orderBy&&(!Array.isArray(r.orderBy)||r.orderBy.length>0)&&(h.orderBy=JSON.stringify(p));var f=o.UrlBuilder.create("/api/delivery/projects/:projectId/entries/search",n.__assign({},h)).setParams(n.__assign({},h,{projectId:c})).addMappers(l).toUrl();return Object(o.isBrowser)()&&Object(o.isIE)()&&f.length>2083?this.searchUsingPost(e,t):this.httpClient.request(f,{method:"GET",headers:{"Content-Type":"application/json; charset=utf-8"}})},EntryOperations.prototype.searchUsingPost=function(e,t){if(void 0===t&&(t=0),!e)return new Promise(function(e){e(null)});var r=this.paramsProvider.getParams();e.pageSize=e.pageSize||r.pageSize,e.pageIndex=e.pageIndex||0;var n=o.UrlBuilder.create("/api/delivery/projects/:projectId/entries/search",{linkDepth:t}).setParams(this.paramsProvider.getParams()).addMappers(l).toUrl();return this.httpClient.request(n,{method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},body:JSON.stringify(e)})},EntryOperations}()},function(e,t,r){"use strict";function isUnresolvedEntry(e){if(e&&e.sys&&e.sys.id){return 1===Object.keys(e).length}return!1}function isUnresolvedImage(e){if(e&&e.asset){return Object.keys(e).length<=2&&isUnresolvedEntry(e.asset)}return!1}function isComposer(e){return!!(Array.isArray(e)&&e.length>0)&&isComposerItem(e[0])}function isComposerItem(e){if(e&&e.type&&e.value){return 2===Object.keys(e).length}return!1}r.d(t,"a",function(){return a});var n=r(1),i=(r.n(n),function(){function DeferredEntry(e,t){var r=this;this.sys=e,this.versionStatus=t,this.promise=new Promise(function(e,t){r.resolve=e,r.reject=t}),this.expression=n.Op.and(n.Op.equalTo("sys.id",e.id),n.Op.equalTo("sys.language",e.language),n.Op.equalTo("sys.versionStatus",this.versionStatus))}return DeferredEntry.prototype.is=function(e){return!!(e&&e.id&&e.language&&e.id===this.sys.id&&e.language===this.sys.language)},DeferredEntry}()),o=function(){function ListResolver(e,t,r,n){this.entries=e,this.paths=t,this.versionStatus=r,this.search=n,this.deferredEntries=[]}return ListResolver.prototype.resolve=function(){var e=this;this.deferredEntries=[];var t=this.entries.map(function(t){return new s(t,e.paths,function(t,r){return e.getEntry(t,r)}).resolve()});return this.nestedSearch(),Promise.all(t).then(function(t){return e.entries})},ListResolver.prototype.getEntry=function(e,t){var r=new i({id:e,language:t},this.versionStatus);return this.deferredEntries.push(r),r.promise},ListResolver.prototype.nestedSearch=function(){var e=this,t=this.deferredEntries.map(function(e){return e.expression}),r=new n.Query(n.Op.or.apply(n.Op,t));return r.pageIndex=0,r.pageSize=t.length,this.search(r).then(function(t){var r=e.deferredEntries;e.deferredEntries=[];for(var n=[],i=0,o=t.items;i<o.length;i++){var s=o[i];!function(e){for(var t=r.filter(function(t){return t.is(e.sys)}),i=0,o=t;i<o.length;i++){var s=o[i];s.resolve(e),n.push(s.promise)}}(s)}return Promise.all(n).then(function(){return Promise.resolve(t)})}).then(function(t){return e.deferredEntries.length>0?e.nestedSearch():t})},ListResolver}(),s=function(){function EntryResolver(e,t,r){this.entry=e,this.paths=t,this.getEntry=r}return EntryResolver.prototype.resolve=function(){var e=this,t=this.paths||Object.keys(this.entry),r=t.map(function(t){var r=t.split("."),n=r.shift(),i=null,o=e.entry[n];if(o&&!(i=e.resolveField(o))&&isComposer(o)){var s=r.length>0?r.shift():null;i=e.resolveComposerField(o,s)}return i=i?i.then(function(t){return e.entry[n]=t.value,t}):Promise.resolve(null),i.then(function(t){return e.next(t,r.join("."))})});return Promise.all(r).then(function(t){return e.entry})},EntryResolver.prototype.next=function(e,t){var r=this;if(!t||!e||!e.entries||e.entries.length<=0)return Promise.resolve(e);var n=e.entries.map(function(e){return new EntryResolver(e,[t],function(e,t){return r.getEntry(e,t)}).resolve()});return Promise.all(n)},EntryResolver.prototype.resolveField=function(e){var t=this;if(isUnresolvedEntry(e))return this.resolveEntry(e);if(isUnresolvedImage(e))return this.resolveImage(e);if(Array.isArray(e)){var r=!1,n=e.map(function(e){return isUnresolvedEntry(e)?(r=!0,t.resolveEntry(e)):isUnresolvedImage(e)?(r=!0,t.resolveImage(e)):Promise.resolve({entries:[],value:e})});if(r)return Promise.all(n).then(function(e){for(var t=[],r=[],n=0,i=e;n<i.length;n++){var o=i[n];t.push(o.value),r=r.concat(o.entries)}return{entries:r,value:t}})}return null},EntryResolver.prototype.resolveComposerField=function(e,t){var r=this;if(Array.isArray(e)){var n=!1,i=e.map(function(e){if(isComposerItem(e)&&(!t||t===e.type)){var i=r.resolveField(e.value);if(i)return n=!0,i.then(function(t){return e.value=t,e})}return Promise.resolve({entries:[],value:e})});if(n)return Promise.all(i).then(function(e){for(var t=[],r=[],n=0,i=e;n<i.length;n++){var o=i[n];t.push(o.value),r=r.concat(o.entries)}return{entries:r,value:t}})}return null},EntryResolver.prototype.resolveEntry=function(e){if(e&&e.sys&&e.sys.id){var t=e.sys.language||this.entry.sys.language;return this.getEntry(e.sys.id,t).then(function(e){return{entries:[e],value:e}})}return Promise.resolve({entries:[],value:e})},EntryResolver.prototype.resolveImage=function(e){if(e&&e.asset&&e.asset.sys&&e.asset.sys.id){var t=e.asset.sys.language||this.entry.sys.language;return this.getEntry(e.asset.sys.id,t).then(function(t){return e.asset=t,{entries:[t],value:e}})}return Promise.resolve({entries:[],value:e})},EntryResolver}(),a=function(){function LinkResolver(e,t,r,n){this.entryOrList=e,this.paths=t,this.versionStatus=r,this.search=n}return LinkResolver.prototype.resolve=function(){var e=this,t=this.getEntries(),r=Promise.resolve([]);if(t.length>0){r=new o(t,this.paths,this.versionStatus,this.search).resolve()}return r.then(function(){return e.entryOrList})},LinkResolver.prototype.getEntries=function(){var e=this.entryOrList;return e?Array.isArray(e)?e:e.items&&Array.isArray(e.items)?e.items:[e]:[]},LinkResolver}()},function(e,t,r){"use strict";r.d(t,"a",function(){return i});var n=r(1),i=(r.n(n),function(){function ContentTypeOperations(e,t){this.httpClient=e,this.paramsProvider=t}return ContentTypeOperations.prototype.get=function(e){var t=n.UrlBuilder.create("/api/delivery/projects/:projectId/contentTypes/:contentTypeId").addOptions(e,"contentTypeId").setParams(this.paramsProvider.getParams()).toUrl();return this.httpClient.request(t)},ContentTypeOperations}())},function(e,t,r){"use strict";r.d(t,"a",function(){return i});var n=r(1),i=(r.n(n),function(){function ProjectOperations(e,t){this.httpClient=e,this.paramsProvider=t}return ProjectOperations.prototype.get=function(){var e=n.UrlBuilder.create("/api/delivery/projects/:projectId").setParams(this.paramsProvider.getParams()).toUrl();return this.httpClient.request(e)},ProjectOperations}())},function(e,t,r){"use strict";r.d(t,"a",function(){return s});var n=r(0),i=r(1),o=(r.n(i),{order:function(e){return"defined"===e?e:null}}),s=function(){function TaxonomyOperations(e,t){this.httpClient=e,this.paramsProvider=t}return TaxonomyOperations.prototype.getNodeByKey=function(e){var t=i.UrlBuilder.create("/api/delivery/projects/:projectId/taxonomy/nodes/:key",{order:null,childDepth:null,language:null}).addOptions(e,"key").setParams(this.paramsProvider.getParams()).addMappers(o).toUrl();return this.httpClient.request(t)},TaxonomyOperations.prototype.getNodeByPath=function(e){var t=i.UrlBuilder.create("/api/delivery/projects/:projectId/taxonomy/nodes",{order:null,childDepth:null,language:null,path:null}).addOptions(e,"path").setParams(this.paramsProvider.getParams()).addMappers(o).toUrl();return this.httpClient.request(t)},TaxonomyOperations.prototype.resolveChildren=function(e){var t=e,r=null,i={childDepth:1};return t.node?(r=t.node,i={childDepth:t.childDepth||1,order:t.order,language:t.language}):t.key?e.path?r=e:(r=t.key,i={childDepth:t.childDepth||1,order:t.order,language:t.language}):r=e,"string"==typeof r?this.getNodeByKey(n.__assign({},i,{key:r})):r.hasChildren?r.children&&r.children.length>0?Promise.resolve(n.__assign({},r)):this.getNodeByKey(n.__assign({},i,{key:r.key})):Promise.resolve(n.__assign({},r,{children:[]}))},TaxonomyOperations}()},function(e,t,r){"use strict";r.d(t,"a",function(){return n});var n=function(){function ClientConfig(e,t){for(this.currentConfig=e,this.previousConfig=t,this.rootUrl=null,this.accessToken=null,this.defaultHeaders=null,this.projectId=null,this.language=null,this.versionStatus="published",this.pageSize=25,this.responseHandler=null,this.fetchFn=null,this.rootUrl=this.getValue(function(e){return e.rootUrl}),this.accessToken=this.getValue(function(e){return e.accessToken}),this.defaultHeaders=this.getValue(function(e){return e.defaultHeaders}),this.projectId=this.getValue(function(e){return e.projectId}),this.language=this.getValue(function(e){return e.language}),this.versionStatus=this.getValue(function(e){return e.versionStatus}),this.pageSize=this.getValue(function(e){return e.pageSize}),this.responseHandler=this.getValue(function(e){return e.responseHandler}),this.fetchFn=this.getValue(function(e){return e.fetchFn});this.rootUrl&&"/"===this.rootUrl.substr(this.rootUrl.length-1,1);)this.rootUrl=this.rootUrl.substr(0,this.rootUrl.length-1)}return ClientConfig.prototype.toParams=function(){return{rootUrl:this.rootUrl,accessToken:this.accessToken,defaultHeaders:this.defaultHeaders,language:this.language,versionStatus:this.versionStatus,projectId:this.projectId,pageIndex:0,pageSize:this.pageSize,responseHandler:this.responseHandler}},ClientConfig.prototype.getValue=function(e){var t=null;return this.currentConfig&&(t=e(this.currentConfig)),this.previousConfig&&!t&&(t=e(this.previousConfig)),t||e(this)},ClientConfig}()},function(e,t,r){"use strict";r.d(t,"a",function(){return c});var n=r(0),i=r(1),o=(r.n(i),{language:i.defaultMapperForLanguage,versionStatus:i.defaultMapperForPublishedVersionStatus,entryFields:function(e){return e&&e.length>0?e:null},entryLinkDepth:function(e){return e&&e>0?e:null}}),s=n.__assign({},o,{depth:function(e){return e&&e>0?e:null}}),a=n.__assign({},s,{allowPartialMatch:function(e){return!!e||null}}),u=n.__assign({},o,{entryId:function(e){return e||null}}),l=n.__assign({},s,{startLevel:function(e){return e&&e>0?e:null}}),p=n.__assign({},o,{startLevel:function(e){return e&&e>0?e:null}}),c=function(){function NodeOperations(e,t){if(this.httpClient=e,this.paramsProvider=t,!this.httpClient||!this.paramsProvider)throw new Error("The class was not initialised correctly.")}return NodeOperations.prototype.getRoot=function(e){var t=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/root",{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(s).toUrl();return this.httpClient.request(t)},NodeOperations.prototype.get=function(e){if(Object(i.isString)(e)&&!e||"object"==typeof e&&(null===e||!e.id&&!e.path))throw new Error("A valid node id or path needs to be specified.");var t=Object(i.isString)(e)&&e.startsWith("/")||!!e&&!!e.path,r=t?"/api/delivery/projects/:projectId/nodes:path":"/api/delivery/projects/:projectId/nodes/:id",n=i.UrlBuilder.create(r,{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null,allowPartialMatch:null}).addOptions(e,t?"path":"id").setParams(this.paramsProvider.getParams()).addMappers(a).toUrl();return this.httpClient.request(n)},NodeOperations.prototype.getByEntry=function(e){var t="A valid entry id needs to be specified.";if(Object(i.isString)(e)&&!e)throw new Error(t);if("object"==typeof e){if(null===e)throw new Error(t);if(!(e.entryId||e.entry&&e.entry.sys&&e.entry.sys.id||e.sys&&e.sys.id))throw new Error(t)}var r=null;Object(i.isString)(e)?r=e:"object"==typeof e&&(e.sys&&(r=e.sys.id),e.entry&&e.entry.sys&&(r=e.entry.sys.id));var n=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/",{entryId:null,language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(r,"entryId").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(u).toUrl();return this.httpClient.request(n)},NodeOperations.prototype.getChildren=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/children",{language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(o).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getParent=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/parent",{language:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(s).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getAncestorAtLevel=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/ancestor",{language:null,startLevel:null,depth:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(l).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getAncestors=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/ancestors",{language:null,startLevel:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(p).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.getSiblings=function(e){this.validateNodeId(e);var t=this.getNodeIdFromOptions(e),r=i.UrlBuilder.create("/api/delivery/projects/:projectId/nodes/:id/siblings",{language:null,versionStatus:null,entryFields:null,entryLinkDepth:null}).addOptions(t,"id").addOptions(e).setParams(this.paramsProvider.getParams()).addMappers(o).toUrl();return this.httpClient.request(r)},NodeOperations.prototype.validateNodeId=function(e){var t="A valid node id needs to be specified.";if(Object(i.isString)(e)&&!e)throw new Error(t);if("object"==typeof e){if(null===e)throw new Error(t);if(!(e.id||e.node&&e.node.id))throw new Error(t)}},NodeOperations.prototype.getNodeIdFromOptions=function(e){var t=null;return Object(i.isString)(e)?t=e:"object"==typeof e&&(e.id?t=e.id:e.node&&(t=e.node.id)),t},NodeOperations}()},function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function F(){this.fetch=!1,this.DOMException=r.DOMException}return F.prototype=r,new F}();!function(e){!function(t){function isDataView(e){return e&&DataView.prototype.isPrototypeOf(e)}function normalizeName(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function normalizeValue(e){return"string"!=typeof e&&(e=String(e)),e}function iteratorFor(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function Headers(e){this.map={},e instanceof Headers?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}function consumed(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function fileReaderReady(e){return new Promise(function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}})}function readBlobAsArrayBuffer(e){var t=new FileReader,r=fileReaderReady(t);return t.readAsArrayBuffer(e),r}function readBlobAsText(e){var t=new FileReader,r=fileReaderReady(t);return t.readAsText(e),r}function readArrayBufferAsText(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n<t.length;n++)r[n]=String.fromCharCode(t[n]);return r.join("")}function bufferClone(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function Body(){return this.bodyUsed=!1,this._initBody=function(e){this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:r.blob&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:r.formData&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():r.arrayBuffer&&r.blob&&isDataView(e)?(this._bodyArrayBuffer=bufferClone(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||i(e))?this._bodyArrayBuffer=bufferClone(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},r.blob&&(this.blob=function(){var e=consumed(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?consumed(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(readBlobAsArrayBuffer)}),this.text=function(){var e=consumed(this);if(e)return e;if(this._bodyBlob)return readBlobAsText(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(decode)}),this.json=function(){return this.text().then(JSON.parse)},this}function normalizeMethod(e){var t=e.toUpperCase();return o.indexOf(t)>-1?t:e}function Request(e,t){t=t||{};var r=t.body;if(e instanceof Request){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new Headers(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,r||null==e._bodyInit||(r=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"same-origin",!t.headers&&this.headers||(this.headers=new Headers(t.headers)),this.method=normalizeMethod(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(r)}function decode(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}}),t}function parseHeaders(e){var t=new Headers;return e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}}),t}function Response(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new Headers(t.headers),this.url=t.url||"",this._initBody(e)}function fetch(e,n){return new Promise(function(i,o){function abortXhr(){a.abort()}var s=new Request(e,n);if(s.signal&&s.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;a.onload=function(){var e={status:a.status,statusText:a.statusText,headers:parseHeaders(a.getAllResponseHeaders()||"")};e.url="responseURL"in a?a.responseURL:e.headers.get("X-Request-URL");var t="response"in a?a.response:a.responseText;i(new Response(t,e))},a.onerror=function(){o(new TypeError("Network request failed"))},a.ontimeout=function(){o(new TypeError("Network request failed"))},a.onabort=function(){o(new t.DOMException("Aborted","AbortError"))},a.open(s.method,s.url,!0),"include"===s.credentials?a.withCredentials=!0:"omit"===s.credentials&&(a.withCredentials=!1),"responseType"in a&&r.blob&&(a.responseType="blob"),s.headers.forEach(function(e,t){a.setRequestHeader(t,e)}),s.signal&&(s.signal.addEventListener("abort",abortXhr),a.onreadystatechange=function(){4===a.readyState&&s.signal.removeEventListener("abort",abortXhr)}),a.send(void 0===s._bodyInit?null:s._bodyInit)})}var r={searchParams:"URLSearchParams"in e,iterable:"Symbol"in e&&"iterator"in Symbol,blob:"FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in e,arrayBuffer:"ArrayBuffer"in e};if(r.arrayBuffer)var n=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],i=ArrayBuffer.isView||function(e){return e&&n.indexOf(Object.prototype.toString.call(e))>-1};Headers.prototype.append=function(e,t){e=normalizeName(e),t=normalizeValue(t);var r=this.map[e];this.map[e]=r?r+", "+t:t},Headers.prototype.delete=function(e){delete this.map[normalizeName(e)]},Headers.prototype.get=function(e){return e=normalizeName(e),this.has(e)?this.map[e]:null},Headers.prototype.has=function(e){return this.map.hasOwnProperty(normalizeName(e))},Headers.prototype.set=function(e,t){this.map[normalizeName(e)]=normalizeValue(t)},Headers.prototype.forEach=function(e,t){for(var r in this.map)this.map.hasOwnProperty(r)&&e.call(t,this.map[r],r,this)},Headers.prototype.keys=function(){var e=[];return this.forEach(function(t,r){e.push(r)}),iteratorFor(e)},Headers.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),iteratorFor(e)},Headers.prototype.entries=function(){var e=[];return this.forEach(function(t,r){e.push([r,t])}),iteratorFor(e)},r.iterable&&(Headers.prototype[Symbol.iterator]=Headers.prototype.entries);var o=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})},Body.call(Request.prototype),Body.call(Response.prototype),Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})},Response.error=function(){var e=new Response(null,{status:0,statusText:""});return e.type="error",e};var s=[301,302,303,307,308];Response.redirect=function(e,t){if(-1===s.indexOf(t))throw new RangeError("Invalid status code");return new Response(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}fetch.polyfill=!0,e.fetch||(e.fetch=fetch,e.Headers=Headers,e.Request=Request,e.Response=Response),t.Headers=Headers,t.Request=Request,t.Response=Response,t.fetch=fetch,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;t=i.fetch,t.default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t}]); | ||
//# sourceMappingURL=zengenti.contensis-client.js.map |
@@ -7,6 +7,10 @@ # Changelog | ||
## [1.2.0] - 2022-06-08 | ||
### Changes | ||
- entries: changed *entries.search* to use either a *string*, a *Query* or a *ZenqlQuery* type | ||
## [1.1.9] - 2022-04-14 | ||
### Changes | ||
- Entry.sys property is now a Partial | ||
- updated optional and required fields for EntrySys class | ||
- *Entry.sys* property is now a *Partial* | ||
- updated optional and required fields for *EntrySys* class | ||
@@ -13,0 +17,0 @@ ## [1.1.8] - 2021-10-15 |
import { Entry, EntryGetOptions, EntryListOptions, IEntryOperations } from '../models'; | ||
import { IHttpClient, IParamsProvider, PagedList } from 'contensis-core-api'; | ||
import { IHttpClient, IParamsProvider, PagedList, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export declare class EntryOperations implements IEntryOperations { | ||
@@ -9,5 +9,6 @@ private httpClient; | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(query: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
private searchUsingQuery; | ||
private searchUsingPost; | ||
} |
@@ -6,2 +6,8 @@ "use strict"; | ||
const contensis_core_api_1 = require("contensis-core-api"); | ||
const defaultListUrl = `/api/delivery/projects/:projectId/entries`; | ||
let listUrl = (options, params) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: defaultListUrl; | ||
}; | ||
let getMappers = { | ||
@@ -13,7 +19,2 @@ language: contensis_core_api_1.defaultMapperForLanguage, | ||
}; | ||
let listUrl = (options, params) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: `/api/delivery/projects/:projectId/entries`; | ||
}; | ||
let listMappers = Object.assign({}, getMappers, { order: (value) => (value && value.length > 0) ? value : null, pageIndex: (value, options, params) => (options && options.pageOptions && options.pageOptions.pageIndex) || (params.pageIndex), pageSize: (value, options, params) => (options && options.pageOptions && options.pageOptions.pageSize) || (params.pageSize) }); | ||
@@ -48,11 +49,65 @@ let searchMappers = { | ||
} | ||
let deliveryQuery = query instanceof contensis_core_api_1.Query ? query : null; | ||
// use duck-typing for backwards compatibility pre v1.2.0 | ||
if (deliveryQuery !== null || !!query.where || !!query.orderBy) { | ||
return this.searchUsingQuery(deliveryQuery || query, linkDepth); | ||
} | ||
let zenqlQuery = query instanceof contensis_core_api_1.ZenqlQuery ? query : null; | ||
if (zenqlQuery === null) { | ||
if (typeof query === 'string') { | ||
zenqlQuery = new contensis_core_api_1.ZenqlQuery(query); | ||
} | ||
else { | ||
throw new Error('A valid query needs to be specified.'); | ||
} | ||
} | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = query.pageSize || params.pageSize; | ||
let pageIndex = query.pageIndex || 0; | ||
let orderBy = (query.orderBy && (query.orderBy._items || query.orderBy)); | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields = []; | ||
pageSize = zenqlQuery.pageSize || pageSize; | ||
pageIndex = zenqlQuery.pageIndex || pageIndex; | ||
fields = zenqlQuery.fields || fields; | ||
let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus } = params, requestParams = tslib_1.__rest(params, ["accessToken", "projectId", "language", "responseHandler", "rootUrl", "versionStatus"]); | ||
let payload = Object.assign({}, requestParams, { linkDepth, | ||
pageSize, | ||
pageIndex, fields: query.fields && query.fields.length > 0 ? query.fields : null, where: JSON.stringify(query.where) }); | ||
if (orderBy && orderBy.length > 0) { | ||
pageIndex, zenql: zenqlQuery.zenql }); | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
let url = contensis_core_api_1.UrlBuilder.create(defaultListUrl, Object.assign({}, payload)) | ||
.setParams(Object.assign({}, payload, { projectId })) | ||
.addMappers(searchMappers) | ||
.toUrl(); | ||
return this.httpClient.request(url, { | ||
method: 'GET', | ||
headers: { 'Content-Type': 'application/json; charset=utf-8' } | ||
}); | ||
} | ||
resolve(entryOrList, fields = null) { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new link_resolver_1.LinkResolver(entryOrList, fields, params.versionStatus, (query) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
searchUsingQuery(query, linkDepth = 0) { | ||
if (!query) { | ||
return new Promise((resolve) => { resolve(null); }); | ||
} | ||
let deliveryQuery = query; | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields = []; | ||
pageSize = deliveryQuery.pageSize || pageSize; | ||
pageIndex = deliveryQuery.pageIndex || pageIndex; | ||
fields = deliveryQuery.fields || fields; | ||
let orderBy = (deliveryQuery.orderBy && (deliveryQuery.orderBy._items || deliveryQuery.orderBy)); | ||
let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus } = params, requestParams = tslib_1.__rest(params, ["accessToken", "projectId", "language", "responseHandler", "rootUrl", "versionStatus"]); | ||
let payload = Object.assign({}, requestParams, { linkDepth, | ||
pageSize, | ||
pageIndex, where: JSON.stringify(deliveryQuery.where) }); | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
if (deliveryQuery.orderBy && (!Array.isArray(deliveryQuery.orderBy) || deliveryQuery.orderBy.length > 0)) { | ||
payload['orderBy'] = JSON.stringify(orderBy); | ||
@@ -72,7 +127,2 @@ } | ||
} | ||
resolve(entryOrList, fields = null) { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new link_resolver_1.LinkResolver(entryOrList, fields, params.versionStatus, (query) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
searchUsingPost(query, linkDepth = 0) { | ||
@@ -79,0 +129,0 @@ if (!query) { |
@@ -11,598 +11,591 @@ "use strict"; | ||
describe('Entry Operations', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
describe('Get entry', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
}); | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
describe('List entries', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('Search entries', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
let orderBy = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
let where = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API v2', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search - simple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
let where = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search - multiple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
@@ -614,330 +607,433 @@ distanceWithin: { | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: 'or' | ||
it('Do Search for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
})); | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
it('Do Search for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.And | ||
term: 'term1' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
it('Do Search for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.Or | ||
operator: 'or' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where) })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
}); | ||
describe('Entry Operations in IE browser', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
it('Do Search non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.And | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
it('Do Search for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorType_1.FreeTextSearchOperatorTypeEnum.Or | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
it('Do Search via the Client API with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using a ZenqlQuery instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let zenqlQuery = new Contensis.ZenqlQuery('sys.contentTypeId = plant and sys.version.created >= startOfWeek()'); | ||
zenqlQuery.fields = ['title']; | ||
zenqlQuery.pageIndex = 1; | ||
zenqlQuery.pageSize = 50; | ||
client.entries.search(zenqlQuery, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
zenql: zenqlQuery.zenql | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1860 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using a ZenqlQuery string', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let zenqlQueryString = 'sys.contentTypeId = plant and sys.version.created >= startOfWeek()'; | ||
client.entries.search(zenqlQueryString, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
linkDepth: 99, | ||
pageIndex: 0, | ||
pageSize: 20, | ||
zenql: zenqlQueryString | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1861 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('Entry Operations in IE browser', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
// use string with length = 1860 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
it('Do Search using an object with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
// use string with length = 1860 | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery(Object.assign({}, query, { orderBy: JSON.stringify(orderBy), where: JSON.stringify(where), linkDepth: 99 })); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('Do Search using an object with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
// use string with length = 1861 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
// use string with length = 1861 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
it('Do Search using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1860 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = contensis_core_api_1.toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
it('Do Search using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1861 | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith(`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
}); | ||
}); |
@@ -1,2 +0,2 @@ | ||
export { Query, Op, OrderBy } from 'contensis-core-api'; | ||
export { Op, OrderBy, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export { Client } from './client/client'; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var contensis_core_api_1 = require("contensis-core-api"); | ||
exports.Query = contensis_core_api_1.Query; | ||
exports.Op = contensis_core_api_1.Op; | ||
exports.OrderBy = contensis_core_api_1.OrderBy; | ||
exports.Query = contensis_core_api_1.Query; | ||
exports.ZenqlQuery = contensis_core_api_1.ZenqlQuery; | ||
var client_1 = require("./client/client"); | ||
exports.Client = client_1.Client; |
import { Entry } from './Entry'; | ||
import { EntryGetOptions } from './EntryGetOptions'; | ||
import { EntryListOptions } from './EntryListOptions'; | ||
import { PagedList } from 'contensis-core-api'; | ||
import { PagedList, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export interface IEntryOperations { | ||
get(idOrOptions: string | EntryGetOptions): Promise<Entry>; | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(json: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
} |
{ | ||
"name": "contensis-delivery-api", | ||
"version": "1.1.9", | ||
"version": "1.2.0", | ||
"description": "Contensis Javascript Delivery API", | ||
"engines": { | ||
"node": ">=12" | ||
"node": ">=14" | ||
}, | ||
@@ -54,3 +54,3 @@ "main": "./lib/index.js", | ||
"dependencies": { | ||
"contensis-core-api": "1.0.4", | ||
"contensis-core-api": "1.0.5", | ||
"cross-fetch": "^3.1.5", | ||
@@ -57,0 +57,0 @@ "es6-promise": "^4.2.6", |
@@ -13,167 +13,34 @@ import * as Contensis from '../index'; | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
describe('Get entry', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
}); | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
it('Get Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
@@ -185,17 +52,15 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
it('Get Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US&versionStatus=latest', Object({ | ||
method: 'GET', | ||
@@ -207,18 +72,16 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', | ||
Object({ | ||
it('Get Default French Version', () => { | ||
Zengenti.Contensis.Client.configure({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let client = Zengenti.Contensis.Client.create(); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
@@ -230,18 +93,15 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', | ||
Object({ | ||
it('Get Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get('1'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=fr-FR', Object({ | ||
method: 'GET', | ||
@@ -253,18 +113,15 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', | ||
Object({ | ||
it('Get Live Version with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: 'de', linkDepth: 99, fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?fields=title&language=de&linkDepth=99', Object({ | ||
method: 'GET', | ||
@@ -276,18 +133,15 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
it('Get Live Version with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1', language: '', linkDepth: 0, fields: [] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1?language=en-US', Object({ | ||
method: 'GET', | ||
@@ -299,16 +153,13 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', | ||
Object({ | ||
it('Get Live Version with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.get({ id: '1' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith('http://my-website.com/api/delivery/projects/myProject/entries/1', Object({ | ||
method: 'GET', | ||
@@ -320,435 +171,576 @@ mode: 'cors', | ||
})); | ||
}); | ||
}); | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('List entries', () => { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List By Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Live Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List Preview Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'latest', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=0&pageSize=25&versionStatus=latest', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'fr-FR', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list('cheese'); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
it('List with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 }, language: 'en-GB', linkDepth: 1, order: ['title'], fields: ['title'] }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?fields=title&language=en-GB&linkDepth=1&order=title&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
it('Do Search via the Client API', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
it('List with minimal options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: '', linkDepth: 0, language: '', order: [], fields: [], pageOptions: {} }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?language=en-US&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
let where = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
}); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
it('List with no options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
}); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
it('List Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=en-US&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
it('List Specified French Version', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR' }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=0&pageSize=25', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
}); | ||
it('Do Search via the Client API v2', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
it('List Specified French Version with Paging Options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ contentTypeId: 'cheese', language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/contentTypes/cheese/entries?language=fr-FR&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
it('List Specified French Version with Paging Options but no Content Type', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.list({ language: 'fr-FR', pageOptions: { pageIndex: 5, pageSize: 100 } }); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
'http://my-website.com/api/delivery/projects/myProject/entries?language=fr-FR&pageIndex=5&pageSize=100', | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX' | ||
} | ||
})); | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
}); | ||
}); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
describe('Search entries', () => { | ||
client.entries.search(query); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
it('Do Search - simple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
let orderBy: any = [{ | ||
asc: 'name' | ||
}, { | ||
desc: 'brewTypeCount' | ||
}]; | ||
}); | ||
let where: any = [{ | ||
field: 'brewTypeCount', | ||
greaterThan: 5 | ||
}, { | ||
field: 'Origin', | ||
in: ['Peru', 'Columbia'] | ||
}]; | ||
it('Do Search via the Client API with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query as any); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
it('Do Search - multiple', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
let where: any = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
client.entries.search(query as any); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
}); | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
}); | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
it('Do Search via the Client API with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
it('Do Search with a link depth', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]; | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let where: any = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]; | ||
it('Do Search via the Client API using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
client.entries.search(query as any, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search via the Client API using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
it('Do Search with all options', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where: any = [{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query as any, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
it('Do Search using the default Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
let query = new Contensis.Query(); | ||
client.entries.search(query); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
it('Do Search via the Client API for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 0, | ||
pageSize: 20, | ||
where: JSON.stringify([]) | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
it('Do Search via the Client API for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', 'W')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: 'W' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
it('Do Search for distanceWithin', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
let where: any = [{ | ||
field: 'authorLocation', | ||
@@ -760,406 +752,543 @@ distanceWithin: { | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
}]; | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
it('Do Search via the Client API for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
client.entries.search(query as any); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search for distanceWithin using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
it('Do Search via the Client API for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.distanceWithin('authorLocation', 52.377, -2.749, '10mi')); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: 'or' | ||
} | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'authorLocation', | ||
distanceWithin: { | ||
lat: 52.377, | ||
lon: -2.749, | ||
distance: '10mi' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
client.entries.search(query); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search for non-fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
it('Do Search via the Client API for non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]; | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
let where: any = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorTypeEnum.And | ||
term: 'term1' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
}]; | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
it('Do Search via the Client API for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
client.entries.search(query as any); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
it('Do Search for fuzzy freeText', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]; | ||
let where: any = [{ | ||
field: 'authorLocation', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorTypeEnum.Or | ||
operator: 'or' | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where | ||
}; | ||
client.entries.search(query as any); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
}); | ||
it('Do Search non-fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
describe('Entry Operations in IE browser', function () { | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1')); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: false, | ||
operator: FreeTextSearchOperatorTypeEnum.And | ||
} | ||
}); | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
it('Do Search for fuzzy freeText using a Query instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
it('Do Search via the Client API with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
let query = new Contensis.Query(Contensis.Op.freeText('description', 'term1', true, FreeTextSearchOperatorTypeEnum.Or)); | ||
query.orderBy = Contensis.OrderBy.asc('description'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
asc: 'description' | ||
}]), | ||
where: JSON.stringify([{ | ||
field: 'description', | ||
freeText: { | ||
term: 'term1', | ||
fuzzy: true, | ||
operator: FreeTextSearchOperatorTypeEnum.Or | ||
} | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
it('Do Search using a ZenqlQuery instance', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1860 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let zenqlQuery = new Contensis.ZenqlQuery('sys.contentTypeId = plant and sys.version.created >= startOfWeek()'); | ||
zenqlQuery.fields = ['title']; | ||
zenqlQuery.pageIndex = 1; | ||
zenqlQuery.pageSize = 50; | ||
client.entries.search(zenqlQuery, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
zenql: zenqlQuery.zenql | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
it('Do Search via the Client API with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
let orderBy = [{ | ||
asc: 'authorName' | ||
}]; | ||
it('Do Search using a ZenqlQuery string', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// use string with length = 1861 | ||
let where = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query, 99); | ||
let zenqlQueryString = 'sys.contentTypeId = plant and sys.version.created >= startOfWeek()'; | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, | ||
Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
client.entries.search(zenqlQueryString, 99); | ||
let expectedQueryString = toQuery({ | ||
linkDepth: 99, | ||
pageIndex: 0, | ||
pageSize: 20, | ||
zenql: zenqlQueryString | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
}); | ||
it('Do Search via the Client API using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
describe('Entry Operations in IE browser', function () { | ||
beforeEach(() => { | ||
spyOn(global, 'fetch').and.callFake((...args) => { | ||
return new Promise((resolve, reject) => { | ||
resolve({ | ||
json: () => { | ||
return { | ||
items: [] | ||
}; | ||
} | ||
}); | ||
}); | ||
}); | ||
Zengenti.Contensis.Client.defaultClientConfig = null; | ||
Zengenti.Contensis.Client.configure({ | ||
fetchFn: global.fetch | ||
}); | ||
global.document.documentMode = 11; | ||
}); | ||
// use string with length = 1860 | ||
it('Do Search using an object with all options and URL=2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]; | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
// use string with length = 1860 | ||
let where: any = [{ | ||
field: 'authorName', | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
let expectedQueryString = toQuery({ | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy: JSON.stringify([{ | ||
client.entries.search(query as any, 99); | ||
let expectedQueryString = toQuery({ | ||
...query, | ||
orderBy: JSON.stringify(orderBy), | ||
where: JSON.stringify(where), | ||
linkDepth: 99 | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
} | ||
})); | ||
}); | ||
it('Do Search using an object with all options and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
let orderBy: any = [{ | ||
asc: 'authorName' | ||
}]), | ||
where: JSON.stringify([{ | ||
}]; | ||
// use string with length = 1861 | ||
let where: any = [{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
fields: ['title'], | ||
linkDepth: 99 | ||
// tslint:disable-next-line:max-line-length | ||
startsWith: '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL' | ||
}]; | ||
let query = { | ||
pageIndex: 1, | ||
pageSize: 50, | ||
orderBy, | ||
where, | ||
fields: ['title'] | ||
}; | ||
client.entries.search(query as any, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, | ||
Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
it('Do Search using a Query instance and url = 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
// use string with length = 1860 | ||
}); | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = 'nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
it('Do Search via the Client API using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
let expectedQueryString = toQuery({ | ||
fields: ['title'], | ||
linkDepth: 99, | ||
pageIndex: 1, | ||
pageSize: 50, | ||
where: JSON.stringify([{ | ||
field: 'authorName', | ||
startsWith: startsWithText | ||
}]), | ||
orderBy: JSON.stringify([{ | ||
asc: 'authorName' | ||
}]) | ||
}); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search${expectedQueryString}`, | ||
Object({ | ||
method: 'GET', | ||
headers: { | ||
'Content-Type': 'application/json; charset=utf-8', | ||
'accessToken': 'XXXXXX', | ||
}, | ||
mode: 'cors' | ||
})); | ||
}); | ||
// use string with length = 1861 | ||
it('Do Search using a Query instance and url > 2083', () => { | ||
let client = Zengenti.Contensis.Client.create({ | ||
projectId: 'myProject', | ||
rootUrl: 'http://my-website.com/', | ||
language: 'en-US', | ||
versionStatus: 'published', | ||
accessToken: 'XXXXXX' | ||
}); | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
// use string with length = 1861 | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
// tslint:disable-next-line:max-line-length | ||
const startsWithText = '1nXX8OFpCGJg0OJXfKRRoOk69tWiEfnqi2y5eElXQP1ZjTo0MsozSnWSJqdAvXefl0wmmELbyRArciCS4heXVw9XvYGqKsHM0X4eOxWpP8Otz8OoRApVGiPWeL6nzxblSDcP58qh8wkgUGWPHg21WGrgduYXpvFDdKnAwF1z6YKBMv7sOaVTHowp6mpzndOqUn6caURbF3Ob4ybumG1vl8BEvfwRjpjpAuULobQLN9pt31BoosToBWLdvrkDhSeNPLzltvMIBVGOVn97zWvdsuAg4wxznEz8rLvLK48hLdN4BJ3eWYkfhfk8TbUkDt82ZQwXCmdTpqP6ODPKRc4qkglAabHjUBwOzz9QCwxp7xeupfPWgDQlHCYHsKQ5X7xsWa5hl7RWpQXoajFhZoHomyvJxN9Q3kTccqeiVjzWN6BitsqCN8Kp4NJE7qFOzXSFn01NUv1Yqb8LpoxZ0lMcy1aWtOtdOtnjBLncS6iFR4IVuogl2Z8eJ7aDCdubM7OODjwtQqUSqnZGmsraC8WTxsmXDLIsTz4w2paulihOl2jaxtIRCO4TKGUX9m5MOHa1YPqJYQ8ettJj120uek2fk8bMAg9ykT0TDsmfzy33yfc6rz0nuBK40FGLJefNsYF7iTbLS5QAKiErSlRmTTCtGNK8pVxDpbNOoovXS4KcpSGmVxSotUvhBKDHuQy5ise8RQgCKyD67Z8FiAboqgo0nUe7nNNdL6Gmwesa5JISPVxkcgcWddYvX28TsjE5aLGZX7B8luxlQpRZ0xXBhkyCVobWPTu1W2ZltbpxcK8tdkrYaOGZXpGOTfeXChw11eccepN3MsJDBaghvfeSUgu6sEcpwy3kORPIYxhVaC1UI4r6xRRu8aXMDDTQQW7JhPIXKfQgoEbjxSVp9nHMCQDZpqBK0Z8bejfjnavlTS90ZNVPuDrqL0XEWcbg6d5ARJUl6VWWLJzktH5Jp1WuQoPrl5lb0mXm5bhW61EXK2LLmGPCafkksGsDjSqOOgD5eIttQvwuA1b9Czbs7Zzlub3sbHJ00e0hsoZwx2cJVWbP5PBRDwGtcj25fnY0s8FcSO59669R7gShdTR5jfWtk5VKKnTimosZ4bRscGL8if1Wx0Mvapbl3AubcOJm03HngzgHgjLUpM1UrPAyCn8kxwdx6ROw9e02ssMgAkoh9B9mecXFgl9TqxlG5jSbXQtvNiLWzSUnqeugCXcl2O6fhpnKCNpIW6PoAI1mbwBK5qxumQMKqKix964TOiCWfWUNnOBkcXVPVzzqPA1yLNn87KgVuODm9VpZnnoHSbnAzeLGb7vTZb1ITOP8MNnAPWrvlqvypjMtkLLtZg2r7nGEHLMD76ELxzKC3Zg269m3EW47wPKam9HuWMGjqnD0BghH5zlnRRxHVNgg5JZI5URcgGa6LfXh4zymO2xqSql1YAltvO7lHaIEnF2edze6KvEFJj1smsn57AWsEqs85zYg6MxkctOcQ0lxqv6s9y7Z7pcWbU0k8pmccUm3EDUideWwDnoftuUwIGVfnJrpZn7ihhVzEOB8ojbuGrO41mHZNa8tSlXz6cfg2LXRrRgWRFBMdkswg73HmVaDuvbF2LkwFjoPweHuh62uQb88gOg2Hbbip9212Mnx9gzed81bIRS5yvODYk50LJ7o9zkv3WPGIekAnMJgDVCBsekNxnR3XR0jMCLZx4t73Hm93vb7T8uzyylrbJz2BWyk1EpZ22uynFyIitDpAYHe483oeYwhfKfJPdKjaYsYZAM1ZKdfwK5o0vaRW3X5nlLHfe4QWcMZOAhCq8GVbQkUFcdPSqeZ2nOuPUzwAGGONpIBXm7FOITI9WPibTjCL'; | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, | ||
Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
let query = new Contensis.Query(Contensis.Op.startsWith('authorName', startsWithText)); | ||
query.orderBy = Contensis.OrderBy.asc('authorName'); | ||
query.fields = ['title']; | ||
query.pageIndex = 1; | ||
query.pageSize = 50; | ||
client.entries.search(query, 99); | ||
expect(global.fetch).toHaveBeenCalled(); | ||
expect(global.fetch).toHaveBeenCalledWith( | ||
`http://my-website.com/api/delivery/projects/myProject/entries/search?linkDepth=99`, | ||
Object({ | ||
method: 'POST', | ||
mode: 'cors', | ||
headers: { | ||
'accessToken': 'XXXXXX', | ||
'Content-Type': 'application/json; charset=utf-8' | ||
}, | ||
body: JSON.stringify(query) | ||
})); | ||
}); | ||
}); | ||
}); |
@@ -9,6 +9,13 @@ import { | ||
ClientParams, defaultMapperForLanguage, defaultMapperForPublishedVersionStatus, | ||
IHttpClient, IParamsProvider, isBrowser, isIE, MapperFn, PagedList, UrlBuilder | ||
IHttpClient, IParamsProvider, isBrowser, isIE, MapperFn, PagedList, Query, UrlBuilder, ZenqlQuery | ||
} from 'contensis-core-api'; | ||
const defaultListUrl = `/api/delivery/projects/:projectId/entries`; | ||
let listUrl = (options: EntryListOptions, params: ClientParams) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: defaultListUrl; | ||
}; | ||
let getMappers: { [key: string]: MapperFn } = { | ||
@@ -21,8 +28,2 @@ language: defaultMapperForLanguage, | ||
let listUrl = (options: EntryListOptions, params: ClientParams) => { | ||
return !!options.contentTypeId | ||
? `/api/delivery/projects/:projectId/contentTypes/:contentTypeId/entries` | ||
: `/api/delivery/projects/:projectId/entries`; | ||
}; | ||
let listMappers: { [key: string]: MapperFn } = { | ||
@@ -67,3 +68,3 @@ ...getMappers, | ||
search(query: any, linkDepth: number = 0): Promise<PagedList<Entry>> { | ||
search(query: string | Query | ZenqlQuery, linkDepth: number = 0): Promise<PagedList<Entry>> { | ||
if (!query) { | ||
@@ -73,7 +74,25 @@ return new Promise((resolve) => { resolve(null); }); | ||
let deliveryQuery = query instanceof Query ? query as Query : null; | ||
// use duck-typing for backwards compatibility pre v1.2.0 | ||
if (deliveryQuery !== null || !!(query as any).where || !!(query as any).orderBy) { | ||
return this.searchUsingQuery(deliveryQuery || (query as any), linkDepth); | ||
} | ||
let zenqlQuery: ZenqlQuery = query instanceof ZenqlQuery ? query as ZenqlQuery : null; | ||
if (zenqlQuery === null) { | ||
if (typeof query === 'string') { | ||
zenqlQuery = new ZenqlQuery(query); | ||
} else { | ||
throw new Error('A valid query needs to be specified.'); | ||
} | ||
} | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = query.pageSize || params.pageSize; | ||
let pageIndex = query.pageIndex || 0; | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields: string[] = []; | ||
let orderBy = (query.orderBy && (query.orderBy._items || query.orderBy)); | ||
pageSize = zenqlQuery.pageSize || pageSize; | ||
pageIndex = zenqlQuery.pageIndex || pageIndex; | ||
fields = zenqlQuery.fields || fields; | ||
@@ -87,7 +106,60 @@ let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus, ...requestParams } = params; | ||
pageIndex, | ||
fields: query.fields && query.fields.length > 0 ? query.fields : null, | ||
where: JSON.stringify(query.where), | ||
zenql: zenqlQuery.zenql, | ||
}; | ||
if (orderBy && orderBy.length > 0) { | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
let url = UrlBuilder.create(defaultListUrl, { ...payload }) | ||
.setParams({ ...(payload as any), projectId }) | ||
.addMappers(searchMappers) | ||
.toUrl(); | ||
return this.httpClient.request<PagedList<Entry>>(url, { | ||
method: 'GET', | ||
headers: { 'Content-Type': 'application/json; charset=utf-8' } | ||
}); | ||
} | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields: string[] = null): Promise<T> { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new LinkResolver(entryOrList, fields, params.versionStatus, (query: any) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
private searchUsingQuery(query: Query, linkDepth: number = 0): Promise<PagedList<Entry>> { | ||
if (!query) { | ||
return new Promise((resolve) => { resolve(null); }); | ||
} | ||
let deliveryQuery = query as Query; | ||
let params = this.paramsProvider.getParams(); | ||
let pageSize = params.pageSize || 25; | ||
let pageIndex = params.pageIndex || 0; | ||
let fields: string[] = []; | ||
pageSize = deliveryQuery.pageSize || pageSize; | ||
pageIndex = deliveryQuery.pageIndex || pageIndex; | ||
fields = deliveryQuery.fields || fields; | ||
let orderBy = (deliveryQuery.orderBy && ((deliveryQuery.orderBy as any)._items || deliveryQuery.orderBy)); | ||
let { accessToken, projectId, language, responseHandler, rootUrl, versionStatus, ...requestParams } = params; | ||
let payload = { | ||
...requestParams, | ||
linkDepth, | ||
pageSize, | ||
pageIndex, | ||
where: JSON.stringify(deliveryQuery.where) | ||
}; | ||
if (fields && fields.length > 0) { | ||
payload['fields'] = fields; | ||
} | ||
if (deliveryQuery.orderBy && (!Array.isArray(deliveryQuery.orderBy) || (deliveryQuery.orderBy as any).length > 0)) { | ||
payload['orderBy'] = JSON.stringify(orderBy); | ||
@@ -111,8 +183,2 @@ } | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields: string[] = null): Promise<T> { | ||
let params = this.paramsProvider.getParams(); | ||
let resolver = new LinkResolver(entryOrList, fields, params.versionStatus, (query: any) => this.search(query)); | ||
return resolver.resolve(); | ||
} | ||
private searchUsingPost(query: any, linkDepth: number = 0): Promise<PagedList<Entry>> { | ||
@@ -119,0 +185,0 @@ if (!query) { |
@@ -1,2 +0,2 @@ | ||
export { Query, Op, OrderBy } from 'contensis-core-api'; | ||
export { Op, OrderBy, Query, ZenqlQuery } from 'contensis-core-api'; | ||
export { Client } from './client/client'; |
import { Entry } from './Entry'; | ||
import { EntryGetOptions } from './EntryGetOptions'; | ||
import { EntryListOptions } from './EntryListOptions'; | ||
import { PagedList } from 'contensis-core-api'; | ||
import { PagedList, Query, ZenqlQuery } from 'contensis-core-api'; | ||
@@ -9,4 +9,4 @@ export interface IEntryOperations { | ||
list(contentTypeIdOrOptions: string | EntryListOptions): Promise<PagedList<Entry>>; | ||
search(json: any, linkDepth?: number): Promise<PagedList<Entry>>; | ||
search(query: string | Query | ZenqlQuery, linkDepth?: number): Promise<PagedList<Entry>>; | ||
resolve<T extends Entry | Entry[] | PagedList<Entry>>(entryOrList: T, fields?: string[]): Promise<T>; | ||
} |
Sorry, the diff of this file is not supported yet
1012239
15257
+ Addedcontensis-core-api@1.0.5(transitive)
- Removedcontensis-core-api@1.0.4(transitive)
Updatedcontensis-core-api@1.0.5