mythik 0.1.2 → 0.1.3
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 +47 -23
- package/dist/actions/dispatcher.d.ts.map +1 -1
- package/dist/actions/dispatcher.js +10 -0
- package/dist/actions/dispatcher.js.map +1 -1
- package/dist/expressions/handlers/let.d.ts +6 -0
- package/dist/expressions/handlers/let.d.ts.map +1 -1
- package/dist/expressions/handlers/let.js +29 -4
- package/dist/expressions/handlers/let.js.map +1 -1
- package/dist/expressions/handlers/template.d.ts.map +1 -1
- package/dist/expressions/handlers/template.js +2 -1
- package/dist/expressions/handlers/template.js.map +1 -1
- package/dist/security/api-spec-validator.d.ts.map +1 -1
- package/dist/security/api-spec-validator.js +4 -0
- package/dist/security/api-spec-validator.js.map +1 -1
- package/dist/security/spec-validator.d.ts.map +1 -1
- package/dist/security/spec-validator.js +43 -31
- package/dist/security/spec-validator.js.map +1 -1
- package/dist/server.d.ts +7 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +3 -0
- package/dist/server.js.map +1 -1
- package/dist/spec-stores/sql-versioned.d.ts +38 -0
- package/dist/spec-stores/sql-versioned.d.ts.map +1 -0
- package/dist/spec-stores/sql-versioned.js +186 -0
- package/dist/spec-stores/sql-versioned.js.map +1 -0
- package/dist/spec-stores/sql.d.ts +21 -0
- package/dist/spec-stores/sql.d.ts.map +1 -0
- package/dist/spec-stores/sql.js +65 -0
- package/dist/spec-stores/sql.js.map +1 -0
- package/dist/spec-stores/sqlserver-versioned.d.ts +5 -30
- package/dist/spec-stores/sqlserver-versioned.d.ts.map +1 -1
- package/dist/spec-stores/sqlserver-versioned.js +16 -245
- package/dist/spec-stores/sqlserver-versioned.js.map +1 -1
- package/dist/spec-stores/sqlserver.d.ts +4 -11
- package/dist/spec-stores/sqlserver.d.ts.map +1 -1
- package/dist/spec-stores/sqlserver.js +16 -66
- package/dist/spec-stores/sqlserver.js.map +1 -1
- package/dist/sql/ddl.d.ts +7 -0
- package/dist/sql/ddl.d.ts.map +1 -0
- package/dist/sql/ddl.js +134 -0
- package/dist/sql/ddl.js.map +1 -0
- package/dist/sql/drivers/mysql.d.ts +25 -0
- package/dist/sql/drivers/mysql.d.ts.map +1 -0
- package/dist/sql/drivers/mysql.js +327 -0
- package/dist/sql/drivers/mysql.js.map +1 -0
- package/dist/sql/drivers/postgres.d.ts +30 -0
- package/dist/sql/drivers/postgres.d.ts.map +1 -0
- package/dist/sql/drivers/postgres.js +319 -0
- package/dist/sql/drivers/postgres.js.map +1 -0
- package/dist/sql/drivers/sqlite.d.ts +28 -0
- package/dist/sql/drivers/sqlite.d.ts.map +1 -0
- package/dist/sql/drivers/sqlite.js +367 -0
- package/dist/sql/drivers/sqlite.js.map +1 -0
- package/dist/sql/drivers/sqlserver.d.ts +46 -0
- package/dist/sql/drivers/sqlserver.d.ts.map +1 -0
- package/dist/sql/drivers/sqlserver.js +403 -0
- package/dist/sql/drivers/sqlserver.js.map +1 -0
- package/dist/sql/errors.d.ts +12 -0
- package/dist/sql/errors.d.ts.map +1 -0
- package/dist/sql/errors.js +13 -0
- package/dist/sql/errors.js.map +1 -0
- package/dist/sql/factory.d.ts +3 -0
- package/dist/sql/factory.d.ts.map +1 -0
- package/dist/sql/factory.js +24 -0
- package/dist/sql/factory.js.map +1 -0
- package/dist/sql/index.d.ts +17 -0
- package/dist/sql/index.d.ts.map +1 -0
- package/dist/sql/index.js +9 -0
- package/dist/sql/index.js.map +1 -0
- package/dist/sql/named-params.d.ts +8 -0
- package/dist/sql/named-params.d.ts.map +1 -0
- package/dist/sql/named-params.js +182 -0
- package/dist/sql/named-params.js.map +1 -0
- package/dist/sql/types.d.ts +49 -0
- package/dist/sql/types.d.ts.map +1 -0
- package/dist/sql/types.js +2 -0
- package/dist/sql/types.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/docs/consumer/README.md +1 -1
- package/docs/consumer/WHERE-TO-LOOK.md +4 -4
- package/docs/consumer/ai-context-api.md +44 -0
- package/docs/consumer/ai-context-runtime-semantics.md +12 -9
- package/docs/consumer/ai-context.md +124 -50
- package/docs/consumer/reference-doc.md +41 -24
- package/docs/wiki/compiled/README.md +1 -1
- package/docs/wiki/compiled/_lint.md +13 -8
- package/docs/wiki/compiled/concept-action-chains.md +62 -24
- package/docs/wiki/compiled/concept-package-layout.md +5 -3
- package/docs/wiki/compiled/concept-public-package-names.md +4 -2
- package/docs/wiki/compiled/concept-shape-animations.md +1 -1
- package/docs/wiki/compiled/concept-spec-stores-catalog.md +28 -16
- package/docs/wiki/compiled/concept-transactions.md +20 -12
- package/docs/wiki/compiled/expression-let-ref.md +36 -18
- package/docs/wiki/compiled/expression-template.md +28 -17
- package/package.json +7 -2
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { SqlDriverError } from './errors.js';
|
|
2
|
+
function isNameStart(char) {
|
|
3
|
+
return char !== undefined && /[A-Za-z_]/.test(char);
|
|
4
|
+
}
|
|
5
|
+
function isNamePart(char) {
|
|
6
|
+
return char !== undefined && /[A-Za-z0-9_]/.test(char);
|
|
7
|
+
}
|
|
8
|
+
function requireParam(dialect, params, name) {
|
|
9
|
+
if (!Object.prototype.hasOwnProperty.call(params, name)) {
|
|
10
|
+
throw new SqlDriverError(`Missing SQL parameter "${name}"`, {
|
|
11
|
+
code: 'SQL_PARAM_MISSING',
|
|
12
|
+
dialect,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
return params[name];
|
|
16
|
+
}
|
|
17
|
+
export function compileNamedParams(dialect, sql, params) {
|
|
18
|
+
let output = '';
|
|
19
|
+
const positionalValues = [];
|
|
20
|
+
const sqlServerValues = {};
|
|
21
|
+
const postgresIndexes = new Map();
|
|
22
|
+
function placeholder(name) {
|
|
23
|
+
const value = requireParam(dialect, params, name);
|
|
24
|
+
if (dialect === 'sqlserver') {
|
|
25
|
+
sqlServerValues[name] = value;
|
|
26
|
+
return `@${name}`;
|
|
27
|
+
}
|
|
28
|
+
if (dialect === 'postgres') {
|
|
29
|
+
let index = postgresIndexes.get(name);
|
|
30
|
+
if (index === undefined) {
|
|
31
|
+
positionalValues.push(value);
|
|
32
|
+
index = positionalValues.length;
|
|
33
|
+
postgresIndexes.set(name, index);
|
|
34
|
+
}
|
|
35
|
+
return `$${index}`;
|
|
36
|
+
}
|
|
37
|
+
positionalValues.push(value);
|
|
38
|
+
return '?';
|
|
39
|
+
}
|
|
40
|
+
for (let index = 0; index < sql.length; index += 1) {
|
|
41
|
+
const char = sql[index];
|
|
42
|
+
const next = sql[index + 1];
|
|
43
|
+
if (dialect === 'postgres' && (char === 'E' || char === 'e') && next === "'") {
|
|
44
|
+
output += char + next;
|
|
45
|
+
index += 2;
|
|
46
|
+
while (index < sql.length) {
|
|
47
|
+
const current = sql[index];
|
|
48
|
+
output += current;
|
|
49
|
+
if (current === '\\' && index + 1 < sql.length) {
|
|
50
|
+
output += sql[index + 1];
|
|
51
|
+
index += 2;
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
if (current === "'" && sql[index + 1] === "'") {
|
|
55
|
+
output += sql[index + 1];
|
|
56
|
+
index += 2;
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
if (current === "'")
|
|
60
|
+
break;
|
|
61
|
+
index += 1;
|
|
62
|
+
}
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
if (char === "'") {
|
|
66
|
+
output += char;
|
|
67
|
+
index += 1;
|
|
68
|
+
while (index < sql.length) {
|
|
69
|
+
const current = sql[index];
|
|
70
|
+
output += current;
|
|
71
|
+
if (current === "'" && sql[index + 1] === "'") {
|
|
72
|
+
output += sql[index + 1];
|
|
73
|
+
index += 2;
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
if (current === "'")
|
|
77
|
+
break;
|
|
78
|
+
index += 1;
|
|
79
|
+
}
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
if (char === '"') {
|
|
83
|
+
output += char;
|
|
84
|
+
index += 1;
|
|
85
|
+
while (index < sql.length) {
|
|
86
|
+
const current = sql[index];
|
|
87
|
+
output += current;
|
|
88
|
+
if (current === '"' && sql[index + 1] === '"') {
|
|
89
|
+
output += sql[index + 1];
|
|
90
|
+
index += 2;
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
if (current === '"')
|
|
94
|
+
break;
|
|
95
|
+
index += 1;
|
|
96
|
+
}
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
if (char === '-' && next === '-') {
|
|
100
|
+
output += char + next;
|
|
101
|
+
index += 2;
|
|
102
|
+
while (index < sql.length) {
|
|
103
|
+
const current = sql[index];
|
|
104
|
+
output += current;
|
|
105
|
+
if (current === '\n')
|
|
106
|
+
break;
|
|
107
|
+
index += 1;
|
|
108
|
+
}
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
if (char === '/' && next === '*') {
|
|
112
|
+
output += char + next;
|
|
113
|
+
index += 2;
|
|
114
|
+
while (index < sql.length) {
|
|
115
|
+
const current = sql[index];
|
|
116
|
+
const after = sql[index + 1];
|
|
117
|
+
output += current;
|
|
118
|
+
if (current === '*' && after === '/') {
|
|
119
|
+
output += after;
|
|
120
|
+
index += 1;
|
|
121
|
+
break;
|
|
122
|
+
}
|
|
123
|
+
index += 1;
|
|
124
|
+
}
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
if (dialect === 'sqlserver' && char === '[') {
|
|
128
|
+
output += char;
|
|
129
|
+
index += 1;
|
|
130
|
+
while (index < sql.length) {
|
|
131
|
+
const current = sql[index];
|
|
132
|
+
output += current;
|
|
133
|
+
if (current === ']' && sql[index + 1] === ']') {
|
|
134
|
+
output += sql[index + 1];
|
|
135
|
+
index += 2;
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
if (current === ']')
|
|
139
|
+
break;
|
|
140
|
+
index += 1;
|
|
141
|
+
}
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
if (char === '`') {
|
|
145
|
+
output += char;
|
|
146
|
+
index += 1;
|
|
147
|
+
while (index < sql.length) {
|
|
148
|
+
const current = sql[index];
|
|
149
|
+
output += current;
|
|
150
|
+
if (current === '`' && sql[index + 1] === '`') {
|
|
151
|
+
output += sql[index + 1];
|
|
152
|
+
index += 2;
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
if (current === '`')
|
|
156
|
+
break;
|
|
157
|
+
index += 1;
|
|
158
|
+
}
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
if (char === '@' && next === '@') {
|
|
162
|
+
output += '@@';
|
|
163
|
+
index += 1;
|
|
164
|
+
continue;
|
|
165
|
+
}
|
|
166
|
+
if (char === '@' && isNameStart(next)) {
|
|
167
|
+
let end = index + 2;
|
|
168
|
+
while (isNamePart(sql[end]))
|
|
169
|
+
end += 1;
|
|
170
|
+
const name = sql.slice(index + 1, end);
|
|
171
|
+
output += placeholder(name);
|
|
172
|
+
index = end - 1;
|
|
173
|
+
continue;
|
|
174
|
+
}
|
|
175
|
+
output += char;
|
|
176
|
+
}
|
|
177
|
+
return {
|
|
178
|
+
sql: output,
|
|
179
|
+
params: dialect === 'sqlserver' ? sqlServerValues : positionalValues,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=named-params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"named-params.js","sourceRoot":"","sources":["../../src/sql/named-params.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export type SqlDialect = 'sqlserver' | 'postgres' | 'mysql' | 'sqlite';
|
|
2
|
+
export type SqlParams = Record<string, unknown> | readonly unknown[];
|
|
3
|
+
export interface SqlStatement {
|
|
4
|
+
sql: string;
|
|
5
|
+
params?: SqlParams;
|
|
6
|
+
}
|
|
7
|
+
export interface SqlCapabilities {
|
|
8
|
+
dialect: SqlDialect;
|
|
9
|
+
namedParams: boolean;
|
|
10
|
+
positionalParams: boolean;
|
|
11
|
+
nativeJson: boolean;
|
|
12
|
+
nativeBoolean: boolean;
|
|
13
|
+
returning: boolean;
|
|
14
|
+
upsert: boolean;
|
|
15
|
+
transactions: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface SqlMutationResult<Row = Record<string, unknown>> {
|
|
18
|
+
rows: Row[];
|
|
19
|
+
affectedRows: number;
|
|
20
|
+
insertId?: unknown;
|
|
21
|
+
}
|
|
22
|
+
export interface SqlTransaction {
|
|
23
|
+
query<Row = Record<string, unknown>>(statement: string | SqlStatement, params?: SqlParams): Promise<Row[]>;
|
|
24
|
+
exec<Row = Record<string, unknown>>(statement: string | SqlStatement, params?: SqlParams): Promise<SqlMutationResult<Row>>;
|
|
25
|
+
}
|
|
26
|
+
export interface SqlDriver extends SqlTransaction {
|
|
27
|
+
readonly dialect: SqlDialect;
|
|
28
|
+
readonly capabilities: SqlCapabilities;
|
|
29
|
+
connect(): Promise<void>;
|
|
30
|
+
close(): Promise<void>;
|
|
31
|
+
transaction<T>(run: (tx: SqlTransaction) => Promise<T>): Promise<T>;
|
|
32
|
+
quoteIdent(identifier: string): string;
|
|
33
|
+
quoteQualified(...identifiers: string[]): string;
|
|
34
|
+
compileNamedParams(statement: string, params: Record<string, unknown>): SqlStatement;
|
|
35
|
+
paginate(statement: string, limit: number, offset: number): string;
|
|
36
|
+
countQuery(statement: string): string;
|
|
37
|
+
totalsQuery(statement: string): string;
|
|
38
|
+
buildInsertReturning(table: string, values: Record<string, unknown>, returning?: string[]): SqlStatement;
|
|
39
|
+
buildUpdateReturning(table: string, values: Record<string, unknown>, where: SqlStatement, returning?: string[]): SqlStatement;
|
|
40
|
+
buildDelete(table: string, where: SqlStatement): SqlStatement;
|
|
41
|
+
buildUpsert(table: string, values: Record<string, unknown>, keys: string[]): SqlStatement;
|
|
42
|
+
tableExists(table: string): Promise<boolean>;
|
|
43
|
+
mapError(error: unknown): Error;
|
|
44
|
+
}
|
|
45
|
+
export interface SqlDriverConfig {
|
|
46
|
+
dialect: SqlDialect;
|
|
47
|
+
connection?: unknown;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sql/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sql/types.ts"],"names":[],"mappings":""}
|
package/dist/types.d.ts
CHANGED
|
@@ -317,7 +317,7 @@ export interface TransactionBinding {
|
|
|
317
317
|
transaction: TransactionConfig;
|
|
318
318
|
}
|
|
319
319
|
/** Union type for all event binding shapes */
|
|
320
|
-
export type EventBinding = ActionBinding | ActionBinding
|
|
320
|
+
export type EventBinding = ActionBinding | TransactionBinding | Array<ActionBinding | TransactionBinding>;
|
|
321
321
|
export interface RepeatConfig {
|
|
322
322
|
statePath?: string;
|
|
323
323
|
source?: unknown;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAIrE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;OAOG;IACH,GAAG,EAAE,OAAO,CAAC;IACb,iCAAiC;IACjC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrD,iEAAiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,yGAAyG;IACzG,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,yFAAyF;IACzF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAID,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,oGAAoG;IACpG,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5C,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,gEAAgE;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAID,MAAM,MAAM,4BAA4B,GACpC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AACtE,MAAM,MAAM,4BAA4B,GAAG,cAAc,GAAG,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEjG,MAAM,WAAW,8BAA8B;IAC7C,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,8BAA8B,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,4BAA4B,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAC5C,WAAW,CAAC,EAAE,8BAA8B,CAAC;CAC9C;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,aAAa,GAAG,kBAAkB,CAAC,EAAE,CAAC;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC/C,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC/C,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAC9D,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACrD;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,0FAA0F;AAC1F,eAAO,MAAM,SAAS,4IAGZ,CAAC;AAQX,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACxC,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,UAAU,CAAC;IAElB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAG/B,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAEtC,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAID,MAAM,MAAM,UAAU,GAClB,eAAe,GACf,cAAc,GACd,kBAAkB,GAClB,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,eAAe,GACf,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,cAAc,GACd,mBAAmB,GACnB,kBAAkB,GAClB,gBAAgB,GAChB,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,aAAa,GACb,YAAY,GACZ,aAAa,GACb,cAAc,GACd,eAAe,GACf,mBAAmB,GACnB,kBAAkB,GAClB,YAAY,CAAC;AAEjB,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAE5D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,GAAG,EAAE,UAAU,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,OAAO,EAAE,UAAU,CAAC;CACrB;AAID,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAID,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B;AAID,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,UAAU,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,CAAC;CAClB;AAID,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAID,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAID,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,KAAK,CAAC,mBAAmB,GAAG,WAAW,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,KAAK,CAAC,mBAAmB,GAAG,YAAY,CAAC,CAAC;CAChD;AAED,MAAM,MAAM,mBAAmB,GAC3B,mBAAmB,GACnB,YAAY,GACZ,WAAW,GACX,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAI/B,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpC,2FAA2F;IAC3F,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,iBAAiB,CAAC;CAChC;AAED,8CAA8C;AAC9C,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,kBAAkB,GAAG,KAAK,CAAC,aAAa,GAAG,kBAAkB,CAAC,CAAC;AAI1G,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,yEAAyE;IACzE,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;KAC7B,CAAC;CACH;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAID,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,UAAU,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAID,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,SAAS,KAAK,OAAO,CAAC;CACtG;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxE;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,CAAC;AAIxF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;AACnD,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAChE,MAAM,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC;AAI9E,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC;IAC/E,iEAAiE;IACjE,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACzE,2EAA2E;IAC3E,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAA;KAAE,CAAC;CACzE;AAID,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
|
package/docs/consumer/README.md
CHANGED
|
@@ -12,7 +12,7 @@ Everything an AI or developer building apps with Mythik needs. **This is the pub
|
|
|
12
12
|
| `ai-context-patterns.md` | Composition patterns + anti-patterns when combining 2+ features |
|
|
13
13
|
| `ai-context-primitives.md` | Per-primitive props tables (38 primitives) |
|
|
14
14
|
| `ai-context-runtime-semantics.md` | Runtime behavior reference — expression timing, reserved state paths, server contracts, store coordination |
|
|
15
|
-
| `reference-doc.md` | Full rule catalog
|
|
15
|
+
| `reference-doc.md` | Full rule catalog — exhaustive consumer-facing reference |
|
|
16
16
|
| `WHERE-TO-LOOK.md` | Source navigation map — which framework file to read for deep-customization or runtime-debugging cases the docs above do not fully cover. Fallback only; check the relevant `ai-context-*.md` first. |
|
|
17
17
|
|
|
18
18
|
## Reading order
|
|
@@ -23,7 +23,7 @@ This file maps **"I need to understand or customize X"** to which framework sour
|
|
|
23
23
|
Paths are relative to the framework repo root and use the layout the framework publishes in.
|
|
24
24
|
|
|
25
25
|
- **In the framework repo (or unpacked tarball):** `packages/<package>/src/<path>` — TypeScript source. Authoritative for behavior questions.
|
|
26
|
-
- **In `node_modules/<public-mythik-package>/`:** the published artifact ships `dist/` only (compiled `.js` + `.d.ts`). `.d.ts` is enough for type-shape questions; for behavior questions, fetch the `src/` from the GitHub repo or the unpacked tarball. Public package names are unscoped (`mythik`, `mythik-react`, `mythik-cli`, and `mythik-server`). React Native work is a repository preview track, not part of the
|
|
26
|
+
- **In `node_modules/<public-mythik-package>/`:** the published artifact ships `dist/` only (compiled `.js` + `.d.ts`). `.d.ts` is enough for type-shape questions; for behavior questions, fetch the `src/` from the GitHub repo or the unpacked tarball. Public package names are unscoped (`mythik`, `mythik-react`, `mythik-cli`, and `mythik-server`). React Native work is a repository preview track, not part of the supported npm publish surface yet.
|
|
27
27
|
|
|
28
28
|
When in doubt, prefer reading `src/`. `dist/` is generated and may obscure intent (minified, stripped comments, transpiled control flow).
|
|
29
29
|
|
|
@@ -32,8 +32,8 @@ When in doubt, prefer reading `src/`. `dist/` is generated and may obscure inten
|
|
|
32
32
|
| You want to write... | Read (in this order) | Why |
|
|
33
33
|
|---|---|---|
|
|
34
34
|
| **A custom action** (callable from spec via `{ action: 'myAction', params: {...} }`) | `packages/core/src/actions/dispatcher.ts` (built-in actions registry + dispatch flow + action-context shape) → spec's `customActions` config in `ai-context.md § Actions` | Custom actions register through the same dispatcher used by built-ins. Reading the built-in implementations (e.g., `setState`, `fetch`, `navigate`) gives the canonical pattern. |
|
|
35
|
-
| **A custom `SpecStore`** (e.g., MongoDB, DynamoDB) | `packages/core/src/spec-engine/types.ts` (`SpecStore` interface) → `packages/core/src/spec-stores/memory.ts` (simplest reference) → `packages/core/src/spec-stores/
|
|
36
|
-
| **A custom `VersionedSpecStore`** (custom DB with version history) | `packages/core/src/versioning/types.ts` (`VersionedSpecStore`, `EnvironmentStore` interfaces) → `packages/core/src/spec-stores/memory-versioned.ts` (simplest) → `packages/core/src/spec-stores/
|
|
35
|
+
| **A custom `SpecStore`** (e.g., MongoDB, DynamoDB) | `packages/core/src/spec-engine/types.ts` (`SpecStore` interface) → `packages/core/src/spec-stores/memory.ts` (simplest reference) → `packages/core/src/spec-stores/sql.ts` + `packages/core/src/sql/` (generic SQL reference) → `packages/core/src/spec-stores/supabase.ts` (REST reference) | The interface is 4 methods (`load`, `save`, `list`, `delete`). The memory store is the readable canonical implementation. Generic SQL shows driver boundaries, identifier safety, JSON handling, and close lifecycle. |
|
|
36
|
+
| **A custom `VersionedSpecStore`** (custom DB with version history) | `packages/core/src/versioning/types.ts` (`VersionedSpecStore`, `EnvironmentStore` interfaces) → `packages/core/src/spec-stores/memory-versioned.ts` (simplest) → `packages/core/src/spec-stores/sql-versioned.ts` + `supabase-versioned.ts` (production) → `docs/consumer/ai-context.md § Storage Setup` for the schema your DB needs | Versioned stores extend a base store. Snapshot/patch logic lives in `versioning/compute-patches.ts` + `streaming/patch.ts` and is reusable; only the I/O is per-adapter. |
|
|
37
37
|
| **A custom plugin** (auth-style cross-cutting feature) | `packages/core/src/plugins/loader.ts` (`PluginLoader` shape + plugin registration) → `packages/core/src/auth/engine.ts` + `auth/refresh-engine.ts` + `auth/persistence.ts` + `auth/cross-tab.ts` (auth as the canonical plugin example) → `packages/react/src/MythikApp.tsx` (`onPlugins` integration point) | Auth is the canonical plugin example. Plugins register actions, expose context, and can wrap fetch. |
|
|
38
38
|
| **A custom primitive** (Layer 3 element) | `docs/consumer/ai-context-custom-elements.md` (start here — full Layer 3 contract is documented) → `packages/react/src/primitives/*.tsx` (built-in React primitive components — show the prop-shape contract the renderer wires up) → `packages/core/src/renderer/prop-schemas.ts` (`PRIMITIVE_PROP_SCHEMAS` source-of-truth) → `packages/react/src/MythikRenderer.tsx` + `packages/core/src/renderer/engine.ts` (where state flows into a primitive's props, if the prop-shape contract is not enough) | Layer 3 authoring is the most-documented customization surface; you mostly should not need source. The React `primitives/` files are presentational — they receive bound props from the renderer; they do NOT subscribe to state directly. |
|
|
39
39
|
| **A custom validator rule** (extends `mythik validate`) | `packages/core/src/security/spec-validator.ts` (spec-level rules) + `packages/core/src/security/api-spec-validator.ts` (ApiSpec rules) + `packages/core/src/security/app-spec-validator.ts` (AppSpec rules) | Not officially extensible in v0.1 — these files are the canonical implementations if you need to fork or contribute upstream. |
|
|
@@ -74,7 +74,7 @@ For cases where docs say "the framework enforces X" and you want the canonical i
|
|
|
74
74
|
| Primitive prop schemas (`PRIMITIVE_PROP_SCHEMAS`) | `packages/core/src/renderer/prop-schemas.ts` |
|
|
75
75
|
| Reserved state paths (`/ui/selectedRow`, `/ui/loading`, etc.) | `packages/core/src/state/reserved-paths.ts` (constants source of truth) + `packages/core/src/state/store.ts` (storage mechanism) + `ai-context-runtime-semantics.md` (doc-side primary reference) |
|
|
76
76
|
| CLI lint rules catalog (4 rules in v0.1) | Coordinator: `packages/cli/src/lint/orchestrator.ts`. Spec-rule emitters: `packages/core/src/security/spec-validator.ts` (`spec-row-literal`) + `api-spec-validator.ts` (`spec-crud-id-collision`, `spec-auth-domains-port`). Code-rule emitter: `packages/cli/src/lint/code-rules.ts` (`code-store-save-bypass`). Shared types: `packages/cli/src/lint/types.ts`. |
|
|
77
|
-
| Versioning storage table writes (column lists, INSERT/UPSERT statements) | `packages/core/src/spec-stores/
|
|
77
|
+
| Versioning storage table writes (column lists, INSERT/UPSERT statements) | `packages/core/src/spec-stores/sql-versioned.ts` + `supabase-versioned.ts`; SQL table DDL lives in `packages/core/src/sql/ddl.ts` and is exposed through `getSqlStoreDdl()` from `mythik/server` |
|
|
78
78
|
| Patch apply / compute (JSON Patch internals) | `packages/core/src/streaming/patch.ts` + `packages/core/src/versioning/compute-patches.ts` |
|
|
79
79
|
| Auth login body contract (`{ username, password }`) | `packages/server/src/auth/db-auth-provider.ts` + `packages/server/src/auth/jwt-strategy.ts` + `ai-context-api.md` (doc-side) |
|
|
80
80
|
| Query envelope shape (`{ data, total, page, pageSize, totals }`) | `packages/server/src/server.ts` (assembled in `registerEndpoint`'s query handler around lines 497-511; the SQL helpers in `query-engine.ts` produce the inputs to that envelope but do not define it) |
|
|
@@ -10,12 +10,38 @@ An ApiSpec defines a backend API declaratively — endpoints, catalogs, auth, au
|
|
|
10
10
|
{
|
|
11
11
|
"type": "api",
|
|
12
12
|
"name": "My API",
|
|
13
|
+
"dialect": "postgres",
|
|
13
14
|
"auth": { },
|
|
14
15
|
"catalogs": { },
|
|
15
16
|
"endpoints": { }
|
|
16
17
|
}
|
|
17
18
|
```
|
|
18
19
|
|
|
20
|
+
### Database dialect
|
|
21
|
+
|
|
22
|
+
Set `dialect` on the ApiSpec when the server should compile generated CRUD, catalog, scope, and pagination SQL for a specific database. Supported values: `"sqlserver"`, `"postgres"`, `"mysql"`, `"sqlite"`. The database credentials stay in the host server config, not in the ApiSpec.
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
import { createServer } from 'mythik-server';
|
|
26
|
+
|
|
27
|
+
const server = createServer({
|
|
28
|
+
spec: apiSpec,
|
|
29
|
+
database: { type: 'postgres', connectionString: process.env.DATABASE_URL },
|
|
30
|
+
auth: { jwt: { secret: process.env.JWT_SECRET! } },
|
|
31
|
+
});
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
SQLite is useful for local demos, tests, and lightweight deployments:
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
createServer({
|
|
38
|
+
spec: { type: 'api', dialect: 'sqlite', endpoints: { /* ... */ } },
|
|
39
|
+
database: { type: 'sqlite', filename: './mythik.db' },
|
|
40
|
+
});
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
SQL policy: write dialect-native SQL in `query`, `count`, provider queries, catalog `where`, and handlers. Mythik gives you named params (`@name`) and compiles them through the active driver; it does not translate a SQL Server query into PostgreSQL/MySQL/SQLite SQL at runtime. Generated CRUD/catalog/pagination/scope SQL is dialect-aware, but custom SQL remains owned by the ApiSpec author. MySQL generated upsert SQL uses the modern row-alias form and requires MySQL 8.0.19+; use SQLite/PostgreSQL/SQL Server or an explicit custom SQL path for older MySQL deployments.
|
|
44
|
+
|
|
19
45
|
### Catalogs
|
|
20
46
|
|
|
21
47
|
Dropdown data sources. Three types:
|
|
@@ -67,6 +93,22 @@ Four patterns:
|
|
|
67
93
|
}
|
|
68
94
|
```
|
|
69
95
|
|
|
96
|
+
Handler context exposes the active SQL driver as `ctx.db`. Use it for custom logic instead of vendor-specific connection objects:
|
|
97
|
+
|
|
98
|
+
```ts
|
|
99
|
+
import type { Handler } from 'mythik-server';
|
|
100
|
+
|
|
101
|
+
export const handler: Handler = async (ctx) => {
|
|
102
|
+
const rows = await ctx.db.query(
|
|
103
|
+
'SELECT id, name FROM Customers WHERE status = @status ORDER BY name',
|
|
104
|
+
{ status: ctx.params.status ?? 'active' },
|
|
105
|
+
);
|
|
106
|
+
return { data: rows };
|
|
107
|
+
};
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
`ctx.db` supports `query`, `exec`, `transaction`, `quoteIdent`, `compileNamedParams`, `paginate`, `countQuery`, `totalsQuery`, and dialect-aware insert/update/delete/upsert builders. Do not use `ctx.sql`, `ctx.db.request()`, `pool.request()`, `SCOPE_IDENTITY()`, backtick-only quoting, or bracket-only quoting in portable handlers. If a handler is intentionally dialect-specific, keep that decision local to the handler and document the required `ApiSpec.dialect`.
|
|
111
|
+
|
|
70
112
|
**CRUD endpoint — one declaration, three routes:**
|
|
71
113
|
|
|
72
114
|
A single endpoint with `crud: { table, primaryKey, insertable, updatable }` generates three routes automatically:
|
|
@@ -192,6 +234,8 @@ The `PUT` endpoint at `/api/items/:id` combined with the framework's auto-append
|
|
|
192
234
|
## API Rules
|
|
193
235
|
|
|
194
236
|
- ApiSpec is pure declarative — no connection strings, no secrets (those go in `createServer` config)
|
|
237
|
+
- `dialect` selects generated SQL behavior; credentials still live in host config
|
|
238
|
+
- Custom SQL is dialect-native and uses Mythik named params (`@name`); Mythik does not translate custom SQL between dialects
|
|
195
239
|
- Api-specs use `type: "api"` — never served to browser (404 on GET /api/screens/:id for type "api")
|
|
196
240
|
- `query` and `handler` are mutually exclusive — use query for simple SQL, handler for complex logic
|
|
197
241
|
- CRUD `insertable`/`updatable` define which fields can be written — fields not listed are rejected
|
|
@@ -54,12 +54,14 @@ When the framework resolves `$state`, `$template`, `$prop`, `$auth`, and other e
|
|
|
54
54
|
|
|
55
55
|
**Why it matters:** `onClick: [{ action: "fetch", params: { url: { "$template": "/api/items/${ /ui/selectedId }" }}}]` — the `$template` reads `/ui/selectedId` at *click* time. If the user clicked a different row between render and click, the click reads the later value. Correct behavior for typical event flows.
|
|
56
56
|
|
|
57
|
-
**Special cases:**
|
|
58
|
-
- **Inside a `repeat`** — the binding wrapper is eagerly resolved so `$item` / `$index` can bind to the row being rendered. Inner `$state` / `$template` inside `params` stay lazy (press-time) unless they reference `$item` directly.
|
|
59
|
-
- **`$prop` bindings** — when the binding itself is `{ $prop: "onAction" }` (custom-element Layer 3 propagation), the `$prop` is resolved eagerly so the consumer's supplied action chain replaces it. Inner expressions inside that chain stay lazy.
|
|
60
|
-
- **`TransactionBinding`** — passed through verbatim; transaction engine resolves phases at their respective times.
|
|
61
|
-
|
|
62
|
-
|
|
57
|
+
**Special cases:**
|
|
58
|
+
- **Inside a `repeat`** — the binding wrapper is eagerly resolved so `$item` / `$index` can bind to the row being rendered. Inner `$state` / `$template` inside `params` stay lazy (press-time) unless they reference `$item` directly.
|
|
59
|
+
- **`$prop` bindings** — when the binding itself is `{ $prop: "onAction" }` (custom-element Layer 3 propagation), the `$prop` is resolved eagerly so the consumer's supplied action chain replaces it. Inner expressions inside that chain stay lazy.
|
|
60
|
+
- **`TransactionBinding`** — passed through verbatim; transaction engine resolves phases at their respective times.
|
|
61
|
+
- **Mixed event arrays** — an event array may contain normal action bindings and transaction bindings together. The renderer dispatches each entry sequentially and awaits transaction execution before continuing to the next entry.
|
|
62
|
+
- **`params.skipIf`** — resolved at dispatch time before the rest of the action params. If truthy, the action is skipped and the surrounding action chain continues.
|
|
63
|
+
|
|
64
|
+
Implementation: `packages/core/src/renderer/engine.ts:996-1049`.
|
|
63
65
|
|
|
64
66
|
### 1.3 Column actions — lazy resolution at press time
|
|
65
67
|
|
|
@@ -766,10 +768,11 @@ Implementation:
|
|
|
766
768
|
- `packages/cli/src/commands/push.ts` (CLI push versioning path)
|
|
767
769
|
- `packages/cli/src/commands/patch.ts` (CLI patch versioning path)
|
|
768
770
|
|
|
769
|
-
**Implementation location per store type
|
|
771
|
+
**Implementation location per store type**:
|
|
770
772
|
|
|
771
773
|
- Browser-safe stores (`MemorySpecStore`, `SupabaseSpecStore`, `MemoryVersionedSpecStore`, `SupabaseVersionedSpecStore`, `MemoryEnvironmentStore`, `SupabaseEnvironmentStore`) — import from `mythik` (main entry).
|
|
772
|
-
- Node-only stores (`FileSpecStore`, `
|
|
774
|
+
- Node-only stores (`FileSpecStore`, `SqlSpecStore`, `SqlVersionedSpecStore`, `SqlEnvironmentStore`) — import from `mythik/server`.
|
|
775
|
+
- SQL Server compatibility stores (`SqlServerSpecStore`, `SqlServerVersionedSpecStore`, `SqlServerEnvironmentStore`) still exist, but new SQL work should prefer `createSqlDriver({ dialect, connection })` plus the generic `Sql*` stores so the same pattern works for SQL Server, PostgreSQL, MySQL, and SQLite.
|
|
773
776
|
|
|
774
777
|
The `SpecStore` interface contract (signature, behavior, save-vs-validate layering) is identical across entries. Only the import path changes.
|
|
775
778
|
|
|
@@ -856,7 +859,7 @@ The framework supports two axes of workflow choice: **how you modify specs** (pu
|
|
|
856
859
|
| Admin UI that edits specs at runtime | Enable. Git can't capture runtime edits. |
|
|
857
860
|
| Compliance (SOX, HIPAA, etc. asking "who changed screen X on date Y") | Enable. Native SQL audit query beats git log. |
|
|
858
861
|
|
|
859
|
-
**Storage note:** DB versioning requires the `screen_versions` and `screen_environments` tables.
|
|
862
|
+
**Storage note:** DB versioning requires the `screen_versions` and `screen_environments` tables. Runtime stores do not silently create them; initialize with `mythik init-store` or apply the DDL described in `ai-context.md` Storage Setup before using versioned stores.
|
|
860
863
|
|
|
861
864
|
---
|
|
862
865
|
|