babel-plugin-formatjs 10.3.7 → 10.3.11
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/index.js +2 -2
- package/package.json +3 -3
- package/types.d.ts +2 -2
- package/types.d.ts.map +1 -1
- package/utils.d.ts.map +1 -1
- package/utils.js +15 -7
- package/visitors/call-expression.d.ts.map +1 -1
- package/visitors/call-expression.js +14 -10
- package/visitors/jsx-opening-element.d.ts.map +1 -1
- package/visitors/jsx-opening-element.js +8 -8
package/index.js
CHANGED
|
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DEFAULT_ID_INTERPOLATION_PATTERN = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var helper_plugin_utils_1 = require("@babel/helper-plugin-utils");
|
|
6
|
-
var plugin_syntax_jsx_1 = tslib_1.__importDefault(require("@babel/plugin-syntax-jsx"));
|
|
6
|
+
var plugin_syntax_jsx_1 = (0, tslib_1.__importDefault)(require("@babel/plugin-syntax-jsx"));
|
|
7
7
|
var jsx_opening_element_1 = require("./visitors/jsx-opening-element");
|
|
8
8
|
var call_expression_1 = require("./visitors/call-expression");
|
|
9
9
|
exports.DEFAULT_ID_INTERPOLATION_PATTERN = '[sha512:contenthash:base64:6]';
|
|
10
10
|
// @ts-expect-error PluginPass doesn't allow custom state but it actually does
|
|
11
|
-
exports.default = helper_plugin_utils_1.declare(function (api, options) {
|
|
11
|
+
exports.default = (0, helper_plugin_utils_1.declare)(function (api, options) {
|
|
12
12
|
api.assertVersion(7);
|
|
13
13
|
if (!options.idInterpolationPattern) {
|
|
14
14
|
options.idInterpolationPattern = exports.DEFAULT_ID_INTERPOLATION_PATTERN;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "babel-plugin-formatjs",
|
|
3
|
-
"version": "10.3.
|
|
3
|
+
"version": "10.3.11",
|
|
4
4
|
"description": "Extracts string messages for translation from modules that use formatjs.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
"@babel/plugin-syntax-jsx": "7",
|
|
17
17
|
"@babel/traverse": "7",
|
|
18
18
|
"@babel/types": "^7.12.11",
|
|
19
|
-
"@formatjs/icu-messageformat-parser": "2.0.
|
|
20
|
-
"@formatjs/ts-transformer": "3.
|
|
19
|
+
"@formatjs/icu-messageformat-parser": "2.0.14",
|
|
20
|
+
"@formatjs/ts-transformer": "3.6.0",
|
|
21
21
|
"@types/babel__core": "^7.1.7",
|
|
22
22
|
"@types/babel__helper-plugin-utils": "^7.10.0",
|
|
23
23
|
"tslib": "^2.1.0"
|
package/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NodePath } from '@babel/core';
|
|
2
|
-
import { SourceLocation, StringLiteral } from '@babel/types';
|
|
2
|
+
import { JSXExpressionContainer, SourceLocation, StringLiteral } from '@babel/types';
|
|
3
3
|
export interface MessageDescriptor {
|
|
4
4
|
id: string;
|
|
5
5
|
defaultMessage?: string;
|
|
@@ -14,7 +14,7 @@ export interface State {
|
|
|
14
14
|
export declare type ExtractedMessageDescriptor = MessageDescriptor & Partial<SourceLocation> & {
|
|
15
15
|
file?: string;
|
|
16
16
|
};
|
|
17
|
-
export declare type MessageDescriptorPath = Record<keyof MessageDescriptor, NodePath<StringLiteral> | undefined>;
|
|
17
|
+
export declare type MessageDescriptorPath = Record<keyof MessageDescriptor, NodePath<StringLiteral> | NodePath<JSXExpressionContainer> | undefined>;
|
|
18
18
|
export interface Options {
|
|
19
19
|
overrideIdFn?: (id?: string, defaultMessage?: string, description?: string, filePath?: string) => string;
|
|
20
20
|
onMsgExtracted?: (filePath: string, msgs: MessageDescriptor[]) => void;
|
package/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../packages/babel-plugin-formatjs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAA;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../packages/babel-plugin-formatjs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAA;AACpC,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,aAAa,EACd,MAAM,cAAc,CAAA;AAErB,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,0BAA0B,EAAE,CAAA;IACtC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,oBAAY,0BAA0B,GAAG,iBAAiB,GACxD,OAAO,CAAC,cAAc,CAAC,GAAG;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,CAAA;AAE3C,oBAAY,qBAAqB,GAAG,MAAM,CACxC,MAAM,iBAAiB,EACvB,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,sBAAsB,CAAC,GAAG,SAAS,CACvE,CAAA;AAED,MAAM,WAAW,OAAO;IACtB,YAAY,CAAC,EAAE,CACb,EAAE,CAAC,EAAE,MAAM,EACX,cAAc,CAAC,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAA;IACX,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAA;IACtE,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAA;IAC1E,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B"}
|
package/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../packages/babel-plugin-formatjs/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAIjC,OAAO,EACL,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../packages/babel-plugin-formatjs/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAIjC,OAAO,EACL,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAA;AAmBpC,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,UAM1D;AA0BD,wBAAgB,uBAAuB,CACrC,SAAS,EAAE;IACT,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IAClD,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC;CAC/D,EAAE,GACF,qBAAqB,CAmBvB;AAED,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,qBAAqB,EACrC,WAAW,qBAAQ,EACnB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,sBAAsB,CAAC,EAAE,MAAM,EAC/B,YAAY,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,EACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,qBAqCnD;AA6CD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,QAEjD;AACD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAE/C;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,EAAC,EAAE,EAAE,WAAW,EAAE,cAAc,EAAC,EAAE,iBAAiB,EACpD,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,EACnB,EAAC,qBAAqB,EAAC,EAAE,OAAO,EAEhC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,QAAQ,EAAE,0BAA0B,EAAE,QAgBvC"}
|
package/utils.js
CHANGED
|
@@ -4,7 +4,11 @@ exports.storeMessage = exports.wasExtracted = exports.tagAsExtracted = exports.e
|
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var icu_messageformat_parser_1 = require("@formatjs/icu-messageformat-parser");
|
|
6
6
|
var ts_transformer_1 = require("@formatjs/ts-transformer");
|
|
7
|
-
var DESCRIPTOR_PROPS = new Set([
|
|
7
|
+
var DESCRIPTOR_PROPS = new Set([
|
|
8
|
+
'id',
|
|
9
|
+
'description',
|
|
10
|
+
'defaultMessage',
|
|
11
|
+
]);
|
|
8
12
|
function evaluatePath(path) {
|
|
9
13
|
var evaluated = path.evaluate();
|
|
10
14
|
if (evaluated.confident) {
|
|
@@ -19,11 +23,15 @@ function getMessageDescriptorKey(path) {
|
|
|
19
23
|
return evaluatePath(path);
|
|
20
24
|
}
|
|
21
25
|
exports.getMessageDescriptorKey = getMessageDescriptorKey;
|
|
22
|
-
function getMessageDescriptorValue(path) {
|
|
26
|
+
function getMessageDescriptorValue(path, isMessageNode) {
|
|
23
27
|
if (!path) {
|
|
24
28
|
return '';
|
|
25
29
|
}
|
|
26
30
|
if (path.isJSXExpressionContainer()) {
|
|
31
|
+
// If this is already compiled, no need to recompiled it
|
|
32
|
+
if (isMessageNode && path.get('expression').isArrayExpression()) {
|
|
33
|
+
return '';
|
|
34
|
+
}
|
|
27
35
|
path = path.get('expression');
|
|
28
36
|
}
|
|
29
37
|
// Always trim the Message Descriptor values.
|
|
@@ -56,7 +64,7 @@ function evaluateMessageDescriptor(descriptorPath, isJSXSource, filename, idInte
|
|
|
56
64
|
id = overrideIdFn(id, defaultMessage, description, filename);
|
|
57
65
|
}
|
|
58
66
|
else if (!id && idInterpolationPattern && defaultMessage) {
|
|
59
|
-
id = ts_transformer_1.interpolateName({ resourcePath: filename }, idInterpolationPattern, {
|
|
67
|
+
id = (0, ts_transformer_1.interpolateName)({ resourcePath: filename }, idInterpolationPattern, {
|
|
60
68
|
content: description
|
|
61
69
|
? defaultMessage + "#" + description
|
|
62
70
|
: defaultMessage,
|
|
@@ -79,12 +87,12 @@ function getICUMessageValue(messagePath, _a, preserveWhitespace) {
|
|
|
79
87
|
if (!messagePath) {
|
|
80
88
|
return '';
|
|
81
89
|
}
|
|
82
|
-
var message = getMessageDescriptorValue(messagePath);
|
|
90
|
+
var message = getMessageDescriptorValue(messagePath, true);
|
|
83
91
|
if (!preserveWhitespace) {
|
|
84
92
|
message = message.trim().replace(/\s+/gm, ' ');
|
|
85
93
|
}
|
|
86
94
|
try {
|
|
87
|
-
icu_messageformat_parser_1.parse(message);
|
|
95
|
+
(0, icu_messageformat_parser_1.parse)(message);
|
|
88
96
|
}
|
|
89
97
|
catch (parseError) {
|
|
90
98
|
if (isJSXSource &&
|
|
@@ -140,8 +148,8 @@ function storeMessage(_a, path, _b, filename, messages) {
|
|
|
140
148
|
}
|
|
141
149
|
var loc = {};
|
|
142
150
|
if (extractSourceLocation) {
|
|
143
|
-
loc = tslib_1.__assign({ file: filename }, path.node.loc);
|
|
151
|
+
loc = (0, tslib_1.__assign)({ file: filename }, path.node.loc);
|
|
144
152
|
}
|
|
145
|
-
messages.push(tslib_1.__assign({ id: id, description: description, defaultMessage: defaultMessage }, loc));
|
|
153
|
+
messages.push((0, tslib_1.__assign)({ id: id, description: description, defaultMessage: defaultMessage }, loc));
|
|
146
154
|
}
|
|
147
155
|
exports.storeMessage = storeMessage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-expression.d.ts","sourceRoot":"","sources":["../../../../../../packages/babel-plugin-formatjs/visitors/call-expression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAU,KAAK,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAA;AAoDjD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CAAC,UAAU,GAAG,KAAK,EAAE,CAAC,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"call-expression.d.ts","sourceRoot":"","sources":["../../../../../../packages/babel-plugin-formatjs/visitors/call-expression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAU,KAAK,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAA;AAoDjD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CAAC,UAAU,GAAG,KAAK,EAAE,CAAC,CAAC,cAAc,CAwJzE,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.visitor = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
var t = tslib_1.__importStar(require("@babel/types"));
|
|
5
|
+
var t = (0, tslib_1.__importStar)(require("@babel/types"));
|
|
6
6
|
var utils_1 = require("../utils");
|
|
7
7
|
var icu_messageformat_parser_1 = require("@formatjs/icu-messageformat-parser");
|
|
8
8
|
function assertObjectExpression(path, callee) {
|
|
@@ -32,7 +32,7 @@ function getMessagesObjectFromExpression(nodePath) {
|
|
|
32
32
|
var visitor = function (path, _a) {
|
|
33
33
|
var opts = _a.opts, filename = _a.file.opts.filename;
|
|
34
34
|
var _b = opts, overrideIdFn = _b.overrideIdFn, idInterpolationPattern = _b.idInterpolationPattern, removeDefaultMessage = _b.removeDefaultMessage, ast = _b.ast, preserveWhitespace = _b.preserveWhitespace;
|
|
35
|
-
if (utils_1.wasExtracted(path)) {
|
|
35
|
+
if ((0, utils_1.wasExtracted)(path)) {
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
38
38
|
var _c = this, messages = _c.messages, functionNames = _c.functionNames;
|
|
@@ -43,15 +43,19 @@ var visitor = function (path, _a) {
|
|
|
43
43
|
* @param messageDescriptor Message Descriptor
|
|
44
44
|
*/
|
|
45
45
|
function processMessageObject(messageDescriptor) {
|
|
46
|
-
var _a;
|
|
46
|
+
var _a, _b;
|
|
47
47
|
assertObjectExpression(messageDescriptor, callee);
|
|
48
48
|
var properties = messageDescriptor.get('properties');
|
|
49
|
-
var descriptorPath = utils_1.createMessageDescriptor(properties.map(function (prop) {
|
|
49
|
+
var descriptorPath = (0, utils_1.createMessageDescriptor)(properties.map(function (prop) {
|
|
50
50
|
return [prop.get('key'), prop.get('value')];
|
|
51
51
|
}));
|
|
52
|
+
// If the message is already compiled, don't re-compile it
|
|
53
|
+
if ((_a = descriptorPath.defaultMessage) === null || _a === void 0 ? void 0 : _a.isArrayExpression()) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
52
56
|
// Evaluate the Message Descriptor values, then store it.
|
|
53
|
-
var descriptor = utils_1.evaluateMessageDescriptor(descriptorPath, false, filename || undefined, idInterpolationPattern, overrideIdFn, preserveWhitespace);
|
|
54
|
-
utils_1.storeMessage(descriptor, messageDescriptor, opts, filename || undefined, messages);
|
|
57
|
+
var descriptor = (0, utils_1.evaluateMessageDescriptor)(descriptorPath, false, filename || undefined, idInterpolationPattern, overrideIdFn, preserveWhitespace);
|
|
58
|
+
(0, utils_1.storeMessage)(descriptor, messageDescriptor, opts, filename || undefined, messages);
|
|
55
59
|
var firstProp = properties[0];
|
|
56
60
|
var defaultMessageProp = properties.find(function (prop) {
|
|
57
61
|
var keyProp = prop.get('key');
|
|
@@ -71,12 +75,12 @@ var visitor = function (path, _a) {
|
|
|
71
75
|
firstProp.insertBefore(t.objectProperty(t.identifier('id'), t.stringLiteral(descriptor.id)));
|
|
72
76
|
}
|
|
73
77
|
// Remove description
|
|
74
|
-
(
|
|
78
|
+
(_b = properties
|
|
75
79
|
.find(function (prop) {
|
|
76
80
|
var keyProp = prop.get('key');
|
|
77
81
|
return (keyProp.isIdentifier({ name: 'description' }) ||
|
|
78
82
|
keyProp.isStringLiteral({ value: 'description' }));
|
|
79
|
-
})) === null ||
|
|
83
|
+
})) === null || _b === void 0 ? void 0 : _b.remove();
|
|
80
84
|
// Pre-parse or remove defaultMessage
|
|
81
85
|
if (defaultMessageProp) {
|
|
82
86
|
if (removeDefaultMessage) {
|
|
@@ -85,14 +89,14 @@ var visitor = function (path, _a) {
|
|
|
85
89
|
else if (descriptor.defaultMessage) {
|
|
86
90
|
var valueProp = defaultMessageProp.get('value');
|
|
87
91
|
if (ast) {
|
|
88
|
-
valueProp.replaceWithSourceString(JSON.stringify(icu_messageformat_parser_1.parse(descriptor.defaultMessage)));
|
|
92
|
+
valueProp.replaceWithSourceString(JSON.stringify((0, icu_messageformat_parser_1.parse)(descriptor.defaultMessage)));
|
|
89
93
|
}
|
|
90
94
|
else {
|
|
91
95
|
valueProp.replaceWith(t.stringLiteral(descriptor.defaultMessage));
|
|
92
96
|
}
|
|
93
97
|
}
|
|
94
98
|
}
|
|
95
|
-
utils_1.tagAsExtracted(path);
|
|
99
|
+
(0, utils_1.tagAsExtracted)(path);
|
|
96
100
|
}
|
|
97
101
|
// Check that this is `defineMessages` call
|
|
98
102
|
if (callee.isIdentifier({ name: 'defineMessages' }) ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx-opening-element.d.ts","sourceRoot":"","sources":["../../../../../../packages/babel-plugin-formatjs/visitors/jsx-opening-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAC,MAAM,aAAa,CAAA;AAEhD,OAAO,EAAU,KAAK,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAA;AAWjD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CACrC,UAAU,GAAG,KAAK,EAClB,CAAC,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"jsx-opening-element.d.ts","sourceRoot":"","sources":["../../../../../../packages/babel-plugin-formatjs/visitors/jsx-opening-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAC,MAAM,aAAa,CAAA;AAEhD,OAAO,EAAU,KAAK,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AACjC,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAA;AAWjD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CACrC,UAAU,GAAG,KAAK,EAClB,CAAC,CAAC,iBAAiB,CAiIpB,CAAA"}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.visitor = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
var t = tslib_1.__importStar(require("@babel/types"));
|
|
5
|
+
var t = (0, tslib_1.__importStar)(require("@babel/types"));
|
|
6
6
|
var icu_messageformat_parser_1 = require("@formatjs/icu-messageformat-parser");
|
|
7
7
|
var utils_1 = require("../utils");
|
|
8
8
|
var visitor = function (path, _a) {
|
|
9
9
|
var opts = _a.opts, filename = _a.file.opts.filename;
|
|
10
10
|
var _b = opts, removeDefaultMessage = _b.removeDefaultMessage, idInterpolationPattern = _b.idInterpolationPattern, overrideIdFn = _b.overrideIdFn, ast = _b.ast, preserveWhitespace = _b.preserveWhitespace;
|
|
11
11
|
var _c = this, componentNames = _c.componentNames, messages = _c.messages;
|
|
12
|
-
if (utils_1.wasExtracted(path)) {
|
|
12
|
+
if ((0, utils_1.wasExtracted)(path)) {
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
15
15
|
var name = path.get('name');
|
|
@@ -19,7 +19,7 @@ var visitor = function (path, _a) {
|
|
|
19
19
|
var attributes = path
|
|
20
20
|
.get('attributes')
|
|
21
21
|
.filter(function (attr) { return attr.isJSXAttribute(); });
|
|
22
|
-
var descriptorPath = utils_1.createMessageDescriptor(attributes.map(function (attr) { return [
|
|
22
|
+
var descriptorPath = (0, utils_1.createMessageDescriptor)(attributes.map(function (attr) { return [
|
|
23
23
|
attr.get('name'),
|
|
24
24
|
attr.get('value'),
|
|
25
25
|
]; }));
|
|
@@ -34,8 +34,8 @@ var visitor = function (path, _a) {
|
|
|
34
34
|
}
|
|
35
35
|
// Evaluate the Message Descriptor values in a JSX
|
|
36
36
|
// context, then store it.
|
|
37
|
-
var descriptor = utils_1.evaluateMessageDescriptor(descriptorPath, true, filename || undefined, idInterpolationPattern, overrideIdFn, preserveWhitespace);
|
|
38
|
-
utils_1.storeMessage(descriptor, path, opts, filename || undefined, messages);
|
|
37
|
+
var descriptor = (0, utils_1.evaluateMessageDescriptor)(descriptorPath, true, filename || undefined, idInterpolationPattern, overrideIdFn, preserveWhitespace);
|
|
38
|
+
(0, utils_1.storeMessage)(descriptor, path, opts, filename || undefined, messages);
|
|
39
39
|
var idAttr;
|
|
40
40
|
var descriptionAttr;
|
|
41
41
|
var defaultMessageAttr;
|
|
@@ -45,7 +45,7 @@ var visitor = function (path, _a) {
|
|
|
45
45
|
if (!attr.isJSXAttribute()) {
|
|
46
46
|
continue;
|
|
47
47
|
}
|
|
48
|
-
switch (utils_1.getMessageDescriptorKey(attr.get('name'))) {
|
|
48
|
+
switch ((0, utils_1.getMessageDescriptorKey)(attr.get('name'))) {
|
|
49
49
|
case 'description':
|
|
50
50
|
descriptionAttr = attr;
|
|
51
51
|
break;
|
|
@@ -80,10 +80,10 @@ var visitor = function (path, _a) {
|
|
|
80
80
|
var valueAttr = defaultMessageAttr.get('value');
|
|
81
81
|
valueAttr
|
|
82
82
|
.get('expression')
|
|
83
|
-
.replaceWithSourceString(JSON.stringify(icu_messageformat_parser_1.parse(descriptor.defaultMessage)));
|
|
83
|
+
.replaceWithSourceString(JSON.stringify((0, icu_messageformat_parser_1.parse)(descriptor.defaultMessage)));
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
// Tag the AST node so we don't try to extract it twice.
|
|
87
|
-
utils_1.tagAsExtracted(path);
|
|
87
|
+
(0, utils_1.tagAsExtracted)(path);
|
|
88
88
|
};
|
|
89
89
|
exports.visitor = visitor;
|