@starlightcms/js-sdk 0.3.5 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{client.d.ts → cjs/client.d.ts} +0 -0
- package/dist/cjs/client.d.ts.map +1 -0
- package/dist/{client.js → cjs/client.js} +22 -11
- package/dist/cjs/client.js.map +1 -0
- package/dist/cjs/errors.d.ts +5 -0
- package/dist/cjs/errors.d.ts.map +1 -0
- package/dist/{errors.js → cjs/errors.js} +4 -0
- package/dist/cjs/errors.js.map +1 -0
- package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/{index.js → cjs/index.js} +0 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/instances/Collection/index.d.ts +5 -0
- package/dist/cjs/instances/Collection/index.d.ts.map +1 -0
- package/dist/cjs/instances/Collection/index.js +14 -0
- package/dist/cjs/instances/Collection/index.js.map +1 -0
- package/dist/cjs/instances/Collection/types.d.ts +15 -0
- package/dist/cjs/instances/Collection/types.d.ts.map +1 -0
- package/dist/cjs/instances/Collection/types.js +3 -0
- package/dist/cjs/instances/Collection/types.js.map +1 -0
- package/dist/cjs/instances/Model/index.d.ts +5 -0
- package/dist/cjs/instances/Model/index.d.ts.map +1 -0
- package/dist/cjs/instances/Model/index.js +22 -0
- package/dist/cjs/instances/Model/index.js.map +1 -0
- package/dist/cjs/instances/Model/types.d.ts +9 -0
- package/dist/cjs/instances/Model/types.d.ts.map +1 -0
- package/dist/cjs/instances/Model/types.js +3 -0
- package/dist/cjs/instances/Model/types.js.map +1 -0
- package/dist/cjs/instances/ModelCategory/index.d.ts +5 -0
- package/dist/cjs/instances/ModelCategory/index.d.ts.map +1 -0
- package/dist/cjs/instances/ModelCategory/index.js +14 -0
- package/dist/cjs/instances/ModelCategory/index.js.map +1 -0
- package/dist/cjs/instances/ModelCategory/types.d.ts +15 -0
- package/dist/cjs/instances/ModelCategory/types.d.ts.map +1 -0
- package/dist/cjs/instances/ModelCategory/types.js +3 -0
- package/dist/cjs/instances/ModelCategory/types.js.map +1 -0
- package/dist/cjs/selectors/Collection/index.d.ts +5 -0
- package/dist/cjs/selectors/Collection/index.d.ts.map +1 -0
- package/dist/cjs/selectors/Collection/index.js +26 -0
- package/dist/cjs/selectors/Collection/index.js.map +1 -0
- package/dist/cjs/selectors/Collection/types.d.ts +16 -0
- package/dist/cjs/selectors/Collection/types.d.ts.map +1 -0
- package/dist/cjs/selectors/Collection/types.js +3 -0
- package/dist/cjs/selectors/Collection/types.js.map +1 -0
- package/dist/cjs/selectors/Entry/index.d.ts +5 -0
- package/dist/cjs/selectors/Entry/index.d.ts.map +1 -0
- package/dist/cjs/selectors/Entry/index.js +14 -0
- package/dist/cjs/selectors/Entry/index.js.map +1 -0
- package/dist/cjs/selectors/Entry/types.d.ts +15 -0
- package/dist/cjs/selectors/Entry/types.d.ts.map +1 -0
- package/dist/cjs/selectors/Entry/types.js +3 -0
- package/dist/cjs/selectors/Entry/types.js.map +1 -0
- package/dist/cjs/selectors/Media/index.d.ts +5 -0
- package/dist/cjs/selectors/Media/index.d.ts.map +1 -0
- package/dist/cjs/selectors/Media/index.js +14 -0
- package/dist/cjs/selectors/Media/index.js.map +1 -0
- package/dist/cjs/selectors/Media/types.d.ts +6 -0
- package/dist/cjs/selectors/Media/types.d.ts.map +1 -0
- package/dist/cjs/selectors/Media/types.js +3 -0
- package/dist/cjs/selectors/Media/types.js.map +1 -0
- package/dist/cjs/selectors/Model/index.d.ts +5 -0
- package/dist/cjs/selectors/Model/index.d.ts.map +1 -0
- package/dist/cjs/selectors/Model/index.js +26 -0
- package/dist/cjs/selectors/Model/index.js.map +1 -0
- package/dist/cjs/selectors/Model/types.d.ts +10 -0
- package/dist/cjs/selectors/Model/types.d.ts.map +1 -0
- package/dist/cjs/selectors/Model/types.js +3 -0
- package/dist/cjs/selectors/Model/types.js.map +1 -0
- package/dist/cjs/selectors/ModelCategory/index.d.ts +5 -0
- package/dist/cjs/selectors/ModelCategory/index.d.ts.map +1 -0
- package/dist/cjs/selectors/ModelCategory/index.js +26 -0
- package/dist/cjs/selectors/ModelCategory/index.js.map +1 -0
- package/dist/cjs/selectors/ModelCategory/types.d.ts +16 -0
- package/dist/cjs/selectors/ModelCategory/types.d.ts.map +1 -0
- package/dist/cjs/selectors/ModelCategory/types.js +3 -0
- package/dist/cjs/selectors/ModelCategory/types.js.map +1 -0
- package/dist/cjs/selectors/Singleton/index.d.ts +5 -0
- package/dist/cjs/selectors/Singleton/index.d.ts.map +1 -0
- package/dist/cjs/selectors/Singleton/index.js +14 -0
- package/dist/cjs/selectors/Singleton/index.js.map +1 -0
- package/dist/cjs/selectors/Singleton/types.d.ts +6 -0
- package/dist/cjs/selectors/Singleton/types.d.ts.map +1 -0
- package/dist/cjs/selectors/Singleton/types.js +3 -0
- package/dist/cjs/selectors/Singleton/types.js.map +1 -0
- package/dist/{types → cjs/types}/entities.d.ts +4 -0
- package/dist/cjs/types/entities.d.ts.map +1 -0
- package/dist/{types → cjs/types}/entities.js +0 -0
- package/dist/cjs/types/entities.js.map +1 -0
- package/dist/{types → cjs/types}/fields.d.ts +0 -0
- package/dist/cjs/types/fields.d.ts.map +1 -0
- package/dist/{types → cjs/types}/fields.js +0 -0
- package/dist/cjs/types/fields.js.map +1 -0
- package/dist/{types → cjs/types}/index.d.ts +19 -8
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/{types → cjs/types}/index.js +0 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/{types → cjs/types}/visual.d.ts +0 -0
- package/dist/cjs/types/visual.d.ts.map +1 -0
- package/dist/{types → cjs/types}/visual.js +0 -0
- package/dist/cjs/types/visual.js.map +1 -0
- package/dist/esm/client.d.ts +3 -0
- package/dist/esm/client.d.ts.map +1 -0
- package/dist/esm/client.js +72 -0
- package/dist/esm/client.js.map +1 -0
- package/dist/esm/errors.d.ts +5 -0
- package/dist/esm/errors.d.ts.map +1 -0
- package/dist/esm/errors.js +7 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/index.d.ts +9 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/instances/Collection/index.d.ts +5 -0
- package/dist/esm/instances/Collection/index.d.ts.map +1 -0
- package/dist/esm/instances/Collection/index.js +11 -0
- package/dist/esm/instances/Collection/index.js.map +1 -0
- package/dist/esm/instances/Collection/types.d.ts +15 -0
- package/dist/esm/instances/Collection/types.d.ts.map +1 -0
- package/dist/esm/instances/Collection/types.js +2 -0
- package/dist/esm/instances/Collection/types.js.map +1 -0
- package/dist/esm/instances/Model/index.d.ts +5 -0
- package/dist/esm/instances/Model/index.d.ts.map +1 -0
- package/dist/esm/instances/Model/index.js +16 -0
- package/dist/esm/instances/Model/index.js.map +1 -0
- package/dist/esm/instances/Model/types.d.ts +9 -0
- package/dist/esm/instances/Model/types.d.ts.map +1 -0
- package/dist/esm/instances/Model/types.js +2 -0
- package/dist/esm/instances/Model/types.js.map +1 -0
- package/dist/esm/instances/ModelCategory/index.d.ts +5 -0
- package/dist/esm/instances/ModelCategory/index.d.ts.map +1 -0
- package/dist/esm/instances/ModelCategory/index.js +11 -0
- package/dist/esm/instances/ModelCategory/index.js.map +1 -0
- package/dist/esm/instances/ModelCategory/types.d.ts +15 -0
- package/dist/esm/instances/ModelCategory/types.d.ts.map +1 -0
- package/dist/esm/instances/ModelCategory/types.js +2 -0
- package/dist/esm/instances/ModelCategory/types.js.map +1 -0
- package/dist/esm/selectors/Collection/index.d.ts +5 -0
- package/dist/esm/selectors/Collection/index.d.ts.map +1 -0
- package/dist/esm/selectors/Collection/index.js +20 -0
- package/dist/esm/selectors/Collection/index.js.map +1 -0
- package/dist/esm/selectors/Collection/types.d.ts +16 -0
- package/dist/esm/selectors/Collection/types.d.ts.map +1 -0
- package/dist/esm/selectors/Collection/types.js +2 -0
- package/dist/esm/selectors/Collection/types.js.map +1 -0
- package/dist/esm/selectors/Entry/index.d.ts +5 -0
- package/dist/esm/selectors/Entry/index.d.ts.map +1 -0
- package/dist/esm/selectors/Entry/index.js +11 -0
- package/dist/esm/selectors/Entry/index.js.map +1 -0
- package/dist/esm/selectors/Entry/types.d.ts +15 -0
- package/dist/esm/selectors/Entry/types.d.ts.map +1 -0
- package/dist/esm/selectors/Entry/types.js +2 -0
- package/dist/esm/selectors/Entry/types.js.map +1 -0
- package/dist/esm/selectors/Media/index.d.ts +5 -0
- package/dist/esm/selectors/Media/index.d.ts.map +1 -0
- package/dist/esm/selectors/Media/index.js +11 -0
- package/dist/esm/selectors/Media/index.js.map +1 -0
- package/dist/esm/selectors/Media/types.d.ts +6 -0
- package/dist/esm/selectors/Media/types.d.ts.map +1 -0
- package/dist/esm/selectors/Media/types.js +2 -0
- package/dist/esm/selectors/Media/types.js.map +1 -0
- package/dist/esm/selectors/Model/index.d.ts +5 -0
- package/dist/esm/selectors/Model/index.d.ts.map +1 -0
- package/dist/esm/selectors/Model/index.js +20 -0
- package/dist/esm/selectors/Model/index.js.map +1 -0
- package/dist/esm/selectors/Model/types.d.ts +10 -0
- package/dist/esm/selectors/Model/types.d.ts.map +1 -0
- package/dist/esm/selectors/Model/types.js +2 -0
- package/dist/esm/selectors/Model/types.js.map +1 -0
- package/dist/esm/selectors/ModelCategory/index.d.ts +5 -0
- package/dist/esm/selectors/ModelCategory/index.d.ts.map +1 -0
- package/dist/esm/selectors/ModelCategory/index.js +20 -0
- package/dist/esm/selectors/ModelCategory/index.js.map +1 -0
- package/dist/esm/selectors/ModelCategory/types.d.ts +16 -0
- package/dist/esm/selectors/ModelCategory/types.d.ts.map +1 -0
- package/dist/esm/selectors/ModelCategory/types.js +2 -0
- package/dist/esm/selectors/ModelCategory/types.js.map +1 -0
- package/dist/esm/selectors/Singleton/index.d.ts +5 -0
- package/dist/esm/selectors/Singleton/index.d.ts.map +1 -0
- package/dist/esm/selectors/Singleton/index.js +11 -0
- package/dist/esm/selectors/Singleton/index.js.map +1 -0
- package/dist/esm/selectors/Singleton/types.d.ts +6 -0
- package/dist/esm/selectors/Singleton/types.d.ts.map +1 -0
- package/dist/esm/selectors/Singleton/types.js +2 -0
- package/dist/esm/selectors/Singleton/types.js.map +1 -0
- package/dist/esm/types/entities.d.ts +65 -0
- package/dist/esm/types/entities.d.ts.map +1 -0
- package/dist/esm/types/entities.js +2 -0
- package/dist/esm/types/entities.js.map +1 -0
- package/dist/esm/types/fields.d.ts +10 -0
- package/dist/esm/types/fields.d.ts.map +1 -0
- package/dist/esm/types/fields.js +2 -0
- package/dist/esm/types/fields.js.map +1 -0
- package/dist/esm/types/index.d.ts +60 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +4 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/visual.d.ts +30 -0
- package/dist/esm/types/visual.d.ts.map +1 -0
- package/dist/esm/types/visual.js +2 -0
- package/dist/esm/types/visual.js.map +1 -0
- package/package.json +10 -3
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js.map +0 -1
- package/dist/errors.d.ts +0 -3
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/selectors/EntrySelector.d.ts +0 -9
- package/dist/selectors/EntrySelector.d.ts.map +0 -1
- package/dist/selectors/EntrySelector.js +0 -30
- package/dist/selectors/EntrySelector.js.map +0 -1
- package/dist/selectors/ModelSelector.d.ts +0 -9
- package/dist/selectors/ModelSelector.d.ts.map +0 -1
- package/dist/selectors/ModelSelector.js +0 -31
- package/dist/selectors/ModelSelector.js.map +0 -1
- package/dist/types/entities.d.ts.map +0 -1
- package/dist/types/entities.js.map +0 -1
- package/dist/types/fields.d.ts.map +0 -1
- package/dist/types/fields.js.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/types/visual.d.ts.map +0 -1
- package/dist/types/visual.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import makeCollectionInstance from '../../instances/Collection';
|
|
2
|
+
export default function makeCollectionSelector(client) {
|
|
3
|
+
const selector = {
|
|
4
|
+
list(options) {
|
|
5
|
+
return client.get('/collections', options);
|
|
6
|
+
},
|
|
7
|
+
get(slug) {
|
|
8
|
+
return client.get(`/collections/${slug}`);
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
return new Proxy(selector, {
|
|
12
|
+
get(target, prop) {
|
|
13
|
+
if (typeof prop === 'string' && !Reflect.has(target, prop)) {
|
|
14
|
+
return makeCollectionInstance(client, prop);
|
|
15
|
+
}
|
|
16
|
+
return Reflect.get(target, prop);
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/Collection/index.ts"],"names":[],"mappings":"AAEA,OAAO,sBAAsB,MAAM,4BAA4B,CAAA;AAE/D,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,MAAuB;IAEvB,MAAM,QAAQ,GAAuB;QACnC,IAAI,CAAC,OAAO;YACV,OAAO,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;QAC5C,CAAC;QAED,GAAG,CAAC,IAAI;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;KACF,CAAA;IAED,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzB,GAAG,CAAC,MAAM,EAAE,IAAI;YACd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBAC1D,OAAO,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;aAC5C;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAClC,CAAC;KACF,CAA8B,CAAA;AACjC,CAAC","sourcesContent":["import { StarlightClient } from '../../types'\nimport { CollectionSelector, ProxiedCollectionSelector } from './types'\nimport makeCollectionInstance from '../../instances/Collection'\n\nexport default function makeCollectionSelector(\n client: StarlightClient\n): ProxiedCollectionSelector {\n const selector: CollectionSelector = {\n list(options) {\n return client.get('/collections', options)\n },\n\n get(slug) {\n return client.get(`/collections/${slug}`)\n },\n }\n\n return new Proxy(selector, {\n get(target, prop) {\n if (typeof prop === 'string' && !Reflect.has(target, prop)) {\n return makeCollectionInstance(client, prop)\n }\n\n return Reflect.get(target, prop)\n },\n }) as ProxiedCollectionSelector\n}\n\nexport { CollectionSelector, ProxiedCollectionSelector }\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Collection, StarlightItemResponse, StarlightListResponse } from '../../types';
|
|
2
|
+
import { CollectionInstance } from '../../instances/Collection';
|
|
3
|
+
export declare type ListCollectionsOptions = {
|
|
4
|
+
query?: string;
|
|
5
|
+
page?: number;
|
|
6
|
+
limit?: number;
|
|
7
|
+
order?: 'title:asc' | 'title:desc' | 'item_count:asc' | 'item_count:desc';
|
|
8
|
+
};
|
|
9
|
+
export interface CollectionSelector {
|
|
10
|
+
list(options?: ListCollectionsOptions): Promise<StarlightListResponse<Collection>>;
|
|
11
|
+
get(slug: string): Promise<StarlightItemResponse<Collection>>;
|
|
12
|
+
}
|
|
13
|
+
export declare type ProxiedCollectionSelector = CollectionSelector & {
|
|
14
|
+
[key: string]: CollectionInstance;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Collection/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAE/D,oBAAY,sBAAsB,GAAG;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,gBAAgB,GAAG,iBAAiB,CAAA;CAC1E,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CACF,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAA;IAC7C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAA;CAC9D;AAED,oBAAY,yBAAyB,GAAG,kBAAkB,GAAG;IAC3D,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAA;CAClC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/Collection/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Collection,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\nimport { CollectionInstance } from '../../instances/Collection'\n\nexport type ListCollectionsOptions = {\n query?: string\n page?: number\n limit?: number\n order?: 'title:asc' | 'title:desc' | 'item_count:asc' | 'item_count:desc'\n}\n\nexport interface CollectionSelector {\n list(\n options?: ListCollectionsOptions\n ): Promise<StarlightListResponse<Collection>>\n get(slug: string): Promise<StarlightItemResponse<Collection>>\n}\n\nexport type ProxiedCollectionSelector = CollectionSelector & {\n [key: string]: CollectionInstance\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SerializedData, StarlightClient } from '../../types';
|
|
2
|
+
import { EntrySelector } from './types';
|
|
3
|
+
export default function makeEntrySelector<D extends SerializedData>(client: StarlightClient, model: string): EntrySelector<D>;
|
|
4
|
+
export { EntrySelector };
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Entry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,eAAe,EAGhB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,CAAC,SAAS,cAAc,EAChE,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,GACZ,aAAa,CAAC,CAAC,CAAC,CAUlB;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default function makeEntrySelector(client, model) {
|
|
2
|
+
return {
|
|
3
|
+
list(options) {
|
|
4
|
+
return client.get(`/models/${model}/entries`, options);
|
|
5
|
+
},
|
|
6
|
+
get(slug) {
|
|
7
|
+
return client.get(`/models/${model}/entries/${slug}`);
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/Entry/index.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAuB,EACvB,KAAa;IAEb,OAAO;QACL,IAAI,CAAC,OAAO;YACV,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,UAAU,EAAE,OAAO,CAAC,CAAA;QACxD,CAAC;QAED,GAAG,CAAC,IAAY;YACd,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,YAAY,IAAI,EAAE,CAAC,CAAA;QACvD,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["import {\n Entry,\n SerializedData,\n StarlightClient,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\nimport { EntrySelector } from './types'\n\nexport default function makeEntrySelector<D extends SerializedData>(\n client: StarlightClient,\n model: string\n): EntrySelector<D> {\n return {\n list(options): Promise<StarlightListResponse<Entry<D>>> {\n return client.get(`/models/${model}/entries`, options)\n },\n\n get(slug: string): Promise<StarlightItemResponse<Entry<D>>> {\n return client.get(`/models/${model}/entries/${slug}`)\n },\n }\n}\n\nexport { EntrySelector }\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Entry, ModelFieldOptions, SerializedData, StarlightItemResponse, StarlightListResponse } from '../../types';
|
|
2
|
+
export declare type ListEntriesOptions<D extends SerializedData> = {
|
|
3
|
+
page?: number;
|
|
4
|
+
limit?: number;
|
|
5
|
+
query?: string;
|
|
6
|
+
'query:word'?: string;
|
|
7
|
+
fields?: string;
|
|
8
|
+
order?: 'title:asc' | 'title:desc' | 'published_at:asc' | 'published_at:desc' | 'views:asc' | 'views:desc';
|
|
9
|
+
except?: number;
|
|
10
|
+
} & ModelFieldOptions<D>;
|
|
11
|
+
export interface EntrySelector<D extends SerializedData> {
|
|
12
|
+
get(slug: string): Promise<StarlightItemResponse<Entry<D>>>;
|
|
13
|
+
list(options?: ListEntriesOptions<D>): Promise<StarlightListResponse<Entry<D>>>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Entry/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAEpB,oBAAY,kBAAkB,CAAC,CAAC,SAAS,cAAc,IAAI;IACzD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EACF,WAAW,GACX,YAAY,GACZ,kBAAkB,GAClB,mBAAmB,GACnB,WAAW,GACX,YAAY,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAExB,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,cAAc;IACrD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,IAAI,CACF,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/Entry/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Entry,\n ModelFieldOptions,\n SerializedData,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\n\nexport type ListEntriesOptions<D extends SerializedData> = {\n page?: number\n limit?: number\n query?: string\n 'query:word'?: string\n fields?: string\n order?:\n | 'title:asc'\n | 'title:desc'\n | 'published_at:asc'\n | 'published_at:desc'\n | 'views:asc'\n | 'views:desc'\n except?: number\n} & ModelFieldOptions<D>\n\nexport interface EntrySelector<D extends SerializedData> {\n get(slug: string): Promise<StarlightItemResponse<Entry<D>>>\n list(\n options?: ListEntriesOptions<D>\n ): Promise<StarlightListResponse<Entry<D>>>\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Media/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAM,EAAE,eAAe,GACtB,aAAa,CAUf;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/Media/index.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAuB;IAEvB,OAAO;QACL,IAAI;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC;QAED,GAAG,CAAC,IAAI;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;QACrC,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["import { StarlightClient } from '../../types'\nimport { MediaSelector } from './types'\n\nexport default function makeMediaSelector(\n client: StarlightClient\n): MediaSelector {\n return {\n list() {\n return client.get('/media')\n },\n\n get(slug) {\n return client.get(`/media/${slug}`)\n },\n }\n}\n\nexport { MediaSelector }\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { MediaObject, StarlightItemResponse, StarlightListResponse } from '../../types';
|
|
2
|
+
export interface MediaSelector {
|
|
3
|
+
get(slug: number | string): Promise<StarlightItemResponse<MediaObject>>;
|
|
4
|
+
list(): Promise<StarlightListResponse<MediaObject>>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Media/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAA;IACvE,IAAI,IAAI,OAAO,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAA;CACpD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/Media/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n MediaObject,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\n\nexport interface MediaSelector {\n get(slug: number | string): Promise<StarlightItemResponse<MediaObject>>\n list(): Promise<StarlightListResponse<MediaObject>>\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { StarlightClient, WorkspaceModelDefinition } from '../../types';
|
|
2
|
+
import { ModelSelector, ProxiedModelSelector } from './types';
|
|
3
|
+
export default function makeModelSelector<D extends WorkspaceModelDefinition>(client: StarlightClient): ProxiedModelSelector<D>;
|
|
4
|
+
export { ModelSelector, ProxiedModelSelector };
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EAGf,wBAAwB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAG7D,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,CAAC,SAAS,wBAAwB,EAC1E,MAAM,EAAE,eAAe,GACtB,oBAAoB,CAAC,CAAC,CAAC,CAoBzB;AAED,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import makeModelInstance from '../../instances/Model';
|
|
2
|
+
export default function makeModelSelector(client) {
|
|
3
|
+
const modelClient = {
|
|
4
|
+
list() {
|
|
5
|
+
return client.get('/models');
|
|
6
|
+
},
|
|
7
|
+
get(slug) {
|
|
8
|
+
return client.get(`/models/${slug}`);
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
return new Proxy(modelClient, {
|
|
12
|
+
get(target, prop) {
|
|
13
|
+
if (typeof prop === 'string' && !Reflect.has(target, prop)) {
|
|
14
|
+
return makeModelInstance(client, prop);
|
|
15
|
+
}
|
|
16
|
+
return Reflect.get(target, prop);
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/Model/index.ts"],"names":[],"mappings":"AAQA,OAAO,iBAAiB,MAAM,uBAAuB,CAAA;AAErD,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAuB;IAEvB,MAAM,WAAW,GAAkB;QACjC,IAAI;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC9B,CAAC;QAED,GAAG,CAAC,IAAI;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACtC,CAAC;KACF,CAAA;IAED,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE;QAC5B,GAAG,CAAC,MAAM,EAAE,IAAI;YACd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBAC1D,OAAO,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;aACvC;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAClC,CAAC;KACF,CAA4B,CAAA;AAC/B,CAAC","sourcesContent":["import {\n Model,\n StarlightClient,\n StarlightItemResponse,\n StarlightListResponse,\n WorkspaceModelDefinition,\n} from '../../types'\nimport { ModelSelector, ProxiedModelSelector } from './types'\nimport makeModelInstance from '../../instances/Model'\n\nexport default function makeModelSelector<D extends WorkspaceModelDefinition>(\n client: StarlightClient\n): ProxiedModelSelector<D> {\n const modelClient: ModelSelector = {\n list(): Promise<StarlightListResponse<Model>> {\n return client.get('/models')\n },\n\n get(slug): Promise<StarlightItemResponse<Model>> {\n return client.get(`/models/${slug}`)\n },\n }\n\n return new Proxy(modelClient, {\n get(target, prop) {\n if (typeof prop === 'string' && !Reflect.has(target, prop)) {\n return makeModelInstance(client, prop)\n }\n\n return Reflect.get(target, prop)\n },\n }) as ProxiedModelSelector<D>\n}\n\nexport { ModelSelector, ProxiedModelSelector }\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Model, StarlightItemResponse, StarlightListResponse, WorkspaceModelDefinition } from '../../types';
|
|
2
|
+
import { ModelInstance } from '../../instances/Model';
|
|
3
|
+
export interface ModelSelector {
|
|
4
|
+
list(): Promise<StarlightListResponse<Model>>;
|
|
5
|
+
get(slug: string): Promise<StarlightItemResponse<Model>>;
|
|
6
|
+
}
|
|
7
|
+
export declare type ProxiedModelSelector<T extends WorkspaceModelDefinition> = ModelSelector & {
|
|
8
|
+
[K in keyof T]: ModelInstance<T[K]>;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Model/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,MAAM,WAAW,aAAa;IAC5B,IAAI,IAAI,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAA;IAC7C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAA;CACzD;AAED,oBAAY,oBAAoB,CAAC,CAAC,SAAS,wBAAwB,IACjE,aAAa,GAAG;KACb,CAAC,IAAI,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACpC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/Model/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Model,\n StarlightItemResponse,\n StarlightListResponse,\n WorkspaceModelDefinition,\n} from '../../types'\nimport { ModelInstance } from '../../instances/Model'\n\nexport interface ModelSelector {\n list(): Promise<StarlightListResponse<Model>>\n get(slug: string): Promise<StarlightItemResponse<Model>>\n}\n\nexport type ProxiedModelSelector<T extends WorkspaceModelDefinition> =\n ModelSelector & {\n [K in keyof T]: ModelInstance<T[K]>\n }\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SerializedData, StarlightClient } from '../../types';
|
|
2
|
+
import { ModelCategorySelector, ProxiedModelCategorySelector } from './types';
|
|
3
|
+
export default function makeModelCategorySelector<D extends SerializedData>(client: StarlightClient, model: string): ProxiedModelCategorySelector<D>;
|
|
4
|
+
export { ModelCategorySelector, ProxiedModelCategorySelector };
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/selectors/ModelCategory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,eAAe,EAGhB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAA;AAG7E,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,CAAC,SAAS,cAAc,EACxE,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,MAAM,GACZ,4BAA4B,CAAC,CAAC,CAAC,CAoBjC;AAED,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import makeModelCategoryInstance from '../../instances/ModelCategory';
|
|
2
|
+
export default function makeModelCategorySelector(client, model) {
|
|
3
|
+
const selector = {
|
|
4
|
+
list(options) {
|
|
5
|
+
return client.get(`/models/${model}/categories`, options);
|
|
6
|
+
},
|
|
7
|
+
get(slug) {
|
|
8
|
+
return client.get(`/models/${model}/categories/${slug}`);
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
return new Proxy(selector, {
|
|
12
|
+
get(target, prop) {
|
|
13
|
+
if (typeof prop === 'string' && !Reflect.has(target, prop)) {
|
|
14
|
+
return makeModelCategoryInstance(client, model, prop);
|
|
15
|
+
}
|
|
16
|
+
return Reflect.get(target, prop);
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/ModelCategory/index.ts"],"names":[],"mappings":"AAQA,OAAO,yBAAyB,MAAM,+BAA+B,CAAA;AAErE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAC/C,MAAuB,EACvB,KAAa;IAEb,MAAM,QAAQ,GAA0B;QACtC,IAAI,CAAC,OAAO;YACV,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,aAAa,EAAE,OAAO,CAAC,CAAA;QAC3D,CAAC;QAED,GAAG,CAAC,IAAI;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,eAAe,IAAI,EAAE,CAAC,CAAA;QAC1D,CAAC;KACF,CAAA;IAED,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzB,GAAG,CAAC,MAAM,EAAE,IAAI;YACd,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBAC1D,OAAO,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;aACtD;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAClC,CAAC;KACF,CAAoC,CAAA;AACvC,CAAC","sourcesContent":["import {\n ModelCategory,\n SerializedData,\n StarlightClient,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\nimport { ModelCategorySelector, ProxiedModelCategorySelector } from './types'\nimport makeModelCategoryInstance from '../../instances/ModelCategory'\n\nexport default function makeModelCategorySelector<D extends SerializedData>(\n client: StarlightClient,\n model: string\n): ProxiedModelCategorySelector<D> {\n const selector: ModelCategorySelector = {\n list(options): Promise<StarlightListResponse<ModelCategory>> {\n return client.get(`/models/${model}/categories`, options)\n },\n\n get(slug): Promise<StarlightItemResponse<ModelCategory>> {\n return client.get(`/models/${model}/categories/${slug}`)\n },\n }\n\n return new Proxy(selector, {\n get(target, prop) {\n if (typeof prop === 'string' && !Reflect.has(target, prop)) {\n return makeModelCategoryInstance(client, model, prop)\n }\n\n return Reflect.get(target, prop)\n },\n }) as ProxiedModelCategorySelector<D>\n}\n\nexport { ModelCategorySelector, ProxiedModelCategorySelector }\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ModelCategory, SerializedData, StarlightItemResponse, StarlightListResponse } from '../../types';
|
|
2
|
+
import { ModelCategoryInstance } from '../../instances/ModelCategory';
|
|
3
|
+
export declare type ListModelCategoriesOptions = {
|
|
4
|
+
query?: string;
|
|
5
|
+
page?: number;
|
|
6
|
+
limit?: number;
|
|
7
|
+
order?: 'title:asc' | 'title:desc' | 'entry_count:asc' | 'entry_count:desc';
|
|
8
|
+
};
|
|
9
|
+
export interface ModelCategorySelector {
|
|
10
|
+
list(options?: ListModelCategoriesOptions): Promise<StarlightListResponse<ModelCategory>>;
|
|
11
|
+
get(slug: string): Promise<StarlightItemResponse<ModelCategory>>;
|
|
12
|
+
}
|
|
13
|
+
export declare type ProxiedModelCategorySelector<D extends SerializedData> = ModelCategorySelector & {
|
|
14
|
+
[slug: string]: ModelCategoryInstance<D>;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/ModelCategory/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAErE,oBAAY,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,CAAA;CAC5E,CAAA;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CACF,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAA;IAChD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAA;CACjE;AAED,oBAAY,4BAA4B,CAAC,CAAC,SAAS,cAAc,IAC/D,qBAAqB,GAAG;IACtB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAA;CACzC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/ModelCategory/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n ModelCategory,\n SerializedData,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\nimport { ModelCategoryInstance } from '../../instances/ModelCategory'\n\nexport type ListModelCategoriesOptions = {\n query?: string\n page?: number\n limit?: number\n order?: 'title:asc' | 'title:desc' | 'entry_count:asc' | 'entry_count:desc'\n}\n\nexport interface ModelCategorySelector {\n list(\n options?: ListModelCategoriesOptions\n ): Promise<StarlightListResponse<ModelCategory>>\n get(slug: string): Promise<StarlightItemResponse<ModelCategory>>\n}\n\nexport type ProxiedModelCategorySelector<D extends SerializedData> =\n ModelCategorySelector & {\n [slug: string]: ModelCategoryInstance<D>\n }\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Singleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE3C,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,MAAM,EAAE,eAAe,GACtB,iBAAiB,CAUnB;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/selectors/Singleton/index.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,MAAuB;IAEvB,OAAO;QACL,IAAI;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAClC,CAAC;QAED,GAAG,CAAC,IAAI;YACN,OAAO,MAAM,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAA;QAC1C,CAAC;KACF,CAAA;AACH,CAAC","sourcesContent":["import { StarlightClient } from '../../types'\nimport { SingletonSelector } from './types'\n\nexport default function makeSingletonSelector(\n client: StarlightClient\n): SingletonSelector {\n return {\n list() {\n return client.get('/singletons')\n },\n\n get(slug) {\n return client.get(`/singletons/${slug}`)\n },\n }\n}\n\nexport { SingletonSelector }\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Singleton, StarlightItemResponse, StarlightListResponse } from '../../types';
|
|
2
|
+
export interface SingletonSelector {
|
|
3
|
+
get(slug: string): Promise<StarlightItemResponse<Singleton<Record<string, unknown>>>>;
|
|
4
|
+
list(): Promise<StarlightListResponse<Singleton<Record<string, unknown>>>>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/selectors/Singleton/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,iBAAiB;IAChC,GAAG,CACD,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACrE,IAAI,IAAI,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;CAC3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/selectors/Singleton/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n Singleton,\n StarlightItemResponse,\n StarlightListResponse,\n} from '../../types'\n\nexport interface SingletonSelector {\n get(\n slug: string\n ): Promise<StarlightItemResponse<Singleton<Record<string, unknown>>>>\n list(): Promise<StarlightListResponse<Singleton<Record<string, unknown>>>>\n}\n"]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
interface StarlightEntity {
|
|
2
|
+
id: number;
|
|
3
|
+
created_at: string;
|
|
4
|
+
updated_at?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ModelCategory extends StarlightEntity {
|
|
7
|
+
title: string;
|
|
8
|
+
slug: string;
|
|
9
|
+
entry_count?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface MediaFile extends StarlightEntity {
|
|
12
|
+
variation: string;
|
|
13
|
+
path: string;
|
|
14
|
+
mime: string;
|
|
15
|
+
background_color?: string;
|
|
16
|
+
filesize: number;
|
|
17
|
+
meta?: Record<string, unknown>;
|
|
18
|
+
}
|
|
19
|
+
export interface MediaObject extends StarlightEntity {
|
|
20
|
+
name: string;
|
|
21
|
+
extension: string;
|
|
22
|
+
mime: string;
|
|
23
|
+
files: MediaFile[];
|
|
24
|
+
}
|
|
25
|
+
export interface Author {
|
|
26
|
+
id: number;
|
|
27
|
+
name: string;
|
|
28
|
+
}
|
|
29
|
+
export interface Model extends StarlightEntity {
|
|
30
|
+
title: string;
|
|
31
|
+
slug: string;
|
|
32
|
+
entry_count?: number;
|
|
33
|
+
}
|
|
34
|
+
export declare type SerializedData = Record<string, unknown> | undefined;
|
|
35
|
+
export declare type ModelFieldOptions<D extends SerializedData> = {
|
|
36
|
+
[K in keyof D as `field:${string & K}`]?: string;
|
|
37
|
+
};
|
|
38
|
+
export interface Entry<D extends SerializedData> extends Omit<StarlightEntity, 'created_at'> {
|
|
39
|
+
title: string;
|
|
40
|
+
slug: string;
|
|
41
|
+
data: D;
|
|
42
|
+
author: Author;
|
|
43
|
+
model?: Model;
|
|
44
|
+
category: ModelCategory | null;
|
|
45
|
+
published_at: string | null;
|
|
46
|
+
}
|
|
47
|
+
export interface Singleton<D extends SerializedData> extends Omit<StarlightEntity, 'created_at'> {
|
|
48
|
+
title: string;
|
|
49
|
+
slug: string;
|
|
50
|
+
data: D;
|
|
51
|
+
published_at: string | null;
|
|
52
|
+
}
|
|
53
|
+
export interface Collection extends StarlightEntity {
|
|
54
|
+
title: string;
|
|
55
|
+
slug: string;
|
|
56
|
+
type: 'entry' | 'singleton' | 'media' | string;
|
|
57
|
+
item_count?: number;
|
|
58
|
+
}
|
|
59
|
+
export interface Relation<D extends SerializedData = Record<string, unknown>> {
|
|
60
|
+
type: 'entry' | 'media' | 'singleton' | 'collection' | string;
|
|
61
|
+
id: number;
|
|
62
|
+
object: Entry<D> | Singleton<D> | MediaObject | Collection;
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=entities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/types/entities.ts"],"names":[],"mappings":"AAAA,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,SAAU,SAAQ,eAAe;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,KAAM,SAAQ,eAAe;IAC5C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,oBAAY,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;AAEhE,oBAAY,iBAAiB,CAAC,CAAC,SAAS,cAAc,IAAI;KACvD,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM;CACjD,CAAA;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,cAAc,CAC7C,SAAQ,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,CAAC,CAAA;IACP,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAA;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,cAAc,CACjD,SAAQ,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,CAAC,CAAA;IACP,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,UAAW,SAAQ,eAAe;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAA;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1E,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,CAAA;IAC7D,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,UAAU,CAAA;CAC3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../../src/types/entities.ts"],"names":[],"mappings":"","sourcesContent":["interface StarlightEntity {\n id: number\n created_at: string\n updated_at?: string\n}\n\nexport interface ModelCategory extends StarlightEntity {\n title: string\n slug: string\n entry_count?: number\n}\n\nexport interface MediaFile extends StarlightEntity {\n variation: string\n path: string\n mime: string\n background_color?: string\n filesize: number\n meta?: Record<string, unknown>\n}\n\nexport interface MediaObject extends StarlightEntity {\n name: string\n extension: string\n mime: string\n files: MediaFile[]\n}\n\nexport interface Author {\n id: number\n name: string\n}\n\nexport interface Model extends StarlightEntity {\n title: string\n slug: string\n entry_count?: number\n}\n\nexport type SerializedData = Record<string, unknown> | undefined\n\nexport type ModelFieldOptions<D extends SerializedData> = {\n [K in keyof D as `field:${string & K}`]?: string\n}\n\nexport interface Entry<D extends SerializedData>\n extends Omit<StarlightEntity, 'created_at'> {\n title: string\n slug: string\n data: D\n author: Author\n model?: Model\n category: ModelCategory | null\n published_at: string | null\n}\n\nexport interface Singleton<D extends SerializedData>\n extends Omit<StarlightEntity, 'created_at'> {\n title: string\n slug: string\n data: D\n published_at: string | null\n}\n\nexport interface Collection extends StarlightEntity {\n title: string\n slug: string\n type: 'entry' | 'singleton' | 'media' | string\n item_count?: number\n}\n\nexport interface Relation<D extends SerializedData = Record<string, unknown>> {\n type: 'entry' | 'media' | 'singleton' | 'collection' | string\n id: number\n object: Entry<D> | Singleton<D> | MediaObject | Collection\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MediaObject, Relation } from './entities';
|
|
2
|
+
import { VisualData } from './visual';
|
|
3
|
+
export declare type BooleanField = boolean;
|
|
4
|
+
export declare type HtmlField = string;
|
|
5
|
+
export declare type MediaField = MediaObject;
|
|
6
|
+
export declare type RelationField = Relation;
|
|
7
|
+
export declare type StringField = string;
|
|
8
|
+
export declare type TextField = string;
|
|
9
|
+
export declare type VisualField = VisualData;
|
|
10
|
+
//# sourceMappingURL=fields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../src/types/fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,oBAAY,YAAY,GAAG,OAAO,CAAA;AAElC,oBAAY,SAAS,GAAG,MAAM,CAAA;AAE9B,oBAAY,UAAU,GAAG,WAAW,CAAA;AAEpC,oBAAY,aAAa,GAAG,QAAQ,CAAA;AAEpC,oBAAY,WAAW,GAAG,MAAM,CAAA;AAEhC,oBAAY,SAAS,GAAG,MAAM,CAAA;AAE9B,oBAAY,WAAW,GAAG,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../src/types/fields.ts"],"names":[],"mappings":"","sourcesContent":["import { MediaObject, Relation } from './entities'\nimport { VisualData } from './visual'\n\nexport type BooleanField = boolean\n\nexport type HtmlField = string\n\nexport type MediaField = MediaObject\n\nexport type RelationField = Relation\n\nexport type StringField = string\n\nexport type TextField = string\n\nexport type VisualField = VisualData\n"]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { SerializedData } from './entities';
|
|
2
|
+
import { ProxiedModelSelector } from '../selectors/Model';
|
|
3
|
+
import { ModelInstance } from '../instances/Model';
|
|
4
|
+
import { SingletonSelector } from '../selectors/Singleton';
|
|
5
|
+
import { ProxiedCollectionSelector } from '../selectors/Collection';
|
|
6
|
+
import { MediaSelector } from '../selectors/Media';
|
|
7
|
+
export * from './fields';
|
|
8
|
+
export * from './entities';
|
|
9
|
+
export * from './visual';
|
|
10
|
+
declare type BaseUrl = 'https://query.starlight.sh/v2' | string;
|
|
11
|
+
export declare type StarlightConfig = {
|
|
12
|
+
workspace?: string;
|
|
13
|
+
baseUrl?: BaseUrl;
|
|
14
|
+
debug?: boolean;
|
|
15
|
+
};
|
|
16
|
+
export interface StarlightClient<D extends WorkspaceModelDefinition = DefaultModelDefinition> {
|
|
17
|
+
configure(config: StarlightConfig): void;
|
|
18
|
+
log(message?: unknown, ...optionalParams: unknown[]): void;
|
|
19
|
+
getBaseUrl(): string;
|
|
20
|
+
get<T = Record<string, unknown>>(path: string, params?: Record<string, string | number | boolean | undefined>, options?: RequestInit): Promise<T>;
|
|
21
|
+
get models(): ProxiedModelSelector<D>;
|
|
22
|
+
get singletons(): SingletonSelector;
|
|
23
|
+
get collections(): ProxiedCollectionSelector;
|
|
24
|
+
get media(): MediaSelector;
|
|
25
|
+
}
|
|
26
|
+
export declare type ProxiedStarlightClient<T extends WorkspaceModelDefinition> = StarlightClient<T> & {
|
|
27
|
+
[K in keyof T]: ModelInstance<T[K]>;
|
|
28
|
+
};
|
|
29
|
+
export interface RequestOptions {
|
|
30
|
+
[key: string]: unknown;
|
|
31
|
+
}
|
|
32
|
+
export interface StarlightItemResponse<T> {
|
|
33
|
+
data: T;
|
|
34
|
+
}
|
|
35
|
+
export interface StarlightListResponse<T> {
|
|
36
|
+
data: T[];
|
|
37
|
+
links: {
|
|
38
|
+
first: string;
|
|
39
|
+
last: string;
|
|
40
|
+
prev?: string;
|
|
41
|
+
next?: string;
|
|
42
|
+
};
|
|
43
|
+
meta: {
|
|
44
|
+
current_page: number;
|
|
45
|
+
last_page: number;
|
|
46
|
+
from: number;
|
|
47
|
+
to: number;
|
|
48
|
+
per_page: number;
|
|
49
|
+
total: number;
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
export interface DefaultModelDefinition extends WorkspaceModelDefinition {
|
|
53
|
+
}
|
|
54
|
+
export interface WorkspaceModelDefinition {
|
|
55
|
+
[slug: string]: SerializedData;
|
|
56
|
+
}
|
|
57
|
+
export interface StarlightSelector {
|
|
58
|
+
getClient(): StarlightClient;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AAExB,aAAK,OAAO,GAAG,+BAA+B,GAAG,MAAM,CAAA;AAEvD,oBAAY,eAAe,GAAG;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,MAAM,WAAW,eAAe,CAC9B,CAAC,SAAS,wBAAwB,GAAG,sBAAsB;IAE3D,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAExC,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAE1D,UAAU,IAAI,MAAM,CAAA;IAEpB,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,EAC9D,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,CAAC,CAAC,CAAA;IAEb,IAAI,MAAM,IAAI,oBAAoB,CAAC,CAAC,CAAC,CAAA;IAErC,IAAI,UAAU,IAAI,iBAAiB,CAAA;IAEnC,IAAI,WAAW,IAAI,yBAAyB,CAAA;IAE5C,IAAI,KAAK,IAAI,aAAa,CAAA;CAC3B;AAED,oBAAY,sBAAsB,CAAC,CAAC,SAAS,wBAAwB,IACnE,eAAe,CAAC,CAAC,CAAC,GAAG;KAClB,CAAC,IAAI,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACpC,CAAA;AAEH,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,CAAA;CACR;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,EAAE,CAAA;IACT,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,MAAM,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;CACF;AAGD,MAAM,WAAW,sBAAuB,SAAQ,wBAAwB;CAAG;AAE3E,MAAM,WAAW,wBAAwB;IACvC,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,IAAI,eAAe,CAAA;CAC7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA","sourcesContent":["import { SerializedData } from './entities'\nimport { ProxiedModelSelector } from '../selectors/Model'\nimport { ModelInstance } from '../instances/Model'\nimport { SingletonSelector } from '../selectors/Singleton'\nimport { ProxiedCollectionSelector } from '../selectors/Collection'\nimport { MediaSelector } from '../selectors/Media'\n\nexport * from './fields'\nexport * from './entities'\nexport * from './visual'\n\ntype BaseUrl = 'https://query.starlight.sh/v2' | string\n\nexport type StarlightConfig = {\n workspace?: string\n baseUrl?: BaseUrl\n debug?: boolean\n}\n\nexport interface StarlightClient<\n D extends WorkspaceModelDefinition = DefaultModelDefinition\n> {\n configure(config: StarlightConfig): void\n\n log(message?: unknown, ...optionalParams: unknown[]): void\n\n getBaseUrl(): string\n\n get<T = Record<string, unknown>>(\n path: string,\n params?: Record<string, string | number | boolean | undefined>,\n options?: RequestInit\n ): Promise<T>\n\n get models(): ProxiedModelSelector<D>\n\n get singletons(): SingletonSelector\n\n get collections(): ProxiedCollectionSelector\n\n get media(): MediaSelector\n}\n\nexport type ProxiedStarlightClient<T extends WorkspaceModelDefinition> =\n StarlightClient<T> & {\n [K in keyof T]: ModelInstance<T[K]>\n }\n\nexport interface RequestOptions {\n [key: string]: unknown\n}\n\nexport interface StarlightItemResponse<T> {\n data: T\n}\n\nexport interface StarlightListResponse<T> {\n data: T[]\n links: {\n first: string\n last: string\n prev?: string\n next?: string\n }\n meta: {\n current_page: number\n last_page: number\n from: number\n to: number\n per_page: number\n total: number\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface DefaultModelDefinition extends WorkspaceModelDefinition {}\n\nexport interface WorkspaceModelDefinition {\n [slug: string]: SerializedData\n}\n\nexport interface StarlightSelector {\n getClient(): StarlightClient\n}\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export declare type BlockType = 'paragraph' | 'quote' | 'header' | 'image';
|
|
2
|
+
interface BlockData {
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
}
|
|
5
|
+
export interface ParagraphBlock extends BlockData {
|
|
6
|
+
text: string;
|
|
7
|
+
}
|
|
8
|
+
export interface HeaderBlock extends BlockData {
|
|
9
|
+
text: string;
|
|
10
|
+
level: number;
|
|
11
|
+
}
|
|
12
|
+
export interface QuoteBlock extends BlockData {
|
|
13
|
+
text: string;
|
|
14
|
+
caption: string;
|
|
15
|
+
alignment: 'left' | 'center';
|
|
16
|
+
}
|
|
17
|
+
export interface ImageBlock extends BlockData {
|
|
18
|
+
url: string;
|
|
19
|
+
}
|
|
20
|
+
export interface VisualDataBlock<D extends BlockData = BlockData> {
|
|
21
|
+
type: BlockType;
|
|
22
|
+
data: D;
|
|
23
|
+
}
|
|
24
|
+
export interface VisualData {
|
|
25
|
+
time?: number;
|
|
26
|
+
version?: string;
|
|
27
|
+
blocks: VisualDataBlock[];
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=visual.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../../src/types/visual.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;AAElE,UAAU,SAAS;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAA;CAC7B;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAC9D,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,EAAE,CAAC,CAAA;CACR;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,eAAe,EAAE,CAAA;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visual.js","sourceRoot":"","sources":["../../../src/types/visual.ts"],"names":[],"mappings":"","sourcesContent":["export type BlockType = 'paragraph' | 'quote' | 'header' | 'image'\n\ninterface BlockData {\n [key: string]: unknown\n}\n\nexport interface ParagraphBlock extends BlockData {\n text: string\n}\n\nexport interface HeaderBlock extends BlockData {\n text: string\n level: number\n}\n\nexport interface QuoteBlock extends BlockData {\n text: string\n caption: string\n alignment: 'left' | 'center'\n}\n\nexport interface ImageBlock extends BlockData {\n url: string\n}\n\nexport interface VisualDataBlock<D extends BlockData = BlockData> {\n type: BlockType\n data: D\n}\n\nexport interface VisualData {\n time?: number\n version?: string\n blocks: VisualDataBlock[]\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@starlightcms/js-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "The Starlight SDK for JavaScript",
|
|
5
|
-
"main": "dist/index.js",
|
|
5
|
+
"main": "dist/cjs/index.js",
|
|
6
|
+
"exports": {
|
|
7
|
+
"require": "dist/cjs/index.js",
|
|
8
|
+
"import": "dist/esm/index.js"
|
|
9
|
+
},
|
|
10
|
+
"sideEffects": false,
|
|
6
11
|
"scripts": {
|
|
7
|
-
"build": "rimraf dist &&
|
|
12
|
+
"build": "rimraf dist && npm run build:cjs && npm run build:esm",
|
|
13
|
+
"build:esm": "tsc --module esnext --outDir dist/esm",
|
|
14
|
+
"build:cjs": "tsc --module commonjs --outDir dist/cjs",
|
|
8
15
|
"dev": "tsc --watch",
|
|
9
16
|
"prepare": "husky install",
|
|
10
17
|
"prepublishOnly": "npm run build",
|