@lwc/style-compiler 2.5.10 → 2.7.0
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/dist/commonjs/dir-pseudo-class/transform.js +38 -14
- package/dist/commonjs/dir-pseudo-class/transform.js.map +1 -1
- package/dist/commonjs/postcss-lwc-plugin.js.map +1 -1
- package/dist/commonjs/serialize.js +35 -7
- package/dist/commonjs/serialize.js.map +1 -1
- package/dist/commonjs/utils/dir-pseudoclass.js +14 -0
- package/dist/commonjs/utils/dir-pseudoclass.js.map +1 -0
- package/dist/types/postcss-lwc-plugin.d.ts +2 -3
- package/dist/types/utils/dir-pseudoclass.d.ts +4 -0
- package/package.json +3 -3
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
*/
|
|
9
9
|
const postcss_selector_parser_1 = require("postcss-selector-parser");
|
|
10
10
|
const rtl_1 = require("../utils/rtl");
|
|
11
|
+
const dir_pseudoclass_1 = require("../utils/dir-pseudoclass");
|
|
11
12
|
function isValidDirValue(value) {
|
|
12
13
|
return value === 'ltr' || value === 'rtl';
|
|
13
14
|
}
|
|
@@ -24,25 +25,48 @@ function default_1(root) {
|
|
|
24
25
|
word: node.value,
|
|
25
26
|
});
|
|
26
27
|
}
|
|
27
|
-
//
|
|
28
|
-
|
|
28
|
+
// Set placeholders for `:dir()` so we can keep it for native shadow and
|
|
29
|
+
// replace it with a polyfill for synthetic shadow.
|
|
30
|
+
//
|
|
31
|
+
// Native: `:dir(ltr)`
|
|
32
|
+
// Synthetic: `[dir="ltr"]`
|
|
33
|
+
//
|
|
34
|
+
// The placeholders look like this: `[__dirAttributeNativeLtr__]`
|
|
35
|
+
// The attribute has no value because it's simpler during serialization, and there
|
|
36
|
+
// are only two valid values: "ltr" and "rtl".
|
|
37
|
+
//
|
|
38
|
+
// Now consider a more complex selector: `.foo:dir(ltr):not(.bar)`.
|
|
39
|
+
// For native shadow, we need to leave it as-is. Whereas for synthetic shadow, we need
|
|
40
|
+
// to convert it to: `[dir="ltr"] .foo:not(.bar)`.
|
|
41
|
+
// I.e. we need to use a descendant selector (' ' combinator) relying on a `dir`
|
|
42
|
+
// attribute added to the host element. So we need two placeholders:
|
|
43
|
+
// `<synthetic_placeholder> .foo<native_placeholder>:not(.bar)`
|
|
44
|
+
const nativeAttribute = (0, postcss_selector_parser_1.attribute)({
|
|
45
|
+
attribute: value === 'ltr' ? dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_LTR : dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_RTL,
|
|
46
|
+
value: undefined,
|
|
47
|
+
raws: {},
|
|
48
|
+
});
|
|
49
|
+
const syntheticAttribute = (0, postcss_selector_parser_1.attribute)({
|
|
50
|
+
attribute: value === 'ltr' ? dir_pseudoclass_1.DIR_ATTRIBUTE_SYNTHETIC_LTR : dir_pseudoclass_1.DIR_ATTRIBUTE_SYNTHETIC_RTL,
|
|
51
|
+
value: undefined,
|
|
52
|
+
raws: {},
|
|
53
|
+
});
|
|
54
|
+
node.replaceWith(nativeAttribute);
|
|
29
55
|
// If the selector is not empty and if the first node in the selector is not already a
|
|
30
|
-
// " " combinator
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (shouldInsertSpace) {
|
|
56
|
+
// " " combinator, we need to use the descendant selector format
|
|
57
|
+
const shouldAddDescendantCombinator = selector.first && !(0, postcss_selector_parser_1.isCombinator)(selector.first) && selector.first.value !== ' ';
|
|
58
|
+
if (shouldAddDescendantCombinator) {
|
|
34
59
|
selector.insertBefore(selector.first, (0, postcss_selector_parser_1.combinator)({
|
|
35
60
|
value: ' ',
|
|
36
61
|
}));
|
|
62
|
+
// Add the [dir] attribute in front of the " " combinator, i.e. as an ancestor
|
|
63
|
+
selector.insertBefore(selector.first, syntheticAttribute);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
// Otherwise there's no need for the descendant selector, so we can skip adding the
|
|
67
|
+
// space combinator and just put the synthetic placeholder next to the native one
|
|
68
|
+
selector.insertBefore(nativeAttribute, syntheticAttribute);
|
|
37
69
|
}
|
|
38
|
-
// Add the dir attribute in front of the selector.
|
|
39
|
-
selector.insertBefore(selector.first, (0, postcss_selector_parser_1.attribute)({
|
|
40
|
-
attribute: 'dir',
|
|
41
|
-
operator: '=',
|
|
42
|
-
quoteMark: '"',
|
|
43
|
-
value: `"${value}"`,
|
|
44
|
-
raws: {},
|
|
45
|
-
}));
|
|
46
70
|
});
|
|
47
71
|
});
|
|
48
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/dir-pseudo-class/transform.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,qEAAoF;
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/dir-pseudo-class/transform.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,qEAAoF;AACpF,sCAAgD;AAChD,8DAKkC;AAElC,SAAS,eAAe,CAAC,KAAa;IAClC,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC;AAC9C,CAAC;AAED,mBAAyB,IAAU;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5B,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAA,sBAAgB,EAAC,IAAI,CAAC,EAAE;gBACzB,OAAO;aACV;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACzB,MAAM,IAAI,CAAC,KAAK,CACZ,uEAAuE,KAAK,IAAI,EAChF;oBACI,KAAK,EAAE,IAAI,CAAC,WAAW;oBACvB,IAAI,EAAE,IAAI,CAAC,KAAK;iBACnB,CACJ,CAAC;aACL;YAED,wEAAwE;YACxE,mDAAmD;YACnD,EAAE;YACF,yBAAyB;YACzB,2BAA2B;YAC3B,EAAE;YACF,iEAAiE;YACjE,kFAAkF;YAClF,8CAA8C;YAC9C,EAAE;YACF,mEAAmE;YACnE,sFAAsF;YACtF,kDAAkD;YAClD,gFAAgF;YAChF,oEAAoE;YACpE,+DAA+D;YAE/D,MAAM,eAAe,GAAG,IAAA,mCAAS,EAAC;gBAC9B,SAAS,EAAE,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,0CAAwB,CAAC,CAAC,CAAC,0CAAwB;gBAChF,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,EAAE;aACX,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAG,IAAA,mCAAS,EAAC;gBACjC,SAAS,EACL,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,6CAA2B,CAAC,CAAC,CAAC,6CAA2B;gBAC/E,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,EAAE;aACX,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YAElC,sFAAsF;YACtF,gEAAgE;YAChE,MAAM,6BAA6B,GAC/B,QAAQ,CAAC,KAAK,IAAI,CAAC,IAAA,sCAAY,EAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC;YACpF,IAAI,6BAA6B,EAAE;gBAC/B,QAAQ,CAAC,YAAY,CACjB,QAAQ,CAAC,KAAK,EACd,IAAA,oCAAU,EAAC;oBACP,KAAK,EAAE,GAAG;iBACb,CAAC,CACL,CAAC;gBACF,8EAA8E;gBAC9E,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;aAC7D;iBAAM;gBACH,mFAAmF;gBACnF,iFAAiF;gBACjF,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;aAC9D;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAtED,4BAsEC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postcss-lwc-plugin.js","sourceRoot":"","sources":["../../src/postcss-lwc-plugin.ts"],"names":[],"mappings":";;;;;AAOA,sFAAsD;AAEtD,0EAA6D;AAE7D,uEAAqD;AACrD,6EAA+F;AAC/F,8EAAsE;AACtE,6EAAmE;AACnE,2EAA0D;AAE1D,SAAS,uBAAuB,CAAC,IAAU;;IACvC,4FAA4F;IAC5F,+BAA+B;IAC/B,OAAO,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,MAAK,QAAQ,IAAK,IAAI,CAAC,MAAiB,CAAC,IAAI,KAAK,WAAW,CAAC;AAC1F,CAAC;AAED,SAAS,wBAAwB,CAAC,eAAsC;IACpE,OAAO,IAAA,iCAAe,EAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,IAAA,kBAAmB,EAAC,IAAI,CAAC,CAAC;QAE1B,IAAA,mBAAwB,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAChD,IAAA,mBAAuB,EAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC;
|
|
1
|
+
{"version":3,"file":"postcss-lwc-plugin.js","sourceRoot":"","sources":["../../src/postcss-lwc-plugin.ts"],"names":[],"mappings":";;;;;AAOA,sFAAsD;AAEtD,0EAA6D;AAE7D,uEAAqD;AACrD,6EAA+F;AAC/F,8EAAsE;AACtE,6EAAmE;AACnE,2EAA0D;AAE1D,SAAS,uBAAuB,CAAC,IAAU;;IACvC,4FAA4F;IAC5F,+BAA+B;IAC/B,OAAO,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,MAAK,QAAQ,IAAK,IAAI,CAAC,MAAiB,CAAC,IAAI,KAAK,WAAW,CAAC;AAC1F,CAAC;AAED,SAAS,wBAAwB,CAAC,eAAsC;IACpE,OAAO,IAAA,iCAAe,EAAC,CAAC,IAAI,EAAE,EAAE;QAC5B,IAAA,kBAAmB,EAAC,IAAI,CAAC,CAAC;QAE1B,IAAA,mBAAwB,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAChD,IAAA,mBAAuB,EAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAwB,gBAAgB,CAAC,OAA4B;IACjE,mGAAmG;IACnG,yEAAyE;IACzE,MAAM,6BAA6B,GAAG,wBAAwB,CAAC;QAC3D,aAAa,EAAE,KAAK;KACvB,CAAC,CAAC;IACH,MAAM,2BAA2B,GAAG,wBAAwB,CAAC;QACzD,aAAa,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACpB,IAAA,mBAAe,EAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAA,mBAAyB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,IAAA,mBAAgB,EAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;YACpB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE;gBAChC,OAAO;aACV;YAED,oDAAoD;YACpD,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACzE,MAAM,oBAAoB,GAAG,6BAA6B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC;YACnC,gGAAgG;YAChG,6EAA6E;YAC7E,IAAI,kBAAkB,KAAK,oBAAoB,EAAE;gBAC7C,8FAA8F;gBAC9F,6BAA6B;gBAC7B,MAAM,WAAW,GAAG,IAAI,CAAC;gBACzB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtC,UAAU,CAAC,QAAQ,GAAG,oBAAoB,CAAC;gBAE3C,iCAAiC;gBAChC,UAAkB,CAAC,aAAa,GAAG,IAAI,CAAC;gBACxC,WAAmB,CAAC,aAAa,GAAG,IAAI,CAAC;aAC7C;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC;AAvCD,mCAuCC"}
|
|
@@ -15,6 +15,7 @@ const string_prototype_matchall_1 = __importDefault(require("string.prototype.ma
|
|
|
15
15
|
const shared_1 = require("@lwc/shared");
|
|
16
16
|
const message_1 = require("./utils/message");
|
|
17
17
|
const selectors_scoping_1 = require("./utils/selectors-scoping");
|
|
18
|
+
const dir_pseudoclass_1 = require("./utils/dir-pseudoclass");
|
|
18
19
|
var TokenType;
|
|
19
20
|
(function (TokenType) {
|
|
20
21
|
TokenType["text"] = "text";
|
|
@@ -26,6 +27,7 @@ var TokenType;
|
|
|
26
27
|
const HOST_SELECTOR_IDENTIFIER = 'hostSelector';
|
|
27
28
|
const SHADOW_SELECTOR_IDENTIFIER = 'shadowSelector';
|
|
28
29
|
const USE_ACTUAL_HOST_SELECTOR = 'useActualHostSelector';
|
|
30
|
+
const USE_NATIVE_DIR_PSEUDOCLASS = 'useNativeDirPseudoclass';
|
|
29
31
|
const STYLESHEET_IDENTIFIER = 'stylesheet';
|
|
30
32
|
const VAR_RESOLVER_IDENTIFIER = 'varResolver';
|
|
31
33
|
function serialize(result, config) {
|
|
@@ -48,7 +50,7 @@ function serialize(result, config) {
|
|
|
48
50
|
const serializedStyle = serializeCss(result, collectVarFunctions).trim();
|
|
49
51
|
if (serializedStyle) {
|
|
50
52
|
// inline function
|
|
51
|
-
buffer += `function stylesheet(${USE_ACTUAL_HOST_SELECTOR},
|
|
53
|
+
buffer += `function stylesheet(token, ${USE_ACTUAL_HOST_SELECTOR}, ${USE_NATIVE_DIR_PSEUDOCLASS}) {\n`;
|
|
52
54
|
// For scoped stylesheets, we use classes, but for synthetic shadow DOM, we use attributes
|
|
53
55
|
if (config.scoped) {
|
|
54
56
|
buffer += ` var ${SHADOW_SELECTOR_IDENTIFIER} = token ? ("." + token) : "";\n`;
|
|
@@ -174,7 +176,15 @@ function serializeCss(result, collectVarFunctions) {
|
|
|
174
176
|
function tokenizeCss(data) {
|
|
175
177
|
data = data.replace(/( {2,})/gm, ' '); // remove when there are more than two spaces
|
|
176
178
|
const tokens = [];
|
|
177
|
-
const
|
|
179
|
+
const attributes = [
|
|
180
|
+
selectors_scoping_1.SHADOW_ATTRIBUTE,
|
|
181
|
+
selectors_scoping_1.HOST_ATTRIBUTE,
|
|
182
|
+
dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_LTR,
|
|
183
|
+
dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_RTL,
|
|
184
|
+
dir_pseudoclass_1.DIR_ATTRIBUTE_SYNTHETIC_LTR,
|
|
185
|
+
dir_pseudoclass_1.DIR_ATTRIBUTE_SYNTHETIC_RTL,
|
|
186
|
+
];
|
|
187
|
+
const regex = new RegExp(`[[-](${attributes.join('|')})]?`, 'g');
|
|
178
188
|
let lastIndex = 0;
|
|
179
189
|
for (const match of (0, string_prototype_matchall_1.default)(data, regex)) {
|
|
180
190
|
const index = match.index;
|
|
@@ -184,11 +194,29 @@ function tokenizeCss(data) {
|
|
|
184
194
|
}
|
|
185
195
|
const identifier = substring === selectors_scoping_1.SHADOW_ATTRIBUTE ? SHADOW_SELECTOR_IDENTIFIER : HOST_SELECTOR_IDENTIFIER;
|
|
186
196
|
if (matchString.startsWith('[')) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
197
|
+
if (substring === selectors_scoping_1.SHADOW_ATTRIBUTE || substring === selectors_scoping_1.HOST_ATTRIBUTE) {
|
|
198
|
+
// attribute in a selector, e.g. `[__shadowAttribute__]` or `[__hostAttribute__]`
|
|
199
|
+
tokens.push({
|
|
200
|
+
type: TokenType.identifier,
|
|
201
|
+
value: identifier,
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
// :dir pseudoclass placeholder, e.g. `[__dirAttributeNativeLtr__]` or `[__dirAttributeSyntheticRtl__]`
|
|
206
|
+
const native = substring === dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_LTR ||
|
|
207
|
+
substring === dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_RTL;
|
|
208
|
+
const dirValue = substring === dir_pseudoclass_1.DIR_ATTRIBUTE_NATIVE_LTR ||
|
|
209
|
+
substring === dir_pseudoclass_1.DIR_ATTRIBUTE_SYNTHETIC_LTR
|
|
210
|
+
? 'ltr'
|
|
211
|
+
: 'rtl';
|
|
212
|
+
tokens.push({
|
|
213
|
+
type: TokenType.expression,
|
|
214
|
+
// use the native :dir() pseudoclass for native shadow, the [dir] attribute otherwise
|
|
215
|
+
value: native
|
|
216
|
+
? `${USE_NATIVE_DIR_PSEUDOCLASS} ? ':dir(${dirValue})' : ''`
|
|
217
|
+
: `${USE_NATIVE_DIR_PSEUDOCLASS} ? '' : '[dir="${dirValue}"]'`,
|
|
218
|
+
});
|
|
219
|
+
}
|
|
192
220
|
}
|
|
193
221
|
else {
|
|
194
222
|
// suffix for an at-rule, e.g. `@keyframes spin-__shadowAttribute__`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/serialize.ts"],"names":[],"mappings":";;;;;AAAA;;;;;GAKG;AACH,sDAAuD;AACvD,gFAAsD;AACtD,0FAAiD;AACjD,wCAA8C;AAE9C,6CAAwE;AACxE,iEAA6E;
|
|
1
|
+
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/serialize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DIR_ATTRIBUTE_SYNTHETIC_RTL = exports.DIR_ATTRIBUTE_SYNTHETIC_LTR = exports.DIR_ATTRIBUTE_NATIVE_RTL = exports.DIR_ATTRIBUTE_NATIVE_LTR = void 0;
|
|
4
|
+
/*
|
|
5
|
+
* Copyright (c) 2018, salesforce.com, inc.
|
|
6
|
+
* All rights reserved.
|
|
7
|
+
* SPDX-License-Identifier: MIT
|
|
8
|
+
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
9
|
+
*/
|
|
10
|
+
exports.DIR_ATTRIBUTE_NATIVE_LTR = `__dirAttributeNativeLtr__`;
|
|
11
|
+
exports.DIR_ATTRIBUTE_NATIVE_RTL = `__dirAttributeNativeRtl__`;
|
|
12
|
+
exports.DIR_ATTRIBUTE_SYNTHETIC_LTR = `__dirAttributeSyntheticLtr__`;
|
|
13
|
+
exports.DIR_ATTRIBUTE_SYNTHETIC_RTL = `__dirAttributeSyntheticRtl__`;
|
|
14
|
+
//# sourceMappingURL=dir-pseudoclass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dir-pseudoclass.js","sourceRoot":"","sources":["../../../src/utils/dir-pseudoclass.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,wBAAwB,GAAG,2BAA2B,CAAC;AACvD,QAAA,wBAAwB,GAAG,2BAA2B,CAAC;AACvD,QAAA,2BAA2B,GAAG,8BAA8B,CAAC;AAC7D,QAAA,2BAA2B,GAAG,8BAA8B,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { TransformCallback } from 'postcss';
|
|
2
|
-
export
|
|
2
|
+
export default function postCssLwcPlugin(options: {
|
|
3
3
|
scoped: boolean;
|
|
4
|
-
}
|
|
5
|
-
export default function postCssLwcPlugin(options: PostCssLwcPluginOptions): TransformCallback;
|
|
4
|
+
}): TransformCallback;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const DIR_ATTRIBUTE_NATIVE_LTR = "__dirAttributeNativeLtr__";
|
|
2
|
+
export declare const DIR_ATTRIBUTE_NATIVE_RTL = "__dirAttributeNativeRtl__";
|
|
3
|
+
export declare const DIR_ATTRIBUTE_SYNTHETIC_LTR = "__dirAttributeSyntheticLtr__";
|
|
4
|
+
export declare const DIR_ATTRIBUTE_SYNTHETIC_RTL = "__dirAttributeSyntheticRtl__";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lwc/style-compiler",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.7.0",
|
|
4
4
|
"description": "Transform style sheet to be consumed by the LWC engine",
|
|
5
5
|
"homepage": "https://lwc.dev/",
|
|
6
6
|
"repository": {
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"dist/"
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@lwc/shared": "2.
|
|
25
|
+
"@lwc/shared": "2.7.0",
|
|
26
26
|
"postcss": "~8.3.11",
|
|
27
27
|
"postcss-selector-parser": "~6.0.4",
|
|
28
28
|
"postcss-value-parser": "~4.1.0",
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"publishConfig": {
|
|
35
35
|
"access": "public"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "656663a9f95f90bd648c6fc2200201afc0156393"
|
|
38
38
|
}
|