Socket
Socket
Sign inDemoInstall

@khanacademy/wonder-blocks-icon-button

Package Overview
Dependencies
Maintainers
1
Versions
384
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@khanacademy/wonder-blocks-icon-button - npm Package Compare versions

Comparing version 3.3.12 to 3.3.13

429

dist/es/index.js

@@ -1,2 +0,4 @@

import { createElement, Component } from 'react';
import _extends from '@babel/runtime/helpers/extends';
import _objectWithoutPropertiesLoose from '@babel/runtime/helpers/objectWithoutPropertiesLoose';
import { Component, createElement } from 'react';
import { any } from 'prop-types';

@@ -10,280 +12,64 @@ import { isClientSideUrl, getClickableBehavior } from '@khanacademy/wonder-blocks-clickable';

function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
const _excluded = ["skipClientNav", "color", "disabled", "focused", "hovered", "href", "icon", "kind", "light", "pressed", "style", "testId", "waiting"];
const StyledAnchor = addStyle("a");
const StyledButton = addStyle("button");
const StyledLink = addStyle(Link);
class IconButtonCore extends Component {
render() {
const _this$props = this.props,
{
skipClientNav,
color,
disabled,
focused,
hovered,
href,
icon,
kind,
light,
pressed,
style,
testId
} = _this$props,
restProps = _objectWithoutPropertiesLoose(_this$props, _excluded);
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
const {
router
} = this.context;
const buttonColor = color === "destructive" ? SemanticColor.controlDestructive : SemanticColor.controlDefault;
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
const buttonStyles = _generateStyles(buttonColor, kind, light);
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
const defaultStyle = [sharedStyles.shared, disabled && sharedStyles.disabled, buttonStyles.default, disabled && buttonStyles.disabled, !disabled && (pressed ? buttonStyles.active : (hovered || focused) && buttonStyles.focus)];
const child = /*#__PURE__*/createElement(Icon, {
size: "medium",
color: "currentColor",
icon: icon
});
} else {
obj[key] = value;
}
return obj;
}
const commonProps = _extends({
"data-test-id": testId,
style: [defaultStyle, style]
}, restProps);
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys.push.apply(keys, symbols);
}
return keys;
}
function _objectSpread2(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
ownKeys(Object(source), true).forEach(function (key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
if (href && !disabled) {
return router && !skipClientNav && isClientSideUrl(href) ? /*#__PURE__*/createElement(StyledLink, _extends({}, commonProps, {
to: href
}), child) : /*#__PURE__*/createElement(StyledAnchor, _extends({}, commonProps, {
href: href
}), child);
} else {
ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
return /*#__PURE__*/createElement(StyledButton, _extends({
type: "button"
}, commonProps, {
disabled: disabled
}), child);
}
}
return target;
}
function _inherits(subClass, superClass) {
if (typeof superClass !== "function" && superClass !== null) {
throw new TypeError("Super expression must either be null or a function");
}
subClass.prototype = Object.create(superClass && superClass.prototype, {
constructor: {
value: subClass,
writable: true,
configurable: true
}
});
if (superClass) _setPrototypeOf(subClass, superClass);
}
function _getPrototypeOf(o) {
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
return o.__proto__ || Object.getPrototypeOf(o);
};
return _getPrototypeOf(o);
}
function _setPrototypeOf(o, p) {
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
function _isNativeReflectConstruct() {
if (typeof Reflect === "undefined" || !Reflect.construct) return false;
if (Reflect.construct.sham) return false;
if (typeof Proxy === "function") return true;
try {
Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));
return true;
} catch (e) {
return false;
}
}
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for (i = 0; i < sourceSymbolKeys.length; i++) {
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
function _assertThisInitialized(self) {
if (self === void 0) {
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
}
return self;
}
function _possibleConstructorReturn(self, call) {
if (call && (typeof call === "object" || typeof call === "function")) {
return call;
}
return _assertThisInitialized(self);
}
function _createSuper(Derived) {
var hasNativeReflectConstruct = _isNativeReflectConstruct();
return function _createSuperInternal() {
var Super = _getPrototypeOf(Derived),
result;
if (hasNativeReflectConstruct) {
var NewTarget = _getPrototypeOf(this).constructor;
result = Reflect.construct(Super, arguments, NewTarget);
} else {
result = Super.apply(this, arguments);
}
return _possibleConstructorReturn(this, result);
};
}
var StyledAnchor = addStyle("a");
var StyledButton = addStyle("button");
var StyledLink = addStyle(Link);
var IconButtonCore = /*#__PURE__*/function (_React$Component) {
_inherits(IconButtonCore, _React$Component);
var _super = _createSuper(IconButtonCore);
function IconButtonCore() {
_classCallCheck(this, IconButtonCore);
return _super.apply(this, arguments);
}
_createClass(IconButtonCore, [{
key: "render",
value: function render() {
var _this$props = this.props,
skipClientNav = _this$props.skipClientNav,
color = _this$props.color,
disabled = _this$props.disabled,
focused = _this$props.focused,
hovered = _this$props.hovered,
href = _this$props.href,
icon = _this$props.icon,
kind = _this$props.kind,
light = _this$props.light,
pressed = _this$props.pressed,
style = _this$props.style,
testId = _this$props.testId,
_ = _this$props.waiting,
restProps = _objectWithoutProperties(_this$props, ["skipClientNav", "color", "disabled", "focused", "hovered", "href", "icon", "kind", "light", "pressed", "style", "testId", "waiting"]);
var router = this.context.router;
var buttonColor = color === "destructive" ? SemanticColor.controlDestructive : SemanticColor.controlDefault;
var buttonStyles = _generateStyles(buttonColor, kind, light);
var defaultStyle = [sharedStyles.shared, disabled && sharedStyles.disabled, buttonStyles.default, disabled && buttonStyles.disabled, !disabled && (pressed ? buttonStyles.active : (hovered || focused) && buttonStyles.focus)];
var child = /*#__PURE__*/createElement(Icon, {
size: "medium",
color: "currentColor",
icon: icon
});
var commonProps = _objectSpread2({
"data-test-id": testId,
style: [defaultStyle, style]
}, restProps);
if (href && !disabled) {
return router && !skipClientNav && isClientSideUrl(href) ? /*#__PURE__*/createElement(StyledLink, _extends({}, commonProps, {
to: href
}), child) : /*#__PURE__*/createElement(StyledAnchor, _extends({}, commonProps, {
href: href
}), child);
} else {
return /*#__PURE__*/createElement(StyledButton, _extends({
type: "button"
}, commonProps, {
disabled: disabled
}), child);
}
}
}]);
return IconButtonCore;
}(Component);
_defineProperty(IconButtonCore, "contextTypes", {
IconButtonCore.contextTypes = {
router: any
});
var sharedStyles = StyleSheet.create({
};
const sharedStyles = StyleSheet.create({
shared: {

@@ -316,6 +102,6 @@ position: "relative",

});
var styles = {};
const styles = {};
var _generateStyles = function _generateStyles(color, kind, light) {
var buttonType = color + kind + light.toString();
const _generateStyles = (color, kind, light) => {
const buttonType = color + kind + light.toString();

@@ -330,7 +116,9 @@ if (styles[buttonType]) {

var white = Color.white,
offBlack32 = Color.offBlack32,
offBlack64 = Color.offBlack64,
offBlack = Color.offBlack;
var newStyles = {
const {
white,
offBlack32,
offBlack64,
offBlack
} = Color;
const newStyles = {
default: {},

@@ -377,2 +165,5 @@ focus: {

const _excluded$1 = ["onClick", "href", "skipClientNav", "tabIndex", "target"],
_excluded2 = ["tabIndex"];
/**

@@ -414,56 +205,44 @@ * An IconButton is a button whose contents are an SVG image.

*/
var IconButton = /*#__PURE__*/function (_React$Component) {
_inherits(IconButton, _React$Component);
class IconButton extends Component {
render() {
const _this$props = this.props,
{
onClick,
href,
skipClientNav,
tabIndex,
target
} = _this$props,
sharedProps = _objectWithoutPropertiesLoose(_this$props, _excluded$1);
var _super = _createSuper(IconButton);
const ClickableBehavior = getClickableBehavior(href, skipClientNav, this.context.router);
return /*#__PURE__*/createElement(ClickableBehavior, {
disabled: sharedProps.disabled,
href: href,
onClick: onClick,
role: "button",
target: target
}, (state, _ref) => {
let {
tabIndex: clickableTabIndex
} = _ref,
childrenProps = _objectWithoutPropertiesLoose(_ref, _excluded2);
function IconButton() {
_classCallCheck(this, IconButton);
return _super.apply(this, arguments);
return /*#__PURE__*/createElement(IconButtonCore, _extends({}, sharedProps, state, childrenProps, {
skipClientNav: skipClientNav,
href: href,
target: target // If tabIndex is provide to the component we allow
// it to override the tabIndex provide to use by
// ClickableBehavior.
,
tabIndex: tabIndex || clickableTabIndex
}));
});
}
_createClass(IconButton, [{
key: "render",
value: function render() {
var _this$props = this.props,
onClick = _this$props.onClick,
href = _this$props.href,
skipClientNav = _this$props.skipClientNav,
tabIndex = _this$props.tabIndex,
target = _this$props.target,
sharedProps = _objectWithoutProperties(_this$props, ["onClick", "href", "skipClientNav", "tabIndex", "target"]);
var ClickableBehavior = getClickableBehavior(href, skipClientNav, this.context.router);
return /*#__PURE__*/createElement(ClickableBehavior, {
disabled: sharedProps.disabled,
href: href,
onClick: onClick,
role: "button",
target: target
}, function (state, _ref) {
var clickableTabIndex = _ref.tabIndex,
childrenProps = _objectWithoutProperties(_ref, ["tabIndex"]);
return /*#__PURE__*/createElement(IconButtonCore, _extends({}, sharedProps, state, childrenProps, {
skipClientNav: skipClientNav,
href: href,
target: target // If tabIndex is provide to the component we allow
// it to override the tabIndex provide to use by
// ClickableBehavior.
,
tabIndex: tabIndex || clickableTabIndex
}));
});
}
}]);
return IconButton;
}(Component);
_defineProperty(IconButton, "contextTypes", {
}
IconButton.contextTypes = {
router: any
});
_defineProperty(IconButton, "defaultProps", {
};
IconButton.defaultProps = {
color: "default",

@@ -473,4 +252,4 @@ kind: "primary",

disabled: false
});
};
export default IconButton;

@@ -85,3 +85,3 @@ module.exports =

/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 8);
/******/ return __webpack_require__(__webpack_require__.s = 10);
/******/ })

@@ -105,4 +105,24 @@ /************************************************************************/

module.exports = require("prop-types");
function _extends() {
module.exports = _extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
module.exports["default"] = module.exports, module.exports.__esModule = true;
return _extends.apply(this, arguments);
}
module.exports = _extends;
module.exports["default"] = module.exports, module.exports.__esModule = true;
/***/ }),

@@ -112,4 +132,20 @@ /* 3 */

module.exports = require("@khanacademy/wonder-blocks-clickable");
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
module.exports = _objectWithoutPropertiesLoose;
module.exports["default"] = module.exports, module.exports.__esModule = true;
/***/ }),

@@ -119,3 +155,3 @@ /* 4 */

module.exports = require("@khanacademy/wonder-blocks-core");
module.exports = require("prop-types");

@@ -126,3 +162,3 @@ /***/ }),

module.exports = require("aphrodite");
module.exports = require("@khanacademy/wonder-blocks-clickable");

@@ -133,3 +169,3 @@ /***/ }),

module.exports = require("react-router-dom");
module.exports = require("@khanacademy/wonder-blocks-core");

@@ -140,6 +176,18 @@ /***/ }),

module.exports = require("aphrodite");
/***/ }),
/* 8 */
/***/ (function(module, exports) {
module.exports = require("react-router-dom");
/***/ }),
/* 9 */
/***/ (function(module, exports) {
module.exports = require("@khanacademy/wonder-blocks-icon");
/***/ }),
/* 8 */
/* 10 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

@@ -154,2 +202,10 @@

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/extends.js
var helpers_extends = __webpack_require__(2);
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js
var objectWithoutPropertiesLoose = __webpack_require__(3);
var objectWithoutPropertiesLoose_default = /*#__PURE__*/__webpack_require__.n(objectWithoutPropertiesLoose);
// EXTERNAL MODULE: external "react"

@@ -159,12 +215,12 @@ var external_react_ = __webpack_require__(1);

// EXTERNAL MODULE: external "prop-types"
var external_prop_types_ = __webpack_require__(2);
var external_prop_types_ = __webpack_require__(4);
// EXTERNAL MODULE: external "@khanacademy/wonder-blocks-clickable"
var wonder_blocks_clickable_ = __webpack_require__(3);
var wonder_blocks_clickable_ = __webpack_require__(5);
// EXTERNAL MODULE: external "aphrodite"
var external_aphrodite_ = __webpack_require__(5);
var external_aphrodite_ = __webpack_require__(7);
// EXTERNAL MODULE: external "react-router-dom"
var external_react_router_dom_ = __webpack_require__(6);
var external_react_router_dom_ = __webpack_require__(8);

@@ -176,127 +232,81 @@ // EXTERNAL MODULE: external "@khanacademy/wonder-blocks-color"

// EXTERNAL MODULE: external "@khanacademy/wonder-blocks-core"
var wonder_blocks_core_ = __webpack_require__(4);
var wonder_blocks_core_ = __webpack_require__(6);
// EXTERNAL MODULE: external "@khanacademy/wonder-blocks-icon"
var wonder_blocks_icon_ = __webpack_require__(7);
var wonder_blocks_icon_ = __webpack_require__(9);
var wonder_blocks_icon_default = /*#__PURE__*/__webpack_require__.n(wonder_blocks_icon_);
// CONCATENATED MODULE: ./packages/wonder-blocks-icon-button/src/components/icon-button-core.js
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
const _excluded = ["skipClientNav", "color", "disabled", "focused", "hovered", "href", "icon", "kind", "light", "pressed", "style", "testId", "waiting"];
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
const StyledAnchor = Object(wonder_blocks_core_["addStyle"])("a");
const StyledButton = Object(wonder_blocks_core_["addStyle"])("button");
const StyledLink = Object(wonder_blocks_core_["addStyle"])(external_react_router_dom_["Link"]);
class icon_button_core_IconButtonCore extends external_react_["Component"] {
render() {
const _this$props = this.props,
{
skipClientNav,
color,
disabled,
focused,
hovered,
href,
icon,
kind,
light,
pressed,
style,
testId
} = _this$props,
restProps = objectWithoutPropertiesLoose_default()(_this$props, _excluded);
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
const {
router
} = this.context;
const buttonColor = color === "destructive" ? wonder_blocks_color_["SemanticColor"].controlDestructive : wonder_blocks_color_["SemanticColor"].controlDefault;
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
const buttonStyles = _generateStyles(buttonColor, kind, light);
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
const defaultStyle = [sharedStyles.shared, disabled && sharedStyles.disabled, buttonStyles.default, disabled && buttonStyles.disabled, !disabled && (pressed ? buttonStyles.active : (hovered || focused) && buttonStyles.focus)];
const child = /*#__PURE__*/external_react_["createElement"](wonder_blocks_icon_default.a, {
size: "medium",
color: "currentColor",
icon: icon
});
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
const commonProps = extends_default()({
"data-test-id": testId,
style: [defaultStyle, style]
}, restProps);
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var StyledAnchor = Object(wonder_blocks_core_["addStyle"])("a");
var StyledButton = Object(wonder_blocks_core_["addStyle"])("button");
var StyledLink = Object(wonder_blocks_core_["addStyle"])(external_react_router_dom_["Link"]);
var icon_button_core_IconButtonCore = /*#__PURE__*/function (_React$Component) {
_inherits(IconButtonCore, _React$Component);
var _super = _createSuper(IconButtonCore);
function IconButtonCore() {
_classCallCheck(this, IconButtonCore);
return _super.apply(this, arguments);
if (href && !disabled) {
return router && !skipClientNav && Object(wonder_blocks_clickable_["isClientSideUrl"])(href) ? /*#__PURE__*/external_react_["createElement"](StyledLink, extends_default()({}, commonProps, {
to: href
}), child) : /*#__PURE__*/external_react_["createElement"](StyledAnchor, extends_default()({}, commonProps, {
href: href
}), child);
} else {
return /*#__PURE__*/external_react_["createElement"](StyledButton, extends_default()({
type: "button"
}, commonProps, {
disabled: disabled
}), child);
}
}
_createClass(IconButtonCore, [{
key: "render",
value: function render() {
var _this$props = this.props,
skipClientNav = _this$props.skipClientNav,
color = _this$props.color,
disabled = _this$props.disabled,
focused = _this$props.focused,
hovered = _this$props.hovered,
href = _this$props.href,
icon = _this$props.icon,
kind = _this$props.kind,
light = _this$props.light,
pressed = _this$props.pressed,
style = _this$props.style,
testId = _this$props.testId,
_ = _this$props.waiting,
restProps = _objectWithoutProperties(_this$props, ["skipClientNav", "color", "disabled", "focused", "hovered", "href", "icon", "kind", "light", "pressed", "style", "testId", "waiting"]);
var router = this.context.router;
var buttonColor = color === "destructive" ? wonder_blocks_color_["SemanticColor"].controlDestructive : wonder_blocks_color_["SemanticColor"].controlDefault;
var buttonStyles = icon_button_core_generateStyles(buttonColor, kind, light);
var defaultStyle = [sharedStyles.shared, disabled && sharedStyles.disabled, buttonStyles.default, disabled && buttonStyles.disabled, !disabled && (pressed ? buttonStyles.active : (hovered || focused) && buttonStyles.focus)];
var child = /*#__PURE__*/external_react_["createElement"](wonder_blocks_icon_default.a, {
size: "medium",
color: "currentColor",
icon: icon
});
var commonProps = _objectSpread({
"data-test-id": testId,
style: [defaultStyle, style]
}, restProps);
if (href && !disabled) {
return router && !skipClientNav && Object(wonder_blocks_clickable_["isClientSideUrl"])(href) ? /*#__PURE__*/external_react_["createElement"](StyledLink, _extends({}, commonProps, {
to: href
}), child) : /*#__PURE__*/external_react_["createElement"](StyledAnchor, _extends({}, commonProps, {
href: href
}), child);
} else {
return /*#__PURE__*/external_react_["createElement"](StyledButton, _extends({
type: "button"
}, commonProps, {
disabled: disabled
}), child);
}
}
}]);
return IconButtonCore;
}(external_react_["Component"]);
_defineProperty(icon_button_core_IconButtonCore, "contextTypes", {
}
icon_button_core_IconButtonCore.contextTypes = {
router: external_prop_types_["any"]
});
var sharedStyles = external_aphrodite_["StyleSheet"].create({
};
const sharedStyles = external_aphrodite_["StyleSheet"].create({
shared: {

@@ -329,6 +339,6 @@ position: "relative",

});
var styles = {};
const styles = {};
var icon_button_core_generateStyles = function _generateStyles(color, kind, light) {
var buttonType = color + kind + light.toString();
const _generateStyles = (color, kind, light) => {
const buttonType = color + kind + light.toString();

@@ -343,7 +353,9 @@ if (styles[buttonType]) {

var white = wonder_blocks_color_default.a.white,
offBlack32 = wonder_blocks_color_default.a.offBlack32,
offBlack64 = wonder_blocks_color_default.a.offBlack64,
offBlack = wonder_blocks_color_default.a.offBlack;
var newStyles = {
const {
white,
offBlack32,
offBlack64,
offBlack
} = wonder_blocks_color_default.a;
const newStyles = {
default: {},

@@ -390,37 +402,11 @@ focus: {

// CONCATENATED MODULE: ./packages/wonder-blocks-icon-button/src/components/icon-button.js
function icon_button_typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { icon_button_typeof = function _typeof(obj) { return typeof obj; }; } else { icon_button_typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return icon_button_typeof(obj); }
function icon_button_extends() { icon_button_extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return icon_button_extends.apply(this, arguments); }
function icon_button_objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = icon_button_objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
const icon_button_excluded = ["onClick", "href", "skipClientNav", "tabIndex", "target"],
_excluded2 = ["tabIndex"];
function icon_button_objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
function icon_button_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function icon_button_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
function icon_button_createClass(Constructor, protoProps, staticProps) { if (protoProps) icon_button_defineProperties(Constructor.prototype, protoProps); if (staticProps) icon_button_defineProperties(Constructor, staticProps); return Constructor; }
function icon_button_inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) icon_button_setPrototypeOf(subClass, superClass); }
function icon_button_setPrototypeOf(o, p) { icon_button_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return icon_button_setPrototypeOf(o, p); }
function icon_button_createSuper(Derived) { var hasNativeReflectConstruct = icon_button_isNativeReflectConstruct(); return function _createSuperInternal() { var Super = icon_button_getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = icon_button_getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return icon_button_possibleConstructorReturn(this, result); }; }
function icon_button_possibleConstructorReturn(self, call) { if (call && (icon_button_typeof(call) === "object" || typeof call === "function")) { return call; } return icon_button_assertThisInitialized(self); }
function icon_button_assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function icon_button_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
function icon_button_getPrototypeOf(o) { icon_button_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return icon_button_getPrototypeOf(o); }
function icon_button_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
/**

@@ -462,56 +448,44 @@ * An IconButton is a button whose contents are an SVG image.

*/
var icon_button_IconButton = /*#__PURE__*/function (_React$Component) {
icon_button_inherits(IconButton, _React$Component);
class icon_button_IconButton extends external_react_["Component"] {
render() {
const _this$props = this.props,
{
onClick,
href,
skipClientNav,
tabIndex,
target
} = _this$props,
sharedProps = objectWithoutPropertiesLoose_default()(_this$props, icon_button_excluded);
var _super = icon_button_createSuper(IconButton);
const ClickableBehavior = Object(wonder_blocks_clickable_["getClickableBehavior"])(href, skipClientNav, this.context.router);
return /*#__PURE__*/external_react_["createElement"](ClickableBehavior, {
disabled: sharedProps.disabled,
href: href,
onClick: onClick,
role: "button",
target: target
}, (state, _ref) => {
let {
tabIndex: clickableTabIndex
} = _ref,
childrenProps = objectWithoutPropertiesLoose_default()(_ref, _excluded2);
function IconButton() {
icon_button_classCallCheck(this, IconButton);
return _super.apply(this, arguments);
return /*#__PURE__*/external_react_["createElement"](icon_button_core_IconButtonCore, extends_default()({}, sharedProps, state, childrenProps, {
skipClientNav: skipClientNav,
href: href,
target: target // If tabIndex is provide to the component we allow
// it to override the tabIndex provide to use by
// ClickableBehavior.
,
tabIndex: tabIndex || clickableTabIndex
}));
});
}
icon_button_createClass(IconButton, [{
key: "render",
value: function render() {
var _this$props = this.props,
onClick = _this$props.onClick,
href = _this$props.href,
skipClientNav = _this$props.skipClientNav,
tabIndex = _this$props.tabIndex,
target = _this$props.target,
sharedProps = icon_button_objectWithoutProperties(_this$props, ["onClick", "href", "skipClientNav", "tabIndex", "target"]);
var ClickableBehavior = Object(wonder_blocks_clickable_["getClickableBehavior"])(href, skipClientNav, this.context.router);
return /*#__PURE__*/external_react_["createElement"](ClickableBehavior, {
disabled: sharedProps.disabled,
href: href,
onClick: onClick,
role: "button",
target: target
}, function (state, _ref) {
var clickableTabIndex = _ref.tabIndex,
childrenProps = icon_button_objectWithoutProperties(_ref, ["tabIndex"]);
return /*#__PURE__*/external_react_["createElement"](icon_button_core_IconButtonCore, icon_button_extends({}, sharedProps, state, childrenProps, {
skipClientNav: skipClientNav,
href: href,
target: target // If tabIndex is provide to the component we allow
// it to override the tabIndex provide to use by
// ClickableBehavior.
,
tabIndex: tabIndex || clickableTabIndex
}));
});
}
}]);
return IconButton;
}(external_react_["Component"]);
icon_button_defineProperty(icon_button_IconButton, "contextTypes", {
}
icon_button_IconButton.contextTypes = {
router: external_prop_types_["any"]
});
icon_button_defineProperty(icon_button_IconButton, "defaultProps", {
};
icon_button_IconButton.defaultProps = {
color: "default",

@@ -521,5 +495,3 @@ kind: "primary",

disabled: false
});
};
// CONCATENATED MODULE: ./packages/wonder-blocks-icon-button/src/index.js

@@ -526,0 +498,0 @@

{
"name": "@khanacademy/wonder-blocks-icon-button",
"version": "3.3.12",
"version": "3.3.13",
"design": "v1",

@@ -18,6 +18,7 @@ "publishConfig": {

"dependencies": {
"@khanacademy/wonder-blocks-clickable": "^2.1.1",
"@khanacademy/wonder-blocks-color": "^1.1.17",
"@khanacademy/wonder-blocks-core": "^3.1.3",
"@khanacademy/wonder-blocks-icon": "^1.2.20"
"@babel/runtime": "^7.13.10",
"@khanacademy/wonder-blocks-clickable": "^2.1.2",
"@khanacademy/wonder-blocks-color": "^1.1.18",
"@khanacademy/wonder-blocks-core": "^3.1.4",
"@khanacademy/wonder-blocks-icon": "^1.2.21"
},

@@ -31,5 +32,5 @@ "peerDependencies": {

"devDependencies": {
"wb-dev-build-settings": "^0.0.4"
"wb-dev-build-settings": "^0.1.0"
},
"gitHead": "b7d7425c7f2e02cd9b9ac6ac7e9fe12ead2bd8ab"
"gitHead": "8022bb419eed74be37f71f71c7621854794a731c"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc