@gooddata/sdk-backend-base 11.48.0-alpha.1 → 11.48.0-alpha.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/esm/cachingBackend/index.d.ts +11 -4
- package/esm/cachingBackend/index.d.ts.map +1 -1
- package/esm/cachingBackend/index.js +77 -5
- package/esm/decoratedBackend/analyticalWorkspace.d.ts.map +1 -1
- package/esm/decoratedBackend/analyticalWorkspace.js +4 -0
- package/esm/decoratedBackend/types.d.ts +6 -1
- package/esm/decoratedBackend/types.d.ts.map +1 -1
- package/esm/decoratedBackend/workspaceExportTemplates.d.ts +15 -0
- package/esm/decoratedBackend/workspaceExportTemplates.d.ts.map +1 -0
- package/esm/decoratedBackend/workspaceExportTemplates.js +25 -0
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/sdk-backend-base.d.ts +31 -4
- package/package.json +7 -7
|
@@ -221,15 +221,22 @@ export type CachingConfiguration = {
|
|
|
221
221
|
*/
|
|
222
222
|
maxInsightsPerWorkspace?: number;
|
|
223
223
|
/**
|
|
224
|
-
* Maximum number of organizations for which to cache export templates.
|
|
225
|
-
*
|
|
224
|
+
* Maximum number of organizations for which to cache organization-level export templates.
|
|
225
|
+
* Organization export templates are organization-level, so typically a single entry suffices.
|
|
226
226
|
*
|
|
227
227
|
* When non-positive number is specified, then no caching will be done.
|
|
228
228
|
*/
|
|
229
229
|
maxExportTemplatesOrgs?: number;
|
|
230
230
|
/**
|
|
231
|
-
*
|
|
232
|
-
*
|
|
231
|
+
* Maximum number of workspaces for which to cache workspace-level export templates.
|
|
232
|
+
*
|
|
233
|
+
* When limit is reached, cache entries will be evicted using LRU policy.
|
|
234
|
+
*
|
|
235
|
+
* When non-positive number is specified, then no caching will be done.
|
|
236
|
+
*
|
|
237
|
+
* For backward compatibility this value is also used as a fallback for
|
|
238
|
+
* {@link CachingConfiguration.maxExportTemplatesOrgs} when the latter is unset — it used to be
|
|
239
|
+
* the deprecated alias that sized the organization export-templates cache.
|
|
233
240
|
*/
|
|
234
241
|
maxExportTemplatesWorkspaces?: number;
|
|
235
242
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cachingBackend/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAGH,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cachingBackend/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAGH,KAAK,kBAAkB,EA2C1B,MAAM,2BAA2B,CAAC;AAklEnC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IACvB;;;;;OAKG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAE5B;;OAEG;IACH,aAAa,EAAE,MAAM,IAAI,CAAC;IAE1B;;OAEG;IACH,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAElC;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAE5B;;OAEG;IACH,sBAAsB,EAAE,MAAM,IAAI,CAAC;IAEnC;;OAEG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B;;OAEG;IACH,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAEjC;;OAEG;IACH,aAAa,EAAE,MAAM,IAAI,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;OASG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAC;IAEpD;;;;;;;;;;;OAWG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;;;;;;;;OAYG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC;;;;;;;;;;OAUG;IACH,6BAA6B,CAAC,EAAE,MAAM,CAAC;IAEvC;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;;;;;;;OAWG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC;;;;;;;;;;;;;OAaG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;;;;;;OAUG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;IAEtC;;;;;;;;;;;OAWG;IACH,oCAAoC,CAAC,EAAE,MAAM,CAAC;IAE9C;;;;;;;;;;;OAWG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;;;;;;;;;;;OAaG;IACH,sCAAsC,CAAC,EAAE,MAAM,CAAC;IAEhD;;;;;;;;;;OAUG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AASF;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,EAAE,oBAmB7C,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACvB,WAAW,EAAE,kBAAkB,EAC/B,MAAM,EAAE,oBAAoB,GAC7B,kBAAkB,CA+FpB"}
|
|
@@ -15,6 +15,7 @@ import { decoratedBackend } from "../decoratedBackend/index.js";
|
|
|
15
15
|
import { DecoratedWorkspaceInsightsService } from "../decoratedBackend/insights.js";
|
|
16
16
|
import { DecoratedOrganizationExportTemplatesService } from "../decoratedBackend/organizationExportTemplates.js";
|
|
17
17
|
import { DecoratedSecuritySettingsService } from "../decoratedBackend/securitySettings.js";
|
|
18
|
+
import { DecoratedWorkspaceExportTemplatesService } from "../decoratedBackend/workspaceExportTemplates.js";
|
|
18
19
|
import { DecoratedWorkspaceSettingsService } from "../decoratedBackend/workspaceSettings.js";
|
|
19
20
|
import { mergeBbox } from "../toolkit/geoItems.js";
|
|
20
21
|
//
|
|
@@ -1277,7 +1278,11 @@ class WithOrganizationExportTemplatesCaching extends DecoratedOrganizationExport
|
|
|
1277
1278
|
const result = cache.get(key);
|
|
1278
1279
|
if (!result) {
|
|
1279
1280
|
const promise = super.getExportTemplates().catch((e) => {
|
|
1280
|
-
|
|
1281
|
+
// Only evict our own failed promise — a newer in-flight request may already own the
|
|
1282
|
+
// key (after invalidation or LRU eviction) and must not be dropped.
|
|
1283
|
+
if (cache.get(key) === promise) {
|
|
1284
|
+
cache.delete(key);
|
|
1285
|
+
}
|
|
1281
1286
|
throw e;
|
|
1282
1287
|
});
|
|
1283
1288
|
cache.set(key, promise);
|
|
@@ -1307,6 +1312,61 @@ function cachedOrganizationExportTemplates(ctx) {
|
|
|
1307
1312
|
return (original, organizationId) => new WithOrganizationExportTemplatesCaching(original, ctx, organizationId);
|
|
1308
1313
|
}
|
|
1309
1314
|
//
|
|
1315
|
+
// WORKSPACE EXPORT TEMPLATES CACHING
|
|
1316
|
+
//
|
|
1317
|
+
class WithWorkspaceExportTemplatesCaching extends DecoratedWorkspaceExportTemplatesService {
|
|
1318
|
+
ctx;
|
|
1319
|
+
workspace;
|
|
1320
|
+
constructor(decorated, ctx, workspace) {
|
|
1321
|
+
super(decorated);
|
|
1322
|
+
this.ctx = ctx;
|
|
1323
|
+
this.workspace = workspace;
|
|
1324
|
+
}
|
|
1325
|
+
getExportTemplates() {
|
|
1326
|
+
const cache = this.ctx.caches.workspaceExportTemplates;
|
|
1327
|
+
const key = this.workspace;
|
|
1328
|
+
const result = cache.get(key);
|
|
1329
|
+
if (!result) {
|
|
1330
|
+
const promise = super.getExportTemplates().catch((e) => {
|
|
1331
|
+
// Only evict our own failed promise — a newer in-flight request may already own the
|
|
1332
|
+
// key (after invalidation or LRU eviction) and must not be dropped.
|
|
1333
|
+
if (cache.get(key) === promise) {
|
|
1334
|
+
cache.delete(key);
|
|
1335
|
+
}
|
|
1336
|
+
throw e;
|
|
1337
|
+
});
|
|
1338
|
+
cache.set(key, promise);
|
|
1339
|
+
return promise;
|
|
1340
|
+
}
|
|
1341
|
+
return result;
|
|
1342
|
+
}
|
|
1343
|
+
// oxlint-disable-next-line sonarjs/no-identical-functions -- intentionally mirrors the org-scope caching decorator
|
|
1344
|
+
async createExportTemplate(template) {
|
|
1345
|
+
const result = await super.createExportTemplate(template);
|
|
1346
|
+
this.invalidateCache();
|
|
1347
|
+
return result;
|
|
1348
|
+
}
|
|
1349
|
+
// oxlint-disable-next-line sonarjs/no-identical-functions -- intentionally mirrors the org-scope caching decorator
|
|
1350
|
+
async patchExportTemplate(ref, template) {
|
|
1351
|
+
const result = await super.patchExportTemplate(ref, template);
|
|
1352
|
+
this.invalidateCache();
|
|
1353
|
+
return result;
|
|
1354
|
+
}
|
|
1355
|
+
async deleteExportTemplate(ref) {
|
|
1356
|
+
await super.deleteExportTemplate(ref);
|
|
1357
|
+
this.invalidateCache();
|
|
1358
|
+
}
|
|
1359
|
+
invalidateCache() {
|
|
1360
|
+
// Clear every workspace entry, not just this.workspace: a workspace template list can include
|
|
1361
|
+
// templates inherited from a parent workspace, so a write here (or in a parent) can affect the
|
|
1362
|
+
// cached lists of descendant workspaces too. Writes are rare, so over-invalidating is cheap.
|
|
1363
|
+
this.ctx.caches.workspaceExportTemplates?.clear();
|
|
1364
|
+
}
|
|
1365
|
+
}
|
|
1366
|
+
function cachedWorkspaceExportTemplates(ctx) {
|
|
1367
|
+
return (original, workspace) => new WithWorkspaceExportTemplatesCaching(original, ctx, workspace);
|
|
1368
|
+
}
|
|
1369
|
+
//
|
|
1310
1370
|
//
|
|
1311
1371
|
//
|
|
1312
1372
|
function collectionItemsFilterKey(config) {
|
|
@@ -1448,6 +1508,7 @@ function cacheControl(ctx) {
|
|
|
1448
1508
|
},
|
|
1449
1509
|
resetExportTemplates: () => {
|
|
1450
1510
|
ctx.caches.organizationExportTemplates?.clear();
|
|
1511
|
+
ctx.caches.workspaceExportTemplates?.clear();
|
|
1451
1512
|
},
|
|
1452
1513
|
resetInsights: () => {
|
|
1453
1514
|
ctx.caches.workspaceInsights?.clear();
|
|
@@ -1493,6 +1554,7 @@ export const RecommendedCachingConfiguration = {
|
|
|
1493
1554
|
maxAutomationsWorkspaces: 1,
|
|
1494
1555
|
maxInsightsPerWorkspace: 50,
|
|
1495
1556
|
maxExportTemplatesOrgs: 1,
|
|
1557
|
+
maxExportTemplatesWorkspaces: 1,
|
|
1496
1558
|
cacheGeoStyles: true,
|
|
1497
1559
|
};
|
|
1498
1560
|
/**
|
|
@@ -1518,9 +1580,12 @@ export function withCaching(realBackend, config) {
|
|
|
1518
1580
|
const workspaceSettingsCaching = cachingEnabled(config.maxWorkspaceSettings);
|
|
1519
1581
|
const automationsCaching = cachingEnabled(config.maxAutomationsWorkspaces);
|
|
1520
1582
|
const insightsCaching = cachingEnabled(config.maxInsightsPerWorkspace);
|
|
1521
|
-
//
|
|
1522
|
-
|
|
1523
|
-
|
|
1583
|
+
// Backward compatibility: `maxExportTemplatesWorkspaces` used to be the (deprecated) alias that
|
|
1584
|
+
// sized the org export-templates cache. It now primarily drives workspace caching, but callers
|
|
1585
|
+
// that only set the old name must keep getting org caching until the alias is removed.
|
|
1586
|
+
const orgExportTemplatesMax = config.maxExportTemplatesOrgs ?? config.maxExportTemplatesWorkspaces;
|
|
1587
|
+
const exportTemplatesCaching = cachingEnabled(orgExportTemplatesMax);
|
|
1588
|
+
const workspaceExportTemplatesCaching = cachingEnabled(config.maxExportTemplatesWorkspaces);
|
|
1524
1589
|
const geoCaching = config.cacheGeoStyles === true;
|
|
1525
1590
|
// Determine execution cache configuration: count-based (maxExecutions) takes precedence over time-based (maxExecutionsAge)
|
|
1526
1591
|
const executionCacheOptions = cachingEnabled(config.maxExecutions)
|
|
@@ -1546,7 +1611,10 @@ export function withCaching(realBackend, config) {
|
|
|
1546
1611
|
? new LRUCache({ max: config.maxInsightsPerWorkspace })
|
|
1547
1612
|
: undefined,
|
|
1548
1613
|
organizationExportTemplates: exportTemplatesCaching
|
|
1549
|
-
? new LRUCache({ max:
|
|
1614
|
+
? new LRUCache({ max: orgExportTemplatesMax })
|
|
1615
|
+
: undefined,
|
|
1616
|
+
workspaceExportTemplates: workspaceExportTemplatesCaching
|
|
1617
|
+
? new LRUCache({ max: config.maxExportTemplatesWorkspaces })
|
|
1550
1618
|
: undefined,
|
|
1551
1619
|
geo: geoCaching
|
|
1552
1620
|
? {
|
|
@@ -1567,6 +1635,9 @@ export function withCaching(realBackend, config) {
|
|
|
1567
1635
|
const organizationExportTemplates = exportTemplatesCaching
|
|
1568
1636
|
? cachedOrganizationExportTemplates(ctx)
|
|
1569
1637
|
: undefined;
|
|
1638
|
+
const workspaceExportTemplates = workspaceExportTemplatesCaching
|
|
1639
|
+
? cachedWorkspaceExportTemplates(ctx)
|
|
1640
|
+
: undefined;
|
|
1570
1641
|
const workspaceSettings = workspaceSettingsCaching ? cachedWorkspaceSettings(ctx) : (v) => v;
|
|
1571
1642
|
const geo = geoCaching ? cachedGeo(ctx) : undefined;
|
|
1572
1643
|
if (config.onCacheReady) {
|
|
@@ -1581,6 +1652,7 @@ export function withCaching(realBackend, config) {
|
|
|
1581
1652
|
automations,
|
|
1582
1653
|
insights,
|
|
1583
1654
|
organizationExportTemplates,
|
|
1655
|
+
workspaceExportTemplates,
|
|
1584
1656
|
geo,
|
|
1585
1657
|
});
|
|
1586
1658
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyticalWorkspace.d.ts","sourceRoot":"","sources":["../../src/decoratedBackend/analyticalWorkspace.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,gCAAgC,EACrC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EAC5B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,qBAAa,4BAA6B,YAAW,oBAAoB;IAC9D,SAAS,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAE/C,YAAY,SAAS,EAAE,oBAAoB,EAAE,SAAS,EAAE,kBAAkB,EAIzE;IAEM,aAAa,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAEnF;IAEM,gBAAgB,CAAC,UAAU,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE7F;IAEM,kBAAkB,IAAI,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAErE;IAEM,UAAU,IAAI,2BAA2B,CAQ/C;IAEM,SAAS,IAAI,iBAAiB,CAQpC;IAEM,OAAO,IAAI,wBAAwB,CAQzC;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,QAAQ,IAAI,yBAAyB,CAE3C;IAEM,UAAU,IAAI,2BAA2B,CAE/C;IAEM,KAAK,IAAI,sBAAsB,CAErC;IAEM,QAAQ,IAAI,yBAAyB,CAQ3C;IAEM,UAAU,IAAI,2BAA2B,CAQ/C;IAEM,QAAQ,IAAI,yBAAyB,CAQ3C;IAEM,OAAO,IAAI,wBAAwB,CAEzC;IAEM,QAAQ,IAAI,yBAAyB,CAE3C;IAEM,WAAW,IAAI,4BAA4B,CAEjD;IAEM,KAAK,IAAI,oBAAoB,CAEnC;IAEM,iBAAiB,IAAI,uBAAuB,CAElD;IAEM,UAAU,IAAI,yBAAyB,CAE7C;IAEM,aAAa,IAAI,8BAA8B,CAErD;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,oBAAoB,IAAI,4BAA4B,CAE1D;IAEM,MAAM,IAAI,uBAAuB,CAEvC;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,WAAW,IAAI,mBAAmB,CAExC;IAEM,YAAY,IAAI,6BAA6B,CAEnD;IAEM,WAAW,IAAI,2BAA2B,CAQhD;IAEM,KAAK,IAAI,aAAa,CAE5B;IAEM,UAAU,IAAI,kBAAkB,CAEtC;IAEM,eAAe,IAAI,gCAAgC,
|
|
1
|
+
{"version":3,"file":"analyticalWorkspace.d.ts","sourceRoot":"","sources":["../../src/decoratedBackend/analyticalWorkspace.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,8BAA8B,EACnC,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,gCAAgC,EACrC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EAC5B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,qBAAa,4BAA6B,YAAW,oBAAoB;IAC9D,SAAS,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAE/C,YAAY,SAAS,EAAE,oBAAoB,EAAE,SAAS,EAAE,kBAAkB,EAIzE;IAEM,aAAa,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAEnF;IAEM,gBAAgB,CAAC,UAAU,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE7F;IAEM,kBAAkB,IAAI,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAErE;IAEM,UAAU,IAAI,2BAA2B,CAQ/C;IAEM,SAAS,IAAI,iBAAiB,CAQpC;IAEM,OAAO,IAAI,wBAAwB,CAQzC;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,QAAQ,IAAI,yBAAyB,CAE3C;IAEM,UAAU,IAAI,2BAA2B,CAE/C;IAEM,KAAK,IAAI,sBAAsB,CAErC;IAEM,QAAQ,IAAI,yBAAyB,CAQ3C;IAEM,UAAU,IAAI,2BAA2B,CAQ/C;IAEM,QAAQ,IAAI,yBAAyB,CAQ3C;IAEM,OAAO,IAAI,wBAAwB,CAEzC;IAEM,QAAQ,IAAI,yBAAyB,CAE3C;IAEM,WAAW,IAAI,4BAA4B,CAEjD;IAEM,KAAK,IAAI,oBAAoB,CAEnC;IAEM,iBAAiB,IAAI,uBAAuB,CAElD;IAEM,UAAU,IAAI,yBAAyB,CAE7C;IAEM,aAAa,IAAI,8BAA8B,CAErD;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,oBAAoB,IAAI,4BAA4B,CAE1D;IAEM,MAAM,IAAI,uBAAuB,CAEvC;IAEM,iBAAiB,IAAI,kCAAkC,CAE7D;IAEM,WAAW,IAAI,mBAAmB,CAExC;IAEM,YAAY,IAAI,6BAA6B,CAEnD;IAEM,WAAW,IAAI,2BAA2B,CAQhD;IAEM,KAAK,IAAI,aAAa,CAE5B;IAEM,UAAU,IAAI,kBAAkB,CAEtC;IAEM,eAAe,IAAI,gCAAgC,CAQzD;CACJ"}
|
|
@@ -124,6 +124,10 @@ export class AnalyticalWorkspaceDecorator {
|
|
|
124
124
|
return this.decorated.references();
|
|
125
125
|
}
|
|
126
126
|
exportTemplates() {
|
|
127
|
+
const { workspaceExportTemplates } = this.factories;
|
|
128
|
+
if (workspaceExportTemplates) {
|
|
129
|
+
return workspaceExportTemplates(this.decorated.exportTemplates(), this.workspace);
|
|
130
|
+
}
|
|
127
131
|
return this.decorated.exportTemplates();
|
|
128
132
|
}
|
|
129
133
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type IExecutionFactory, type IGeoService, type IOrganizationExportTemplatesService, type ISecuritySettingsService, type IWorkspaceAttributesService, type IWorkspaceAutomationService, type IWorkspaceCatalogFactory, type IWorkspaceDashboardsService, type IWorkspaceInsightsService, type IWorkspaceSettingsService } from "@gooddata/sdk-backend-spi";
|
|
1
|
+
import { type IExecutionFactory, type IGeoService, type IOrganizationExportTemplatesService, type ISecuritySettingsService, type IWorkspaceAttributesService, type IWorkspaceAutomationService, type IWorkspaceCatalogFactory, type IWorkspaceDashboardsService, type IWorkspaceExportTemplatesService, type IWorkspaceInsightsService, type IWorkspaceSettingsService } from "@gooddata/sdk-backend-spi";
|
|
2
2
|
/**
|
|
3
3
|
* @alpha
|
|
4
4
|
*/
|
|
@@ -39,6 +39,10 @@ export type GeoDecoratorFactory = (geo: IGeoService) => IGeoService;
|
|
|
39
39
|
* @alpha
|
|
40
40
|
*/
|
|
41
41
|
export type OrganizationExportTemplatesDecoratorFactory = (exportTemplates: IOrganizationExportTemplatesService, organizationId: string) => IOrganizationExportTemplatesService;
|
|
42
|
+
/**
|
|
43
|
+
* @alpha
|
|
44
|
+
*/
|
|
45
|
+
export type WorkspaceExportTemplatesDecoratorFactory = (exportTemplates: IWorkspaceExportTemplatesService, workspace: string) => IWorkspaceExportTemplatesService;
|
|
42
46
|
/**
|
|
43
47
|
* Provides factory functions for the different decorators (currently only supports execution
|
|
44
48
|
* decorator). Input to each factory function is the original implementation from the wrapped backend, output
|
|
@@ -57,5 +61,6 @@ export type DecoratorFactories = {
|
|
|
57
61
|
dashboards?: DashboardsDecoratorFactory;
|
|
58
62
|
geo?: GeoDecoratorFactory;
|
|
59
63
|
organizationExportTemplates?: OrganizationExportTemplatesDecoratorFactory;
|
|
64
|
+
workspaceExportTemplates?: WorkspaceExportTemplatesDecoratorFactory;
|
|
60
65
|
};
|
|
61
66
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/decoratedBackend/types.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,mCAAmC,EACxC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EACjC,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,KAAK,iBAAiB,CAAC;AAEnG;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,wBAAwB,CAAC;AAEtG;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG,CAC3C,gBAAgB,EAAE,wBAAwB,KACzC,wBAAwB,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,CAC5C,QAAQ,EAAE,yBAAyB,EACnC,SAAS,EAAE,MAAM,KAChB,yBAAyB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CACrC,UAAU,EAAE,2BAA2B,EACvC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,CACtC,WAAW,EAAE,2BAA2B,EACxC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CACrC,UAAU,EAAE,2BAA2B,EACvC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACnC,QAAQ,EAAE,yBAAyB,EACnC,SAAS,EAAE,MAAM,KAChB,yBAAyB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG,CACtD,eAAe,EAAE,mCAAmC,EACpD,cAAc,EAAE,MAAM,KACrB,mCAAmC,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,gBAAgB,CAAC,EAAE,gCAAgC,CAAC;IACpD,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C,QAAQ,CAAC,EAAE,wBAAwB,CAAC;IACpC,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,2BAA2B,CAAC,EAAE,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/decoratedBackend/types.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,mCAAmC,EACxC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,gCAAgC,EACrC,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EACjC,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,KAAK,iBAAiB,CAAC;AAEnG;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,wBAAwB,CAAC;AAEtG;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG,CAC3C,gBAAgB,EAAE,wBAAwB,KACzC,wBAAwB,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,CAC5C,QAAQ,EAAE,yBAAyB,EACnC,SAAS,EAAE,MAAM,KAChB,yBAAyB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CACrC,UAAU,EAAE,2BAA2B,EACvC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,CACtC,WAAW,EAAE,2BAA2B,EACxC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CACrC,UAAU,EAAE,2BAA2B,EACvC,SAAS,EAAE,MAAM,KAChB,2BAA2B,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACnC,QAAQ,EAAE,yBAAyB,EACnC,SAAS,EAAE,MAAM,KAChB,yBAAyB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,WAAW,KAAK,WAAW,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,2CAA2C,GAAG,CACtD,eAAe,EAAE,mCAAmC,EACpD,cAAc,EAAE,MAAM,KACrB,mCAAmC,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG,CACnD,eAAe,EAAE,gCAAgC,EACjD,SAAS,EAAE,MAAM,KAChB,gCAAgC,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,gBAAgB,CAAC,EAAE,gCAAgC,CAAC;IACpD,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C,QAAQ,CAAC,EAAE,wBAAwB,CAAC;IACpC,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,2BAA2B,CAAC,EAAE,2CAA2C,CAAC;IAC1E,wBAAwB,CAAC,EAAE,wCAAwC,CAAC;CACvE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type IWorkspaceExportTemplatesService } from "@gooddata/sdk-backend-spi";
|
|
2
|
+
import { type IExportTemplate, type IExportTemplateDefinition, type ObjRef } from "@gooddata/sdk-model";
|
|
3
|
+
/**
|
|
4
|
+
* @alpha
|
|
5
|
+
*/
|
|
6
|
+
export declare abstract class DecoratedWorkspaceExportTemplatesService implements IWorkspaceExportTemplatesService {
|
|
7
|
+
protected readonly decorated: IWorkspaceExportTemplatesService;
|
|
8
|
+
protected constructor(decorated: IWorkspaceExportTemplatesService);
|
|
9
|
+
getExportTemplates(): Promise<IExportTemplate[]>;
|
|
10
|
+
getExportTemplate(ref: ObjRef): Promise<IExportTemplate>;
|
|
11
|
+
createExportTemplate(template: IExportTemplateDefinition): Promise<IExportTemplate>;
|
|
12
|
+
patchExportTemplate(ref: ObjRef, template: Partial<IExportTemplateDefinition>): Promise<IExportTemplate>;
|
|
13
|
+
deleteExportTemplate(ref: ObjRef): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=workspaceExportTemplates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspaceExportTemplates.d.ts","sourceRoot":"","sources":["../../src/decoratedBackend/workspaceExportTemplates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,yBAAyB,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAExG;;GAEG;AACH,8BAAsB,wCAAyC,YAAW,gCAAgC;IAChF,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,gCAAgC;IAApF,SAAS,aAAgC,SAAS,EAAE,gCAAgC,EAAI;IAEjF,kBAAkB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAEtD;IAEM,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAE9D;IAEM,oBAAoB,CAAC,QAAQ,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC,CAEzF;IAEM,mBAAmB,CACtB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAC7C,OAAO,CAAC,eAAe,CAAC,CAE1B;IAEM,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtD;CACJ"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
/**
|
|
3
|
+
* @alpha
|
|
4
|
+
*/
|
|
5
|
+
export class DecoratedWorkspaceExportTemplatesService {
|
|
6
|
+
decorated;
|
|
7
|
+
constructor(decorated) {
|
|
8
|
+
this.decorated = decorated;
|
|
9
|
+
}
|
|
10
|
+
getExportTemplates() {
|
|
11
|
+
return this.decorated.getExportTemplates();
|
|
12
|
+
}
|
|
13
|
+
getExportTemplate(ref) {
|
|
14
|
+
return this.decorated.getExportTemplate(ref);
|
|
15
|
+
}
|
|
16
|
+
createExportTemplate(template) {
|
|
17
|
+
return this.decorated.createExportTemplate(template);
|
|
18
|
+
}
|
|
19
|
+
patchExportTemplate(ref, template) {
|
|
20
|
+
return this.decorated.patchExportTemplate(ref, template);
|
|
21
|
+
}
|
|
22
|
+
deleteExportTemplate(ref) {
|
|
23
|
+
return this.decorated.deleteExportTemplate(ref);
|
|
24
|
+
}
|
|
25
|
+
}
|
package/esm/index.d.ts
CHANGED
|
@@ -12,13 +12,14 @@ export { type DummyBackendConfig, dummyBackend, dummyBackendEmptyData, dummyData
|
|
|
12
12
|
export { DummySemanticSearchQueryBuilder } from "./dummyBackend/DummySemanticSearch.js";
|
|
13
13
|
export { DummyGenAIChatThread, DummyChatConversations } from "./dummyBackend/DummyGenAIChatThread.js";
|
|
14
14
|
export { decoratedBackend } from "./decoratedBackend/index.js";
|
|
15
|
-
export type { DecoratorFactories, CatalogDecoratorFactory, ExecutionDecoratorFactory, SecuritySettingsDecoratorFactory, WorkspaceSettingsDecoratorFactory, AutomationsDecoratorFactory, AttributesDecoratorFactory, InsightsDecoratorFactory, DashboardsDecoratorFactory, GeoDecoratorFactory, OrganizationExportTemplatesDecoratorFactory, } from "./decoratedBackend/types.js";
|
|
15
|
+
export type { DecoratorFactories, CatalogDecoratorFactory, ExecutionDecoratorFactory, SecuritySettingsDecoratorFactory, WorkspaceSettingsDecoratorFactory, AutomationsDecoratorFactory, AttributesDecoratorFactory, InsightsDecoratorFactory, DashboardsDecoratorFactory, GeoDecoratorFactory, OrganizationExportTemplatesDecoratorFactory, WorkspaceExportTemplatesDecoratorFactory, } from "./decoratedBackend/types.js";
|
|
16
16
|
export { type PreparedExecutionWrapper, DecoratedExecutionFactory, DecoratedPreparedExecution, DecoratedExecutionResult, } from "./decoratedBackend/execution.js";
|
|
17
17
|
export { DecoratedWorkspaceDashboardsService } from "./decoratedBackend/dashboards.js";
|
|
18
18
|
export { DecoratedWorkspaceInsightsService } from "./decoratedBackend/insights.js";
|
|
19
19
|
export { type WorkspaceCatalogWrapper, DecoratedWorkspaceCatalogFactory, DecoratedWorkspaceCatalog, } from "./decoratedBackend/catalog.js";
|
|
20
20
|
export { DecoratedSecuritySettingsService } from "./decoratedBackend/securitySettings.js";
|
|
21
21
|
export { DecoratedOrganizationExportTemplatesService } from "./decoratedBackend/organizationExportTemplates.js";
|
|
22
|
+
export { DecoratedWorkspaceExportTemplatesService } from "./decoratedBackend/workspaceExportTemplates.js";
|
|
22
23
|
export { DecoratedWorkspaceSettingsService } from "./decoratedBackend/workspaceSettings.js";
|
|
23
24
|
export { type AnalyticalBackendCallbacks, withEventing } from "./eventingBackend/index.js";
|
|
24
25
|
export { type CachingConfiguration, type CacheControl, withCaching, RecommendedCachingConfiguration, } from "./cachingBackend/index.js";
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH,OAAO,EACH,KAAK,kBAAkB,EACvB,YAAY,EACZ,qBAAqB,EACrB,aAAa,GAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAEtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,YAAY,EACR,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,gCAAgC,EAChC,iCAAiC,EACjC,2BAA2B,EAC3B,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACnB,2CAA2C,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/esm/index.js
CHANGED
|
@@ -20,6 +20,7 @@ export { DecoratedWorkspaceInsightsService } from "./decoratedBackend/insights.j
|
|
|
20
20
|
export { DecoratedWorkspaceCatalogFactory, DecoratedWorkspaceCatalog, } from "./decoratedBackend/catalog.js";
|
|
21
21
|
export { DecoratedSecuritySettingsService } from "./decoratedBackend/securitySettings.js";
|
|
22
22
|
export { DecoratedOrganizationExportTemplatesService } from "./decoratedBackend/organizationExportTemplates.js";
|
|
23
|
+
export { DecoratedWorkspaceExportTemplatesService } from "./decoratedBackend/workspaceExportTemplates.js";
|
|
23
24
|
export { DecoratedWorkspaceSettingsService } from "./decoratedBackend/workspaceSettings.js";
|
|
24
25
|
export { withEventing } from "./eventingBackend/index.js";
|
|
25
26
|
export { withCaching, RecommendedCachingConfiguration, } from "./cachingBackend/index.js";
|
|
@@ -167,6 +167,7 @@ import { IWorkspaceCatalogAvailableItemsFactory } from '@gooddata/sdk-backend-sp
|
|
|
167
167
|
import { IWorkspaceCatalogFactory } from '@gooddata/sdk-backend-spi';
|
|
168
168
|
import { IWorkspaceCatalogFactoryOptions } from '@gooddata/sdk-backend-spi';
|
|
169
169
|
import { IWorkspaceDashboardsService } from '@gooddata/sdk-backend-spi';
|
|
170
|
+
import { IWorkspaceExportTemplatesService } from '@gooddata/sdk-backend-spi';
|
|
170
171
|
import { IWorkspaceInsightsService } from '@gooddata/sdk-backend-spi';
|
|
171
172
|
import { IWorkspaceSettings } from '@gooddata/sdk-backend-spi';
|
|
172
173
|
import { IWorkspaceSettingsService } from '@gooddata/sdk-backend-spi';
|
|
@@ -651,15 +652,22 @@ export declare type CachingConfiguration = {
|
|
|
651
652
|
*/
|
|
652
653
|
maxInsightsPerWorkspace?: number;
|
|
653
654
|
/**
|
|
654
|
-
* Maximum number of organizations for which to cache export templates.
|
|
655
|
-
*
|
|
655
|
+
* Maximum number of organizations for which to cache organization-level export templates.
|
|
656
|
+
* Organization export templates are organization-level, so typically a single entry suffices.
|
|
656
657
|
*
|
|
657
658
|
* When non-positive number is specified, then no caching will be done.
|
|
658
659
|
*/
|
|
659
660
|
maxExportTemplatesOrgs?: number;
|
|
660
661
|
/**
|
|
661
|
-
*
|
|
662
|
-
*
|
|
662
|
+
* Maximum number of workspaces for which to cache workspace-level export templates.
|
|
663
|
+
*
|
|
664
|
+
* When limit is reached, cache entries will be evicted using LRU policy.
|
|
665
|
+
*
|
|
666
|
+
* When non-positive number is specified, then no caching will be done.
|
|
667
|
+
*
|
|
668
|
+
* For backward compatibility this value is also used as a fallback for
|
|
669
|
+
* {@link CachingConfiguration.maxExportTemplatesOrgs} when the latter is unset — it used to be
|
|
670
|
+
* the deprecated alias that sized the organization export-templates cache.
|
|
663
671
|
*/
|
|
664
672
|
maxExportTemplatesWorkspaces?: number;
|
|
665
673
|
/**
|
|
@@ -1228,6 +1236,19 @@ export declare abstract class DecoratedWorkspaceDashboardsService implements IWo
|
|
|
1228
1236
|
setFilterViewAsDefault(ref: ObjRef, isDefault: boolean): Promise<void>;
|
|
1229
1237
|
}
|
|
1230
1238
|
|
|
1239
|
+
/**
|
|
1240
|
+
* @alpha
|
|
1241
|
+
*/
|
|
1242
|
+
export declare abstract class DecoratedWorkspaceExportTemplatesService implements IWorkspaceExportTemplatesService {
|
|
1243
|
+
protected readonly decorated: IWorkspaceExportTemplatesService;
|
|
1244
|
+
protected constructor(decorated: IWorkspaceExportTemplatesService);
|
|
1245
|
+
getExportTemplates(): Promise<IExportTemplate[]>;
|
|
1246
|
+
getExportTemplate(ref: ObjRef): Promise<IExportTemplate>;
|
|
1247
|
+
createExportTemplate(template: IExportTemplateDefinition): Promise<IExportTemplate>;
|
|
1248
|
+
patchExportTemplate(ref: ObjRef, template: Partial<IExportTemplateDefinition>): Promise<IExportTemplate>;
|
|
1249
|
+
deleteExportTemplate(ref: ObjRef): Promise<void>;
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1231
1252
|
/**
|
|
1232
1253
|
* Abstract base class for decorators of the {@link @gooddata/sdk-backend-spi#IWorkspaceInsightsService}.
|
|
1233
1254
|
*
|
|
@@ -1322,6 +1343,7 @@ export declare type DecoratorFactories = {
|
|
|
1322
1343
|
dashboards?: DashboardsDecoratorFactory;
|
|
1323
1344
|
geo?: GeoDecoratorFactory;
|
|
1324
1345
|
organizationExportTemplates?: OrganizationExportTemplatesDecoratorFactory;
|
|
1346
|
+
workspaceExportTemplates?: WorkspaceExportTemplatesDecoratorFactory;
|
|
1325
1347
|
};
|
|
1326
1348
|
|
|
1327
1349
|
/**
|
|
@@ -2391,6 +2413,11 @@ export declare function withNormalization(realBackend: IAnalyticalBackend, confi
|
|
|
2391
2413
|
*/
|
|
2392
2414
|
export declare type WorkspaceCatalogWrapper = (catalog: IWorkspaceCatalog) => IWorkspaceCatalog;
|
|
2393
2415
|
|
|
2416
|
+
/**
|
|
2417
|
+
* @alpha
|
|
2418
|
+
*/
|
|
2419
|
+
export declare type WorkspaceExportTemplatesDecoratorFactory = (exportTemplates: IWorkspaceExportTemplatesService, workspace: string) => IWorkspaceExportTemplatesService;
|
|
2420
|
+
|
|
2394
2421
|
/**
|
|
2395
2422
|
* @alpha
|
|
2396
2423
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-backend-base",
|
|
3
|
-
"version": "11.48.0-alpha.
|
|
3
|
+
"version": "11.48.0-alpha.3",
|
|
4
4
|
"description": "GoodData.UI SDK - Base for backend implementations",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData",
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
"ts-invariant": "0.10.3",
|
|
30
30
|
"tslib": "2.8.1",
|
|
31
31
|
"uuid": "11.1.1",
|
|
32
|
-
"@gooddata/sdk-backend-spi": "11.48.0-alpha.
|
|
33
|
-
"@gooddata/sdk-model": "11.48.0-alpha.
|
|
34
|
-
"@gooddata/util": "11.48.0-alpha.
|
|
32
|
+
"@gooddata/sdk-backend-spi": "11.48.0-alpha.3",
|
|
33
|
+
"@gooddata/sdk-model": "11.48.0-alpha.3",
|
|
34
|
+
"@gooddata/util": "11.48.0-alpha.3"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"oxlint-tsgolint": "0.15.0",
|
|
57
57
|
"typescript": "5.9.3",
|
|
58
58
|
"vitest": "4.1.8",
|
|
59
|
-
"@gooddata/eslint-config": "11.48.0-alpha.
|
|
60
|
-
"@gooddata/oxlint-config": "11.48.0-alpha.
|
|
61
|
-
"@gooddata/reference-workspace": "11.48.0-alpha.
|
|
59
|
+
"@gooddata/eslint-config": "11.48.0-alpha.3",
|
|
60
|
+
"@gooddata/oxlint-config": "11.48.0-alpha.3",
|
|
61
|
+
"@gooddata/reference-workspace": "11.48.0-alpha.3"
|
|
62
62
|
},
|
|
63
63
|
"scripts": {
|
|
64
64
|
"_phase:build": "npm run build",
|