@ronin/compiler 0.17.22-leo-ron-1140-experimental-432 → 0.17.22-leo-ron-1140-experimental-434

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -5,9 +5,9 @@ declare const DML_QUERY_TYPES_WRITE: readonly ["set", "add", "remove"];
5
5
  /** Query types used for interacting with data. */
6
6
  declare const DML_QUERY_TYPES: readonly ["get", "count", "set", "add", "remove"];
7
7
  /** Query types used for interacting with the database schema. */
8
- declare const DDL_QUERY_TYPES: readonly ["create", "alter", "drop"];
8
+ declare const DDL_QUERY_TYPES: readonly ["list", "create", "alter", "drop"];
9
9
  /** All query types. */
10
- declare const QUERY_TYPES: readonly ["get", "count", "set", "add", "remove", "create", "alter", "drop"];
10
+ declare const QUERY_TYPES: readonly ["get", "count", "set", "add", "remove", "list", "create", "alter", "drop"];
11
11
  /**
12
12
  * A list of placeholders that can be located inside queries after those queries were
13
13
  * serialized into JSON objects.
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ var DML_QUERY_TYPES = [
5
5
  ...DML_QUERY_TYPES_READ,
6
6
  ...DML_QUERY_TYPES_WRITE
7
7
  ];
8
- var DDL_QUERY_TYPES = ["create", "alter", "drop"];
8
+ var DDL_QUERY_TYPES = ["list", "create", "alter", "drop"];
9
9
  var QUERY_TYPES = [...DML_QUERY_TYPES, ...DDL_QUERY_TYPES];
10
10
  var QUERY_SYMBOLS = {
11
11
  // Represents a sub query.
@@ -1091,7 +1091,8 @@ var compileQueryInput = (defaultQuery, models, statementParams, options) => {
1091
1091
  dependencies: [],
1092
1092
  main: dependencyStatements[0],
1093
1093
  selectedFields: [],
1094
- model: ROOT_MODEL_WITH_ATTRIBUTES
1094
+ model: ROOT_MODEL_WITH_ATTRIBUTES,
1095
+ updatedQuery: defaultQuery
1095
1096
  };
1096
1097
  const parsedQuery = splitQuery(query);
1097
1098
  const { queryType, queryModel, queryInstructions } = parsedQuery;
@@ -1253,7 +1254,8 @@ var compileQueryInput = (defaultQuery, models, statementParams, options) => {
1253
1254
  dependencies: dependencyStatements,
1254
1255
  main: mainStatement,
1255
1256
  selectedFields,
1256
- model
1257
+ model,
1258
+ updatedQuery: query
1257
1259
  };
1258
1260
  };
1259
1261
 
@@ -1593,11 +1595,13 @@ var getSystemFields = (idPrefix) => ({
1593
1595
  }
1594
1596
  });
1595
1597
  var ROOT_MODEL = {
1596
- slug: "model",
1598
+ slug: "roninModel",
1597
1599
  identifiers: {
1598
1600
  name: "name",
1599
1601
  slug: "slug"
1600
1602
  },
1603
+ // The default ID prefix would be `ron_` based on the slug, but we want `mod_`.
1604
+ idPrefix: "mod",
1601
1605
  // This name mimics the `sqlite_schema` table in SQLite.
1602
1606
  table: "ronin_schema",
1603
1607
  // Indicates that the model was automatically generated by RONIN.
@@ -1791,9 +1795,9 @@ var transformMetaQuery = (models, dependencyStatements, statementParams, query,
1791
1795
  let jsonValue;
1792
1796
  if ("list" in query && query.list) {
1793
1797
  if (slug) {
1794
- return { get: { model: { with: { slug } } } };
1798
+ return { get: { roninModel: { with: { slug } } } };
1795
1799
  }
1796
- return { get: { models: {} } };
1800
+ return { get: { roninModels: {} } };
1797
1801
  }
1798
1802
  if ("create" in query && query.create) {
1799
1803
  const init = query.create.model;
@@ -1926,11 +1930,11 @@ var transformMetaQuery = (models, dependencyStatements, statementParams, query,
1926
1930
  });
1927
1931
  }
1928
1932
  const modelSlug2 = "to" in queryTypeDetails ? queryTypeDetails?.to?.slug : "with" in queryTypeDetails ? queryTypeDetails?.with?.slug : void 0;
1929
- if (modelSlug2 === "model") return null;
1933
+ if (modelSlug2 === "roninModel") return null;
1930
1934
  const queryTypeAction = action === "create" ? "add" : action === "alter" ? "set" : "remove";
1931
1935
  return {
1932
1936
  [queryTypeAction]: {
1933
- model: queryTypeDetails
1937
+ roninModel: queryTypeDetails
1934
1938
  }
1935
1939
  };
1936
1940
  }
@@ -2124,7 +2128,7 @@ var transformMetaQuery = (models, dependencyStatements, statementParams, query,
2124
2128
  );
2125
2129
  return {
2126
2130
  set: {
2127
- model: {
2131
+ roninModel: {
2128
2132
  with: { slug: modelSlug },
2129
2133
  to: {
2130
2134
  [pluralType]: { [QUERY_SYMBOLS.EXPRESSION]: json }
@@ -2200,13 +2204,13 @@ var Transaction = class {
2200
2204
  const query2 = {
2201
2205
  [queryType]: { [model.pluralSlug]: instructions }
2202
2206
  };
2203
- return { query: query2, index };
2207
+ return { query: query2, index, resultingFromExpansion: true };
2204
2208
  });
2205
2209
  }
2206
2210
  return { query, index };
2207
2211
  });
2208
- for (const { query, index } of expandedQueries) {
2209
- const { dependencies, main, selectedFields, model } = compileQueryInput(
2212
+ for (const { query, index, resultingFromExpansion } of expandedQueries) {
2213
+ const { dependencies, main, selectedFields, model, updatedQuery } = compileQueryInput(
2210
2214
  query,
2211
2215
  modelsWithPresets,
2212
2216
  options?.inlineParams ? null : [],
@@ -2219,6 +2223,7 @@ var Transaction = class {
2219
2223
  this.statements.push(...subStatements);
2220
2224
  this.#internalQueries[index].selectedFields.push(selectedFields);
2221
2225
  this.#internalQueries[index].models.push(model);
2226
+ if (!resultingFromExpansion) this.#internalQueries[index].query = updatedQuery;
2222
2227
  }
2223
2228
  this.models = modelsWithPresets;
2224
2229
  return statements;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ronin/compiler",
3
- "version": "0.17.22-leo-ron-1140-experimental-432",
3
+ "version": "0.17.22-leo-ron-1140-experimental-434",
4
4
  "type": "module",
5
5
  "description": "Compiles RONIN queries to SQL statements.",
6
6
  "publishConfig": {