@awsui/test-utils-core
Advanced tools
Comparing version 1.0.12 to 1.0.13
@@ -19,3 +19,4 @@ "use strict"; | ||
var getRootSelector = function (selector, root) { | ||
return utils_1.isScopedSelector(selector) ? utils_1.substituteScope(selector, root) : root + " " + selector; | ||
var rootSelector = utils_1.isScopedSelector(selector) ? utils_1.substituteScope(selector, root) : root + " " + selector; | ||
return utils_1.getUnscopedClassName(rootSelector); | ||
}; | ||
@@ -30,3 +31,3 @@ var AbstractWrapper = /** @class */ (function () { | ||
AbstractWrapper.prototype.matches = function (selector) { | ||
return new ElementWrapper(utils_1.appendSelector(this.root, selector)); | ||
return new ElementWrapper(utils_1.appendSelector(this.root, utils_1.getUnscopedClassName(selector))); | ||
}; | ||
@@ -33,0 +34,0 @@ AbstractWrapper.prototype.find = function (selector) { |
@@ -5,2 +5,3 @@ export declare const escapeSelector: (value: string) => string; | ||
export declare function appendSelector(selector: string, suffix: string): string; | ||
export declare const getUnscopedClassName: (selector: string) => string; | ||
export declare enum KeyCode { | ||
@@ -7,0 +8,0 @@ pageUp = 33, |
@@ -29,3 +29,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.KeyCode = exports.appendSelector = exports.substituteScope = exports.isScopedSelector = exports.escapeSelector = void 0; | ||
exports.KeyCode = exports.getUnscopedClassName = exports.appendSelector = exports.substituteScope = exports.isScopedSelector = exports.escapeSelector = void 0; | ||
var Tokenizer = __importStar(require("css-selector-tokenizer")); | ||
@@ -74,2 +74,18 @@ exports.escapeSelector = function (value) { | ||
exports.appendSelector = appendSelector; | ||
var trimContentHash = function (className) { | ||
var splitSelector = className.replace('.', '').split('_'); | ||
if (splitSelector.length >= 5) { | ||
splitSelector.splice(splitSelector.length - 2, splitSelector.length); | ||
var baseClassName = splitSelector.join('_'); | ||
return "[class*=\"" + baseClassName + "\"]"; | ||
} | ||
return className; | ||
}; | ||
exports.getUnscopedClassName = function (selector) { | ||
// this regexp resembles the logic of this code in the build config for components | ||
// https://code.amazon.com/packages/AWS-UI-Components/blobs/04e74590d64562a5874e29d2cd77babc8a2d28d9/--/build-tools/utils/generate-scoped-class-name.js#L20 | ||
return selector.replace(/\.awsui_[a-zA-Z0-9_-]+/g, function (match) { | ||
return trimContentHash(match); | ||
}); | ||
}; | ||
var KeyCode; | ||
@@ -76,0 +92,0 @@ (function (KeyCode) { |
{ | ||
"name": "@awsui/test-utils-core", | ||
"version": "1.0.12", | ||
"version": "1.0.13", | ||
"files": [ | ||
@@ -5,0 +5,0 @@ "dist", |
54757
428