@supernova-studio/supernova-sdk-beta 1.6.20 → 1.6.22
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/build/sdk-typescript/src/core/data/SDKDataCore.d.ts +2 -0
- package/build/sdk-typescript/src/core/data/requests/SDKDataCoreReadRequests.d.ts +1 -0
- package/build/sdk-typescript/src/core/data/requests/SDKDataCoreWriteRequests.d.ts +1 -0
- package/build/sdk-typescript/src/model/support/SDKTokenOrigin.d.ts +4 -0
- package/build/sdk-typescript/src/model/tokens/SDKTokenValue.d.ts +1 -0
- package/build/sdk-typescript/src/model/tokens/remote/SDKRemoteTokenModel.d.ts +2 -0
- package/build/sdk-typescript/src/tests/validators.d.ts +1 -0
- package/build/sdk-typescript/src/tools/design-tokens/utilities/SDKDTJSONConverter.d.ts +1 -0
- package/build/sdk-typescript/src/tools/design-tokens/utilities/SDKDTTokenReferenceResolver.d.ts +1 -0
- package/build/sdk-typescript/src/tools/json-builder/elements-transformers/SDKToolsJSONElementTransformer.d.ts +1 -1
- package/build/supernova-sdk-typescript.js +188 -124
- package/build/supernova-sdk-typescript.js.map +1 -1
- package/package.json +1 -1
|
@@ -304,4 +304,6 @@ export declare class DataCore {
|
|
|
304
304
|
getImportJob(designSystemId: string, versionId: string, jobId: string): Promise<ImportJob>;
|
|
305
305
|
getImportJobs(designSystemId: string, versionId: string): Promise<Array<ImportJob>>;
|
|
306
306
|
scheduleImportJobForFigmaSources(designSystemId: string, versionId: string, sourceIds: Array<string>, dryRun: boolean): Promise<ImportJob>;
|
|
307
|
+
getTokenStudioData(designSystemId: string, versionId: string): Promise<object>;
|
|
308
|
+
writeTokenStudioData(designSystemId: string, versionId: string, data: object): Promise<boolean>;
|
|
307
309
|
}
|
|
@@ -128,4 +128,5 @@ export declare class DataCoreReadRequests {
|
|
|
128
128
|
getVersions(designSystemId: string): Promise<Array<DesignSystemVersionRemoteModel>>;
|
|
129
129
|
getImportJobs(designSystemId: string, versionId: string): Promise<Array<ImportJobRemoteModel>>;
|
|
130
130
|
getImportJob(designSystemId: string, versionId: string, jobId: string): Promise<ImportJobRemoteModel>;
|
|
131
|
+
getTokenStudioData(designSystemId: string, versionId: string): Promise<object>;
|
|
131
132
|
}
|
|
@@ -124,4 +124,5 @@ export declare class DataCoreWriteRequests {
|
|
|
124
124
|
linkFigmaSource(designSystemId: string, data: object): Promise<SourceRemoteModel>;
|
|
125
125
|
updateFigmaSource(designSystemId: string, sourceId: string, data: object): Promise<SourceRemoteModel>;
|
|
126
126
|
updateFigmaSourceClaimOwnership(designSystemId: string, sourceId: string): Promise<SourceRemoteModel>;
|
|
127
|
+
writeTokenStudioJSONData(designSystemId: string, versionId: string, data: object): Promise<boolean>;
|
|
127
128
|
}
|
|
@@ -2,10 +2,14 @@ export type TokenOriginModel = {
|
|
|
2
2
|
id?: string;
|
|
3
3
|
name?: string;
|
|
4
4
|
sourceId?: string;
|
|
5
|
+
referenceOriginId?: string;
|
|
6
|
+
referencePersistentId?: string;
|
|
5
7
|
};
|
|
6
8
|
export declare class TokenOrigin {
|
|
7
9
|
id: string | null;
|
|
8
10
|
name: string | null;
|
|
9
11
|
sourceId: string | null;
|
|
12
|
+
referenceOriginId?: string | null;
|
|
13
|
+
referencePersistentId?: string | null;
|
|
10
14
|
constructor(model: TokenOriginModel);
|
|
11
15
|
}
|
|
@@ -198,3 +198,4 @@ export declare const checkSingleReferencedTokenById: (token: AnyToken, candidate
|
|
|
198
198
|
export declare const replaceReferencedTokenIds: (token: AnyToken, currentId: string, newId: string, allTokens: Map<string, Token>) => void;
|
|
199
199
|
export declare const replaceReferencedToken: (token: Token, existingToken: AnyToken, newToken: AnyToken) => void;
|
|
200
200
|
export declare const replaceReferencedTokenByIds: (token: Token, existingTokenId: string, newTokenId: string) => void;
|
|
201
|
+
export declare const replaceOriginReferencePersistentIdByIds: (token: Token, existingTokenId: string, newTokenId: string) => void;
|
|
@@ -82,3 +82,4 @@ export declare const validateColorTokenJustOpacityRef: (t: any, tokens: Token[],
|
|
|
82
82
|
export declare const validateDimensionTokenRef: (t: any, tokens: Token[], description: string, refName: string, measure: number, unit: Unit) => void;
|
|
83
83
|
export declare const validateBorderTokenRef: (t: any, tokens: Token[], description: string, refName: string, hex: string, position: BorderPosition, style: BorderStyle, measure: number, unit: Unit) => void;
|
|
84
84
|
export declare const validateBorderTokenInnerRef: (t: any, tokens: Token[], name: string, hex: string, position: BorderPosition, style: BorderStyle, measure: number, unit: Unit) => void;
|
|
85
|
+
export declare const validateOrigin: (t: any, tokens: Token[], name: string, nameRef: string) => void;
|
|
@@ -17,6 +17,7 @@ export declare class DTJSONConverter {
|
|
|
17
17
|
referenceResolver: DTTokenReferenceResolver;
|
|
18
18
|
constructor(versionId: string, mapping: DTPluginToSupernovaMapPack);
|
|
19
19
|
convertNodesToTokens(nodes: Array<DTParsedNode>, brand: Brand): Array<DTProcessedTokenNode>;
|
|
20
|
+
private remapRootNodeKey;
|
|
20
21
|
private remapRootNodeKeys;
|
|
21
22
|
private convertNodesToTokensForSupportedNodeTypes;
|
|
22
23
|
private convertAtomicNode;
|
package/build/sdk-typescript/src/tools/design-tokens/utilities/SDKDTTokenReferenceResolver.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare class DTTokenReferenceResolver {
|
|
|
12
12
|
unmappedValues(): Array<DTProcessedTokenNode>;
|
|
13
13
|
tokensOfType(type: TokenType): Array<Token>;
|
|
14
14
|
lookupReferencedToken(reference: string): Token | undefined;
|
|
15
|
+
lookupReferencedNode(reference: string): DTProcessedTokenNode | undefined;
|
|
15
16
|
lookupAllReferencedTokens(reference: string): Array<{
|
|
16
17
|
token: Token;
|
|
17
18
|
key: string;
|
|
@@ -62,7 +62,7 @@ export declare class TokenJSONElementTransformer {
|
|
|
62
62
|
safeGroupName(group: TokenGroup): string;
|
|
63
63
|
processedName(name: string, naming: JSONBuilderNamingOption): string;
|
|
64
64
|
/** Retrieve human-readable token type in unified fashion, used both as token type and as token master group */
|
|
65
|
-
typeLabel(type: TokenType): "color" | "gradient" | "typography" | "border" | "textCase" | "textDecoration" | "shadow" | "visibility" | "
|
|
65
|
+
typeLabel(type: TokenType): "color" | "gradient" | "typography" | "border" | "textCase" | "textDecoration" | "shadow" | "visibility" | "measure" | "text";
|
|
66
66
|
/** Retrieve chain of groups up to a specified group, ordered from parent to children */
|
|
67
67
|
referenceGroupChain(containingGroup: TokenGroup, allGroups: Array<TokenGroup>): Array<TokenGroup>;
|
|
68
68
|
}
|
|
@@ -36974,21 +36974,14 @@ class AreaVersions {
|
|
|
36974
36974
|
}
|
|
36975
36975
|
getTokenStudioData(from) {
|
|
36976
36976
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36977
|
-
return
|
|
36978
|
-
// return this.dataCore.getTokenStudioData(from.designSystemId, from.versionId)
|
|
36977
|
+
return this.dataCore.getTokenStudioData(from.designSystemId, from.versionId);
|
|
36979
36978
|
});
|
|
36980
36979
|
}
|
|
36981
36980
|
// --- --- --- --- --- --- --- --- --- ---
|
|
36982
36981
|
// MARK: - Create/Update
|
|
36983
36982
|
writeTokenStudioData(from, data) {
|
|
36984
36983
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36985
|
-
return
|
|
36986
|
-
/*
|
|
36987
|
-
return this.dataCore.writeTokenStudioData(
|
|
36988
|
-
from.designSystemId,
|
|
36989
|
-
from.versionId,
|
|
36990
|
-
data
|
|
36991
|
-
) */
|
|
36984
|
+
return this.dataCore.writeTokenStudioData(from.designSystemId, from.versionId, data);
|
|
36992
36985
|
});
|
|
36993
36986
|
}
|
|
36994
36987
|
}
|
|
@@ -38654,6 +38647,16 @@ class DataCore {
|
|
|
38654
38647
|
return new SDKImportJob_1.ImportJob(data);
|
|
38655
38648
|
});
|
|
38656
38649
|
}
|
|
38650
|
+
getTokenStudioData(designSystemId, versionId) {
|
|
38651
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38652
|
+
return this.read.getTokenStudioData(designSystemId, versionId);
|
|
38653
|
+
});
|
|
38654
|
+
}
|
|
38655
|
+
writeTokenStudioData(designSystemId, versionId, data) {
|
|
38656
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38657
|
+
return this.write.writeTokenStudioJSONData(designSystemId, versionId, data);
|
|
38658
|
+
});
|
|
38659
|
+
}
|
|
38657
38660
|
}
|
|
38658
38661
|
exports.DataCore = DataCore;
|
|
38659
38662
|
|
|
@@ -39109,6 +39112,13 @@ class DataCoreReadRequests {
|
|
|
39109
39112
|
return payload.result.job;
|
|
39110
39113
|
});
|
|
39111
39114
|
}
|
|
39115
|
+
getTokenStudioData(designSystemId, versionId) {
|
|
39116
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39117
|
+
const endpoint = this.bridge.getVersionEndpoint(designSystemId, versionId, "bff/token-studio");
|
|
39118
|
+
const payload = yield this.bridge.get(endpoint);
|
|
39119
|
+
return payload.result;
|
|
39120
|
+
});
|
|
39121
|
+
}
|
|
39112
39122
|
}
|
|
39113
39123
|
exports.DataCoreReadRequests = DataCoreReadRequests;
|
|
39114
39124
|
|
|
@@ -39836,6 +39846,13 @@ class DataCoreWriteRequests {
|
|
|
39836
39846
|
return payload.result.source;
|
|
39837
39847
|
});
|
|
39838
39848
|
}
|
|
39849
|
+
writeTokenStudioJSONData(designSystemId, versionId, data) {
|
|
39850
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39851
|
+
const endpoint = this.bridge.getVersionEndpoint(designSystemId, versionId, "bff/token-studio");
|
|
39852
|
+
yield this.bridge.post(endpoint, data);
|
|
39853
|
+
return true;
|
|
39854
|
+
});
|
|
39855
|
+
}
|
|
39839
39856
|
}
|
|
39840
39857
|
exports.DataCoreWriteRequests = DataCoreWriteRequests;
|
|
39841
39858
|
|
|
@@ -47041,10 +47058,12 @@ class TokenOrigin {
|
|
|
47041
47058
|
// --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
|
|
47042
47059
|
// MARK: - Constructor
|
|
47043
47060
|
constructor(model) {
|
|
47044
|
-
var _a, _b, _c;
|
|
47061
|
+
var _a, _b, _c, _d, _e;
|
|
47045
47062
|
this.id = (_a = model.id) !== null && _a !== void 0 ? _a : null;
|
|
47046
47063
|
this.name = (_b = model.name) !== null && _b !== void 0 ? _b : null;
|
|
47047
47064
|
this.sourceId = (_c = model.sourceId) !== null && _c !== void 0 ? _c : null;
|
|
47065
|
+
this.referenceOriginId = (_d = model.referenceOriginId) !== null && _d !== void 0 ? _d : null;
|
|
47066
|
+
this.referencePersistentId = (_e = model.referencePersistentId) !== null && _e !== void 0 ? _e : null;
|
|
47048
47067
|
}
|
|
47049
47068
|
}
|
|
47050
47069
|
exports.TokenOrigin = TokenOrigin;
|
|
@@ -47384,7 +47403,7 @@ class TokenTheme {
|
|
|
47384
47403
|
return this.overriddenTokens.map(o => this.toWriteOverrideObject(o));
|
|
47385
47404
|
}
|
|
47386
47405
|
toWriteOverrideObject(token) {
|
|
47387
|
-
var _a, _b, _c;
|
|
47406
|
+
var _a, _b, _c, _d, _e;
|
|
47388
47407
|
const model = {
|
|
47389
47408
|
data: this.valueToWriteObject(token.value, token.tokenType, token),
|
|
47390
47409
|
tokenPersistentId: token.id,
|
|
@@ -47394,6 +47413,8 @@ class TokenTheme {
|
|
|
47394
47413
|
id: (_a = token.origin.id) !== null && _a !== void 0 ? _a : undefined,
|
|
47395
47414
|
name: (_b = token.origin.name) !== null && _b !== void 0 ? _b : undefined,
|
|
47396
47415
|
sourceId: (_c = token.origin.sourceId) !== null && _c !== void 0 ? _c : undefined,
|
|
47416
|
+
referenceOriginId: (_d = token.origin.referenceOriginId) !== null && _d !== void 0 ? _d : undefined,
|
|
47417
|
+
referencePersistentId: (_e = token.origin.referencePersistentId) !== null && _e !== void 0 ? _e : undefined,
|
|
47397
47418
|
}
|
|
47398
47419
|
: undefined,
|
|
47399
47420
|
createdAt: token.createdAt ? token.createdAt.toISOString() : undefined,
|
|
@@ -47514,7 +47535,7 @@ class TokenThemeOverride {
|
|
|
47514
47535
|
// --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
|
|
47515
47536
|
// MARK: - Manipulation
|
|
47516
47537
|
toWriteObject() {
|
|
47517
|
-
var _a, _b, _c;
|
|
47538
|
+
var _a, _b, _c, _d, _e;
|
|
47518
47539
|
return {
|
|
47519
47540
|
data: this.valueToWriteObject(this.value, this.type),
|
|
47520
47541
|
tokenPersistentId: this.tokenId,
|
|
@@ -47524,6 +47545,8 @@ class TokenThemeOverride {
|
|
|
47524
47545
|
id: (_a = this.origin.id) !== null && _a !== void 0 ? _a : undefined,
|
|
47525
47546
|
name: (_b = this.origin.name) !== null && _b !== void 0 ? _b : undefined,
|
|
47526
47547
|
sourceId: (_c = this.origin.sourceId) !== null && _c !== void 0 ? _c : undefined,
|
|
47548
|
+
referenceOriginId: (_d = this.origin.referenceOriginId) !== null && _d !== void 0 ? _d : undefined,
|
|
47549
|
+
referencePersistentId: (_e = this.origin.referencePersistentId) !== null && _e !== void 0 ? _e : undefined,
|
|
47527
47550
|
}
|
|
47528
47551
|
: undefined,
|
|
47529
47552
|
createdAt: this.createdAt ? this.createdAt.toISOString() : undefined,
|
|
@@ -48241,6 +48264,7 @@ class DimensionCategoryToken extends SDKToken_1.Token {
|
|
|
48241
48264
|
// --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
|
|
48242
48265
|
// MARK: - Static building
|
|
48243
48266
|
static create(type, versionId, brandId, name, description, value, alias, properties, propertyValues) {
|
|
48267
|
+
var _a;
|
|
48244
48268
|
const baseToken = {
|
|
48245
48269
|
id: undefined,
|
|
48246
48270
|
persistentId: (0, uuid_1.v4)(),
|
|
@@ -48276,7 +48300,9 @@ class DimensionCategoryToken extends SDKToken_1.Token {
|
|
|
48276
48300
|
measure: DimensionCategoryToken.getCompatibleMeasure(alias.value.unit, type, alias.value.measure),
|
|
48277
48301
|
referencedTokenId: null
|
|
48278
48302
|
};
|
|
48279
|
-
|
|
48303
|
+
const result = new this(versionId, baseToken, tokenValue, undefined, properties, propertyValues);
|
|
48304
|
+
result.origin = Object.assign(Object.assign({}, ((_a = result.origin) !== null && _a !== void 0 ? _a : { id: null, name: null, sourceId: null })), { referencePersistentId: alias.id });
|
|
48305
|
+
return result;
|
|
48280
48306
|
}
|
|
48281
48307
|
}
|
|
48282
48308
|
throw SDKSupernovaError_1.SupernovaError.fromMessage("Dimension Token must be created using value or alias, but none was provided");
|
|
@@ -48450,6 +48476,7 @@ class DimensionCategoryToken extends SDKToken_1.Token {
|
|
|
48450
48476
|
};
|
|
48451
48477
|
}
|
|
48452
48478
|
else {
|
|
48479
|
+
//
|
|
48453
48480
|
// If tokenType from args !== tokenType resolved, inline
|
|
48454
48481
|
// Align units, if we reference dimension from Opacity, unit must become raw
|
|
48455
48482
|
console.log(`Inlining reference ${reference.id}: ${reference.tokenType} into ${definition}:${tokenType}`);
|
|
@@ -49672,7 +49699,7 @@ class Token {
|
|
|
49672
49699
|
this.sortOrder = order;
|
|
49673
49700
|
}
|
|
49674
49701
|
toBaseWriteObject() {
|
|
49675
|
-
var _a, _b, _c, _d;
|
|
49702
|
+
var _a, _b, _c, _d, _e, _f;
|
|
49676
49703
|
return {
|
|
49677
49704
|
id: this.idInVersion,
|
|
49678
49705
|
brandId: this.brandId,
|
|
@@ -49688,6 +49715,8 @@ class Token {
|
|
|
49688
49715
|
id: (_b = this.origin.id) !== null && _b !== void 0 ? _b : undefined,
|
|
49689
49716
|
name: (_c = this.origin.name) !== null && _c !== void 0 ? _c : undefined,
|
|
49690
49717
|
sourceId: (_d = this.origin.sourceId) !== null && _d !== void 0 ? _d : undefined,
|
|
49718
|
+
referenceOriginId: (_e = this.origin.referenceOriginId) !== null && _e !== void 0 ? _e : undefined,
|
|
49719
|
+
referencePersistentId: (_f = this.origin.referencePersistentId) !== null && _f !== void 0 ? _f : undefined,
|
|
49691
49720
|
}
|
|
49692
49721
|
: undefined,
|
|
49693
49722
|
customPropertyOverrides: [],
|
|
@@ -49944,7 +49973,7 @@ exports.TokenComparator = TokenComparator;
|
|
|
49944
49973
|
// This file defines all token value containers for the actual model - this model will be exactly available to users
|
|
49945
49974
|
//
|
|
49946
49975
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
49947
|
-
exports.replaceReferencedTokenByIds = exports.replaceReferencedToken = exports.replaceReferencedTokenIds = exports.checkSingleReferencedTokenById = exports.getSingleReferencedTokenId = exports.getReferencedTokens = void 0;
|
|
49976
|
+
exports.replaceOriginReferencePersistentIdByIds = exports.replaceReferencedTokenByIds = exports.replaceReferencedToken = exports.replaceReferencedTokenIds = exports.checkSingleReferencedTokenById = exports.getSingleReferencedTokenId = exports.getReferencedTokens = void 0;
|
|
49948
49977
|
const SDKGradientToken_1 = __webpack_require__(/*! ./SDKGradientToken */ "./src/model/tokens/SDKGradientToken.ts");
|
|
49949
49978
|
const SDKShadowToken_1 = __webpack_require__(/*! ./SDKShadowToken */ "./src/model/tokens/SDKShadowToken.ts");
|
|
49950
49979
|
const getReferencedTokens = (token, allTokens) => {
|
|
@@ -49979,6 +50008,7 @@ const replaceReferencedTokenIds = (token, currentId, newId, allTokens) => {
|
|
|
49979
50008
|
exports.replaceReferencedTokenIds = replaceReferencedTokenIds;
|
|
49980
50009
|
const replaceReferencedToken = (token, existingToken, newToken) => {
|
|
49981
50010
|
(0, exports.replaceReferencedTokenByIds)(token, existingToken.id, newToken.id);
|
|
50011
|
+
(0, exports.replaceOriginReferencePersistentIdByIds)(token, existingToken.id, newToken.id);
|
|
49982
50012
|
};
|
|
49983
50013
|
exports.replaceReferencedToken = replaceReferencedToken;
|
|
49984
50014
|
const replaceReferencedTokenByIds = (token, existingTokenId, newTokenId) => {
|
|
@@ -50001,6 +50031,18 @@ const replaceReferencedTokenByIds = (token, existingTokenId, newTokenId) => {
|
|
|
50001
50031
|
}
|
|
50002
50032
|
};
|
|
50003
50033
|
exports.replaceReferencedTokenByIds = replaceReferencedTokenByIds;
|
|
50034
|
+
const replaceOriginReferencePersistentIdByIds = (token, existingTokenId, newTokenId) => {
|
|
50035
|
+
const origin = token === null || token === void 0 ? void 0 : token.origin;
|
|
50036
|
+
if (!(origin === null || origin === void 0 ? void 0 : origin.referencePersistentId)) {
|
|
50037
|
+
// Do nothing if there is no origin
|
|
50038
|
+
}
|
|
50039
|
+
else if (origin.referencePersistentId && !Array.isArray(origin.referencePersistentId)) {
|
|
50040
|
+
if (origin.referencePersistentId === existingTokenId) {
|
|
50041
|
+
origin.referencePersistentId = newTokenId;
|
|
50042
|
+
}
|
|
50043
|
+
}
|
|
50044
|
+
};
|
|
50045
|
+
exports.replaceOriginReferencePersistentIdByIds = replaceOriginReferencePersistentIdByIds;
|
|
50004
50046
|
|
|
50005
50047
|
|
|
50006
50048
|
/***/ }),
|
|
@@ -51305,17 +51347,13 @@ class SupernovaToolsDesignTokensPlugin {
|
|
|
51305
51347
|
return mapping;
|
|
51306
51348
|
}
|
|
51307
51349
|
setTokensOrigin(map, brand, sources) {
|
|
51308
|
-
var _a;
|
|
51350
|
+
var _a, _b, _c;
|
|
51309
51351
|
const sourceId = (_a = sources.find((s) => s.type === SDKSourceType_1.SourceType.tokenStudio && s.brandId === brand.id)) === null || _a === void 0 ? void 0 : _a.id;
|
|
51310
51352
|
if (!sourceId) {
|
|
51311
51353
|
return map;
|
|
51312
51354
|
}
|
|
51313
51355
|
for (const node of map.processedNodes) {
|
|
51314
|
-
node.token.origin = {
|
|
51315
|
-
name: node.token.name,
|
|
51316
|
-
sourceId,
|
|
51317
|
-
id: node.key,
|
|
51318
|
-
};
|
|
51356
|
+
node.token.origin = Object.assign(Object.assign({ name: node.token.name, sourceId, id: node.key }, (((_b = node.token.origin) === null || _b === void 0 ? void 0 : _b.referenceOriginId) ? { referenceOriginId: node.token.origin.referenceOriginId } : {})), (((_c = node.token.origin) === null || _c === void 0 ? void 0 : _c.referencePersistentId) ? { referencePersistentId: node.token.origin.referencePersistentId } : {}));
|
|
51319
51357
|
}
|
|
51320
51358
|
return map;
|
|
51321
51359
|
}
|
|
@@ -51599,112 +51637,117 @@ class DTJSONConverter {
|
|
|
51599
51637
|
// Retrieve all tokens
|
|
51600
51638
|
return processedNodes;
|
|
51601
51639
|
}
|
|
51640
|
+
remapRootNodeKey(nodePath, tokenType, nodeOriginalType, nodeTokenName) {
|
|
51641
|
+
let path = Array.from(nodePath);
|
|
51642
|
+
let firstSegment = path.splice(0, 1)[0];
|
|
51643
|
+
// Remap remote to proper destination
|
|
51644
|
+
// TODO: maybe we should make firstSegment typed?
|
|
51645
|
+
const type = tokenType;
|
|
51646
|
+
switch (type) {
|
|
51647
|
+
case SDKTokenType_1.TokenType.color:
|
|
51648
|
+
firstSegment = "Color";
|
|
51649
|
+
break;
|
|
51650
|
+
case SDKTokenType_1.TokenType.gradient:
|
|
51651
|
+
firstSegment = "Gradient";
|
|
51652
|
+
break;
|
|
51653
|
+
// TEST: Do we use separate keys for all Dimensions
|
|
51654
|
+
case SDKTokenType_1.TokenType.radius:
|
|
51655
|
+
firstSegment = "Radius";
|
|
51656
|
+
break;
|
|
51657
|
+
case SDKTokenType_1.TokenType.space:
|
|
51658
|
+
case SDKTokenType_1.TokenType.opacity:
|
|
51659
|
+
case SDKTokenType_1.TokenType.fontSize:
|
|
51660
|
+
case SDKTokenType_1.TokenType.lineHeight:
|
|
51661
|
+
case SDKTokenType_1.TokenType.letterSpacing:
|
|
51662
|
+
case SDKTokenType_1.TokenType.paragraphSpacing:
|
|
51663
|
+
case SDKTokenType_1.TokenType.borderWidth:
|
|
51664
|
+
case SDKTokenType_1.TokenType.duration:
|
|
51665
|
+
case SDKTokenType_1.TokenType.zIndex:
|
|
51666
|
+
case SDKTokenType_1.TokenType.size:
|
|
51667
|
+
case SDKTokenType_1.TokenType.dimension:
|
|
51668
|
+
// firstSegment = "Dimension"
|
|
51669
|
+
firstSegment = "Measure";
|
|
51670
|
+
break;
|
|
51671
|
+
case SDKTokenType_1.TokenType.shadow:
|
|
51672
|
+
firstSegment = "Shadow";
|
|
51673
|
+
break;
|
|
51674
|
+
case SDKTokenType_1.TokenType.typography:
|
|
51675
|
+
firstSegment = "Typography";
|
|
51676
|
+
break;
|
|
51677
|
+
// TEST: Should we now use separate segments here or String?
|
|
51678
|
+
case SDKTokenType_1.TokenType.fontFamily:
|
|
51679
|
+
case SDKTokenType_1.TokenType.fontWeight:
|
|
51680
|
+
firstSegment = "Generic";
|
|
51681
|
+
break;
|
|
51682
|
+
case SDKTokenType_1.TokenType.border:
|
|
51683
|
+
firstSegment = "Border";
|
|
51684
|
+
break;
|
|
51685
|
+
case SDKTokenType_1.TokenType.textCase:
|
|
51686
|
+
case SDKTokenType_1.TokenType.textDecoration:
|
|
51687
|
+
case SDKTokenType_1.TokenType.visibility:
|
|
51688
|
+
firstSegment = "Options";
|
|
51689
|
+
break;
|
|
51690
|
+
default:
|
|
51691
|
+
throw new UnreachableCaseError_1.UnreachableCaseError(type, `Unsupported type ${firstSegment} in remapping of nodes`);
|
|
51692
|
+
}
|
|
51693
|
+
let secondSegment;
|
|
51694
|
+
switch (nodeOriginalType) {
|
|
51695
|
+
case "borderRadius":
|
|
51696
|
+
secondSegment = "Border Radius";
|
|
51697
|
+
break;
|
|
51698
|
+
case "borderWidth":
|
|
51699
|
+
secondSegment = "Border Width";
|
|
51700
|
+
break;
|
|
51701
|
+
case "sizing":
|
|
51702
|
+
secondSegment = "Sizing";
|
|
51703
|
+
break;
|
|
51704
|
+
case "fontSizes":
|
|
51705
|
+
secondSegment = "Font Size";
|
|
51706
|
+
break;
|
|
51707
|
+
case "paragraphSpacing":
|
|
51708
|
+
secondSegment = "Paragraph Spacing";
|
|
51709
|
+
break;
|
|
51710
|
+
case "lineHeights":
|
|
51711
|
+
secondSegment = "Line Height";
|
|
51712
|
+
break;
|
|
51713
|
+
case "letterSpacing":
|
|
51714
|
+
secondSegment = "Letter Spacing";
|
|
51715
|
+
break;
|
|
51716
|
+
case "spacing":
|
|
51717
|
+
secondSegment = "Spacing";
|
|
51718
|
+
break;
|
|
51719
|
+
case "opacity":
|
|
51720
|
+
secondSegment = "Opacity";
|
|
51721
|
+
break;
|
|
51722
|
+
case "dimension":
|
|
51723
|
+
secondSegment = "Dimension";
|
|
51724
|
+
break;
|
|
51725
|
+
case 'fontFamilies':
|
|
51726
|
+
secondSegment = 'Font Family';
|
|
51727
|
+
break;
|
|
51728
|
+
case 'fontWeights':
|
|
51729
|
+
secondSegment = 'Font Weight';
|
|
51730
|
+
break;
|
|
51731
|
+
default:
|
|
51732
|
+
// Other types than listed should be ignored
|
|
51733
|
+
break;
|
|
51734
|
+
}
|
|
51735
|
+
// Remap original type and add extra group, if needed
|
|
51736
|
+
if (secondSegment) {
|
|
51737
|
+
path = [firstSegment, secondSegment, ...path];
|
|
51738
|
+
}
|
|
51739
|
+
else {
|
|
51740
|
+
path = [firstSegment, ...path];
|
|
51741
|
+
}
|
|
51742
|
+
// Rebuild key
|
|
51743
|
+
const key = SDKDTTokenMerger_1.DTTokenMerger.buildKey(path, nodeTokenName);
|
|
51744
|
+
return { path, key };
|
|
51745
|
+
}
|
|
51602
51746
|
remapRootNodeKeys(nodes) {
|
|
51603
51747
|
for (const node of nodes) {
|
|
51604
|
-
let path =
|
|
51605
|
-
let firstSegment = path.splice(0, 1)[0];
|
|
51606
|
-
// Remap remote to proper destination
|
|
51607
|
-
// TODO: maybe we should make firstSegment typed?
|
|
51608
|
-
const type = node.token.tokenType;
|
|
51609
|
-
switch (type) {
|
|
51610
|
-
case SDKTokenType_1.TokenType.color:
|
|
51611
|
-
firstSegment = "Color";
|
|
51612
|
-
break;
|
|
51613
|
-
case SDKTokenType_1.TokenType.gradient:
|
|
51614
|
-
firstSegment = "Gradient";
|
|
51615
|
-
break;
|
|
51616
|
-
// TEST: Do we use separate keys for all Dimensions
|
|
51617
|
-
case SDKTokenType_1.TokenType.radius:
|
|
51618
|
-
firstSegment = "Radius";
|
|
51619
|
-
break;
|
|
51620
|
-
case SDKTokenType_1.TokenType.space:
|
|
51621
|
-
case SDKTokenType_1.TokenType.opacity:
|
|
51622
|
-
case SDKTokenType_1.TokenType.fontSize:
|
|
51623
|
-
case SDKTokenType_1.TokenType.lineHeight:
|
|
51624
|
-
case SDKTokenType_1.TokenType.letterSpacing:
|
|
51625
|
-
case SDKTokenType_1.TokenType.paragraphSpacing:
|
|
51626
|
-
case SDKTokenType_1.TokenType.borderWidth:
|
|
51627
|
-
case SDKTokenType_1.TokenType.duration:
|
|
51628
|
-
case SDKTokenType_1.TokenType.zIndex:
|
|
51629
|
-
case SDKTokenType_1.TokenType.size:
|
|
51630
|
-
case SDKTokenType_1.TokenType.dimension:
|
|
51631
|
-
// firstSegment = "Dimension"
|
|
51632
|
-
firstSegment = "Measure";
|
|
51633
|
-
break;
|
|
51634
|
-
case SDKTokenType_1.TokenType.shadow:
|
|
51635
|
-
firstSegment = "Shadow";
|
|
51636
|
-
break;
|
|
51637
|
-
case SDKTokenType_1.TokenType.typography:
|
|
51638
|
-
firstSegment = "Typography";
|
|
51639
|
-
break;
|
|
51640
|
-
// TEST: Should we now use separate segments here or String?
|
|
51641
|
-
case SDKTokenType_1.TokenType.fontFamily:
|
|
51642
|
-
case SDKTokenType_1.TokenType.fontWeight:
|
|
51643
|
-
firstSegment = "Generic";
|
|
51644
|
-
break;
|
|
51645
|
-
case SDKTokenType_1.TokenType.border:
|
|
51646
|
-
firstSegment = "Border";
|
|
51647
|
-
break;
|
|
51648
|
-
case SDKTokenType_1.TokenType.textCase:
|
|
51649
|
-
case SDKTokenType_1.TokenType.textDecoration:
|
|
51650
|
-
case SDKTokenType_1.TokenType.visibility:
|
|
51651
|
-
firstSegment = "Options";
|
|
51652
|
-
break;
|
|
51653
|
-
default:
|
|
51654
|
-
throw new UnreachableCaseError_1.UnreachableCaseError(type, `Unsupported type ${firstSegment} in remapping of nodes`);
|
|
51655
|
-
}
|
|
51656
|
-
let secondSegment;
|
|
51657
|
-
switch (node.originalType) {
|
|
51658
|
-
case "borderRadius":
|
|
51659
|
-
secondSegment = "Border Radius";
|
|
51660
|
-
break;
|
|
51661
|
-
case "borderWidth":
|
|
51662
|
-
secondSegment = "Border Width";
|
|
51663
|
-
break;
|
|
51664
|
-
case "sizing":
|
|
51665
|
-
secondSegment = "Sizing";
|
|
51666
|
-
break;
|
|
51667
|
-
case "fontSizes":
|
|
51668
|
-
secondSegment = "Font Size";
|
|
51669
|
-
break;
|
|
51670
|
-
case "paragraphSpacing":
|
|
51671
|
-
secondSegment = "Paragraph Spacing";
|
|
51672
|
-
break;
|
|
51673
|
-
case "lineHeights":
|
|
51674
|
-
secondSegment = "Line Height";
|
|
51675
|
-
break;
|
|
51676
|
-
case "letterSpacing":
|
|
51677
|
-
secondSegment = "Letter Spacing";
|
|
51678
|
-
break;
|
|
51679
|
-
case "spacing":
|
|
51680
|
-
secondSegment = "Spacing";
|
|
51681
|
-
break;
|
|
51682
|
-
case "opacity":
|
|
51683
|
-
secondSegment = "Opacity";
|
|
51684
|
-
break;
|
|
51685
|
-
case "dimension":
|
|
51686
|
-
secondSegment = "Dimension";
|
|
51687
|
-
break;
|
|
51688
|
-
case 'fontFamilies':
|
|
51689
|
-
secondSegment = 'Font Family';
|
|
51690
|
-
break;
|
|
51691
|
-
case 'fontWeights':
|
|
51692
|
-
secondSegment = 'Font Weight';
|
|
51693
|
-
break;
|
|
51694
|
-
default:
|
|
51695
|
-
// Other types than listed should be ignored
|
|
51696
|
-
break;
|
|
51697
|
-
}
|
|
51698
|
-
// Remap original type and add extra group, if needed
|
|
51699
|
-
if (secondSegment) {
|
|
51700
|
-
path = [firstSegment, secondSegment, ...path];
|
|
51701
|
-
}
|
|
51702
|
-
else {
|
|
51703
|
-
path = [firstSegment, ...path];
|
|
51704
|
-
}
|
|
51748
|
+
let { path, key } = this.remapRootNodeKey(node.path, node.token.tokenType, node.originalType, node.token.name);
|
|
51705
51749
|
node.path = path;
|
|
51706
|
-
|
|
51707
|
-
node.key = SDKDTTokenMerger_1.DTTokenMerger.buildKey(node.path, node.token.name);
|
|
51750
|
+
node.key = key;
|
|
51708
51751
|
}
|
|
51709
51752
|
return nodes;
|
|
51710
51753
|
}
|
|
@@ -51910,6 +51953,7 @@ class DTJSONConverter {
|
|
|
51910
51953
|
}
|
|
51911
51954
|
// TODO: Can we do better or need to copy paste?
|
|
51912
51955
|
convertPureReferencedNode(node, brand) {
|
|
51956
|
+
var _a, _b;
|
|
51913
51957
|
const valueAsReference = node.value;
|
|
51914
51958
|
const resolvedToken = this.referenceResolver.lookupReferencedToken(valueAsReference);
|
|
51915
51959
|
if (resolvedToken) {
|
|
@@ -51932,6 +51976,12 @@ class DTJSONConverter {
|
|
|
51932
51976
|
case SDKTokenType_1.TokenType.duration:
|
|
51933
51977
|
case SDKTokenType_1.TokenType.zIndex:
|
|
51934
51978
|
constructedToken = (0, SDKDimensionToken_1.resolveDimension)(snType).create(snType, this.versionId, brand.id, node.name, node.description, undefined, resolvedToken, [], []);
|
|
51979
|
+
if (resolvedToken && ((_a = constructedToken.origin) === null || _a === void 0 ? void 0 : _a.referencePersistentId)) {
|
|
51980
|
+
const refNode = this.referenceResolver.lookupReferencedNode(valueAsReference);
|
|
51981
|
+
const key = this.remapRootNodeKey(refNode.path, resolvedToken.tokenType, refNode.originalType, resolvedToken.name).key;
|
|
51982
|
+
console.log(`Inlining reference origin id ${valueAsReference}: ${key}: ${(_b = constructedToken.origin) === null || _b === void 0 ? void 0 : _b.referencePersistentId} into ${constructedToken.id}:${node.name}:${node.type}`);
|
|
51983
|
+
constructedToken.origin.referenceOriginId = key;
|
|
51984
|
+
}
|
|
51935
51985
|
break;
|
|
51936
51986
|
case SDKTokenType_1.TokenType.shadow:
|
|
51937
51987
|
constructedToken = SDKShadowToken_1.ShadowToken.create(this.versionId, brand.id, node.name, node.description, undefined, resolvedToken, this.referenceResolver, [], []);
|
|
@@ -52623,6 +52673,8 @@ class DTThemeMerger {
|
|
|
52623
52673
|
const tokensToIterate = [...themeReplica.overriddenTokens, ...[...tokensInThemeButNotInUpstream.values()].map(t => t.token)];
|
|
52624
52674
|
for (const node of tokensToIterate) {
|
|
52625
52675
|
(0, SDKTokenValue_1.replaceReferencedTokenByIds)(node, oldId, newId);
|
|
52676
|
+
(0, SDKTokenValue_1.replaceOriginReferencePersistentIdByIds)(node, oldId, newId);
|
|
52677
|
+
// TODO: Fix inside Typography.fontSize
|
|
52626
52678
|
TokenUtils_1.TokenUtils.replaceIdForComplexTokens(node, oldId, newId);
|
|
52627
52679
|
}
|
|
52628
52680
|
}
|
|
@@ -52869,6 +52921,8 @@ class DTTokenMerger {
|
|
|
52869
52921
|
for (const [oldId, newId] of idsToRemap) {
|
|
52870
52922
|
for (const node of toCreateOrUpdate) {
|
|
52871
52923
|
(0, SDKTokenValue_1.replaceReferencedTokenByIds)(node.token, oldId, newId);
|
|
52924
|
+
(0, SDKTokenValue_1.replaceOriginReferencePersistentIdByIds)(node.token, oldId, newId);
|
|
52925
|
+
// TODO: Fix inside Typography.fontSize
|
|
52872
52926
|
TokenUtils_1.TokenUtils.replaceIdForComplexTokens(node.token, oldId, newId);
|
|
52873
52927
|
}
|
|
52874
52928
|
}
|
|
@@ -53020,6 +53074,16 @@ class DTTokenReferenceResolver {
|
|
|
53020
53074
|
// Find single token reference
|
|
53021
53075
|
return (_a = this.mappedTokens.get(ref)) === null || _a === void 0 ? void 0 : _a[0];
|
|
53022
53076
|
}
|
|
53077
|
+
lookupReferencedNode(reference) {
|
|
53078
|
+
reference = reference.trim();
|
|
53079
|
+
let ref = reference;
|
|
53080
|
+
if (reference.includes('$')) {
|
|
53081
|
+
// Convert $ reference to {}-type of reference as keys are all defined as {}
|
|
53082
|
+
ref = `{${reference.substring(1)}}`;
|
|
53083
|
+
}
|
|
53084
|
+
// Find single token reference
|
|
53085
|
+
return this.nodes.get(ref);
|
|
53086
|
+
}
|
|
53023
53087
|
lookupAllReferencedTokens(reference) {
|
|
53024
53088
|
var _a, _b;
|
|
53025
53089
|
reference = reference.trim();
|