@aphexcms/cms-core 2.0.2 → 2.0.4
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/cache/adapters/in-memory-cache-adapter.d.ts +21 -0
- package/dist/cache/adapters/in-memory-cache-adapter.d.ts.map +1 -0
- package/dist/cache/adapters/in-memory-cache-adapter.js +50 -0
- package/dist/cache/document-cache.d.ts +18 -0
- package/dist/cache/document-cache.d.ts.map +1 -0
- package/dist/cache/document-cache.js +35 -0
- package/dist/cache/index.d.ts +4 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +2 -0
- package/dist/cache/interfaces/cache.d.ts +18 -0
- package/dist/cache/interfaces/cache.d.ts.map +1 -0
- package/dist/cache/interfaces/cache.js +1 -0
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -0
- package/dist/components/admin/AdminLayout.svelte.d.ts +3 -3
- package/dist/components/admin/DocumentEditor.svelte +1 -1
- package/dist/components/admin/SchemaField.svelte +14 -0
- package/dist/components/admin/SchemaField.svelte.d.ts.map +1 -1
- package/dist/components/admin/fields/FileField.svelte +485 -0
- package/dist/components/admin/fields/FileField.svelte.d.ts +18 -0
- package/dist/components/admin/fields/FileField.svelte.d.ts.map +1 -0
- package/dist/components/admin/fields/ReferenceField.svelte +2 -2
- package/dist/components/fields/index.d.ts +1 -0
- package/dist/components/fields/index.d.ts.map +1 -1
- package/dist/components/fields/index.js +1 -0
- package/dist/components/layout/sidebar/AppSidebar.svelte.d.ts +8 -1
- package/dist/components/layout/sidebar/AppSidebar.svelte.d.ts.map +1 -1
- package/dist/graphql/schema.d.ts.map +1 -1
- package/dist/graphql/schema.js +15 -1
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +11 -0
- package/dist/lib/cache/adapters/in-memory-cache-adapter.d.ts +21 -0
- package/dist/lib/cache/adapters/in-memory-cache-adapter.d.ts.map +1 -0
- package/dist/lib/cache/adapters/in-memory-cache-adapter.js +51 -0
- package/dist/lib/cache/adapters/in-memory-cache-adapter.js.map +1 -0
- package/dist/lib/cache/document-cache.d.ts +18 -0
- package/dist/lib/cache/document-cache.d.ts.map +1 -0
- package/dist/lib/cache/document-cache.js +36 -0
- package/dist/lib/cache/document-cache.js.map +1 -0
- package/dist/lib/cache/index.d.ts +4 -0
- package/dist/lib/cache/index.d.ts.map +1 -0
- package/dist/lib/cache/index.js +3 -0
- package/dist/lib/cache/index.js.map +1 -0
- package/dist/lib/cache/interfaces/cache.d.ts +18 -0
- package/dist/lib/cache/interfaces/cache.d.ts.map +1 -0
- package/dist/lib/cache/interfaces/cache.js +2 -0
- package/dist/lib/cache/interfaces/cache.js.map +1 -0
- package/dist/lib/client/index.d.ts +1 -0
- package/dist/lib/client/index.d.ts.map +1 -1
- package/dist/lib/client/index.js +1 -0
- package/dist/lib/client/index.js.map +1 -1
- package/dist/lib/components/fields/index.d.ts +1 -0
- package/dist/lib/components/fields/index.d.ts.map +1 -1
- package/dist/lib/components/fields/index.js +1 -0
- package/dist/lib/components/fields/index.js.map +1 -1
- package/dist/lib/graphql/schema.d.ts.map +1 -1
- package/dist/lib/graphql/schema.js +15 -1
- package/dist/lib/graphql/schema.js.map +1 -1
- package/dist/lib/hooks.d.ts.map +1 -1
- package/dist/lib/hooks.js +11 -0
- package/dist/lib/hooks.js.map +1 -1
- package/dist/lib/local-api/collection-api.d.ts +5 -1
- package/dist/lib/local-api/collection-api.d.ts.map +1 -1
- package/dist/lib/local-api/collection-api.js +63 -10
- package/dist/lib/local-api/collection-api.js.map +1 -1
- package/dist/lib/local-api/index.d.ts +13 -0
- package/dist/lib/local-api/index.d.ts.map +1 -1
- package/dist/lib/local-api/index.js +26 -2
- package/dist/lib/local-api/index.js.map +1 -1
- package/dist/lib/routes/assets.d.ts.map +1 -1
- package/dist/lib/routes/assets.js +14 -0
- package/dist/lib/routes/assets.js.map +1 -1
- package/dist/lib/routes/documents-by-id.js +18 -18
- package/dist/lib/routes/documents-by-id.js.map +1 -1
- package/dist/lib/routes/documents-publish.js +12 -12
- package/dist/lib/routes/documents-publish.js.map +1 -1
- package/dist/lib/schema-utils/validator.d.ts.map +1 -1
- package/dist/lib/schema-utils/validator.js +1 -0
- package/dist/lib/schema-utils/validator.js.map +1 -1
- package/dist/lib/server/index.d.ts +1 -0
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js +1 -0
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/services/hierarchy-service.d.ts +26 -0
- package/dist/lib/services/hierarchy-service.d.ts.map +1 -0
- package/dist/lib/services/hierarchy-service.js +64 -0
- package/dist/lib/services/hierarchy-service.js.map +1 -0
- package/dist/lib/services/index.d.ts +1 -0
- package/dist/lib/services/index.d.ts.map +1 -1
- package/dist/lib/services/index.js +1 -0
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/storage/adapters/local-storage-adapter.d.ts.map +1 -1
- package/dist/lib/storage/adapters/local-storage-adapter.js +0 -14
- package/dist/lib/storage/adapters/local-storage-adapter.js.map +1 -1
- package/dist/lib/storage/interfaces/storage.d.ts +0 -1
- package/dist/lib/storage/interfaces/storage.d.ts.map +1 -1
- package/dist/lib/types/asset.d.ts +9 -0
- package/dist/lib/types/asset.d.ts.map +1 -1
- package/dist/lib/types/config.d.ts +7 -0
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/schemas.d.ts +10 -2
- package/dist/lib/types/schemas.d.ts.map +1 -1
- package/dist/lib/utils/mime-detect.d.ts +22 -0
- package/dist/lib/utils/mime-detect.d.ts.map +1 -0
- package/dist/lib/utils/mime-detect.js +201 -0
- package/dist/lib/utils/mime-detect.js.map +1 -0
- package/dist/local-api/collection-api.d.ts +5 -1
- package/dist/local-api/collection-api.d.ts.map +1 -1
- package/dist/local-api/collection-api.js +63 -10
- package/dist/local-api/index.d.ts +13 -0
- package/dist/local-api/index.d.ts.map +1 -1
- package/dist/local-api/index.js +26 -2
- package/dist/routes/assets.d.ts.map +1 -1
- package/dist/routes/assets.js +14 -0
- package/dist/routes/documents-by-id.js +18 -18
- package/dist/routes/documents-publish.js +12 -12
- package/dist/schema-utils/validator.d.ts.map +1 -1
- package/dist/schema-utils/validator.js +1 -0
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1 -0
- package/dist/services/hierarchy-service.d.ts +26 -0
- package/dist/services/hierarchy-service.d.ts.map +1 -0
- package/dist/services/hierarchy-service.js +63 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/storage/adapters/local-storage-adapter.d.ts.map +1 -1
- package/dist/storage/adapters/local-storage-adapter.js +0 -14
- package/dist/storage/interfaces/storage.d.ts +0 -1
- package/dist/storage/interfaces/storage.d.ts.map +1 -1
- package/dist/types/asset.d.ts +9 -0
- package/dist/types/asset.d.ts.map +1 -1
- package/dist/types/config.d.ts +7 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/schemas.d.ts +10 -2
- package/dist/types/schemas.d.ts.map +1 -1
- package/dist/utils/mime-detect.d.ts +22 -0
- package/dist/utils/mime-detect.d.ts.map +1 -0
- package/dist/utils/mime-detect.js +200 -0
- package/package.json +1 -1
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { CacheAdapter } from '../interfaces/cache.js';
|
|
2
|
+
export interface InMemoryCacheOptions {
|
|
3
|
+
/** Maximum number of entries. Oldest entries are evicted when exceeded. Defaults to 1000. */
|
|
4
|
+
maxSize?: number;
|
|
5
|
+
/** Default TTL in seconds. No expiry if omitted. */
|
|
6
|
+
defaultTTL?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class InMemoryCacheAdapter implements CacheAdapter {
|
|
9
|
+
readonly name = "in-memory";
|
|
10
|
+
private store;
|
|
11
|
+
private maxSize;
|
|
12
|
+
private defaultTTL;
|
|
13
|
+
constructor(options?: InMemoryCacheOptions);
|
|
14
|
+
get<T>(key: string): Promise<T | null>;
|
|
15
|
+
set<T>(key: string, value: T, ttl?: number): Promise<void>;
|
|
16
|
+
delete(key: string): Promise<void>;
|
|
17
|
+
invalidateByPrefix(prefix: string): Promise<void>;
|
|
18
|
+
flush(): Promise<void>;
|
|
19
|
+
isHealthy(): Promise<boolean>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=in-memory-cache-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-cache-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/cache/adapters/in-memory-cache-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOxD,MAAM,WAAW,oBAAoB;IACpC,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,oBAAqB,YAAW,YAAY;IACxD,QAAQ,CAAC,IAAI,eAAe;IAE5B,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAqB;gBAE3B,OAAO,GAAE,oBAAyB;IAKxC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAYtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB1D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;CAGnC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export class InMemoryCacheAdapter {
|
|
2
|
+
name = 'in-memory';
|
|
3
|
+
store = new Map();
|
|
4
|
+
maxSize;
|
|
5
|
+
defaultTTL;
|
|
6
|
+
constructor(options = {}) {
|
|
7
|
+
this.maxSize = options.maxSize ?? 1000;
|
|
8
|
+
this.defaultTTL = options.defaultTTL;
|
|
9
|
+
}
|
|
10
|
+
async get(key) {
|
|
11
|
+
const entry = this.store.get(key);
|
|
12
|
+
if (!entry)
|
|
13
|
+
return null;
|
|
14
|
+
if (entry.expiresAt !== null && Date.now() > entry.expiresAt) {
|
|
15
|
+
this.store.delete(key);
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return entry.value;
|
|
19
|
+
}
|
|
20
|
+
async set(key, value, ttl) {
|
|
21
|
+
// Evict oldest entry if at capacity
|
|
22
|
+
if (!this.store.has(key) && this.store.size >= this.maxSize) {
|
|
23
|
+
const firstKey = this.store.keys().next().value;
|
|
24
|
+
if (firstKey !== undefined) {
|
|
25
|
+
this.store.delete(firstKey);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
const seconds = ttl ?? this.defaultTTL;
|
|
29
|
+
this.store.set(key, {
|
|
30
|
+
value,
|
|
31
|
+
expiresAt: seconds != null ? Date.now() + seconds * 1000 : null
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
async delete(key) {
|
|
35
|
+
this.store.delete(key);
|
|
36
|
+
}
|
|
37
|
+
async invalidateByPrefix(prefix) {
|
|
38
|
+
for (const key of this.store.keys()) {
|
|
39
|
+
if (key.startsWith(prefix)) {
|
|
40
|
+
this.store.delete(key);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async flush() {
|
|
45
|
+
this.store.clear();
|
|
46
|
+
}
|
|
47
|
+
async isHealthy() {
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { CacheAdapter } from './interfaces/cache.js';
|
|
2
|
+
/**
|
|
3
|
+
* Document-aware cache wrapper.
|
|
4
|
+
* Translates document/collection operations into generic key-value calls on the underlying CacheAdapter.
|
|
5
|
+
*/
|
|
6
|
+
export declare class DocumentCache {
|
|
7
|
+
private adapter;
|
|
8
|
+
constructor(adapter: CacheAdapter);
|
|
9
|
+
getDocument<T>(orgId: string, docId: string): Promise<T | null>;
|
|
10
|
+
setDocument<T>(orgId: string, docId: string, value: T): Promise<void>;
|
|
11
|
+
getQuery<T>(orgId: string, collection: string, options: object): Promise<T | null>;
|
|
12
|
+
setQuery<T>(orgId: string, collection: string, options: object, value: T): Promise<void>;
|
|
13
|
+
invalidateDocument(orgId: string, docId: string): Promise<void>;
|
|
14
|
+
invalidateCollection(orgId: string, collection: string): Promise<void>;
|
|
15
|
+
flush(): Promise<void>;
|
|
16
|
+
private buildQueryKey;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=document-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-cache.d.ts","sourceRoot":"","sources":["../../src/lib/cache/document-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,aAAa;IACb,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAEnC,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAI/D,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAIlF,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxF,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,OAAO,CAAC,aAAa;CAIrB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Document-aware cache wrapper.
|
|
3
|
+
* Translates document/collection operations into generic key-value calls on the underlying CacheAdapter.
|
|
4
|
+
*/
|
|
5
|
+
export class DocumentCache {
|
|
6
|
+
adapter;
|
|
7
|
+
constructor(adapter) {
|
|
8
|
+
this.adapter = adapter;
|
|
9
|
+
}
|
|
10
|
+
async getDocument(orgId, docId) {
|
|
11
|
+
return this.adapter.get(`doc:${orgId}:${docId}`);
|
|
12
|
+
}
|
|
13
|
+
async setDocument(orgId, docId, value) {
|
|
14
|
+
await this.adapter.set(`doc:${orgId}:${docId}`, value);
|
|
15
|
+
}
|
|
16
|
+
async getQuery(orgId, collection, options) {
|
|
17
|
+
return this.adapter.get(this.buildQueryKey(orgId, collection, options));
|
|
18
|
+
}
|
|
19
|
+
async setQuery(orgId, collection, options, value) {
|
|
20
|
+
await this.adapter.set(this.buildQueryKey(orgId, collection, options), value);
|
|
21
|
+
}
|
|
22
|
+
async invalidateDocument(orgId, docId) {
|
|
23
|
+
await this.adapter.delete(`doc:${orgId}:${docId}`);
|
|
24
|
+
}
|
|
25
|
+
async invalidateCollection(orgId, collection) {
|
|
26
|
+
await this.adapter.invalidateByPrefix(`query:${orgId}:${collection}:`);
|
|
27
|
+
}
|
|
28
|
+
async flush() {
|
|
29
|
+
await this.adapter.flush();
|
|
30
|
+
}
|
|
31
|
+
buildQueryKey(orgId, collection, options) {
|
|
32
|
+
const normalized = JSON.stringify(options, Object.keys(options).sort());
|
|
33
|
+
return `query:${orgId}:${collection}:${normalized}`;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/cache/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface CacheAdapter {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
/** Get a cached value by key. Returns null on miss. */
|
|
4
|
+
get<T>(key: string): Promise<T | null>;
|
|
5
|
+
/** Set a value with an optional TTL in seconds. */
|
|
6
|
+
set<T>(key: string, value: T, ttl?: number): Promise<void>;
|
|
7
|
+
/** Delete a single key. */
|
|
8
|
+
delete(key: string): Promise<void>;
|
|
9
|
+
/** Delete all keys matching a prefix (e.g. "query:org123:page:"). */
|
|
10
|
+
invalidateByPrefix(prefix: string): Promise<void>;
|
|
11
|
+
/** Flush the entire cache. */
|
|
12
|
+
flush(): Promise<void>;
|
|
13
|
+
/** Optional lifecycle methods. */
|
|
14
|
+
connect?(): Promise<void>;
|
|
15
|
+
disconnect?(): Promise<void>;
|
|
16
|
+
isHealthy?(): Promise<boolean>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/lib/cache/interfaces/cache.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,uDAAuD;IACvD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAEvC,mDAAmD;IACnD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D,2BAA2B;IAC3B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,qEAAqE;IACrE,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD,8BAA8B;IAC9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB,kCAAkC;IAClC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,UAAU,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,SAAS,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/client/index.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export { default as TextareaField } from '../components/admin/fields/TextareaFie
|
|
|
14
14
|
export { default as NumberField } from '../components/admin/fields/NumberField.svelte';
|
|
15
15
|
export { default as BooleanField } from '../components/admin/fields/BooleanField.svelte';
|
|
16
16
|
export { default as ImageField } from '../components/admin/fields/ImageField.svelte';
|
|
17
|
+
export { default as FileField } from '../components/admin/fields/FileField.svelte';
|
|
17
18
|
export { default as SlugField } from '../components/admin/fields/SlugField.svelte';
|
|
18
19
|
export { default as ArrayField } from '../components/admin/fields/ArrayField.svelte';
|
|
19
20
|
export { default as ReferenceField } from '../components/admin/fields/ReferenceField.svelte';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/client/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGlG,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGjF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,cAAc,uBAAuB,CAAC;AAGtC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAGzE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAG7F,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/client/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGlG,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGjF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG9E,cAAc,uBAAuB,CAAC;AAGtC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAGzE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAG7F,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/client/index.js
CHANGED
|
@@ -22,6 +22,7 @@ export { default as TextareaField } from '../components/admin/fields/TextareaFie
|
|
|
22
22
|
export { default as NumberField } from '../components/admin/fields/NumberField.svelte';
|
|
23
23
|
export { default as BooleanField } from '../components/admin/fields/BooleanField.svelte';
|
|
24
24
|
export { default as ImageField } from '../components/admin/fields/ImageField.svelte';
|
|
25
|
+
export { default as FileField } from '../components/admin/fields/FileField.svelte';
|
|
25
26
|
export { default as SlugField } from '../components/admin/fields/SlugField.svelte';
|
|
26
27
|
export { default as ArrayField } from '../components/admin/fields/ArrayField.svelte';
|
|
27
28
|
export { default as ReferenceField } from '../components/admin/fields/ReferenceField.svelte';
|
|
@@ -6,9 +6,9 @@ interface Props {
|
|
|
6
6
|
children?: any;
|
|
7
7
|
}
|
|
8
8
|
declare const AdminLayout: import("svelte").Component<Props, {
|
|
9
|
-
typesPanel: "w-full" | "flex-1" | "
|
|
10
|
-
documentsPanel: "w-full" | "flex-1" | "
|
|
11
|
-
editorPanel: "w-full" | "flex-1"
|
|
9
|
+
typesPanel: "hidden" | "w-full" | "flex-1" | "w-[350px]" | "w-[60px]";
|
|
10
|
+
documentsPanel: "hidden" | "w-full" | "flex-1" | "w-[350px]" | "w-[60px]";
|
|
11
|
+
editorPanel: "hidden" | "w-full" | "flex-1";
|
|
12
12
|
}, "">;
|
|
13
13
|
type AdminLayout = ReturnType<typeof AdminLayout>;
|
|
14
14
|
export default AdminLayout;
|
|
@@ -673,7 +673,7 @@
|
|
|
673
673
|
}
|
|
674
674
|
</script>
|
|
675
675
|
|
|
676
|
-
<div class="relative flex h-full flex-col">
|
|
676
|
+
<div class="relative flex h-full flex-col overflow-hidden">
|
|
677
677
|
<!-- Header Toolbar (Sanity-style) -->
|
|
678
678
|
<div class="border-border bg-background flex h-14 items-center justify-between border-b px-4">
|
|
679
679
|
<!-- Left side: Document info and status -->
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
import NumberField from './fields/NumberField.svelte';
|
|
28
28
|
import BooleanField from './fields/BooleanField.svelte';
|
|
29
29
|
import ImageField from './fields/ImageField.svelte';
|
|
30
|
+
import FileField from './fields/FileField.svelte';
|
|
30
31
|
import ArrayField from './fields/ArrayField.svelte';
|
|
31
32
|
import DateField from './fields/DateField.svelte';
|
|
32
33
|
import DateTimeField from './fields/DateTimeField.svelte';
|
|
@@ -206,6 +207,19 @@
|
|
|
206
207
|
{organizationId}
|
|
207
208
|
/>
|
|
208
209
|
|
|
210
|
+
<!-- File Field -->
|
|
211
|
+
{:else if field.type === 'file'}
|
|
212
|
+
<FileField
|
|
213
|
+
{field}
|
|
214
|
+
{value}
|
|
215
|
+
{onUpdate}
|
|
216
|
+
{validationClasses}
|
|
217
|
+
{schemaType}
|
|
218
|
+
{fieldPath}
|
|
219
|
+
{readonly}
|
|
220
|
+
{organizationId}
|
|
221
|
+
/>
|
|
222
|
+
|
|
209
223
|
<!-- Object Field -->
|
|
210
224
|
{:else if field.type === 'object' && field.fields}
|
|
211
225
|
<div class="border-border space-y-4 rounded-md border p-4">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaField.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/admin/SchemaField.svelte.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,KAAK,EAGL,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"SchemaField.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/admin/SchemaField.svelte.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,KAAK,EAGL,MAAM,qBAAqB,CAAC;AAyB9B,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAG9C,UAAU,KAAK;IACd,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AA2NF,QAAA,MAAM,WAAW;sCA7KgC,GAAG,YAAW,GAAG;MA6KT,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
|