@paroicms/server-text-cache-system 1.20.2 → 1.21.1

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.
@@ -1,13 +1,6 @@
1
1
  PRAGMA journal_mode = TRUNCATE;
2
2
  PRAGMA foreign_keys = 1;
3
3
 
4
- drop index if exists PaTextCacheScheduledInvalidation_eventK_idx;
5
- drop table if exists PaTextCacheScheduledInvalidation;
6
- drop index if exists PaTextCacheDependency_depK_idx;
7
- drop table if exists PaTextCacheDependency;
8
- drop table if exists PaTextCache;
9
- drop table if exists PaMetadata;
10
-
11
4
  create table PaMetadata (
12
5
  dbSchema varchar(100) not null,
13
6
  k varchar(100) not null,
@@ -15,7 +8,7 @@ create table PaMetadata (
15
8
  primary key (dbSchema, k)
16
9
  );
17
10
 
18
- insert into PaMetadata (dbSchema, k, val) values ('text-cache', 'dbSchemaVersion', '3');
11
+ insert into PaMetadata (dbSchema, k, val) values ('text-cache', 'dbSchemaVersion', '4');
19
12
 
20
13
  create table PaTextCache (
21
14
  k varchar(250) not null primary key,
@@ -2,7 +2,7 @@ import type { AppLogger, Tracker } from "@paroicms/internal-server-lib";
2
2
  import type { CacheSetData, CacheValue, TextCacheSystemStorage } from "./public-types.js";
3
3
  export declare const allDependencyKey = "all";
4
4
  export interface CreateTextCacheSystemOptions {
5
- appVersion: string;
5
+ dependsOn: string;
6
6
  storage: TextCacheSystemStorage;
7
7
  logger: AppLogger;
8
8
  /**
@@ -28,9 +28,9 @@ export interface TextCacheSystem {
28
28
  }
29
29
  export declare function createTextCacheSystem(options: CreateTextCacheSystemOptions): Promise<{
30
30
  textCache: TextCacheSystem;
31
- isCleared: boolean;
31
+ isFresh: boolean;
32
32
  }>;
33
33
  export declare function createNoTextCacheSystem(): {
34
34
  textCache: TextCacheSystem;
35
- isCleared: boolean;
35
+ isFresh: boolean;
36
36
  };
@@ -4,7 +4,7 @@ import { clearCacheValues, deleteCacheValues, deleteUnusedCacheValues, getCacheV
4
4
  import { deleteScheduledInvalidation, setScheduledInvalidation, } from "./internal/scheduled-invalidation-queries.js";
5
5
  export const allDependencyKey = "all";
6
6
  export async function createTextCacheSystem(options) {
7
- const { context, isCleared } = await createTextCacheSystemContext(options);
7
+ const { context, isFresh } = await createTextCacheSystemContext(options);
8
8
  function checkStatus() {
9
9
  if (context.status !== "ready") {
10
10
  throw new Error(`TextCache is ${context.status}`);
@@ -75,7 +75,7 @@ export async function createTextCacheSystem(options) {
75
75
  await context.cn.destroy();
76
76
  },
77
77
  };
78
- return { textCache, isCleared };
78
+ return { textCache, isFresh };
79
79
  }
80
80
  export function createNoTextCacheSystem() {
81
81
  const textCache = {
@@ -90,6 +90,6 @@ export function createNoTextCacheSystem() {
90
90
  clearCache: () => Promise.resolve(),
91
91
  close: () => Promise.resolve(),
92
92
  };
93
- return { textCache, isCleared: false };
93
+ return { textCache, isFresh: false };
94
94
  }
95
95
  //# sourceMappingURL=cache-system.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache-system.js","sourceRoot":"","sources":["../src/cache-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache-system.js","sourceRoot":"","sources":["../src/cache-system.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { type AppLogger } from "@paroicms/internal-server-lib";
2
2
  import type { Knex } from "knex";
3
- export declare function createOrOpenConnection({ sqliteFile, appVersion, logger, }: {
3
+ export declare function createOrOpenTextCacheConnection({ sqliteFile, dependsOn, logger, }: {
4
4
  sqliteFile: string;
5
- appVersion: string;
5
+ dependsOn: string;
6
6
  logger: AppLogger;
7
7
  }): Promise<{
8
8
  cn: Knex<any, any[]>;
9
9
  logNextQuery: (count?: number) => void;
10
- isCleared: boolean;
10
+ isFresh: boolean;
11
+ databaseId: string;
11
12
  }>;
@@ -1,11 +1,10 @@
1
+ import { createOrOpenSqliteConnection, createSqlLogger, getMetadataDbSchemaVersion, } from "@paroicms/internal-server-lib";
1
2
  import { join } from "node:path";
2
- import { createOrOpenSqliteConnection, createSqlLogger, getMetadataDbSchemaVersion, getMetadataValue, setMetadataValue, } from "@paroicms/internal-server-lib";
3
3
  import { packageDir } from "../constants.js";
4
- import { clearCacheValues } from "../internal/queries.js";
5
4
  import { currentDbSchemaVersion, dbSchemaName, migrateTextCacheDb } from "./ddl-migration.js";
6
- export async function createOrOpenConnection({ sqliteFile, appVersion, logger, }) {
5
+ export async function createOrOpenTextCacheConnection({ sqliteFile, dependsOn, logger, }) {
7
6
  const { logNextQuery, knexLogger } = createSqlLogger({ logger, dbSchemaName });
8
- const { cn, isNewDatabase, migrationReport } = await createOrOpenSqliteConnection({
7
+ const { cn, newDatabase, migrationReport, databaseId } = await createOrOpenSqliteConnection({
9
8
  canCreate: true,
10
9
  dbSchemaName,
11
10
  sqliteFile,
@@ -13,19 +12,11 @@ export async function createOrOpenConnection({ sqliteFile, appVersion, logger, }
13
12
  migrateDb,
14
13
  knexLogger,
15
14
  logger,
15
+ ensureDependsOn: {
16
+ dependsOn,
17
+ onMismatch: "reset",
18
+ },
16
19
  });
17
- let isCleared = isNewDatabase || migrationReport.migrated;
18
- const storedAppVersion = await getMetadataValue(cn, { dbSchemaName, key: "appVersion" });
19
- if (storedAppVersion !== appVersion) {
20
- if (!isCleared) {
21
- await clearCacheValues({ cn });
22
- isCleared = true;
23
- }
24
- await setMetadataValue(cn, { dbSchemaName, key: "appVersion", value: appVersion });
25
- if (storedAppVersion !== undefined) {
26
- logger.info(`Cleared text cache due to app version change from ${storedAppVersion} to ${appVersion}`);
27
- }
28
- }
29
20
  async function migrateDb(cn) {
30
21
  const dbVersion = await getMetadataDbSchemaVersion(cn, { dbSchemaName });
31
22
  if (dbVersion === currentDbSchemaVersion) {
@@ -37,6 +28,7 @@ export async function createOrOpenConnection({ sqliteFile, appVersion, logger, }
37
28
  await migrateTextCacheDb(cn, {
38
29
  fromVersion: dbVersion,
39
30
  logger,
31
+ dependsOn,
40
32
  });
41
33
  return {
42
34
  migrated: true,
@@ -44,6 +36,7 @@ export async function createOrOpenConnection({ sqliteFile, appVersion, logger, }
44
36
  schemaVersion: currentDbSchemaVersion,
45
37
  };
46
38
  }
47
- return { cn, logNextQuery, isCleared };
39
+ const isFresh = !!newDatabase || migrationReport.migrated;
40
+ return { cn, logNextQuery, isFresh, databaseId };
48
41
  }
49
42
  //# sourceMappingURL=db-init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"db-init.js","sourceRoot":"","sources":["../../src/db-init/db-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAEL,4BAA4B,EAC5B,eAAe,EAEf,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE9F,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAC3C,UAAU,EACV,UAAU,EACV,MAAM,GAKP;IACC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAE/E,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,MAAM,4BAA4B,CAAC;QAChF,SAAS,EAAE,IAAI;QACf,YAAY;QACZ,UAAU;QACV,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,CAAC;QACtD,SAAS;QACT,UAAU;QACV,MAAM;KACP,CAAC,CAAC;IAEH,IAAI,SAAS,GAAG,aAAa,IAAI,eAAe,CAAC,QAAQ,CAAC;IAE1D,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC;IACzF,IAAI,gBAAgB,KAAK,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,gBAAgB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/B,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,MAAM,gBAAgB,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QACnF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CACT,qDAAqD,gBAAgB,OAAO,UAAU,EAAE,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,EAAQ;QAC/B,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACzE,IAAI,SAAS,KAAK,sBAAsB,EAAE,CAAC;YACzC,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,aAAa,EAAE,SAAS;aACzB,CAAC;QACJ,CAAC;QACD,MAAM,kBAAkB,CAAC,EAAE,EAAE;YAC3B,WAAW,EAAE,SAAS;YACtB,MAAM;SACP,CAAC,CAAC;QACH,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,sBAAsB;SACtC,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"db-init.js","sourceRoot":"","sources":["../../src/db-init/db-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,4BAA4B,EAC5B,eAAe,EAEf,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE9F,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,EACpD,UAAU,EACV,SAAS,EACT,MAAM,GAKP;IACC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAE/E,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,MAAM,4BAA4B,CAAC;QAC1F,SAAS,EAAE,IAAI;QACf,YAAY;QACZ,UAAU;QACV,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,CAAC;QACtD,SAAS;QACT,UAAU;QACV,MAAM;QACN,eAAe,EAAE;YACf,SAAS;YACT,UAAU,EAAE,OAAO;SACpB;KACF,CAAC,CAAC;IAEH,KAAK,UAAU,SAAS,CAAC,EAAQ;QAC/B,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACzE,IAAI,SAAS,KAAK,sBAAsB,EAAE,CAAC;YACzC,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,aAAa,EAAE,SAAS;aACzB,CAAC;QACJ,CAAC;QACD,MAAM,kBAAkB,CAAC,EAAE,EAAE;YAC3B,WAAW,EAAE,SAAS;YACtB,MAAM;YACN,SAAS;SACV,CAAC,CAAC;QACH,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,sBAAsB;SACtC,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,IAAI,eAAe,CAAC,QAAQ,CAAC;IAE1D,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACnD,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import type { AppLogger } from "@paroicms/public-server-lib";
2
2
  import type { Knex } from "knex";
3
3
  export declare const dbSchemaName = "text-cache";
4
- export declare const currentDbSchemaVersion = 3;
5
- export declare function migrateTextCacheDb(cn: Knex, { fromVersion, logger }: {
4
+ export declare const currentDbSchemaVersion = 4;
5
+ export declare function migrateTextCacheDb(cn: Knex, { fromVersion, logger, dependsOn }: {
6
6
  fromVersion: number;
7
7
  logger: AppLogger;
8
+ dependsOn: string;
8
9
  }): Promise<void>;
@@ -1,9 +1,9 @@
1
+ import { executeDdl, getMetadataDbSchemaVersion, insertNewDatabaseMetadataValues, } from "@paroicms/internal-server-lib";
1
2
  import { join } from "node:path";
2
- import { executeDdl, getMetadataDbSchemaVersion } from "@paroicms/internal-server-lib";
3
3
  import { packageDir } from "../constants.js";
4
4
  export const dbSchemaName = "text-cache";
5
- export const currentDbSchemaVersion = 3;
6
- export async function migrateTextCacheDb(cn, { fromVersion, logger }) {
5
+ export const currentDbSchemaVersion = 4;
6
+ export async function migrateTextCacheDb(cn, { fromVersion, logger, dependsOn }) {
7
7
  const toVersion = currentDbSchemaVersion;
8
8
  let currentVersion = fromVersion;
9
9
  if (currentVersion <= 2) {
@@ -15,7 +15,8 @@ export async function migrateTextCacheDb(cn, { fromVersion, logger }) {
15
15
  // We don't care losing cache data
16
16
  if (currentVersion < toVersion) {
17
17
  logger.info("reset the text-cache database");
18
- await executeDdl(cn, join(packageDir, "ddl", "text-cache.ddl.sql"));
18
+ await executeDdl(cn, join(packageDir, "ddl", "text-cache.ddl.sql"), { dropAll: true });
19
+ await insertNewDatabaseMetadataValues(cn, { dbSchemaName, dependsOn });
19
20
  currentVersion = await getMetadataDbSchemaVersion(cn, { dbSchemaName });
20
21
  }
21
22
  if (currentVersion !== toVersion) {
@@ -1 +1 @@
1
- {"version":3,"file":"ddl-migration.js","sourceRoot":"","sources":["../../src/db-init/ddl-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAGvF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,CAAC;AACzC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAExC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAQ,EACR,EAAE,WAAW,EAAE,MAAM,EAA8C;IAEnE,MAAM,SAAS,GAAG,sBAAsB,CAAC;IACzC,IAAI,cAAc,GAAG,WAAW,CAAC;IAEjC,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;QACtE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IAED,kCAAkC;IAClC,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACpE,cAAc,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,cAAc,YAAY,wBAAwB,SAAS,cAAc,cAAc,GAAG,CAC3F,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,+BAA+B,WAAW,OAAO,cAAc,EAAE,CAAC,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"ddl-migration.js","sourceRoot":"","sources":["../../src/db-init/ddl-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,0BAA0B,EAC1B,+BAA+B,GAChC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,CAAC;AACzC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAExC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAQ,EACR,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAiE;IAEjG,MAAM,SAAS,GAAG,sBAAsB,CAAC;IACzC,IAAI,cAAc,GAAG,WAAW,CAAC;IAEjC,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;QACtE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IAED,kCAAkC;IAClC,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACvF,MAAM,+BAA+B,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;QACvE,cAAc,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,cAAc,YAAY,wBAAwB,SAAS,cAAc,cAAc,GAAG,CAC3F,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,+BAA+B,WAAW,OAAO,cAAc,EAAE,CAAC,CAAC;AAChG,CAAC"}
@@ -16,5 +16,5 @@ export interface TextCacheSystemContext extends SchedulerContext {
16
16
  }
17
17
  export declare function createTextCacheSystemContext(options: CreateTextCacheSystemOptions): Promise<{
18
18
  context: TextCacheSystemContext;
19
- isCleared: boolean;
19
+ isFresh: boolean;
20
20
  }>;
@@ -1,9 +1,9 @@
1
1
  import { parseTimeWithUnit } from "@paroicms/internal-anywhere-lib";
2
- import { createOrOpenConnection } from "../db-init/db-init.js";
2
+ import { createOrOpenTextCacheConnection } from "../db-init/db-init.js";
3
3
  import { startScheduler } from "./scheduler.js";
4
4
  export async function createTextCacheSystemContext(options) {
5
- const { cn, logNextQuery, isCleared } = await createOrOpenConnection({
6
- appVersion: options.appVersion,
5
+ const { cn, logNextQuery, isFresh } = await createOrOpenTextCacheConnection({
6
+ dependsOn: options.dependsOn,
7
7
  sqliteFile: options.storage.file,
8
8
  logger: options.logger,
9
9
  });
@@ -16,6 +16,6 @@ export async function createTextCacheSystemContext(options) {
16
16
  scheduler: undefined,
17
17
  };
18
18
  context.scheduler = startScheduler(context);
19
- return { context, isCleared };
19
+ return { context, isFresh };
20
20
  }
21
21
  //# sourceMappingURL=cache-system-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache-system-context.js","sourceRoot":"","sources":["../../src/internal/cache-system-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAA8B,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAe5E,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAqC;IAErC,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,sBAAsB,CAAC;QACnE,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACd,GAAG,OAAO;QACV,MAAM,EAAE,OAA6B;QACrC,EAAE;QACF,YAAY;QACZ,cAAc,EACZ,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK;QAC5F,SAAS,EAAE,SAAgB;KAC5B,CAAC;IAEF,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"cache-system-context.js","sourceRoot":"","sources":["../../src/internal/cache-system-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAA8B,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAe5E,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAqC;IAErC,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,+BAA+B,CAAC;QAC1E,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACd,GAAG,OAAO;QACV,MAAM,EAAE,OAA6B;QACrC,EAAE;QACF,YAAY;QACZ,cAAc,EACZ,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK;QAC5F,SAAS,EAAE,SAAgB;KAC5B,CAAC;IAEF,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paroicms/server-text-cache-system",
3
- "version": "1.20.2",
3
+ "version": "1.21.1",
4
4
  "description": "Cache system.",
5
5
  "keywords": [
6
6
  "paroicms",
@@ -29,7 +29,7 @@
29
29
  "dependencies": {
30
30
  "@paroi/async-lib": "~0.3.1",
31
31
  "@paroicms/internal-anywhere-lib": "1.35.2",
32
- "@paroicms/internal-server-lib": "1.21.2",
32
+ "@paroicms/internal-server-lib": "1.22.1",
33
33
  "@paroicms/public-anywhere-lib": "0.37.0",
34
34
  "@paroicms/public-server-lib": "0.47.0",
35
35
  "@paroicms/script-lib": "0.3.2",