New option: stringArrayIndexShift enables additional index shift for all string array calls

This commit is contained in:
sanex
2020-11-14 10:15:42 +03:00
parent 44ac6c3ec8
commit 4f33c76da1
25 changed files with 297 additions and 82 deletions
@@ -204,16 +204,21 @@ export class StringArrayTransformer extends AbstractNodeTransformer {
/**
* @param {IStringArrayStorageItemData} stringArrayStorageItemData
* @returns {Node}
* @returns {Expression}
*/
private getStringArrayCallNode (stringArrayStorageItemData: IStringArrayStorageItemData): ESTree.Node {
private getStringArrayCallNode (stringArrayStorageItemData: IStringArrayStorageItemData): ESTree.Expression {
const [stringArrayCallsWrapperName, index] = this.getStringArrayCallsWrapperData(stringArrayStorageItemData);
const {decodeKey } = stringArrayStorageItemData;
const stringArrayCallCustomNode: ICustomNode<TInitialData<StringArrayCallNode>> =
this.stringArrayTransformerCustomNodeFactory(StringArrayCustomNode.StringArrayCallNode);
stringArrayCallCustomNode.initialize(stringArrayCallsWrapperName, index, decodeKey);
stringArrayCallCustomNode.initialize(
stringArrayCallsWrapperName,
index,
this.stringArrayStorage.getIndexShiftAmount(),
decodeKey
);
const statementNode: TStatement = stringArrayCallCustomNode.getNode()[0];