react-tab-set 1.1.439 → 1.2.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.
Files changed (37) hide show
  1. package/{babel.config.js → babel.config.cjs} +0 -2
  2. package/lib/tab-set/index.js +148 -1
  3. package/lib/tab-set/tab-group/index.js +130 -1
  4. package/lib/tab-set/tab-group/tab/index.js +94 -1
  5. package/lib/tab-set/tab-panel/index.js +97 -1
  6. package/package.json +49 -10
  7. package/src/.babelrc +1 -21
  8. package/src/index.cjs +16 -0
  9. package/src/index.mjs +1 -0
  10. package/src/index.mts +23 -0
  11. package/src/tab-set/index.cjs +16 -0
  12. package/src/tab-set/index.mjs +1 -0
  13. package/src/tab-set/index.tsx +39 -13
  14. package/src/tab-set/is-tab-group.cjs +12 -0
  15. package/src/tab-set/is-tab-group.mjs +1 -0
  16. package/src/tab-set/is-tab-group.mts +5 -0
  17. package/src/tab-set/is-tab-panel.cjs +12 -0
  18. package/src/tab-set/is-tab-panel.mjs +1 -0
  19. package/src/tab-set/is-tab-panel.mts +5 -0
  20. package/src/tab-set/tab-group/index.cjs +16 -0
  21. package/src/tab-set/tab-group/index.mjs +1 -0
  22. package/src/tab-set/tab-group/index.tsx +3 -3
  23. package/src/tab-set/tab-group/is-tab.mts +5 -0
  24. package/src/tab-set/tab-group/tab/index.cjs +16 -0
  25. package/src/tab-set/tab-group/tab/index.mjs +1 -0
  26. package/src/tab-set/tab-panel/index.cjs +16 -0
  27. package/src/tab-set/tab-panel/index.mjs +1 -0
  28. package/src/tab-set/tab-panel/index.tsx +1 -1
  29. package/tsconfig.json +5 -16
  30. package/lib/index.js +0 -1
  31. package/lib/tab-set/is-tab-group.js +0 -1
  32. package/lib/tab-set/is-tab-panel.js +0 -1
  33. package/lib/tab-set/tab-group/is-tab.js +0 -1
  34. package/src/index.ts +0 -23
  35. package/src/tab-set/is-tab-group.ts +0 -5
  36. package/src/tab-set/is-tab-panel.ts +0 -5
  37. package/src/tab-set/tab-group/is-tab.ts +0 -5
@@ -41,8 +41,6 @@ module.exports = (api) => {
41
41
  if (api) api.cache.using(env)
42
42
 
43
43
  return {
44
- compact: true,
45
- comments: false,
46
44
  presets
47
45
  }
48
46
  }
@@ -1 +1,148 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");require("core-js/modules/es.object.set-prototype-of.js");require("core-js/modules/es.function.bind.js");require("core-js/modules/es.object.get-prototype-of.js");require("core-js/modules/es.reflect.construct.js");require("core-js/modules/es.object.create.js");require("core-js/modules/es.object.keys.js");require("core-js/modules/es.array.filter.js");require("core-js/modules/es.object.get-own-property-descriptor.js");require("core-js/modules/es.array.for-each.js");require("core-js/modules/web.dom-collections.for-each.js");require("core-js/modules/es.object.get-own-property-descriptors.js");require("core-js/modules/es.object.define-properties.js");require("core-js/modules/es.symbol.iterator.js");require("core-js/modules/es.array.iterator.js");require("core-js/modules/es.string.iterator.js");require("core-js/modules/web.dom-collections.iterator.js");require("core-js/modules/es.weak-map.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;require("core-js/modules/es.array.concat.js");require("core-js/modules/es.array.map.js");require("core-js/modules/es.symbol.to-primitive.js");require("core-js/modules/es.date.to-primitive.js");require("core-js/modules/es.symbol.js");require("core-js/modules/es.symbol.description.js");require("core-js/modules/es.object.to-string.js");require("core-js/modules/es.number.constructor.js");var _react=_interopRequireWildcard(require("react"));var _uuid=require("uuid");var _isTabPanel=_interopRequireDefault(require("./is-tab-panel"));var _isTabGroup=_interopRequireDefault(require("./is-tab-group"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||_typeof(obj)!=="object"&&typeof obj!=="function"){return{"default":obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj["default"]=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}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,_toPropertyKey(descriptor.key),descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});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}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _defineProperty(obj,key,value){key=_toPropertyKey(key);if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _toPropertyKey(arg){var key=_toPrimitive(arg,"string");return _typeof(key)==="symbol"?key:String(key);}function _toPrimitive(input,hint){if(_typeof(input)!=="object"||input===null)return input;var prim=input[Symbol.toPrimitive];if(prim!==undefined){var res=prim.call(input,hint||"default");if(_typeof(res)!=="object")return res;throw new TypeError("@@toPrimitive must return a primitive value.");}return(hint==="string"?String:Number)(input);}var TabSet=function(_Component){_inherits(TabSet,_Component);var _super=_createSuper(TabSet);function TabSet(){var _this;_classCallCheck(this,TabSet);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_defineProperty(_assertThisInitialized(_this),"handleTabSelect",function(selectedTab){if(selectedTab!==_this.props.selectedTab){var onChange=_this.props.onChange;_this.setState({selectedTab:selectedTab});onChange(selectedTab);}});return _this;}_createClass(TabSet,[{key:"shouldComponentUpdate",value:function shouldComponentUpdate(props){return props.children!==this.props.children||props.selectedTab!==this.props.selectedTab;}},{key:"mapChildren",value:function mapChildren(children,selectedTab){var _this2=this;return _react.Children.map(children,function(child){var type=child.type;if(type){var props=child.props;if((0,_isTabGroup["default"])(type)){return(0,_react.cloneElement)(child,_objectSpread(_objectSpread({},props),{},{selectedTab:selectedTab,onTabSelect:_this2.handleTabSelect}));}if((0,_isTabPanel["default"])(type)){return(0,_react.cloneElement)(child,_objectSpread(_objectSpread({},props),{},{selectedTab:selectedTab}));}var _children=props.children;if(_children){return(0,_react.cloneElement)(child,_objectSpread(_objectSpread({},props),{},{children:_this2.mapChildren(_children,selectedTab)}));}}return child;});}},{key:"getChildren",value:function getChildren(){var _this$props=this.props,children=_this$props.children,selectedTab=_this$props.selectedTab;return this.mapChildren(children,selectedTab);}},{key:"render",value:function render(){return _react["default"].createElement("div",{className:"tab-set"},this.getChildren());}}]);return TabSet;}(_react.Component);exports["default"]=TabSet;_defineProperty(TabSet,"defaultProps",{onChange:function onChange(){},selectedTab:(0,_uuid.v4)(),children:[]});
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.object.set-prototype-of.js");
5
+ require("core-js/modules/es.function.bind.js");
6
+ require("core-js/modules/es.object.get-prototype-of.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.object.create.js");
9
+ require("core-js/modules/es.object.keys.js");
10
+ require("core-js/modules/es.array.filter.js");
11
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
12
+ require("core-js/modules/es.array.for-each.js");
13
+ require("core-js/modules/web.dom-collections.for-each.js");
14
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
15
+ require("core-js/modules/es.object.define-properties.js");
16
+ require("core-js/modules/es.symbol.iterator.js");
17
+ require("core-js/modules/es.array.iterator.js");
18
+ require("core-js/modules/es.string.iterator.js");
19
+ require("core-js/modules/web.dom-collections.iterator.js");
20
+ require("core-js/modules/es.weak-map.js");
21
+ Object.defineProperty(exports, "__esModule", {
22
+ value: true
23
+ });
24
+ exports["default"] = void 0;
25
+ require("core-js/modules/es.array.map.js");
26
+ require("core-js/modules/es.symbol.to-primitive.js");
27
+ require("core-js/modules/es.date.to-primitive.js");
28
+ require("core-js/modules/es.symbol.js");
29
+ require("core-js/modules/es.symbol.description.js");
30
+ require("core-js/modules/es.object.to-string.js");
31
+ require("core-js/modules/es.number.constructor.js");
32
+ var _react = _interopRequireWildcard(require("react"));
33
+ var _uuid = require("uuid");
34
+ var _debug = _interopRequireDefault(require("debug"));
35
+ var _isTabPanel = _interopRequireDefault(require("./is-tab-panel.mts"));
36
+ var _isTabGroup = _interopRequireDefault(require("./is-tab-group.mts"));
37
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
38
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
39
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
40
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
41
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
42
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
43
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
44
+ 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, _toPropertyKey(descriptor.key), descriptor); } }
45
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
46
+ 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 } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
47
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
48
+ 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); }; }
49
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
50
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
51
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
52
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
53
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
54
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
55
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
56
+ var error = (0, _debug["default"])('react-tab-set/tab-set');
57
+ var TabSet = /*#__PURE__*/function (_Component) {
58
+ _inherits(TabSet, _Component);
59
+ var _super = _createSuper(TabSet);
60
+ function TabSet(props) {
61
+ var _this;
62
+ _classCallCheck(this, TabSet);
63
+ _this = _super.call(this, props);
64
+ _defineProperty(_assertThisInitialized(_this), "handleTabSelect", function (selectedTab) {
65
+ if (selectedTab !== _this.state.selectedTab) {
66
+ var onChange = _this.props.onChange;
67
+ _this.setState({
68
+ selectedTab: selectedTab
69
+ }, function () {
70
+ try {
71
+ onChange(selectedTab);
72
+ } catch (_unused) {
73
+ error('Error `onChange`');
74
+ }
75
+ });
76
+ }
77
+ });
78
+ var _selectedTab = props.selectedTab;
79
+ _this.state = {
80
+ selectedTab: _selectedTab
81
+ };
82
+ return _this;
83
+ }
84
+
85
+ /*
86
+ * The selected tab default does not have to be a uuid, but a uuid
87
+ * reduces the likelihood that this default has the same value as
88
+ * an implemented tab
89
+ */
90
+ _createClass(TabSet, [{
91
+ key: "shouldComponentUpdate",
92
+ value: function shouldComponentUpdate(props, state) {
93
+ return props.children !== this.props.children || state.selectedTab !== this.state.selectedTab;
94
+ }
95
+ }, {
96
+ key: "mapChildren",
97
+ value: function mapChildren(children, selectedTab) {
98
+ var _this2 = this;
99
+ return _react.Children.map(children, function (child) {
100
+ var type = child.type;
101
+ if (type) {
102
+ // eslint-disable-line @typescript-eslint/strict-boolean-expressions
103
+ var props = child.props;
104
+ if ((0, _isTabGroup["default"])(type)) {
105
+ return /*#__PURE__*/(0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, props), {}, {
106
+ selectedTab: selectedTab,
107
+ onTabSelect: _this2.handleTabSelect
108
+ }));
109
+ }
110
+ if ((0, _isTabPanel["default"])(type)) {
111
+ return /*#__PURE__*/(0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, props), {}, {
112
+ selectedTab: selectedTab
113
+ }));
114
+ }
115
+ var _children = props.children;
116
+ if (_children) {
117
+ // eslint-disable-line @typescript-eslint/strict-boolean-expressions
118
+ return /*#__PURE__*/(0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, props), {}, {
119
+ children: _this2.mapChildren(_children, selectedTab)
120
+ }));
121
+ }
122
+ }
123
+ return child;
124
+ });
125
+ }
126
+ }, {
127
+ key: "getChildren",
128
+ value: function getChildren() {
129
+ var children = this.props.children;
130
+ var selectedTab = this.state.selectedTab;
131
+ return this.mapChildren(children, selectedTab);
132
+ }
133
+ }, {
134
+ key: "render",
135
+ value: function render() {
136
+ return /*#__PURE__*/_react["default"].createElement("div", {
137
+ className: "tab-set"
138
+ }, this.getChildren());
139
+ }
140
+ }]);
141
+ return TabSet;
142
+ }(_react.Component);
143
+ exports["default"] = TabSet;
144
+ _defineProperty(TabSet, "defaultProps", {
145
+ onChange: function onChange() {},
146
+ selectedTab: (0, _uuid.v4)(),
147
+ children: []
148
+ });
@@ -1 +1,130 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");require("core-js/modules/es.object.set-prototype-of.js");require("core-js/modules/es.function.bind.js");require("core-js/modules/es.object.get-prototype-of.js");require("core-js/modules/es.reflect.construct.js");require("core-js/modules/es.object.create.js");require("core-js/modules/es.object.keys.js");require("core-js/modules/es.array.filter.js");require("core-js/modules/es.object.get-own-property-descriptor.js");require("core-js/modules/es.array.for-each.js");require("core-js/modules/web.dom-collections.for-each.js");require("core-js/modules/es.object.get-own-property-descriptors.js");require("core-js/modules/es.object.define-properties.js");require("core-js/modules/es.symbol.iterator.js");require("core-js/modules/es.array.iterator.js");require("core-js/modules/es.string.iterator.js");require("core-js/modules/web.dom-collections.iterator.js");require("core-js/modules/es.weak-map.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;require("core-js/modules/es.array.concat.js");require("core-js/modules/es.array.map.js");require("core-js/modules/es.symbol.to-primitive.js");require("core-js/modules/es.date.to-primitive.js");require("core-js/modules/es.symbol.js");require("core-js/modules/es.symbol.description.js");require("core-js/modules/es.object.to-string.js");require("core-js/modules/es.number.constructor.js");var _react=_interopRequireWildcard(require("react"));var _uuid=require("uuid");var _isTab=_interopRequireDefault(require("./is-tab"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||_typeof(obj)!=="object"&&typeof obj!=="function"){return{"default":obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj["default"]=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}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,_toPropertyKey(descriptor.key),descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});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}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _defineProperty(obj,key,value){key=_toPropertyKey(key);if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _toPropertyKey(arg){var key=_toPrimitive(arg,"string");return _typeof(key)==="symbol"?key:String(key);}function _toPrimitive(input,hint){if(_typeof(input)!=="object"||input===null)return input;var prim=input[Symbol.toPrimitive];if(prim!==undefined){var res=prim.call(input,hint||"default");if(_typeof(res)!=="object")return res;throw new TypeError("@@toPrimitive must return a primitive value.");}return(hint==="string"?String:Number)(input);}var TabGroup=function(_Component){_inherits(TabGroup,_Component);var _super=_createSuper(TabGroup);function TabGroup(){var _this;_classCallCheck(this,TabGroup);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_defineProperty(_assertThisInitialized(_this),"handleTabClick",function(tab){var onTabSelect=_this.props.onTabSelect;onTabSelect(tab);});return _this;}_createClass(TabGroup,[{key:"shouldComponentUpdate",value:function shouldComponentUpdate(props){return props.children!==this.props.children||props.selectedTab!==this.props.selectedTab;}},{key:"mapChildren",value:function mapChildren(children,selectedTab){var _this2=this;return _react.Children.map(children,function(child){var type=child.type;if(type){var props=child.props;if((0,_isTab["default"])(type)){return(0,_react.cloneElement)(child,_objectSpread(_objectSpread({},props),{},{selectedTab:selectedTab,onTabClick:_this2.handleTabClick}));}var _children=props.children;if(_children){return(0,_react.cloneElement)(child,_objectSpread(_objectSpread({},props),{},{children:_this2.mapChildren(_children,selectedTab)}));}}return child;});}},{key:"getChildren",value:function getChildren(){var _this$props=this.props,children=_this$props.children,selectedTab=_this$props.selectedTab;return this.mapChildren(children,selectedTab);}},{key:"render",value:function render(){return _react["default"].createElement("ul",{className:"tab-group"},this.getChildren());}}]);return TabGroup;}(_react.Component);exports["default"]=TabGroup;_defineProperty(TabGroup,"defaultProps",{onTabSelect:function onTabSelect(){},selectedTab:(0,_uuid.v4)(),children:[]});
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.object.set-prototype-of.js");
5
+ require("core-js/modules/es.function.bind.js");
6
+ require("core-js/modules/es.object.get-prototype-of.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.object.create.js");
9
+ require("core-js/modules/es.object.keys.js");
10
+ require("core-js/modules/es.array.filter.js");
11
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
12
+ require("core-js/modules/es.array.for-each.js");
13
+ require("core-js/modules/web.dom-collections.for-each.js");
14
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
15
+ require("core-js/modules/es.object.define-properties.js");
16
+ require("core-js/modules/es.symbol.iterator.js");
17
+ require("core-js/modules/es.array.iterator.js");
18
+ require("core-js/modules/es.string.iterator.js");
19
+ require("core-js/modules/web.dom-collections.iterator.js");
20
+ require("core-js/modules/es.weak-map.js");
21
+ Object.defineProperty(exports, "__esModule", {
22
+ value: true
23
+ });
24
+ exports["default"] = void 0;
25
+ require("core-js/modules/es.array.concat.js");
26
+ require("core-js/modules/es.array.map.js");
27
+ require("core-js/modules/es.symbol.to-primitive.js");
28
+ require("core-js/modules/es.date.to-primitive.js");
29
+ require("core-js/modules/es.symbol.js");
30
+ require("core-js/modules/es.symbol.description.js");
31
+ require("core-js/modules/es.object.to-string.js");
32
+ require("core-js/modules/es.number.constructor.js");
33
+ var _react = _interopRequireWildcard(require("react"));
34
+ var _uuid = require("uuid");
35
+ var _isTab = _interopRequireDefault(require("./is-tab.mts"));
36
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
37
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
40
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
41
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
42
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
43
+ 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, _toPropertyKey(descriptor.key), descriptor); } }
44
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
45
+ 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 } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
46
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
47
+ 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); }; }
48
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
49
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
50
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
51
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
52
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
53
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
54
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
55
+ var TabGroup = /*#__PURE__*/function (_Component) {
56
+ _inherits(TabGroup, _Component);
57
+ var _super = _createSuper(TabGroup);
58
+ function TabGroup() {
59
+ var _this;
60
+ _classCallCheck(this, TabGroup);
61
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
62
+ args[_key] = arguments[_key];
63
+ }
64
+ _this = _super.call.apply(_super, [this].concat(args));
65
+ _defineProperty(_assertThisInitialized(_this), "handleTabClick", function (tab) {
66
+ var onTabSelect = _this.props.onTabSelect;
67
+ onTabSelect(tab);
68
+ });
69
+ return _this;
70
+ }
71
+ _createClass(TabGroup, [{
72
+ key: "shouldComponentUpdate",
73
+ value: function shouldComponentUpdate(props) {
74
+ return props.children !== this.props.children || props.selectedTab !== this.props.selectedTab;
75
+ }
76
+ }, {
77
+ key: "mapChildren",
78
+ value: function mapChildren(children, selectedTab) {
79
+ var _this2 = this;
80
+ return _react.Children.map(children, function (child) {
81
+ var type = child.type;
82
+ if (type) {
83
+ // eslint-disable-line @typescript-eslint/strict-boolean-expressions
84
+ var props = child.props;
85
+ if ((0, _isTab["default"])(type)) {
86
+ return /*#__PURE__*/(0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, props), {}, {
87
+ selectedTab: selectedTab,
88
+ onTabClick: _this2.handleTabClick
89
+ }));
90
+ }
91
+ var _children = props.children;
92
+ if (_children) {
93
+ // eslint-disable-line @typescript-eslint/strict-boolean-expressions
94
+ return /*#__PURE__*/(0, _react.cloneElement)(child, _objectSpread(_objectSpread({}, props), {}, {
95
+ children: _this2.mapChildren(_children, selectedTab)
96
+ }));
97
+ }
98
+ }
99
+ return child;
100
+ });
101
+ }
102
+ }, {
103
+ key: "getChildren",
104
+ value: function getChildren() {
105
+ var _this$props = this.props,
106
+ children = _this$props.children,
107
+ selectedTab = _this$props.selectedTab;
108
+ return this.mapChildren(children, selectedTab);
109
+ }
110
+ }, {
111
+ key: "render",
112
+ value: function render() {
113
+ return /*#__PURE__*/_react["default"].createElement("ul", {
114
+ className: "tab-group"
115
+ }, this.getChildren());
116
+ }
117
+ }]);
118
+ return TabGroup;
119
+ }(_react.Component);
120
+ exports["default"] = TabGroup;
121
+ /*
122
+ * The selected tab default does not have to be a uuid, but a uuid
123
+ * reduces the likelihood that this default has the same value as
124
+ * an implemented tab
125
+ */
126
+ _defineProperty(TabGroup, "defaultProps", {
127
+ onTabSelect: function onTabSelect() {},
128
+ selectedTab: (0, _uuid.v4)(),
129
+ children: []
130
+ });
@@ -1 +1,94 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");require("core-js/modules/es.object.set-prototype-of.js");require("core-js/modules/es.function.bind.js");require("core-js/modules/es.object.get-prototype-of.js");require("core-js/modules/es.reflect.construct.js");require("core-js/modules/es.object.create.js");require("core-js/modules/es.symbol.iterator.js");require("core-js/modules/es.array.iterator.js");require("core-js/modules/es.string.iterator.js");require("core-js/modules/web.dom-collections.iterator.js");require("core-js/modules/es.weak-map.js");require("core-js/modules/es.object.get-own-property-descriptor.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;require("core-js/modules/es.array.concat.js");require("core-js/modules/es.symbol.to-primitive.js");require("core-js/modules/es.date.to-primitive.js");require("core-js/modules/es.symbol.js");require("core-js/modules/es.symbol.description.js");require("core-js/modules/es.object.to-string.js");require("core-js/modules/es.number.constructor.js");var _react=_interopRequireWildcard(require("react"));var _uuid=require("uuid");function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||_typeof(obj)!=="object"&&typeof obj!=="function"){return{"default":obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj["default"]=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}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,_toPropertyKey(descriptor.key),descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});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}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _defineProperty(obj,key,value){key=_toPropertyKey(key);if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _toPropertyKey(arg){var key=_toPrimitive(arg,"string");return _typeof(key)==="symbol"?key:String(key);}function _toPrimitive(input,hint){if(_typeof(input)!=="object"||input===null)return input;var prim=input[Symbol.toPrimitive];if(prim!==undefined){var res=prim.call(input,hint||"default");if(_typeof(res)!=="object")return res;throw new TypeError("@@toPrimitive must return a primitive value.");}return(hint==="string"?String:Number)(input);}var Tab=function(_Component){_inherits(Tab,_Component);var _super=_createSuper(Tab);function Tab(){var _this;_classCallCheck(this,Tab);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_defineProperty(_assertThisInitialized(_this),"handleClick",function(){var _this$props=_this.props,tab=_this$props.tab,onTabClick=_this$props.onTabClick;onTabClick(tab);});return _this;}_createClass(Tab,[{key:"shouldComponentUpdate",value:function shouldComponentUpdate(props){return props.children!==this.props.children||props.tab!==this.props.tab||props.selectedTab!==this.props.selectedTab;}},{key:"render",value:function render(){var _this$props2=this.props,tab=_this$props2.tab,selectedTab=_this$props2.selectedTab,children=_this$props2.children;var className=tab===selectedTab?'tab selected':'tab';return _react["default"].createElement("li",{className:className,onClick:this.handleClick},children);}}]);return Tab;}(_react.Component);exports["default"]=Tab;_defineProperty(Tab,"defaultProps",{onTabClick:function onTabClick(){},tab:(0,_uuid.v4)(),selectedTab:(0,_uuid.v4)(),children:[]});
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.object.set-prototype-of.js");
5
+ require("core-js/modules/es.function.bind.js");
6
+ require("core-js/modules/es.object.get-prototype-of.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.object.create.js");
9
+ require("core-js/modules/es.symbol.iterator.js");
10
+ require("core-js/modules/es.array.iterator.js");
11
+ require("core-js/modules/es.string.iterator.js");
12
+ require("core-js/modules/web.dom-collections.iterator.js");
13
+ require("core-js/modules/es.weak-map.js");
14
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ exports["default"] = void 0;
19
+ require("core-js/modules/es.array.concat.js");
20
+ require("core-js/modules/es.symbol.to-primitive.js");
21
+ require("core-js/modules/es.date.to-primitive.js");
22
+ require("core-js/modules/es.symbol.js");
23
+ require("core-js/modules/es.symbol.description.js");
24
+ require("core-js/modules/es.object.to-string.js");
25
+ require("core-js/modules/es.number.constructor.js");
26
+ var _react = _interopRequireWildcard(require("react"));
27
+ var _uuid = require("uuid");
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
31
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
+ 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, _toPropertyKey(descriptor.key), descriptor); } }
33
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
34
+ 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 } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
35
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
36
+ 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); }; }
37
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
38
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
39
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
40
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
41
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
42
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
43
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
44
+ var Tab = /*#__PURE__*/function (_Component) {
45
+ _inherits(Tab, _Component);
46
+ var _super = _createSuper(Tab);
47
+ function Tab() {
48
+ var _this;
49
+ _classCallCheck(this, Tab);
50
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
+ args[_key] = arguments[_key];
52
+ }
53
+ _this = _super.call.apply(_super, [this].concat(args));
54
+ _defineProperty(_assertThisInitialized(_this), "handleClick", function () {
55
+ var _this$props = _this.props,
56
+ tab = _this$props.tab,
57
+ onTabClick = _this$props.onTabClick;
58
+ onTabClick(tab);
59
+ });
60
+ return _this;
61
+ }
62
+ _createClass(Tab, [{
63
+ key: "shouldComponentUpdate",
64
+ value: function shouldComponentUpdate(props) {
65
+ return props.children !== this.props.children || props.tab !== this.props.tab || props.selectedTab !== this.props.selectedTab;
66
+ }
67
+ }, {
68
+ key: "render",
69
+ value: function render() {
70
+ var _this$props2 = this.props,
71
+ tab = _this$props2.tab,
72
+ selectedTab = _this$props2.selectedTab,
73
+ children = _this$props2.children;
74
+ var className = tab === selectedTab ? 'tab selected' : 'tab';
75
+ return /*#__PURE__*/_react["default"].createElement("li", {
76
+ className: className,
77
+ onClick: this.handleClick
78
+ }, children);
79
+ }
80
+ }]);
81
+ return Tab;
82
+ }(_react.Component);
83
+ exports["default"] = Tab;
84
+ /*
85
+ * The tab and selected tab defaults do not have to be a uuid, but a uuid
86
+ * reduces the likelihood that this default has the same value as
87
+ * an implemented tab
88
+ */
89
+ _defineProperty(Tab, "defaultProps", {
90
+ onTabClick: function onTabClick() {},
91
+ tab: (0, _uuid.v4)(),
92
+ selectedTab: (0, _uuid.v4)(),
93
+ children: []
94
+ });
@@ -1 +1,97 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");require("core-js/modules/es.object.set-prototype-of.js");require("core-js/modules/es.function.bind.js");require("core-js/modules/es.object.get-prototype-of.js");require("core-js/modules/es.reflect.construct.js");require("core-js/modules/es.object.create.js");require("core-js/modules/es.symbol.iterator.js");require("core-js/modules/es.array.iterator.js");require("core-js/modules/es.string.iterator.js");require("core-js/modules/web.dom-collections.iterator.js");require("core-js/modules/es.weak-map.js");require("core-js/modules/es.object.get-own-property-descriptor.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;require("core-js/modules/es.symbol.to-primitive.js");require("core-js/modules/es.date.to-primitive.js");require("core-js/modules/es.symbol.js");require("core-js/modules/es.symbol.description.js");require("core-js/modules/es.object.to-string.js");require("core-js/modules/es.number.constructor.js");var _react=_interopRequireWildcard(require("react"));var _uuid=require("uuid");function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||_typeof(obj)!=="object"&&typeof obj!=="function"){return{"default":obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj["default"]=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}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,_toPropertyKey(descriptor.key),descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});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}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}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);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _defineProperty(obj,key,value){key=_toPropertyKey(key);if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _toPropertyKey(arg){var key=_toPrimitive(arg,"string");return _typeof(key)==="symbol"?key:String(key);}function _toPrimitive(input,hint){if(_typeof(input)!=="object"||input===null)return input;var prim=input[Symbol.toPrimitive];if(prim!==undefined){var res=prim.call(input,hint||"default");if(_typeof(res)!=="object")return res;throw new TypeError("@@toPrimitive must return a primitive value.");}return(hint==="string"?String:Number)(input);}var TabPanel=function(_Component){_inherits(TabPanel,_Component);var _super=_createSuper(TabPanel);function TabPanel(){_classCallCheck(this,TabPanel);return _super.apply(this,arguments);}_createClass(TabPanel,[{key:"shouldComponentUpdate",value:function shouldComponentUpdate(props){if(props.render instanceof Function)return true;return props.children!==this.props.children||props.tab!==this.props.tab||props.selectedTab!==this.props.selectedTab;}},{key:"renderPanel",value:function renderPanel(){var _this$props=this.props,_this$props$render=_this$props.render,render=_this$props$render===void 0?function(){return null;}:_this$props$render,_this$props$children=_this$props.children,children=_this$props$children===void 0?render():_this$props$children;if(children){return _react["default"].createElement("div",{className:"tab-panel"},children);}return null;}},{key:"render",value:function render(){var _this$props2=this.props,tab=_this$props2.tab,selectedTab=_this$props2.selectedTab;if(tab===selectedTab){return this.renderPanel();}return null;}}]);return TabPanel;}(_react.Component);exports["default"]=TabPanel;_defineProperty(TabPanel,"defaultProps",{tab:(0,_uuid.v4)(),selectedTab:(0,_uuid.v4)()});
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.object.set-prototype-of.js");
5
+ require("core-js/modules/es.function.bind.js");
6
+ require("core-js/modules/es.object.get-prototype-of.js");
7
+ require("core-js/modules/es.reflect.construct.js");
8
+ require("core-js/modules/es.object.create.js");
9
+ require("core-js/modules/es.symbol.iterator.js");
10
+ require("core-js/modules/es.array.iterator.js");
11
+ require("core-js/modules/es.string.iterator.js");
12
+ require("core-js/modules/web.dom-collections.iterator.js");
13
+ require("core-js/modules/es.weak-map.js");
14
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ exports["default"] = void 0;
19
+ require("core-js/modules/es.symbol.to-primitive.js");
20
+ require("core-js/modules/es.date.to-primitive.js");
21
+ require("core-js/modules/es.symbol.js");
22
+ require("core-js/modules/es.symbol.description.js");
23
+ require("core-js/modules/es.object.to-string.js");
24
+ require("core-js/modules/es.number.constructor.js");
25
+ var _react = _interopRequireWildcard(require("react"));
26
+ var _uuid = require("uuid");
27
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
30
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
31
+ 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, _toPropertyKey(descriptor.key), descriptor); } }
32
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
33
+ 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 } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
34
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
35
+ 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); }; }
36
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
37
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
38
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
40
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
41
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
42
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
43
+ var TabPanel = /*#__PURE__*/function (_Component) {
44
+ _inherits(TabPanel, _Component);
45
+ var _super = _createSuper(TabPanel);
46
+ function TabPanel() {
47
+ _classCallCheck(this, TabPanel);
48
+ return _super.apply(this, arguments);
49
+ }
50
+ _createClass(TabPanel, [{
51
+ key: "shouldComponentUpdate",
52
+ value: function shouldComponentUpdate(props) {
53
+ if (props.render instanceof Function) return true;
54
+ return props.children !== this.props.children || props.tab !== this.props.tab || props.selectedTab !== this.props.selectedTab;
55
+ }
56
+ }, {
57
+ key: "renderPanel",
58
+ value: function renderPanel() {
59
+ var _this$props = this.props,
60
+ _this$props$render = _this$props.render,
61
+ render = _this$props$render === void 0 ? function () {
62
+ return null;
63
+ } : _this$props$render,
64
+ _this$props$children = _this$props.children,
65
+ children = _this$props$children === void 0 ? render() : _this$props$children;
66
+ if (children) {
67
+ // eslint-disable-line @typescript-eslint/strict-boolean-expressions
68
+ return /*#__PURE__*/_react["default"].createElement("div", {
69
+ className: "tab-panel"
70
+ }, children);
71
+ }
72
+ return null;
73
+ }
74
+ }, {
75
+ key: "render",
76
+ value: function render() {
77
+ var _this$props2 = this.props,
78
+ tab = _this$props2.tab,
79
+ selectedTab = _this$props2.selectedTab;
80
+ if (tab === selectedTab) {
81
+ return this.renderPanel();
82
+ }
83
+ return null;
84
+ }
85
+ }]);
86
+ return TabPanel;
87
+ }(_react.Component);
88
+ exports["default"] = TabPanel;
89
+ /*
90
+ * The tab and selected tab defaults do not have to be a uuid, but a uuid
91
+ * reduces the likelihood that this default has the same value as
92
+ * an implemented tab
93
+ */
94
+ _defineProperty(TabPanel, "defaultProps", {
95
+ tab: (0, _uuid.v4)(),
96
+ selectedTab: (0, _uuid.v4)()
97
+ });
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "react-tab-set",
3
- "version": "1.1.439",
3
+ "version": "1.2.0",
4
4
  "description": "A React Tab Set component",
5
- "main": "./index.js",
5
+ "main": "./src/index.mjs",
6
+ "type": "module",
6
7
  "author": {
7
8
  "name": "Jonathan Perry for Sequence Media Limited",
8
9
  "email": "sequencemedia@sequencemedia.net",
@@ -21,43 +22,81 @@
21
22
  "babel": "babel src -d lib --extensions .ts,.tsx",
22
23
  "babel:watch": "npm run babel -- -w",
23
24
  "clean": "rimraf lib",
24
- "lint": "eslint .",
25
+ "lint": "eslint . --ext .mjs,.cjs,.mts,.cts,.tsx",
25
26
  "lint:fix": "npm run lint -- --fix",
26
- "prepare": "husky install"
27
+ "prepare": "husky install",
28
+ "storybook": "storybook dev -p 6006",
29
+ "build-storybook": "storybook build"
27
30
  },
28
31
  "dependencies": {
32
+ "debug": "^4.3.4",
29
33
  "uuid": "^9.0.1"
30
34
  },
31
35
  "devDependencies": {
32
36
  "@babel/cli": "^7.22.15",
33
37
  "@babel/core": "^7.22.20",
34
38
  "@babel/eslint-parser": "^7.22.15",
35
- "@babel/plugin-proposal-class-properties": "^7.18.6",
36
- "@babel/plugin-proposal-export-default-from": "^7.22.17",
37
- "@babel/plugin-proposal-export-namespace-from": "^7.18.9",
38
39
  "@babel/plugin-transform-typescript": "^7.22.15",
39
40
  "@babel/preset-env": "^7.22.20",
40
41
  "@babel/preset-react": "^7.22.15",
41
42
  "@babel/preset-typescript": "^7.22.15",
42
43
  "@babel/register": "^7.22.15",
43
44
  "@sequencemedia/hooks": "^1.0.453",
44
- "@types/react": "^18.2.21",
45
+ "@storybook/addon-essentials": "^7.4.4",
46
+ "@storybook/addon-interactions": "^7.4.4",
47
+ "@storybook/addon-links": "^7.4.4",
48
+ "@storybook/addon-onboarding": "^1.0.8",
49
+ "@storybook/blocks": "^7.4.4",
50
+ "@storybook/react": "^7.4.4",
51
+ "@storybook/react-webpack5": "^7.4.4",
52
+ "@types/debug": "^4.1.8",
53
+ "@types/react": "^18.2.22",
45
54
  "@types/uuid": "^9.0.4",
46
55
  "@typescript-eslint/eslint-plugin": "5.61.0",
47
56
  "@typescript-eslint/parser": "5.61.0",
48
- "babel-plugin-module-resolver": "^5.0.0",
49
57
  "core-js": "^3.32.2",
50
58
  "cross-env": "^7.0.3",
51
59
  "eslint": "^8.49.0",
52
60
  "eslint-config-standard": "^17.1.0",
53
61
  "eslint-config-standard-with-typescript": "35.0.0",
54
- "eslint-import-resolver-babel-module": "^5.3.2",
55
62
  "eslint-plugin-react": "^7.33.2",
63
+ "eslint-plugin-storybook": "^0.6.14",
56
64
  "husky": "^8.0.3",
57
65
  "prop-types": "15.7.2",
58
66
  "react": "16.14.0",
59
67
  "react-dom": "16.14.0",
60
68
  "rimraf": "^5.0.1",
69
+ "storybook": "^7.4.4",
61
70
  "typescript": "^5.2.2"
71
+ },
72
+ "exports": {
73
+ ".": {
74
+ "require": "./src/index.cjs",
75
+ "import": "./src/index.mjs"
76
+ },
77
+ "./tab-set/is-tab-group": {
78
+ "require": "./src/tab-set/is-tab-group.cjs",
79
+ "import": "./src/tab-set/is-tab-group.mjs"
80
+ },
81
+ "./tab-set/is-tab-panel": {
82
+ "require": "./src/tab-set/is-tab-panel.cjs",
83
+ "import": "./src/tab-set/is-tab-panel.mjs"
84
+ },
85
+ "./tab-set/tab-group": {
86
+ "require": "./src/tab-set/tab-group/index.cjs",
87
+ "import": "./src/tab-set/tab-group/index.mjs"
88
+ },
89
+ "./tab-set/tab-group/tab": {
90
+ "require": "./src/tab-set/tab-group/tab/index.cjs",
91
+ "import": "./src/tab-set/tab-group/tab/index.mjs"
92
+ },
93
+ "./tab-set/tab-panel": {
94
+ "require": "./src/tab-set/tab-panel/index.cjs",
95
+ "import": "./src/tab-set/tab-panel/index.mjs"
96
+ },
97
+ "./tab-set": {
98
+ "require": "./src/tab-set/index.cjs",
99
+ "import": "./src/tab-set/index.mjs"
100
+ }
62
101
  }
63
102
  }
package/src/.babelrc CHANGED
@@ -21,26 +21,6 @@
21
21
  "@babel/react"
22
22
  ],
23
23
  "plugins": [
24
- "@babel/transform-typescript",
25
- "@babel/proposal-export-default-from",
26
- "@babel/proposal-export-namespace-from",
27
- [
28
- "@babel/proposal-class-properties",
29
- {
30
- "loose": false
31
- }
32
- ],
33
- [
34
- "module-resolver",
35
- {
36
- "root": [
37
- ".."
38
- ],
39
- "cwd": "babelrc",
40
- "alias": {
41
- "react-tab-set": "."
42
- }
43
- }
44
- ]
24
+ "@babel/transform-typescript"
45
25
  ]
46
26
  }
package/src/index.cjs ADDED
@@ -0,0 +1,16 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ const {
13
+ default: component
14
+ } = require('./index.mts')
15
+
16
+ module.exports = component
package/src/index.mjs ADDED
@@ -0,0 +1 @@
1
+ export { default } from './index.cjs'
package/src/index.mts ADDED
@@ -0,0 +1,23 @@
1
+ import isTabGroup from './tab-set/is-tab-group.mts'
2
+ import isTab from './tab-set/tab-group/is-tab.mts'
3
+ import isTabPanel from './tab-set/is-tab-panel.mts'
4
+
5
+ import TabGroup from './tab-set/tab-group/index.tsx'
6
+ import Tab from './tab-set/tab-group/tab/index.tsx'
7
+ import TabPanel from './tab-set/tab-panel/index.tsx'
8
+
9
+ import TabSet from './tab-set/index.tsx'
10
+
11
+ export {
12
+ isTabGroup,
13
+ isTab,
14
+ isTabPanel
15
+ }
16
+
17
+ export {
18
+ TabGroup,
19
+ Tab,
20
+ TabPanel
21
+ }
22
+
23
+ export default TabSet
@@ -0,0 +1,16 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ const {
13
+ default: component
14
+ } = require('./index.tsx')
15
+
16
+ module.exports = component
@@ -0,0 +1 @@
1
+ export { default } from './index.cjs'
@@ -2,9 +2,12 @@ import React, { Component, Children, cloneElement } from 'react'
2
2
  import {
3
3
  v4
4
4
  } from 'uuid'
5
+ import debug from 'debug'
5
6
 
6
- import isTabPanel from './is-tab-panel'
7
- import isTabGroup from './is-tab-group'
7
+ import isTabPanel from './is-tab-panel.mts'
8
+ import isTabGroup from './is-tab-group.mts'
9
+
10
+ const error = debug('react-tab-set/tab-set')
8
11
 
9
12
  export interface TabSetProps {
10
13
  onChange: (selectedTab: string) => void
@@ -12,7 +15,23 @@ export interface TabSetProps {
12
15
  children: JSX.Element | JSX.Element[]
13
16
  }
14
17
 
15
- export default class TabSet extends Component<TabSetProps> {
18
+ export interface TabSetState {
19
+ selectedTab: string
20
+ }
21
+
22
+ export default class TabSet extends Component<TabSetProps, TabSetState> {
23
+ constructor (props: TabSetProps) {
24
+ super(props)
25
+
26
+ const {
27
+ selectedTab
28
+ } = props
29
+
30
+ this.state = {
31
+ selectedTab
32
+ }
33
+ }
34
+
16
35
  /*
17
36
  * The selected tab default does not have to be a uuid, but a uuid
18
37
  * reduces the likelihood that this default has the same value as
@@ -24,20 +43,24 @@ export default class TabSet extends Component<TabSetProps> {
24
43
  children: []
25
44
  }
26
45
 
27
- shouldComponentUpdate (props: TabSetProps): boolean {
46
+ shouldComponentUpdate (props: TabSetProps, state: TabSetState): boolean {
28
47
  return (
29
48
  props.children !== this.props.children ||
30
- props.selectedTab !== this.props.selectedTab
49
+ state.selectedTab !== this.state.selectedTab
31
50
  )
32
51
  }
33
52
 
34
53
  handleTabSelect = (selectedTab: string): void => {
35
- if (selectedTab !== this.props.selectedTab) {
54
+ if (selectedTab !== this.state.selectedTab) {
36
55
  const { onChange } = this.props
37
56
 
38
- this.setState({ selectedTab })
39
-
40
- onChange(selectedTab)
57
+ this.setState({ selectedTab }, () => {
58
+ try {
59
+ onChange(selectedTab)
60
+ } catch {
61
+ error('Error `onChange`')
62
+ }
63
+ })
41
64
  }
42
65
  }
43
66
 
@@ -45,7 +68,7 @@ export default class TabSet extends Component<TabSetProps> {
45
68
  return Children.map(children, (child) => {
46
69
  const { type } = child
47
70
 
48
- if (type) {
71
+ if (type) { // eslint-disable-line @typescript-eslint/strict-boolean-expressions
49
72
  const { props } = child
50
73
 
51
74
  if (isTabGroup(type)) {
@@ -73,7 +96,7 @@ export default class TabSet extends Component<TabSetProps> {
73
96
  children
74
97
  } = props
75
98
 
76
- if (children) {
99
+ if (children) { // eslint-disable-line @typescript-eslint/strict-boolean-expressions
77
100
  return cloneElement(
78
101
  child,
79
102
  {
@@ -90,10 +113,13 @@ export default class TabSet extends Component<TabSetProps> {
90
113
 
91
114
  getChildren (): JSX.Element[] {
92
115
  const {
93
- children,
94
- selectedTab
116
+ children
95
117
  } = this.props
96
118
 
119
+ const {
120
+ selectedTab
121
+ } = this.state
122
+
97
123
  return this.mapChildren(children, selectedTab)
98
124
  }
99
125
 
@@ -0,0 +1,12 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ module.exports = require('./is-tab-group.mts')
@@ -0,0 +1 @@
1
+ export { default } from './is-tab-group.cjs'
@@ -0,0 +1,5 @@
1
+ import TabGroup from './tab-group/index.tsx'
2
+
3
+ export default function isTabGroup (component: any): component is TabGroup {
4
+ return component === TabGroup
5
+ }
@@ -0,0 +1,12 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ module.exports = require('./is-tab-panel.mts')
@@ -0,0 +1 @@
1
+ export { default } from './is-tab-panel.cjs'
@@ -0,0 +1,5 @@
1
+ import TabPanel from './tab-panel/index.tsx'
2
+
3
+ export default function isTabPanel (component: any): component is TabPanel {
4
+ return component === TabPanel
5
+ }
@@ -0,0 +1,16 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ const {
13
+ default: component
14
+ } = require('./index.tsx')
15
+
16
+ module.exports = component
@@ -0,0 +1 @@
1
+ export { default } from './index.cjs'
@@ -3,7 +3,7 @@ import {
3
3
  v4
4
4
  } from 'uuid'
5
5
 
6
- import isTab from './is-tab'
6
+ import isTab from './is-tab.mts'
7
7
 
8
8
  interface TabGroupProps {
9
9
  onTabSelect: (selectedTab: string) => void
@@ -40,7 +40,7 @@ export default class TabGroup extends Component<TabGroupProps> {
40
40
  return Children.map(children, (child) => {
41
41
  const { type } = child
42
42
 
43
- if (type) {
43
+ if (type) { // eslint-disable-line @typescript-eslint/strict-boolean-expressions
44
44
  const { props } = child
45
45
 
46
46
  if (isTab(type)) {
@@ -58,7 +58,7 @@ export default class TabGroup extends Component<TabGroupProps> {
58
58
  children
59
59
  } = props
60
60
 
61
- if (children) {
61
+ if (children) { // eslint-disable-line @typescript-eslint/strict-boolean-expressions
62
62
  return cloneElement(
63
63
  child,
64
64
  {
@@ -0,0 +1,5 @@
1
+ import Tab from './tab'
2
+
3
+ export default function isTab (component: any): component is Tab {
4
+ return component === Tab
5
+ }
@@ -0,0 +1,16 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ const {
13
+ default: component
14
+ } = require('./index.tsx')
15
+
16
+ module.exports = component
@@ -0,0 +1 @@
1
+ export { default } from './index.cjs'
@@ -0,0 +1,16 @@
1
+ require('@babel/register')({
2
+ ignore: [
3
+ /node_modules\/(?!react-tab-set)/
4
+ ],
5
+ extensions: [
6
+ '.mts',
7
+ '.cts',
8
+ '.tsx'
9
+ ]
10
+ })
11
+
12
+ const {
13
+ default: component
14
+ } = require('./index.tsx')
15
+
16
+ module.exports = component
@@ -0,0 +1 @@
1
+ export { default } from './index.cjs'
@@ -37,7 +37,7 @@ export default class TabPanel extends Component<TabPanelProps> {
37
37
  children = render()
38
38
  } = this.props
39
39
 
40
- if (children) {
40
+ if (children) { // eslint-disable-line @typescript-eslint/strict-boolean-expressions
41
41
  return (
42
42
  <div className='tab-panel'>
43
43
  {children}
package/tsconfig.json CHANGED
@@ -1,27 +1,16 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "jsx": "react",
4
- "module": "es2020",
5
- "target": "es2020",
6
- "moduleResolution": "node",
4
+ "module": "NodeNext",
5
+ "target": "ESNext",
6
+ "moduleResolution": "NodeNext",
7
7
  "noEmit": true,
8
8
  "strict": true,
9
9
  "isolatedModules": true,
10
- "noImplicitAny": true,
11
- "allowSyntheticDefaultImports": true,
12
10
  "allowImportingTsExtensions": true,
13
- "baseUrl": ".",
14
- "paths": {
15
- "react-tab-set": [
16
- "src"
17
- ],
18
- "react-tab-set/*": [
19
- "src/*"
20
- ]
21
- }
11
+ "baseUrl": "."
22
12
  },
23
13
  "include": [
24
- "src/**/*",
25
- "stories/**/*"
14
+ "src/**/*"
26
15
  ]
27
16
  }
package/lib/index.js DELETED
@@ -1 +0,0 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Tab",{enumerable:true,get:function get(){return _tab["default"];}});Object.defineProperty(exports,"TabGroup",{enumerable:true,get:function get(){return _tabGroup["default"];}});Object.defineProperty(exports,"TabPanel",{enumerable:true,get:function get(){return _tabPanel["default"];}});exports["default"]=void 0;Object.defineProperty(exports,"isTab",{enumerable:true,get:function get(){return _isTab["default"];}});Object.defineProperty(exports,"isTabGroup",{enumerable:true,get:function get(){return _isTabGroup["default"];}});Object.defineProperty(exports,"isTabPanel",{enumerable:true,get:function get(){return _isTabPanel["default"];}});var _isTabGroup=_interopRequireDefault(require("./tab-set/is-tab-group"));var _isTab=_interopRequireDefault(require("./tab-set/tab-group/is-tab"));var _isTabPanel=_interopRequireDefault(require("./tab-set/is-tab-panel"));var _tabGroup=_interopRequireDefault(require("./tab-set/tab-group"));var _tab=_interopRequireDefault(require("./tab-set/tab-group/tab"));var _tabPanel=_interopRequireDefault(require("./tab-set/tab-panel"));var _tabSet=_interopRequireDefault(require("./tab-set"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}var _default=_tabSet["default"];exports["default"]=_default;
@@ -1 +0,0 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _tabGroup=_interopRequireDefault(require("./tab-group"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}var isTabGroup=function isTabGroup(c){return c===_tabGroup["default"];};var _default=isTabGroup;exports["default"]=_default;
@@ -1 +0,0 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _tabPanel=_interopRequireDefault(require("./tab-panel"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}var isTabPanel=function isTabPanel(c){return c===_tabPanel["default"];};var _default=isTabPanel;exports["default"]=_default;
@@ -1 +0,0 @@
1
- "use strict";require("core-js/modules/es.object.define-property.js");Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _tab=_interopRequireDefault(require("./tab"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj};}var isTab=function isTab(c){return c===_tab["default"];};var _default=isTab;exports["default"]=_default;
package/src/index.ts DELETED
@@ -1,23 +0,0 @@
1
- import isTabGroup from './tab-set/is-tab-group'
2
- import isTab from './tab-set/tab-group/is-tab'
3
- import isTabPanel from './tab-set/is-tab-panel'
4
-
5
- import TabGroup from './tab-set/tab-group'
6
- import Tab from './tab-set/tab-group/tab'
7
- import TabPanel from './tab-set/tab-panel'
8
-
9
- import TabSet from './tab-set'
10
-
11
- export {
12
- isTabGroup,
13
- isTab,
14
- isTabPanel
15
- }
16
-
17
- export {
18
- TabGroup,
19
- Tab,
20
- TabPanel
21
- }
22
-
23
- export default TabSet
@@ -1,5 +0,0 @@
1
- import TabGroup from './tab-group'
2
-
3
- const isTabGroup = (c: any): c is TabGroup => c === TabGroup
4
-
5
- export default isTabGroup
@@ -1,5 +0,0 @@
1
- import TabPanel from './tab-panel'
2
-
3
- const isTabPanel = (c: any): c is TabPanel => c === TabPanel
4
-
5
- export default isTabPanel
@@ -1,5 +0,0 @@
1
- import Tab from './tab'
2
-
3
- const isTab = (c: any): c is Tab => c === Tab
4
-
5
- export default isTab