mapples 0.2.0-beta.5 → 0.2.0-beta.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 +42 -0
- package/dist/api/agent.d.ts +84 -0
- package/dist/api/agent.js +92 -0
- package/dist/api/agent.js.map +1 -0
- package/dist/api/client.d.ts +3 -0
- package/dist/api/client.js +2 -0
- package/dist/api/client.js.map +1 -1
- package/dist/api/commit.js +1 -0
- package/dist/api/commit.js.map +1 -1
- package/dist/api/errors.js +4 -2
- package/dist/api/errors.js.map +1 -1
- package/dist/api/objects.d.ts +12 -0
- package/dist/api/objects.js +2 -0
- package/dist/api/objects.js.map +1 -1
- package/dist/commands/agent.d.ts +2 -0
- package/dist/commands/agent.js +76 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/create.js +1 -0
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/impl/adoptImpl.js +3 -0
- package/dist/commands/impl/adoptImpl.js.map +1 -1
- package/dist/commands/impl/agentImpl.d.ts +10 -0
- package/dist/commands/impl/agentImpl.js +349 -0
- package/dist/commands/impl/agentImpl.js.map +1 -0
- package/dist/commands/impl/createImpl.js +19 -0
- package/dist/commands/impl/createImpl.js.map +1 -1
- package/dist/commands/impl/initImpl.js +19 -0
- package/dist/commands/impl/initImpl.js.map +1 -1
- package/dist/commands/impl/syncImpl.js +9 -3
- package/dist/commands/impl/syncImpl.js.map +1 -1
- package/dist/commands/init.js +1 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/project/agentState.d.ts +24 -0
- package/dist/project/agentState.js +42 -0
- package/dist/project/agentState.js.map +1 -0
- package/dist/project/secret.d.ts +6 -2
- package/dist/project/secret.js +11 -5
- package/dist/project/secret.js.map +1 -1
- package/dist/services/agentInstall.d.ts +35 -0
- package/dist/services/agentInstall.js +180 -0
- package/dist/services/agentInstall.js.map +1 -0
- package/dist/services/agentLease.d.ts +2 -0
- package/dist/services/agentLease.js +32 -0
- package/dist/services/agentLease.js.map +1 -0
- package/dist/services/clientFactory.d.ts +2 -0
- package/dist/services/clientFactory.js +16 -1
- package/dist/services/clientFactory.js.map +1 -1
- package/dist/services/scaffold.js +4 -0
- package/dist/services/scaffold.js.map +1 -1
- package/dist/services/syncEngine.js +51 -18
- package/dist/services/syncEngine.js.map +1 -1
- package/dist/style/theme.js +17 -1
- package/dist/style/theme.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.js.map +1 -1
- package/package.json +3 -3
- package/templates/app.json +0 -1
- package/templates/claude/CLAUDE.md +7 -0
- package/templates/claude/mapples.md +118 -0
- package/templates/claude/mcp.json +11 -0
- package/templates/claude/skills/mapples-conventions/SKILL.md +136 -0
- package/templates/claude/skills/mapples-design/SKILL.md +218 -0
- package/templates/claude/skills/mapples-design/reference/component-library.md +128 -0
- package/templates/claude/skills/mapples-design/reference/design-tokens.md +132 -0
- package/templates/claude/skills/mapples-design/reference/layout-contract.md +227 -0
- package/templates/claude/skills/mapples-design/reference/lint-checklist.md +51 -0
- package/templates/claude/skills/mapples-design/reference/plan.md +95 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/empty-states.md +14 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/forms-and-auth.md +22 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/home-dashboard.md +14 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/list-and-detail.md +18 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/microcopy.md +20 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/navigation-chrome.md +21 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/onboarding-flow.md +15 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/screen-flow-wiring.md +37 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/settings-profile.md +16 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/stats-and-progress.md +17 -0
- package/templates/claude/skills/mapples-design/reference/playbooks/visual-hierarchy.md +18 -0
- package/templates/claude/skills/mapples-design/reference/style-guides.md +92 -0
- package/templates/claude/skills/mapples-sync/SKILL.md +93 -0
- package/templates/gitignore +2 -0
- package/templates/package.json +12 -10
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
// componentsDir. Pages and components go through the same merge loop.
|
|
10
10
|
import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'node:fs';
|
|
11
11
|
import { dirname, join, relative } from 'node:path';
|
|
12
|
-
import {
|
|
12
|
+
import { adoptPropConditions } from '@mapples/codegen';
|
|
13
|
+
import { codemodAdopt, extract, patch, propOfCondition, upsertImports, } from '@mapples/sid-ast';
|
|
13
14
|
import { isNetworkError } from '../api/client.js';
|
|
14
15
|
import { buildEnvelope, commitWithTransportRetry, mintCid, mintTxId, resolveCids, } from '../api/commit.js';
|
|
15
16
|
import { HeadMismatchError, JpatchError } from '../api/errors.js';
|
|
@@ -22,7 +23,7 @@ import { importNeedsFor } from '../codegen/imports.js';
|
|
|
22
23
|
import { instanceLinker } from '../codegen/instances.js';
|
|
23
24
|
import { deprecateFile } from '../merge/deprecate.js';
|
|
24
25
|
import { diffTree } from '../merge/diff.js';
|
|
25
|
-
import { deepEqual } from '../merge/mergePatch.js';
|
|
26
|
+
import { buildMergePatch, deepEqual } from '../merge/mergePatch.js';
|
|
26
27
|
import { threeWayMerge } from '../merge/threeWay.js';
|
|
27
28
|
import { treeToEdits } from '../merge/toEdits.js';
|
|
28
29
|
import { BaseStore } from '../project/baseStore.js';
|
|
@@ -236,8 +237,7 @@ async function bootstrap(root, client, config, report) {
|
|
|
236
237
|
targets.push({
|
|
237
238
|
id: page.id,
|
|
238
239
|
file: mapping.file,
|
|
239
|
-
emit: async () => renderFromSource(state.sources.get(page.id) ?? null, tree, mapping.file, report) ??
|
|
240
|
-
emitPage(emitInput(page.name, tree, mapping), join(root, mapping.file)),
|
|
240
|
+
emit: async () => renderFromSource(state.sources.get(page.id) ?? null, tree, mapping.file, report, page.state) ?? emitPage(emitInput(page.name, tree, mapping, page.state), join(root, mapping.file)),
|
|
241
241
|
});
|
|
242
242
|
}
|
|
243
243
|
for (const component of state.components.values()) {
|
|
@@ -246,8 +246,8 @@ async function bootstrap(root, client, config, report) {
|
|
|
246
246
|
targets.push({
|
|
247
247
|
id: component.id,
|
|
248
248
|
file: mapping.file,
|
|
249
|
-
emit: async () => renderFromSource(state.sources.get(component.id) ?? null, tree, mapping.file, report) ??
|
|
250
|
-
emitComponent({ name: component.name, root: tree }, join(root, mapping.file)),
|
|
249
|
+
emit: async () => renderFromSource(state.sources.get(component.id) ?? null, tree, mapping.file, report, component.state) ??
|
|
250
|
+
emitComponent({ name: component.name, root: tree, states: component.state }, join(root, mapping.file)),
|
|
251
251
|
});
|
|
252
252
|
}
|
|
253
253
|
const baseSources = new Map();
|
|
@@ -311,8 +311,24 @@ function placeComponents(componentsDir, components, componentsMap) {
|
|
|
311
311
|
}
|
|
312
312
|
}
|
|
313
313
|
/** The route marker for a routed page's (re)generated file. */
|
|
314
|
-
function emitInput(name, root, mapping) {
|
|
315
|
-
|
|
314
|
+
function emitInput(name, root, mapping, states) {
|
|
315
|
+
const input = { name, root, ...(states ? { states } : {}) };
|
|
316
|
+
return mapping.routeId ? { ...input, route: { id: mapping.routeId, name } } : input;
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* A container's states after a file is merged in: the Creator's own states
|
|
320
|
+
* as the server has them, and the prop states the file's code declares
|
|
321
|
+
* (`isActive && …`) in place of the prop states the server held.
|
|
322
|
+
*/
|
|
323
|
+
function withFileStates(remote, file) {
|
|
324
|
+
const out = {};
|
|
325
|
+
for (const [key, state] of Object.entries(remote)) {
|
|
326
|
+
if (propOfCondition(state.condition) === null)
|
|
327
|
+
out[key] = state;
|
|
328
|
+
}
|
|
329
|
+
for (const [key, state] of Object.entries(file))
|
|
330
|
+
out[key] = { id: key, ...state };
|
|
331
|
+
return out;
|
|
316
332
|
}
|
|
317
333
|
// ------------------------------------------------------------- remote model
|
|
318
334
|
async function buildRemoteModel(client, base, sinceSeq, report) {
|
|
@@ -402,7 +418,7 @@ async function mergeAndWrite(root, client, config, base, remote, report) {
|
|
|
402
418
|
remote: remote.pages,
|
|
403
419
|
mapping: pagesMap,
|
|
404
420
|
linker,
|
|
405
|
-
emit: (entity, mapping, tree, filePath) => emitPage(emitInput(entity.name, tree, mapping), filePath),
|
|
421
|
+
emit: (entity, mapping, tree, filePath) => emitPage(emitInput(entity.name, tree, mapping, entity.state), filePath),
|
|
406
422
|
mergedOut: mergedBase.pages,
|
|
407
423
|
baseSources: base.sources,
|
|
408
424
|
remoteSources: remote.sources,
|
|
@@ -418,7 +434,7 @@ async function mergeAndWrite(root, client, config, base, remote, report) {
|
|
|
418
434
|
remote: remote.components,
|
|
419
435
|
mapping: componentsMap,
|
|
420
436
|
linker,
|
|
421
|
-
emit: (entity, _mapping, tree, filePath) => emitComponent({ name: entity.name, root: tree }, filePath),
|
|
437
|
+
emit: (entity, _mapping, tree, filePath) => emitComponent({ name: entity.name, root: tree, states: entity.state }, filePath),
|
|
422
438
|
mergedOut: mergedBase.components,
|
|
423
439
|
baseSources: base.sources,
|
|
424
440
|
remoteSources: remote.sources,
|
|
@@ -462,7 +478,7 @@ async function mergeFiles(args) {
|
|
|
462
478
|
});
|
|
463
479
|
};
|
|
464
480
|
/** A container's file text: its stored source patched to `tree`, else generated. */
|
|
465
|
-
const fileTextFor = async (entity, mapping, remoteSource, tree, filePath) => renderFromSource(remoteSource, tree, mapping.file, report) ??
|
|
481
|
+
const fileTextFor = async (entity, mapping, remoteSource, tree, filePath) => renderFromSource(remoteSource, tree, mapping.file, report, entity.state) ??
|
|
466
482
|
(await emit(entity, mapping, tree, filePath));
|
|
467
483
|
const ids = new Set([...base.keys(), ...remote.keys()]);
|
|
468
484
|
for (const id of ids) {
|
|
@@ -485,6 +501,8 @@ async function mergeFiles(args) {
|
|
|
485
501
|
// what edits to the file are computed against.
|
|
486
502
|
let localFile = null;
|
|
487
503
|
let fileSource = null;
|
|
504
|
+
/** The prop states the file's code declares (null: no file was read). */
|
|
505
|
+
let fileStates = null;
|
|
488
506
|
/**
|
|
489
507
|
* The file as the developer left it, after import healing (a stripped
|
|
490
508
|
* import is an interrupted sync's damage, not a code edit) and before
|
|
@@ -532,6 +550,7 @@ async function mergeFiles(args) {
|
|
|
532
550
|
for (const w of extracted.warnings)
|
|
533
551
|
report.warnings.push({ ...w, file: mapping.file });
|
|
534
552
|
local = extracted.dom;
|
|
553
|
+
fileStates = extracted.states;
|
|
535
554
|
if (local) {
|
|
536
555
|
// A hand-written `$sid` that is neither a server id nor a ULID-shaped
|
|
537
556
|
// `c_` placeholder fails the server's envelope validation and takes
|
|
@@ -617,6 +636,10 @@ async function mergeFiles(args) {
|
|
|
617
636
|
delete mappings[id];
|
|
618
637
|
continue;
|
|
619
638
|
}
|
|
639
|
+
// The file owns the states its prop tests declare; the Creator the rest.
|
|
640
|
+
const remoteStates = remoteEntity.state ?? {};
|
|
641
|
+
const mergedStates = fileStates === null ? remoteStates : withFileStates(remoteStates, fileStates);
|
|
642
|
+
const mergedEntity = { ...remoteEntity, state: mergedStates };
|
|
620
643
|
// Write the merged view into the file — in the file's language.
|
|
621
644
|
const mergedFile = linker.unlink(merged, mapping.file, warnInto(report, mapping.file));
|
|
622
645
|
/** The file's text after this sync. */
|
|
@@ -634,7 +657,7 @@ async function mergeFiles(args) {
|
|
|
634
657
|
baseSource !== null &&
|
|
635
658
|
withoutRouteMarker(originalSource) !== withoutRouteMarker(baseSource.text);
|
|
636
659
|
const fromRemote = remoteTextChanged && remoteSource !== null
|
|
637
|
-
? renderFromSource(remoteSource, mergedFile, mapping.file, report)
|
|
660
|
+
? renderFromSource(remoteSource, mergedFile, mapping.file, report, mergedStates)
|
|
638
661
|
: null;
|
|
639
662
|
if (fromRemote !== null) {
|
|
640
663
|
if (localTextChanged) {
|
|
@@ -669,7 +692,7 @@ async function mergeFiles(args) {
|
|
|
669
692
|
// touched by an interrupted earlier sync may be missing imports already.
|
|
670
693
|
const healed = upsertImports(fileSource, importNeedsFor(mergedFile));
|
|
671
694
|
if (edits.length > 0 || healed !== fileSource) {
|
|
672
|
-
const { source: patched, warnings } = patch(healed, edits);
|
|
695
|
+
const { source: patched, warnings } = patch(healed, edits, { states: mergedStates });
|
|
673
696
|
for (const w of warnings)
|
|
674
697
|
report.warnings.push({ ...w, file: mapping.file });
|
|
675
698
|
writeFileSync(filePath, patched);
|
|
@@ -684,14 +707,21 @@ async function mergeFiles(args) {
|
|
|
684
707
|
}
|
|
685
708
|
else {
|
|
686
709
|
mkdirSync(dirname(filePath), { recursive: true });
|
|
687
|
-
written = await fileTextFor(
|
|
710
|
+
written = await fileTextFor(mergedEntity, mapping, remoteSource, mergedFile, filePath);
|
|
688
711
|
writeFileSync(filePath, written);
|
|
689
712
|
report.files.push({ file: mapping.file, action: fileExists ? 'regenerated' : 'created' });
|
|
690
713
|
}
|
|
691
714
|
recordSource(id, remoteSource, written, localTextChanged);
|
|
692
715
|
// Push = local changes rebased onto remote.
|
|
693
716
|
pushOps.push(...diffTree(remoteRoot, merged));
|
|
694
|
-
|
|
717
|
+
const statePatch = buildMergePatch({ state: remoteStates }, { state: mergedStates });
|
|
718
|
+
if (statePatch !== null) {
|
|
719
|
+
pushOps.push({ op: 'update', entity: kind.entity, id, patch: statePatch });
|
|
720
|
+
}
|
|
721
|
+
const next = { ...mergedEntity, root: merged };
|
|
722
|
+
if (Object.keys(mergedStates).length === 0)
|
|
723
|
+
delete next.state;
|
|
724
|
+
mergedOut.set(id, next);
|
|
695
725
|
mapping.name = remoteEntity.name;
|
|
696
726
|
}
|
|
697
727
|
}
|
|
@@ -708,7 +738,7 @@ function warnInto(report, file) {
|
|
|
708
738
|
* the text as stored. Null when the text holds no `$sid` root, which is
|
|
709
739
|
* reported and regenerated rather than silently guessed.
|
|
710
740
|
*/
|
|
711
|
-
function renderFromSource(source, tree, file, report) {
|
|
741
|
+
function renderFromSource(source, tree, file, report, docStates) {
|
|
712
742
|
if (source === null)
|
|
713
743
|
return null;
|
|
714
744
|
const extracted = extract(source.text);
|
|
@@ -717,11 +747,14 @@ function renderFromSource(source, tree, file, report) {
|
|
|
717
747
|
return null;
|
|
718
748
|
}
|
|
719
749
|
fillNonLiteralProps(extracted.dom, tree, extracted.warnings);
|
|
750
|
+
// What renders under a prop test is the text's to say: the document may
|
|
751
|
+
// predate it, and must not strip a guard or a prop-state style from code.
|
|
752
|
+
const adopted = adoptPropConditions(tree, extracted.dom, extracted.states, docStates);
|
|
720
753
|
const healed = upsertImports(source.text, importNeedsFor(tree));
|
|
721
|
-
const edits = treeToEdits(extracted.dom, tree);
|
|
754
|
+
const edits = treeToEdits(extracted.dom, adopted.tree);
|
|
722
755
|
if (edits.length === 0)
|
|
723
756
|
return healed;
|
|
724
|
-
const { source: patched, warnings } = patch(healed, edits);
|
|
757
|
+
const { source: patched, warnings } = patch(healed, edits, { states: adopted.states });
|
|
725
758
|
for (const w of warnings)
|
|
726
759
|
report.warnings.push({ ...w, file });
|
|
727
760
|
return patched;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncEngine.js","sourceRoot":"","sources":["../../src/services/syncEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"syncEngine.js","sourceRoot":"","sources":["../../src/services/syncEngine.ts"],"names":[],"mappings":"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"}
|
package/dist/style/theme.js
CHANGED
|
@@ -13,6 +13,17 @@ const ENTITY_BY_SECTION = {
|
|
|
13
13
|
typography: 'Typography',
|
|
14
14
|
sizing: 'Sizing',
|
|
15
15
|
};
|
|
16
|
+
// The style entities are per-project singletons with fixed ids (RFC-0001
|
|
17
|
+
// genesis manifest; service--mapplesorg api/canvas/engine.py). An update op
|
|
18
|
+
// must name its target — the server rejects an id-less update (422). Their
|
|
19
|
+
// blobs are `{id, data}`: the document lives under `data`, so a patch does
|
|
20
|
+
// too — `typography` and `sizing` are structural keys at the top level and
|
|
21
|
+
// a flat patch of those documents is refused (PATCH_INVALID).
|
|
22
|
+
const ID_BY_SECTION = {
|
|
23
|
+
theme: 'th_default',
|
|
24
|
+
typography: 'ty_default',
|
|
25
|
+
sizing: 'sz_default',
|
|
26
|
+
};
|
|
16
27
|
export function renderThemeFile(style) {
|
|
17
28
|
const print = (v) => JSON.stringify(v, null, 2).replace(/"([A-Za-z_$][\w$]*)":/g, '$1:');
|
|
18
29
|
return [
|
|
@@ -110,7 +121,12 @@ export function syncStyleFile(root, base, remote, report) {
|
|
|
110
121
|
for (const section of SECTIONS) {
|
|
111
122
|
const push = buildMergePatch(remoteStyle[section], merged[section]);
|
|
112
123
|
if (push !== null) {
|
|
113
|
-
pushOps.push({
|
|
124
|
+
pushOps.push({
|
|
125
|
+
op: 'update',
|
|
126
|
+
entity: ENTITY_BY_SECTION[section],
|
|
127
|
+
id: ID_BY_SECTION[section],
|
|
128
|
+
patch: { data: push },
|
|
129
|
+
});
|
|
114
130
|
}
|
|
115
131
|
}
|
|
116
132
|
const desired = renderThemeFile(merged);
|
package/dist/style/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/style/theme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/style/theme.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -60,6 +60,8 @@ export interface EnvelopeMeta {
|
|
|
60
60
|
actor?: string;
|
|
61
61
|
origin?: string;
|
|
62
62
|
ts?: string;
|
|
63
|
+
/** Free-text commit summary shown in Creator's history (the server stores it verbatim, capped). */
|
|
64
|
+
summary?: string;
|
|
63
65
|
}
|
|
64
66
|
export interface Envelope {
|
|
65
67
|
protocol: 'jpatch/1';
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,sBAAsB;AAgBtB,8FAA8F;AAC9F,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAU,CAAC;AAKhF,mFAAmF;AACnF,MAAM,UAAU,SAAS,CAAC,IAAiB;IACzC,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACzF,IAAI,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAC7F,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,aAAa,CAAC,IAAiB;IAC7C,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;QAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC;AAcD,MAAM,UAAU,YAAY,CAAC,IAAmB;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;AAChC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,sBAAsB;AAgBtB,8FAA8F;AAC9F,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAU,CAAC;AAKhF,mFAAmF;AACnF,MAAM,UAAU,SAAS,CAAC,IAAiB;IACzC,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACzF,IAAI,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAC7F,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,aAAa,CAAC,IAAiB;IAC7C,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;QAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;QAC/B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC;AAcD,MAAM,UAAU,YAAY,CAAC,IAAmB;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;AAChC,CAAC;AAmED,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,OAAO,OAAO,WAAW,EAAE,CAAC;AAC9B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mapples",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.7",
|
|
4
4
|
"description": "Mapples CLI — two-way code sync between Creator and your Expo project",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Oleksandr Soloviov <oleksolv@gmail.com>",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"clean": "rm -rf dist *.tsbuildinfo"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@mapples/codegen": "^
|
|
22
|
-
"@mapples/sid-ast": "^
|
|
21
|
+
"@mapples/codegen": "^1.6.0-beta.20260916111702",
|
|
22
|
+
"@mapples/sid-ast": "^1.6.0-beta.20260916111702",
|
|
23
23
|
"@noble/hashes": "^1.6.1",
|
|
24
24
|
"axios": "^1.7.9",
|
|
25
25
|
"chalk": "^5.4.1",
|
package/templates/app.json
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<!-- GENERATED by Mapples __CLI_VERSION__ — re-run npx -y mapples@__CLI_VERSION__ agent install --force to refresh -->
|
|
2
|
+
# Project instructions
|
|
3
|
+
|
|
4
|
+
This Expo app is linked to a Mapples Creator project. The Mapples conventions
|
|
5
|
+
(file layout, `$sid` rules, sync workflow, design skills) live in the file below.
|
|
6
|
+
|
|
7
|
+
@.claude/mapples.md
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
<!-- GENERATED by Mapples __CLI_VERSION__ — re-run npx -y mapples@__CLI_VERSION__ agent install --force to refresh -->
|
|
2
|
+
# Mapples conventions
|
|
3
|
+
|
|
4
|
+
This app is linked to a **Mapples Creator** project (visual editor at creator.mapples.io).
|
|
5
|
+
The link is the `mapples` CLI: screens, components and design tokens are TSX and TS files in
|
|
6
|
+
this repo, and `npx -y mapples@__CLI_VERSION__ sync` pushes your edits to Creator and pulls Creator's edits back
|
|
7
|
+
(two-way, 3-way merged). Every write to the project goes through `npx -y mapples@__CLI_VERSION__ sync` — there is no
|
|
8
|
+
other write path from here. The `mapples` MCP server (`.mcp.json`) is **read-only**: use it to
|
|
9
|
+
look at the project (style tokens, assets); never expect it to change anything.
|
|
10
|
+
|
|
11
|
+
## Skills
|
|
12
|
+
|
|
13
|
+
- `/mapples-design` — build the whole app from a product brief (tokens → plan → screens → wiring → review).
|
|
14
|
+
- `mapples-conventions` — how Mapples files are written (auto-applies when you edit them).
|
|
15
|
+
- `mapples-sync` — running `npx -y mapples@__CLI_VERSION__ sync`, reading its JSON report, handling conflicts and exit codes.
|
|
16
|
+
|
|
17
|
+
## Where things live
|
|
18
|
+
|
|
19
|
+
| What | Where | Owner |
|
|
20
|
+
| --- | --- | --- |
|
|
21
|
+
| A screen in the navigation | `__ROUTES_DIR__/<segment>.tsx` (expo-router route file) | you + Creator (merged) |
|
|
22
|
+
| A screen outside the navigation | `__PAGES_DIR__/<Name>.tsx` | you + Creator (merged) |
|
|
23
|
+
| A navigator (stack / tabs / drawer) | `__ROUTES_DIR__/**/_layout.tsx` | **CLI** — regenerated every sync |
|
|
24
|
+
| A reusable Creator component | `__COMPONENTS_DIR__/<Name>.tsx` | you + Creator (merged) |
|
|
25
|
+
| Design tokens (theme, typography, sizing) | `mapples/theme.ts` | you + Creator (merged per key) |
|
|
26
|
+
| Assets | `mapples/assets/` + `assetMap.ts` | **CLI** |
|
|
27
|
+
| Project state (ids, base, head) | `.mapples/` | **CLI** — never edit |
|
|
28
|
+
| Product brief, chosen style, plan | `mapples/design.md` | you |
|
|
29
|
+
|
|
30
|
+
Read `.mapples/config.json` for the real `routesDir` / `pagesDir` / `componentsDir` of this app.
|
|
31
|
+
|
|
32
|
+
## The rules that cannot be broken
|
|
33
|
+
|
|
34
|
+
1. **`$sid` is opaque.** Every element Creator knows carries `$sid="nd_…"`. Never invent,
|
|
35
|
+
renumber, duplicate, move between elements or delete a `$sid`. New elements get **no**
|
|
36
|
+
`$sid` — `npx -y mapples@__CLI_VERSION__ sync` tags them and rewrites the file. Deleting an element deletes it in
|
|
37
|
+
Creator on the next sync (that is a real delete — say so when you do it).
|
|
38
|
+
2. **Never touch CLI-owned files**: `_layout.tsx` under the routes dir, `assetMap.ts`, anything
|
|
39
|
+
in `.mapples/`, and `_depr_*` files. The one exception is the handshake for a new route
|
|
40
|
+
group: a `_layout.tsx` you create in a new `(group)/` directory must start with
|
|
41
|
+
`// GENERATED by Mapples` so the CLI adopts its navigator kind and owns it from then on.
|
|
42
|
+
3. **Never delete `.mapples/head`, `.mapples/base/` or `.mapples/pages.json`** — they are the
|
|
43
|
+
sync base; losing them turns the next sync into a cold bootstrap.
|
|
44
|
+
4. **Sync after every meaningful step** — `npx -y mapples@__CLI_VERSION__ sync --yes --json` — and read the report.
|
|
45
|
+
Exit 2 means conflicts (your file was kept as `_depr_<ts>_<name>.tsx.old`, the file was
|
|
46
|
+
regenerated from Creator: re-apply your intent onto the new file, never restore the old one).
|
|
47
|
+
5. **A `_depr_` file is a signal, not a resource.** Diff it against the regenerated file, carry
|
|
48
|
+
the intent over, leave the `.old` file alone (the user deletes it).
|
|
49
|
+
|
|
50
|
+
## Writing a screen
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
// __ROUTES_DIR__/index.tsx — route files get a `// mapples-route:` marker from the CLI; keep it.
|
|
54
|
+
import { ScrollView, Typography, View } from '@mapples/ui';
|
|
55
|
+
import { Button, Card, SectionHeader } from '@mapples/components';
|
|
56
|
+
import { Styler } from '@mapples/style';
|
|
57
|
+
|
|
58
|
+
export default function Home() {
|
|
59
|
+
return (
|
|
60
|
+
<ScrollView styled={{ contentContainerStyle: styles.content }}>
|
|
61
|
+
<Typography text="Good morning, Alex" variant="Headline" styled={{ style: styles.title }} />
|
|
62
|
+
<SectionHeader title="Today" actionLabel="See all" />
|
|
63
|
+
<Card variant="elevated" styled={{ style: styles.card }}>
|
|
64
|
+
<Typography text="Two habits left" variant="Body" />
|
|
65
|
+
</Card>
|
|
66
|
+
<Button
|
|
67
|
+
label="Start a session"
|
|
68
|
+
variant="filled"
|
|
69
|
+
size="lg"
|
|
70
|
+
fullWidth
|
|
71
|
+
$actions={{ onPress: { type: 'mapples:navigate', staticData: { pageUuid: '<uuid>' } } }}
|
|
72
|
+
/>
|
|
73
|
+
</ScrollView>
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
const styles = Styler.create({
|
|
78
|
+
content: { padding: 'sizing.screenPadding', gap: 'sizing.lg', paddingBottom: 32 },
|
|
79
|
+
title: { color: 'theme.text.primary' },
|
|
80
|
+
card: { gap: 'sizing.sm' },
|
|
81
|
+
});
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
- Primitives (`View`, `ScrollView`, `Typography`, `Image`, `Icon`, `Pressable`, `TextInput`, …)
|
|
85
|
+
come from `@mapples/ui`; the themed library (`Button`, `Card`, `ListItem`, `InputField`, …)
|
|
86
|
+
from `@mapples/components` — the full table is in the `mapples-conventions` skill.
|
|
87
|
+
- Every style is a literal object hoisted into `const styles = Styler.create({...})` and
|
|
88
|
+
referenced as `styled={{ style: styles.x }}` (slots: `style`, `styleTypography`, `styleSvg`,
|
|
89
|
+
`styleImage`, `contentContainerStyle`, `placeholderTextColor`). Creator reads the dictionary.
|
|
90
|
+
- Token strings replace raw values: colors `'theme.primary.main'`, `'theme.text.secondary'`,
|
|
91
|
+
`'theme.background.card'`; spacing `'sizing.md'`, `'sizing.screenPadding'`, or `'*4'` (4 × base).
|
|
92
|
+
Raw hex only inside gradients (tokens do not resolve there).
|
|
93
|
+
- Text is always `Typography` with `text` + `variant` (`Headline`, `Subtitle`, `Body`, `Caption`,
|
|
94
|
+
`Overline`, `Button`, `Link`, `Label`, `Code`). Never `Text`, never JSX children text.
|
|
95
|
+
- Props are literals. An expression prop (`{count}`) is kept in code only and reported as
|
|
96
|
+
`NON_LITERAL_PROP`; Creator shows the last literal value.
|
|
97
|
+
- Navigation from code: `$actions={{ onPress: { type: 'mapples:navigate', staticData: { pageUuid } } }}`
|
|
98
|
+
on the element's primary event. The target's `pageUuid` is the `uuid` field of
|
|
99
|
+
`.mapples/base/pages/<pageId>.json`; `<pageId>` is the key in `.mapples/pages.json` whose
|
|
100
|
+
`file` is the target route file. Add a `router.push('/<segment>')` `onPress` handler too so
|
|
101
|
+
the built app navigates.
|
|
102
|
+
- Images: `<Image source="https://picsum.photos/seed/<topic>/<w>/<h>" contentFit="cover" />`
|
|
103
|
+
with an explicit width/height in `styled.style`. Creator asset references (`$refs`) are
|
|
104
|
+
Creator-side; do not invent them.
|
|
105
|
+
|
|
106
|
+
## Design tokens
|
|
107
|
+
|
|
108
|
+
`mapples/theme.ts` exports three literal objects — `theme`, `typography`, `sizing` — with the
|
|
109
|
+
exact shape documented in `.claude/skills/mapples-design/reference/design-tokens.md`. Creating
|
|
110
|
+
or editing the file and syncing pushes the tokens to Creator (missing file + empty project = no-op).
|
|
111
|
+
|
|
112
|
+
## The agent lease
|
|
113
|
+
|
|
114
|
+
While `/mapples-design` runs, `npx -y mapples@__CLI_VERSION__ agent start` holds a lease on the project so Creator shows
|
|
115
|
+
"Claude Code is working" and locks its own chat. `npx -y mapples@__CLI_VERSION__ agent step` reports progress;
|
|
116
|
+
`npx -y mapples@__CLI_VERSION__ agent stop` releases. `.mapples/agent.json` exists while the lease is held and labels
|
|
117
|
+
every sync commit "Claude Code: <step>". Exit codes: `3` = the lease is gone (Creator
|
|
118
|
+
disconnected you or it expired — stop and tell the user), `4` = another agent holds the project.
|