store-only apps edit their listing on the store (storebound listing live / set: old -> new per field with the checks, a PATCH of only the edited fields; serve listing.set is the one store-only write, its token bound to the store ids; policy.rs STORE_ONLY_WRITES, write_with_confirm for store targets); screenshot captions per language and scene edited as a text edit of the shots copy JSON (JSON files keep their layout); Play content rating, target audience and App content answers in App info; docs/console-parity.md after the editors (73 rows: 55 complete, 18 with the reason) and tests/console-parity.test.ts keeping it honest
This commit is contained in:
parent
3cea2af4e1
commit
7ac028421a
33 changed files with 852 additions and 157 deletions
|
|
@ -9,6 +9,8 @@
|
|||
// Reviewed sections (no marker) are kept unless --force; a section's What's new is kept.
|
||||
// storebound listing check [--json] limits, keyword rules, untranslated and draft sections; exit 1 on a problem
|
||||
// storebound listing reviewed --lang de-DE[,ja] | --all [--dry] a human read the draft: remove its marker
|
||||
// storebound listing live [--json] | set --store play|apple --lang <code> --fields '<json>' [--dry] the texts straight on
|
||||
// the stores, without listing files (store-only apps in the desktop): cli/listing-store.ts
|
||||
// --to / --from / --lang take config language ids, App Store locales or Play codes. Local files only: nothing is sent
|
||||
// to a store (apple listing / play listing push them after `storebound check`).
|
||||
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
||||
|
|
@ -211,5 +213,6 @@ export async function run(ctx: Ctx): Promise<void> {
|
|||
if (sub === 'translate') return translate(ctx);
|
||||
if (sub === 'check') return check(ctx);
|
||||
if (sub === 'reviewed') return reviewed(ctx);
|
||||
throw new Error('usage: storebound listing translate --to <languages> [--from <language>] [--translate "<command>"] [--dry] | check | reviewed --lang <ids>');
|
||||
if (sub === 'live' || sub === 'set') return (await import('./listing-store')).run(ctx, sub);
|
||||
throw new Error('usage: storebound listing translate --to <languages> [--from <language>] [--translate "<command>"] [--dry] | check | reviewed --lang <ids> | live [--json] | set --store play|apple --lang <code> --fields \'<json>\' [--dry]');
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue