@happyvertical/smrt-content 0.43.5 → 0.43.7
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/README.md +5 -1
- package/agents/content-list.md +37 -0
- package/dist/index.js +1 -1
- package/dist/manifest.json +1 -1
- package/dist/smrt-knowledge.json +5 -5
- package/dist/svelte/components/ContentList.svelte +374 -16
- package/dist/svelte/components/ContentList.svelte.d.ts +3 -0
- package/dist/svelte/components/ContentList.svelte.d.ts.map +1 -1
- package/dist/svelte/content-list-query.d.ts +15 -0
- package/dist/svelte/content-list-query.d.ts.map +1 -1
- package/dist/svelte/content-list-runtime.d.ts +66 -0
- package/dist/svelte/content-list-runtime.d.ts.map +1 -0
- package/dist/svelte/content-list-runtime.js +249 -0
- package/dist/svelte/i18n.contribution.d.ts +14 -0
- package/dist/svelte/i18n.contribution.d.ts.map +1 -1
- package/dist/svelte/i18n.contribution.js +14 -0
- package/dist/svelte/index.d.ts +1 -0
- package/dist/svelte/index.d.ts.map +1 -1
- package/dist/svelte/index.js +1 -0
- package/package.json +14 -14
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Realtime and background-workflow state for ContentList (#2455).
|
|
3
|
+
*
|
|
4
|
+
* The tracker is framework-free so the same instance can be used by a host's
|
|
5
|
+
* action controls and by ContentList. It owns submission idempotency and job
|
|
6
|
+
* transitions; the component only renders its snapshots and refreshes a query
|
|
7
|
+
* when a successful job actually targets the visible page/query.
|
|
8
|
+
*/
|
|
9
|
+
export type ContentListJobStatus = 'queued' | 'running' | 'succeeded' | 'failed';
|
|
10
|
+
export type ContentListJobTarget = {
|
|
11
|
+
kind: 'rows';
|
|
12
|
+
rowIds: readonly string[];
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'query';
|
|
15
|
+
queryKey: string;
|
|
16
|
+
};
|
|
17
|
+
export interface ContentListJob {
|
|
18
|
+
jobId: string;
|
|
19
|
+
actionId: string;
|
|
20
|
+
submissionKey: string;
|
|
21
|
+
status: ContentListJobStatus;
|
|
22
|
+
target: ContentListJobTarget;
|
|
23
|
+
completed?: number;
|
|
24
|
+
total?: number;
|
|
25
|
+
message?: string;
|
|
26
|
+
error?: string;
|
|
27
|
+
}
|
|
28
|
+
export interface ContentListJobSubmission {
|
|
29
|
+
actionId: string;
|
|
30
|
+
/** Stable key for one logical invocation. Duplicate active keys coalesce. */
|
|
31
|
+
submissionKey: string;
|
|
32
|
+
target: ContentListJobTarget;
|
|
33
|
+
}
|
|
34
|
+
export interface ContentListJobSnapshot {
|
|
35
|
+
readonly jobs: readonly ContentListJob[];
|
|
36
|
+
readonly pendingRowIds: ReadonlySet<string>;
|
|
37
|
+
readonly pendingQueryKeys: ReadonlySet<string>;
|
|
38
|
+
}
|
|
39
|
+
export interface ContentListJobBinding {
|
|
40
|
+
snapshot(): ContentListJobSnapshot;
|
|
41
|
+
subscribe(listener: (snapshot: ContentListJobSnapshot) => void): () => void;
|
|
42
|
+
/** True only when this failed attempt can start one explicit successor. */
|
|
43
|
+
canRetry?(jobId: string): boolean;
|
|
44
|
+
retry(jobId: string): Promise<ContentListJob>;
|
|
45
|
+
}
|
|
46
|
+
export interface ContentListJobController extends ContentListJobBinding {
|
|
47
|
+
submit(submission: ContentListJobSubmission, start: () => Promise<ContentListJob>): Promise<ContentListJob>;
|
|
48
|
+
update(job: ContentListJob): void;
|
|
49
|
+
}
|
|
50
|
+
export interface ContentListJobControllerOptions {
|
|
51
|
+
/** A retry starts a new attempt and must resolve with a distinct job id. */
|
|
52
|
+
retry?: (job: ContentListJob) => Promise<ContentListJob>;
|
|
53
|
+
/** Terminal attempts retained for status UI. Active work is never evicted. */
|
|
54
|
+
maxTerminalJobs?: number;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Creates the shared job tracker used by ContentList action controls.
|
|
58
|
+
*
|
|
59
|
+
* A second `submit()` with the same active `submissionKey` receives the first
|
|
60
|
+
* promise and never invokes its own starter. Terminal failures stay failures
|
|
61
|
+
* until an explicit retry succeeds; no optimistic success state is emitted.
|
|
62
|
+
*/
|
|
63
|
+
export declare function createContentListJobController(options?: ContentListJobControllerOptions): ContentListJobController;
|
|
64
|
+
/** True only when a successful job can affect the currently rendered answer. */
|
|
65
|
+
export declare function contentListJobAffectsQuery(job: ContentListJob, queryKey: string | undefined, visibleRowIds: ReadonlySet<string>): boolean;
|
|
66
|
+
//# sourceMappingURL=content-list-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-list-runtime.d.ts","sourceRoot":"","sources":["../../src/svelte/content-list-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,SAAS,cAAc,EAAE,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,IAAI,sBAAsB,CAAC;IACnC,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC5E,2EAA2E;IAC3E,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,MAAM,CACJ,UAAU,EAAE,wBAAwB,EACpC,KAAK,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,GACnC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,+BAA+B;IAC9C,4EAA4E;IAC5E,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,8EAA8E;IAC9E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AA+CD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,GAAE,+BAAoC,GAC5C,wBAAwB,CAsM1B;AAED,gFAAgF;AAChF,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,OAAO,CAKT"}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Realtime and background-workflow state for ContentList (#2455).
|
|
3
|
+
*
|
|
4
|
+
* The tracker is framework-free so the same instance can be used by a host's
|
|
5
|
+
* action controls and by ContentList. It owns submission idempotency and job
|
|
6
|
+
* transitions; the component only renders its snapshots and refreshes a query
|
|
7
|
+
* when a successful job actually targets the visible page/query.
|
|
8
|
+
*/
|
|
9
|
+
const ACTIVE_JOB_STATUSES = new Set([
|
|
10
|
+
'queued',
|
|
11
|
+
'running',
|
|
12
|
+
]);
|
|
13
|
+
const DEFAULT_MAX_TERMINAL_JOBS = 50;
|
|
14
|
+
function isActive(job) {
|
|
15
|
+
return ACTIVE_JOB_STATUSES.has(job.status);
|
|
16
|
+
}
|
|
17
|
+
function normalizedTarget(target) {
|
|
18
|
+
if (target.kind === 'query')
|
|
19
|
+
return { ...target };
|
|
20
|
+
return { kind: 'rows', rowIds: [...new Set(target.rowIds.map(String))] };
|
|
21
|
+
}
|
|
22
|
+
function cloneJob(job) {
|
|
23
|
+
return { ...job, target: normalizedTarget(job.target) };
|
|
24
|
+
}
|
|
25
|
+
function errorMessage(error) {
|
|
26
|
+
if (error instanceof Error && error.message.trim())
|
|
27
|
+
return error.message;
|
|
28
|
+
if (typeof error === 'string' && error.trim())
|
|
29
|
+
return error;
|
|
30
|
+
return 'The background job failed.';
|
|
31
|
+
}
|
|
32
|
+
function snapshotOf(jobs) {
|
|
33
|
+
const pendingRowIds = new Set();
|
|
34
|
+
const pendingQueryKeys = new Set();
|
|
35
|
+
for (const job of jobs.values()) {
|
|
36
|
+
if (!isActive(job))
|
|
37
|
+
continue;
|
|
38
|
+
if (job.target.kind === 'rows') {
|
|
39
|
+
for (const rowId of job.target.rowIds)
|
|
40
|
+
pendingRowIds.add(String(rowId));
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
pendingQueryKeys.add(job.target.queryKey);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
jobs: [...jobs.values()].map(cloneJob),
|
|
48
|
+
pendingRowIds,
|
|
49
|
+
pendingQueryKeys,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Creates the shared job tracker used by ContentList action controls.
|
|
54
|
+
*
|
|
55
|
+
* A second `submit()` with the same active `submissionKey` receives the first
|
|
56
|
+
* promise and never invokes its own starter. Terminal failures stay failures
|
|
57
|
+
* until an explicit retry succeeds; no optimistic success state is emitted.
|
|
58
|
+
*/
|
|
59
|
+
export function createContentListJobController(options = {}) {
|
|
60
|
+
const jobs = new Map();
|
|
61
|
+
const activeBySubmission = new Map();
|
|
62
|
+
const submissions = new Map();
|
|
63
|
+
const retrying = new Map();
|
|
64
|
+
const retriedAttempts = new Set();
|
|
65
|
+
const retrySources = new Set();
|
|
66
|
+
const listeners = new Set();
|
|
67
|
+
const maxTerminalJobs = options.maxTerminalJobs !== undefined &&
|
|
68
|
+
Number.isFinite(options.maxTerminalJobs)
|
|
69
|
+
? Math.max(1, Math.floor(options.maxTerminalJobs))
|
|
70
|
+
: DEFAULT_MAX_TERMINAL_JOBS;
|
|
71
|
+
let provisionalSequence = 0;
|
|
72
|
+
const pruneTerminalJobs = () => {
|
|
73
|
+
const removable = [...jobs.values()].filter((job) => !isActive(job) && !retrySources.has(job.jobId));
|
|
74
|
+
for (const job of removable.slice(0, -maxTerminalJobs)) {
|
|
75
|
+
jobs.delete(job.jobId);
|
|
76
|
+
retriedAttempts.delete(job.jobId);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
const publish = () => {
|
|
80
|
+
pruneTerminalJobs();
|
|
81
|
+
const snapshot = snapshotOf(jobs);
|
|
82
|
+
for (const listener of listeners)
|
|
83
|
+
listener(snapshot);
|
|
84
|
+
};
|
|
85
|
+
const settleActiveKey = (job) => {
|
|
86
|
+
if (isActive(job))
|
|
87
|
+
activeBySubmission.set(job.submissionKey, job.jobId);
|
|
88
|
+
else if (activeBySubmission.get(job.submissionKey) === job.jobId)
|
|
89
|
+
activeBySubmission.delete(job.submissionKey);
|
|
90
|
+
};
|
|
91
|
+
const update = (next) => {
|
|
92
|
+
const job = cloneJob(next);
|
|
93
|
+
const previous = jobs.get(job.jobId);
|
|
94
|
+
// A terminal server event is immutable. Replayed/out-of-order progress or
|
|
95
|
+
// a conflicting terminal event may not rewrite the result. `retry()` owns
|
|
96
|
+
// the one deliberate transition back to queued state below.
|
|
97
|
+
if (previous && !isActive(previous))
|
|
98
|
+
return;
|
|
99
|
+
jobs.set(job.jobId, job);
|
|
100
|
+
settleActiveKey(job);
|
|
101
|
+
publish();
|
|
102
|
+
};
|
|
103
|
+
const submit = (submission, start) => {
|
|
104
|
+
const existing = submissions.get(submission.submissionKey);
|
|
105
|
+
if (existing)
|
|
106
|
+
return existing;
|
|
107
|
+
const activeId = activeBySubmission.get(submission.submissionKey);
|
|
108
|
+
if (activeId) {
|
|
109
|
+
const active = jobs.get(activeId);
|
|
110
|
+
if (active)
|
|
111
|
+
return Promise.resolve(cloneJob(active));
|
|
112
|
+
activeBySubmission.delete(submission.submissionKey);
|
|
113
|
+
}
|
|
114
|
+
const provisionalId = `content-list:submission:${++provisionalSequence}`;
|
|
115
|
+
const provisional = {
|
|
116
|
+
jobId: provisionalId,
|
|
117
|
+
actionId: submission.actionId,
|
|
118
|
+
submissionKey: submission.submissionKey,
|
|
119
|
+
status: 'queued',
|
|
120
|
+
target: normalizedTarget(submission.target),
|
|
121
|
+
};
|
|
122
|
+
jobs.set(provisionalId, provisional);
|
|
123
|
+
activeBySubmission.set(submission.submissionKey, provisionalId);
|
|
124
|
+
publish();
|
|
125
|
+
let started;
|
|
126
|
+
try {
|
|
127
|
+
started = start();
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
started = Promise.reject(error);
|
|
131
|
+
}
|
|
132
|
+
const promise = Promise.resolve(started)
|
|
133
|
+
.then((accepted) => {
|
|
134
|
+
jobs.delete(provisionalId);
|
|
135
|
+
if (activeBySubmission.get(submission.submissionKey) === provisionalId)
|
|
136
|
+
activeBySubmission.delete(submission.submissionKey);
|
|
137
|
+
const job = cloneJob({
|
|
138
|
+
...accepted,
|
|
139
|
+
actionId: submission.actionId,
|
|
140
|
+
submissionKey: submission.submissionKey,
|
|
141
|
+
target: normalizedTarget(submission.target),
|
|
142
|
+
});
|
|
143
|
+
update(job);
|
|
144
|
+
return cloneJob(job);
|
|
145
|
+
})
|
|
146
|
+
.catch((error) => {
|
|
147
|
+
const failed = {
|
|
148
|
+
...provisional,
|
|
149
|
+
status: 'failed',
|
|
150
|
+
error: errorMessage(error),
|
|
151
|
+
};
|
|
152
|
+
update(failed);
|
|
153
|
+
throw error;
|
|
154
|
+
})
|
|
155
|
+
.finally(() => submissions.delete(submission.submissionKey));
|
|
156
|
+
submissions.set(submission.submissionKey, promise);
|
|
157
|
+
return promise;
|
|
158
|
+
};
|
|
159
|
+
const retry = (jobId) => {
|
|
160
|
+
const current = jobs.get(jobId);
|
|
161
|
+
const existing = retrying.get(jobId);
|
|
162
|
+
if (existing)
|
|
163
|
+
return existing;
|
|
164
|
+
if (current?.status !== 'failed')
|
|
165
|
+
return Promise.reject(new Error('Only a failed content job can be retried.'));
|
|
166
|
+
if (retriedAttempts.has(jobId))
|
|
167
|
+
return Promise.reject(new Error('This content job attempt has already been retried.'));
|
|
168
|
+
if (!options.retry)
|
|
169
|
+
return Promise.reject(new Error('No content job retry handler is configured.'));
|
|
170
|
+
retriedAttempts.add(jobId);
|
|
171
|
+
retrySources.add(jobId);
|
|
172
|
+
const retryId = `content-list:retry:${++provisionalSequence}`;
|
|
173
|
+
const pending = {
|
|
174
|
+
...current,
|
|
175
|
+
jobId: retryId,
|
|
176
|
+
status: 'queued',
|
|
177
|
+
error: undefined,
|
|
178
|
+
};
|
|
179
|
+
jobs.set(retryId, pending);
|
|
180
|
+
settleActiveKey(pending);
|
|
181
|
+
publish();
|
|
182
|
+
let started;
|
|
183
|
+
try {
|
|
184
|
+
started = options.retry(cloneJob(current));
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
started = Promise.reject(error);
|
|
188
|
+
}
|
|
189
|
+
const promise = Promise.resolve(started)
|
|
190
|
+
.then((next) => {
|
|
191
|
+
if (next.jobId === jobId)
|
|
192
|
+
throw new Error('A content job retry must use a distinct job id.');
|
|
193
|
+
const retried = cloneJob({
|
|
194
|
+
...next,
|
|
195
|
+
actionId: current.actionId,
|
|
196
|
+
submissionKey: current.submissionKey,
|
|
197
|
+
target: current.target,
|
|
198
|
+
});
|
|
199
|
+
jobs.delete(retryId);
|
|
200
|
+
if (activeBySubmission.get(current.submissionKey) === retryId)
|
|
201
|
+
activeBySubmission.delete(current.submissionKey);
|
|
202
|
+
update(retried);
|
|
203
|
+
return cloneJob(retried);
|
|
204
|
+
})
|
|
205
|
+
.catch((error) => {
|
|
206
|
+
const failed = {
|
|
207
|
+
...pending,
|
|
208
|
+
status: 'failed',
|
|
209
|
+
error: errorMessage(error),
|
|
210
|
+
};
|
|
211
|
+
update(failed);
|
|
212
|
+
throw error;
|
|
213
|
+
})
|
|
214
|
+
.finally(() => {
|
|
215
|
+
retrying.delete(jobId);
|
|
216
|
+
retrySources.delete(jobId);
|
|
217
|
+
// The source attempt was protected while its retry was in flight. Once
|
|
218
|
+
// settled, restore the configured terminal-history bound.
|
|
219
|
+
publish();
|
|
220
|
+
});
|
|
221
|
+
retrying.set(jobId, promise);
|
|
222
|
+
return promise;
|
|
223
|
+
};
|
|
224
|
+
return {
|
|
225
|
+
snapshot: () => snapshotOf(jobs),
|
|
226
|
+
subscribe(listener) {
|
|
227
|
+
listeners.add(listener);
|
|
228
|
+
listener(snapshotOf(jobs));
|
|
229
|
+
return () => listeners.delete(listener);
|
|
230
|
+
},
|
|
231
|
+
canRetry: (jobId) => {
|
|
232
|
+
const job = jobs.get(jobId);
|
|
233
|
+
return (options.retry !== undefined &&
|
|
234
|
+
job?.status === 'failed' &&
|
|
235
|
+
!retriedAttempts.has(jobId));
|
|
236
|
+
},
|
|
237
|
+
submit,
|
|
238
|
+
update,
|
|
239
|
+
retry,
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
/** True only when a successful job can affect the currently rendered answer. */
|
|
243
|
+
export function contentListJobAffectsQuery(job, queryKey, visibleRowIds) {
|
|
244
|
+
if (job.status !== 'succeeded')
|
|
245
|
+
return false;
|
|
246
|
+
if (job.target.kind === 'query')
|
|
247
|
+
return queryKey !== undefined && job.target.queryKey === queryKey;
|
|
248
|
+
return job.target.rowIds.some((rowId) => visibleRowIds.has(String(rowId)));
|
|
249
|
+
}
|
|
@@ -71,6 +71,20 @@ export declare const M: {
|
|
|
71
71
|
readonly 'content.content_list.clear_selection': "content.content_list.clear_selection";
|
|
72
72
|
readonly 'content.content_list.loading': "content.content_list.loading";
|
|
73
73
|
readonly 'content.content_list.refreshing': "content.content_list.refreshing";
|
|
74
|
+
readonly 'content.content_list.refresh': "content.content_list.refresh";
|
|
75
|
+
readonly 'content.content_list.offline': "content.content_list.offline";
|
|
76
|
+
readonly 'content.content_list.stale': "content.content_list.stale";
|
|
77
|
+
readonly 'content.content_list.last_updated': "content.content_list.last_updated";
|
|
78
|
+
readonly 'content.content_list.refresh_error_title': "content.content_list.refresh_error_title";
|
|
79
|
+
readonly 'content.content_list.row_pending': "content.content_list.row_pending";
|
|
80
|
+
readonly 'content.content_list.jobs': "content.content_list.jobs";
|
|
81
|
+
readonly 'content.content_list.job_identity': "content.content_list.job_identity";
|
|
82
|
+
readonly 'content.content_list.job_queued': "content.content_list.job_queued";
|
|
83
|
+
readonly 'content.content_list.job_running': "content.content_list.job_running";
|
|
84
|
+
readonly 'content.content_list.job_succeeded': "content.content_list.job_succeeded";
|
|
85
|
+
readonly 'content.content_list.job_failed': "content.content_list.job_failed";
|
|
86
|
+
readonly 'content.content_list.job_progress': "content.content_list.job_progress";
|
|
87
|
+
readonly 'content.content_list.retry_job': "content.content_list.retry_job";
|
|
74
88
|
readonly 'content.content_list.pagination': "content.content_list.pagination";
|
|
75
89
|
readonly 'content.content_list.error_title': "content.content_list.error_title";
|
|
76
90
|
readonly 'content.content_list.retry': "content.content_list.retry";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.contribution.d.ts","sourceRoot":"","sources":["../../src/svelte/i18n.contribution.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"i18n.contribution.d.ts","sourceRoot":"","sources":["../../src/svelte/i18n.contribution.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+KZ,CAAC"}
|
|
@@ -79,6 +79,20 @@ export const M = defineMessages({
|
|
|
79
79
|
'content.content_list.clear_selection': 'Clear selection',
|
|
80
80
|
'content.content_list.loading': 'Loading contents...',
|
|
81
81
|
'content.content_list.refreshing': 'Refreshing contents...',
|
|
82
|
+
'content.content_list.refresh': 'Refresh',
|
|
83
|
+
'content.content_list.offline': 'Offline — showing saved content.',
|
|
84
|
+
'content.content_list.stale': 'Showing saved content while it refreshes.',
|
|
85
|
+
'content.content_list.last_updated': 'Last updated {time}',
|
|
86
|
+
'content.content_list.refresh_error_title': 'The latest refresh failed — saved content is still shown',
|
|
87
|
+
'content.content_list.row_pending': 'A background workflow is already running for this content.',
|
|
88
|
+
'content.content_list.jobs': 'Background workflows',
|
|
89
|
+
'content.content_list.job_identity': 'Job {id}',
|
|
90
|
+
'content.content_list.job_queued': 'Queued',
|
|
91
|
+
'content.content_list.job_running': 'Running',
|
|
92
|
+
'content.content_list.job_succeeded': 'Completed',
|
|
93
|
+
'content.content_list.job_failed': 'Failed',
|
|
94
|
+
'content.content_list.job_progress': '{completed} of {total} completed',
|
|
95
|
+
'content.content_list.retry_job': 'Retry job',
|
|
82
96
|
'content.content_list.pagination': 'Content pages',
|
|
83
97
|
'content.content_list.error_title': 'Contents could not be loaded',
|
|
84
98
|
'content.content_list.retry': 'Retry',
|
package/dist/svelte/index.d.ts
CHANGED
|
@@ -69,6 +69,7 @@ export type ContentListProps = ComponentProps<typeof ContentList>;
|
|
|
69
69
|
export type { ContentListUrlStateBinding } from './components/ContentList.svelte';
|
|
70
70
|
export { applyContentListFilter, buildContentListColumns, buildContentListSurfaceDescriptor, CONTENT_LIST_ACTIONS_COLUMN_ID, CONTENT_LIST_COLUMN_IDS, CONTENT_LIST_HIDDEN_COLUMN_IDS, CONTENT_LIST_ROW_KEY, CONTENT_LIST_SCHEMA_VERSION, CONTENT_LIST_SELECTION_COLUMN_ID, CONTENT_LIST_STATUS_FILTER_ID, CONTENT_LIST_STATUS_OPTIONS, CONTENT_LIST_SURFACE_ID, CONTENT_LIST_TABLE_COLUMN_IDS, CONTENT_LIST_TOKEN_COLUMN_IDS, CONTENT_LIST_TYPE_FILTER_ID, CONTENT_LIST_TYPE_OPTIONS, CONTENT_LIST_UNREPRESENTABLE_OPTION, CONTENT_LIST_VISIBLE_COLUMN_IDS, type ContentListActionId, type ContentListActionOptions, type ContentListColumnId, type ContentListColumnLabels, type ContentListControllerOptions, type ContentListDataSurface, type ContentListRow, type ContentListSelectFilterState, type ContentListSurfaceDescriptorOptions, type ContentListViewMode, contentListFilters, contentListRowActions, contentStateVariant, contentStatusVariant, contentTypeLabel, createContentListController, formatContentListDate, isContentListFilterExactly, normalizeContentListTypeLock, normalizeContentToken, normalizeContentType, paginateContentListRows, readContentListFilter, readContentListSelectFilter, resolveContentHref, resolveSelectedContentListRows, resolveSelectedContents, selectableContentListRowIds, selectContentListRows, toContentListRows, } from './content-list-controller.js';
|
|
71
71
|
export { CONTENT_LIST_QUERY_DEFAULT_PAGE_SIZE, CONTENT_LIST_QUERY_DEFAULT_SORT, CONTENT_LIST_QUERY_FIELDS, CONTENT_LIST_QUERY_IDENTITY_FIELD, CONTENT_LIST_QUERY_MAX_FIELD_ID_LENGTH, CONTENT_LIST_QUERY_MAX_FILTER_NODES, CONTENT_LIST_QUERY_MAX_IN_VALUES, CONTENT_LIST_QUERY_MAX_OFFSET, CONTENT_LIST_QUERY_MAX_OR_BRANCHES, CONTENT_LIST_QUERY_MAX_PROJECTION_FIELDS, CONTENT_LIST_QUERY_MAX_REQUEST_BYTES, CONTENT_LIST_QUERY_MAX_REQUEST_ID_LENGTH, CONTENT_LIST_QUERY_MAX_VALUE_LENGTH, CONTENT_LIST_QUERY_PROJECTABLE_FIELDS, CONTENT_LIST_QUERY_PROJECTION, CONTENT_LIST_QUERY_SEARCH_FIELDS, type ContentListDataQueryRequest, type ContentListDataQueryResult, type ContentListQueryBinding, type ContentListQueryDrop, type ContentListQueryDropReason, ContentListQueryError, type ContentListQueryField, type ContentListQueryFieldType, type ContentListQueryFilter, type ContentListQueryFilterOperator, type ContentListQueryNotices, type ContentListQueryRequestOptions, type ContentListQueryScalar, type ContentListQuerySource, type ContentListQueryTotal, type ContentListQueryTranslation, type ContentListQueryTransport, type ContentListQueryTransportOptions, contentFromContentListQueryRow, contentListQueryErrorMessage, contentListQueryExactTotal, contentListQueryRequestKey, contentListQueryRowsToContents, contentListQueryTotalValue, contentListViewStateToDataQueryRequest, createContentListQueryTransport, escapeContentListQueryLikeValue, readContentListQueryNotices, resolveContentListMaxPageSize, } from './content-list-query.js';
|
|
72
|
+
export { type ContentListJob, type ContentListJobBinding, type ContentListJobController, type ContentListJobControllerOptions, type ContentListJobSnapshot, type ContentListJobStatus, type ContentListJobSubmission, type ContentListJobTarget, contentListJobAffectsQuery, createContentListJobController, } from './content-list-runtime.js';
|
|
72
73
|
export { CONTENT_LIST_SAVED_VIEW_SCHEMA_VERSION, CONTENT_LIST_SAVED_VIEW_STORAGE_PREFIX, type ContentListLocalSavedViewStore, type ContentListSavedView, type ContentListSavedViewInput, type ContentListSavedViewRestoration, type ContentListSavedViewStorage, type ContentListSavedViewStore, type ContentListSavedViewStoreOptions, createContentListMemorySavedViewStore, createContentListSavedViewStore, type RawContentListViewSnapshot, restoreContentListSavedView, toContentListSavedViewInput, } from './content-list-saved-views.js';
|
|
73
74
|
export { applyContentListViewState, CONTENT_LIST_FILTER_OPERATORS, CONTENT_LIST_MAX_PAGE_SIZE, CONTENT_LIST_PAGE_PARAM, CONTENT_LIST_PAGE_SIZE_PARAM, CONTENT_LIST_QUERYABLE_COLUMN_IDS, CONTENT_LIST_RESERVED_PARAMS, CONTENT_LIST_SEARCH_PARAM, CONTENT_LIST_SORT_PARAM, type ContentListStateDrop, type ContentListStateDropReason, type ContentListStateDropScope, type ContentListStateValidationOptions, type ContentListUrlStateOptions, type ContentListUrlStateReading, type ContentListViewStateSanitization, contentListViewStateFromSearchParams, contentListViewStateToSearchParams, mergeContentListViewStateIntoSearchParams, readContentListViewStateFromSearchParams, sanitizeContentListViewState, } from './content-list-url-state.js';
|
|
74
75
|
export type ContentContributionFormProps = ComponentProps<typeof ContentContributionForm>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/svelte/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/svelte/index.ts"],"names":[],"mappings":"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"}
|
package/dist/svelte/index.js
CHANGED
|
@@ -55,6 +55,7 @@ export { applyContentListFilter, buildContentListColumns, buildContentListSurfac
|
|
|
55
55
|
// Server-backed ContentList queries (#2452): view state → DataQueryRequest,
|
|
56
56
|
// the `POST /api/v1/contents/query` transport, and the binding seam.
|
|
57
57
|
export { CONTENT_LIST_QUERY_DEFAULT_PAGE_SIZE, CONTENT_LIST_QUERY_DEFAULT_SORT, CONTENT_LIST_QUERY_FIELDS, CONTENT_LIST_QUERY_IDENTITY_FIELD, CONTENT_LIST_QUERY_MAX_FIELD_ID_LENGTH, CONTENT_LIST_QUERY_MAX_FILTER_NODES, CONTENT_LIST_QUERY_MAX_IN_VALUES, CONTENT_LIST_QUERY_MAX_OFFSET, CONTENT_LIST_QUERY_MAX_OR_BRANCHES, CONTENT_LIST_QUERY_MAX_PROJECTION_FIELDS, CONTENT_LIST_QUERY_MAX_REQUEST_BYTES, CONTENT_LIST_QUERY_MAX_REQUEST_ID_LENGTH, CONTENT_LIST_QUERY_MAX_VALUE_LENGTH, CONTENT_LIST_QUERY_PROJECTABLE_FIELDS, CONTENT_LIST_QUERY_PROJECTION, CONTENT_LIST_QUERY_SEARCH_FIELDS, ContentListQueryError, contentFromContentListQueryRow, contentListQueryErrorMessage, contentListQueryExactTotal, contentListQueryRequestKey, contentListQueryRowsToContents, contentListQueryTotalValue, contentListViewStateToDataQueryRequest, createContentListQueryTransport, escapeContentListQueryLikeValue, readContentListQueryNotices, resolveContentListMaxPageSize, } from './content-list-query.js';
|
|
58
|
+
export { contentListJobAffectsQuery, createContentListJobController, } from './content-list-runtime.js';
|
|
58
59
|
// Saved views (#2452): a named, restorable view backed by a narrow store seam.
|
|
59
60
|
export { CONTENT_LIST_SAVED_VIEW_SCHEMA_VERSION, CONTENT_LIST_SAVED_VIEW_STORAGE_PREFIX, createContentListMemorySavedViewStore, createContentListSavedViewStore, restoreContentListSavedView, toContentListSavedViewInput, } from './content-list-saved-views.js';
|
|
60
61
|
// Shareable URL state (#2452): the validator both restore paths share.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@happyvertical/smrt-content",
|
|
3
|
-
"version": "0.43.
|
|
3
|
+
"version": "0.43.7",
|
|
4
4
|
"description": "Content processing module for SMRT framework - handles documents, web content, and media",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"smrtRawPrimitives": "strict",
|
|
@@ -55,17 +55,17 @@
|
|
|
55
55
|
"@happyvertical/utils": "^0.88.0",
|
|
56
56
|
"fast-xml-parser": "^5.10.1",
|
|
57
57
|
"yaml": "^2.9.0",
|
|
58
|
-
"@happyvertical/smrt-assets": "0.43.
|
|
59
|
-
"@happyvertical/smrt-chat": "0.43.
|
|
60
|
-
"@happyvertical/smrt-
|
|
61
|
-
"@happyvertical/smrt-
|
|
62
|
-
"@happyvertical/smrt-images": "0.43.
|
|
63
|
-
"@happyvertical/smrt-messages": "0.43.
|
|
64
|
-
"@happyvertical/smrt-
|
|
65
|
-
"@happyvertical/smrt-
|
|
66
|
-
"@happyvertical/smrt-tenancy": "0.43.
|
|
67
|
-
"@happyvertical/smrt-types": "0.43.
|
|
68
|
-
"@happyvertical/smrt-ui": "0.43.
|
|
58
|
+
"@happyvertical/smrt-assets": "0.43.7",
|
|
59
|
+
"@happyvertical/smrt-chat": "0.43.7",
|
|
60
|
+
"@happyvertical/smrt-core": "0.43.7",
|
|
61
|
+
"@happyvertical/smrt-facts": "0.43.7",
|
|
62
|
+
"@happyvertical/smrt-images": "0.43.7",
|
|
63
|
+
"@happyvertical/smrt-messages": "0.43.7",
|
|
64
|
+
"@happyvertical/smrt-prompts": "0.43.7",
|
|
65
|
+
"@happyvertical/smrt-profiles": "0.43.7",
|
|
66
|
+
"@happyvertical/smrt-tenancy": "0.43.7",
|
|
67
|
+
"@happyvertical/smrt-types": "0.43.7",
|
|
68
|
+
"@happyvertical/smrt-ui": "0.43.7"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
71
|
"svelte": "^5.56.4"
|
|
@@ -86,8 +86,8 @@
|
|
|
86
86
|
"typescript": "5.9.3",
|
|
87
87
|
"vite": "8.1.4",
|
|
88
88
|
"vitest": "4.1.10",
|
|
89
|
-
"@happyvertical/smrt-
|
|
90
|
-
"@happyvertical/smrt-
|
|
89
|
+
"@happyvertical/smrt-playground": "0.43.7",
|
|
90
|
+
"@happyvertical/smrt-vitest": "0.43.7"
|
|
91
91
|
},
|
|
92
92
|
"keywords": [
|
|
93
93
|
"ai",
|