@nebula.js/stardust 3.0.0-rc.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/core/esm/dev.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * @nebula.js/stardust v3.0.0-rc.2
2
+ * @nebula.js/stardust v3.0.0
3
3
  * Copyright (c) 2022 QlikTech International AB
4
4
  * Released under the MIT license.
5
5
  */
@@ -816,8 +816,8 @@ function _defineProperty(obj, key, value) {
816
816
  return obj;
817
817
  }
818
818
 
819
- function _extends$2() {
820
- _extends$2 = Object.assign ? Object.assign.bind() : function (target) {
819
+ function _extends$6() {
820
+ _extends$6 = Object.assign ? Object.assign.bind() : function (target) {
821
821
  for (var i = 1; i < arguments.length; i++) {
822
822
  var source = arguments[i];
823
823
 
@@ -830,10 +830,10 @@ function _extends$2() {
830
830
 
831
831
  return target;
832
832
  };
833
- return _extends$2.apply(this, arguments);
833
+ return _extends$6.apply(this, arguments);
834
834
  }
835
835
 
836
- function _objectWithoutPropertiesLoose$1(source, excluded) {
836
+ function _objectWithoutPropertiesLoose$3(source, excluded) {
837
837
  if (source == null) return {};
838
838
  var target = {};
839
839
  var sourceKeys = Object.keys(source);
@@ -851,7 +851,7 @@ function _objectWithoutPropertiesLoose$1(source, excluded) {
851
851
  function _objectWithoutProperties(source, excluded) {
852
852
  if (source == null) return {};
853
853
 
854
- var target = _objectWithoutPropertiesLoose$1(source, excluded);
854
+ var target = _objectWithoutPropertiesLoose$3(source, excluded);
855
855
 
856
856
  var key, i;
857
857
 
@@ -3583,8 +3583,8 @@ function deviceTypeFn(deviceType) {
3583
3583
  return detectTouchscreen() ? 'touch' : 'desktop';
3584
3584
  }
3585
3585
 
3586
- function _extends$1() {
3587
- _extends$1 = Object.assign ? Object.assign.bind() : function (target) {
3586
+ function _extends$5() {
3587
+ _extends$5 = Object.assign ? Object.assign.bind() : function (target) {
3588
3588
  for (var i = 1; i < arguments.length; i++) {
3589
3589
  var source = arguments[i];
3590
3590
 
@@ -3597,10 +3597,10 @@ function _extends$1() {
3597
3597
 
3598
3598
  return target;
3599
3599
  };
3600
- return _extends$1.apply(this, arguments);
3600
+ return _extends$5.apply(this, arguments);
3601
3601
  }
3602
3602
 
3603
- function _objectWithoutPropertiesLoose(source, excluded) {
3603
+ function _objectWithoutPropertiesLoose$2(source, excluded) {
3604
3604
  if (source == null) return {};
3605
3605
  var target = {};
3606
3606
  var sourceKeys = Object.keys(source);
@@ -4939,7 +4939,7 @@ function GlobalStyles(props) {
4939
4939
  });
4940
4940
  }
4941
4941
 
4942
- /** @license MUI v5.8.7
4942
+ /** @license MUI v5.10.3
4943
4943
  *
4944
4944
  * This source code is licensed under the MIT license found in the
4945
4945
  * LICENSE file in the root directory of this source tree.
@@ -4948,7 +4948,15 @@ function styled$2(tag, options) {
4948
4948
  const stylesFactory = emStyled(tag, options);
4949
4949
 
4950
4950
  return stylesFactory;
4951
- }
4951
+ } // eslint-disable-next-line @typescript-eslint/naming-convention
4952
+
4953
+ const internal_processStyles = (tag, processor) => {
4954
+ // Emotion attaches all the styles as `__emotion_styles`.
4955
+ // Ref: https://github.com/emotion-js/emotion/blob/16d971d0da229596d6bcc39d282ba9753c9ee7cf/packages/styled/src/base.js#L186
4956
+ if (Array.isArray(tag.__emotion_styles)) {
4957
+ tag.__emotion_styles = processor(tag.__emotion_styles);
4958
+ }
4959
+ };
4952
4960
 
4953
4961
  function chainPropTypes(propType1, propType2) {
4954
4962
  {
@@ -4956,13 +4964,30 @@ function chainPropTypes(propType1, propType2) {
4956
4964
  }
4957
4965
  }
4958
4966
 
4967
+ function _extends$4() {
4968
+ _extends$4 = Object.assign ? Object.assign.bind() : function (target) {
4969
+ for (var i = 1; i < arguments.length; i++) {
4970
+ var source = arguments[i];
4971
+
4972
+ for (var key in source) {
4973
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
4974
+ target[key] = source[key];
4975
+ }
4976
+ }
4977
+ }
4978
+
4979
+ return target;
4980
+ };
4981
+ return _extends$4.apply(this, arguments);
4982
+ }
4983
+
4959
4984
  function isPlainObject(item) {
4960
4985
  return item !== null && typeof item === 'object' && item.constructor === Object;
4961
4986
  }
4962
4987
  function deepmerge(target, source, options = {
4963
4988
  clone: true
4964
4989
  }) {
4965
- const output = options.clone ? _extends$1({}, target) : target;
4990
+ const output = options.clone ? _extends$4({}, target) : target;
4966
4991
 
4967
4992
  if (isPlainObject(target) && isPlainObject(source)) {
4968
4993
  Object.keys(source).forEach(key => {
@@ -5291,7 +5316,7 @@ validatorNoop.isRequired = validatorNoop;
5291
5316
  * @returns {object} resolved props
5292
5317
  */
5293
5318
  function resolveProps(defaultProps, props) {
5294
- const output = _extends$1({}, props);
5319
+ const output = _extends$4({}, props);
5295
5320
 
5296
5321
  Object.keys(defaultProps).forEach(propName => {
5297
5322
  if (output[propName] === undefined) {
@@ -5368,6 +5393,23 @@ function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui')
5368
5393
  return result;
5369
5394
  }
5370
5395
 
5396
+ function _extends$3() {
5397
+ _extends$3 = Object.assign ? Object.assign.bind() : function (target) {
5398
+ for (var i = 1; i < arguments.length; i++) {
5399
+ var source = arguments[i];
5400
+
5401
+ for (var key in source) {
5402
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
5403
+ target[key] = source[key];
5404
+ }
5405
+ }
5406
+ }
5407
+
5408
+ return target;
5409
+ };
5410
+ return _extends$3.apply(this, arguments);
5411
+ }
5412
+
5371
5413
  function merge(acc, item) {
5372
5414
  if (!item) {
5373
5415
  return acc;
@@ -5452,6 +5494,66 @@ function removeUnusedBreakpoints(breakpointKeys, style) {
5452
5494
  return acc;
5453
5495
  }, style);
5454
5496
  }
5497
+ function mergeBreakpointsInOrder(breakpointsInput, ...styles) {
5498
+ const emptyBreakpoints = createEmptyBreakpointObject(breakpointsInput);
5499
+ const mergedOutput = [emptyBreakpoints, ...styles].reduce((prev, next) => deepmerge(prev, next), {});
5500
+ return removeUnusedBreakpoints(Object.keys(emptyBreakpoints), mergedOutput);
5501
+ } // compute base for responsive values; e.g.,
5502
+ // [1,2,3] => {xs: true, sm: true, md: true}
5503
+ // {xs: 1, sm: 2, md: 3} => {xs: true, sm: true, md: true}
5504
+
5505
+ function computeBreakpointsBase(breakpointValues, themeBreakpoints) {
5506
+ // fixed value
5507
+ if (typeof breakpointValues !== 'object') {
5508
+ return {};
5509
+ }
5510
+
5511
+ const base = {};
5512
+ const breakpointsKeys = Object.keys(themeBreakpoints);
5513
+
5514
+ if (Array.isArray(breakpointValues)) {
5515
+ breakpointsKeys.forEach((breakpoint, i) => {
5516
+ if (i < breakpointValues.length) {
5517
+ base[breakpoint] = true;
5518
+ }
5519
+ });
5520
+ } else {
5521
+ breakpointsKeys.forEach(breakpoint => {
5522
+ if (breakpointValues[breakpoint] != null) {
5523
+ base[breakpoint] = true;
5524
+ }
5525
+ });
5526
+ }
5527
+
5528
+ return base;
5529
+ }
5530
+ function resolveBreakpointValues({
5531
+ values: breakpointValues,
5532
+ breakpoints: themeBreakpoints,
5533
+ base: customBase
5534
+ }) {
5535
+ const base = customBase || computeBreakpointsBase(breakpointValues, themeBreakpoints);
5536
+ const keys = Object.keys(base);
5537
+
5538
+ if (keys.length === 0) {
5539
+ return breakpointValues;
5540
+ }
5541
+
5542
+ let previous;
5543
+ return keys.reduce((acc, breakpoint, i) => {
5544
+ if (Array.isArray(breakpointValues)) {
5545
+ acc[breakpoint] = breakpointValues[i] != null ? breakpointValues[i] : breakpointValues[previous];
5546
+ previous = i;
5547
+ } else if (typeof breakpointValues === 'object') {
5548
+ acc[breakpoint] = breakpointValues[breakpoint] != null ? breakpointValues[breakpoint] : breakpointValues[previous];
5549
+ previous = breakpoint;
5550
+ } else {
5551
+ acc[breakpoint] = breakpointValues;
5552
+ }
5553
+
5554
+ return acc;
5555
+ }, {});
5556
+ }
5455
5557
 
5456
5558
  function getPath$1(obj, path, checkVars = true) {
5457
5559
  if (!path || typeof path !== 'string') {
@@ -5494,7 +5596,7 @@ function getValue$2(themeMapping, transform, propValueFinal, userValue = propVal
5494
5596
  return value;
5495
5597
  }
5496
5598
 
5497
- function style$1(options) {
5599
+ function style$2(options) {
5498
5600
  const {
5499
5601
  prop,
5500
5602
  cssProperty = options.prop,
@@ -5681,13 +5783,13 @@ function resolveCssProperty(props, keys, prop, transformer) {
5681
5783
  return handleBreakpoints(props, propValue, styleFromPropValue);
5682
5784
  }
5683
5785
 
5684
- function style(props, keys) {
5786
+ function style$1(props, keys) {
5685
5787
  const transformer = createUnarySpacing(props.theme);
5686
5788
  return Object.keys(props).map(prop => resolveCssProperty(props, keys, prop, transformer)).reduce(merge, {});
5687
5789
  }
5688
5790
 
5689
5791
  function spacing(props) {
5690
- return style(props, spacingKeys);
5792
+ return style$1(props, spacingKeys);
5691
5793
  }
5692
5794
 
5693
5795
  spacing.propTypes = {};
@@ -5701,48 +5803,48 @@ function getBorder(value) {
5701
5803
  return `${value}px solid`;
5702
5804
  }
5703
5805
 
5704
- const border = style$1({
5806
+ const border = style$2({
5705
5807
  prop: 'border',
5706
5808
  themeKey: 'borders',
5707
5809
  transform: getBorder
5708
5810
  });
5709
- const borderTop = style$1({
5811
+ const borderTop = style$2({
5710
5812
  prop: 'borderTop',
5711
5813
  themeKey: 'borders',
5712
5814
  transform: getBorder
5713
5815
  });
5714
- const borderRight = style$1({
5816
+ const borderRight = style$2({
5715
5817
  prop: 'borderRight',
5716
5818
  themeKey: 'borders',
5717
5819
  transform: getBorder
5718
5820
  });
5719
- const borderBottom = style$1({
5821
+ const borderBottom = style$2({
5720
5822
  prop: 'borderBottom',
5721
5823
  themeKey: 'borders',
5722
5824
  transform: getBorder
5723
5825
  });
5724
- const borderLeft = style$1({
5826
+ const borderLeft = style$2({
5725
5827
  prop: 'borderLeft',
5726
5828
  themeKey: 'borders',
5727
5829
  transform: getBorder
5728
5830
  });
5729
- const borderColor = style$1({
5831
+ const borderColor = style$2({
5730
5832
  prop: 'borderColor',
5731
5833
  themeKey: 'palette'
5732
5834
  });
5733
- const borderTopColor = style$1({
5835
+ const borderTopColor = style$2({
5734
5836
  prop: 'borderTopColor',
5735
5837
  themeKey: 'palette'
5736
5838
  });
5737
- const borderRightColor = style$1({
5839
+ const borderRightColor = style$2({
5738
5840
  prop: 'borderRightColor',
5739
5841
  themeKey: 'palette'
5740
5842
  });
5741
- const borderBottomColor = style$1({
5843
+ const borderBottomColor = style$2({
5742
5844
  prop: 'borderBottomColor',
5743
5845
  themeKey: 'palette'
5744
5846
  });
5745
- const borderLeftColor = style$1({
5847
+ const borderLeftColor = style$2({
5746
5848
  prop: 'borderLeftColor',
5747
5849
  themeKey: 'palette'
5748
5850
  });
@@ -5763,7 +5865,7 @@ borderRadius$1.propTypes = {};
5763
5865
  borderRadius$1.filterProps = ['borderRadius'];
5764
5866
  const borders = compose(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderRadius$1);
5765
5867
 
5766
- const displayPrint = style$1({
5868
+ const displayPrint = style$2({
5767
5869
  prop: 'displayPrint',
5768
5870
  cssProperty: false,
5769
5871
  transform: value => ({
@@ -5772,60 +5874,60 @@ const displayPrint = style$1({
5772
5874
  }
5773
5875
  })
5774
5876
  });
5775
- const displayRaw = style$1({
5877
+ const displayRaw = style$2({
5776
5878
  prop: 'display'
5777
5879
  });
5778
- const overflow = style$1({
5880
+ const overflow = style$2({
5779
5881
  prop: 'overflow'
5780
5882
  });
5781
- const textOverflow = style$1({
5883
+ const textOverflow = style$2({
5782
5884
  prop: 'textOverflow'
5783
5885
  });
5784
- const visibility = style$1({
5886
+ const visibility = style$2({
5785
5887
  prop: 'visibility'
5786
5888
  });
5787
- const whiteSpace = style$1({
5889
+ const whiteSpace = style$2({
5788
5890
  prop: 'whiteSpace'
5789
5891
  });
5790
5892
  var display = compose(displayPrint, displayRaw, overflow, textOverflow, visibility, whiteSpace);
5791
5893
 
5792
- const flexBasis = style$1({
5894
+ const flexBasis = style$2({
5793
5895
  prop: 'flexBasis'
5794
5896
  });
5795
- const flexDirection = style$1({
5897
+ const flexDirection = style$2({
5796
5898
  prop: 'flexDirection'
5797
5899
  });
5798
- const flexWrap = style$1({
5900
+ const flexWrap = style$2({
5799
5901
  prop: 'flexWrap'
5800
5902
  });
5801
- const justifyContent = style$1({
5903
+ const justifyContent = style$2({
5802
5904
  prop: 'justifyContent'
5803
5905
  });
5804
- const alignItems = style$1({
5906
+ const alignItems = style$2({
5805
5907
  prop: 'alignItems'
5806
5908
  });
5807
- const alignContent = style$1({
5909
+ const alignContent = style$2({
5808
5910
  prop: 'alignContent'
5809
5911
  });
5810
- const order = style$1({
5912
+ const order = style$2({
5811
5913
  prop: 'order'
5812
5914
  });
5813
- const flex = style$1({
5915
+ const flex = style$2({
5814
5916
  prop: 'flex'
5815
5917
  });
5816
- const flexGrow = style$1({
5918
+ const flexGrow = style$2({
5817
5919
  prop: 'flexGrow'
5818
5920
  });
5819
- const flexShrink = style$1({
5921
+ const flexShrink = style$2({
5820
5922
  prop: 'flexShrink'
5821
5923
  });
5822
- const alignSelf = style$1({
5924
+ const alignSelf = style$2({
5823
5925
  prop: 'alignSelf'
5824
5926
  });
5825
- const justifyItems = style$1({
5927
+ const justifyItems = style$2({
5826
5928
  prop: 'justifyItems'
5827
5929
  });
5828
- const justifySelf = style$1({
5930
+ const justifySelf = style$2({
5829
5931
  prop: 'justifySelf'
5830
5932
  });
5831
5933
  const flexbox = compose(flexBasis, flexDirection, flexWrap, justifyContent, alignItems, alignContent, order, flex, flexGrow, flexShrink, alignSelf, justifyItems, justifySelf);
@@ -5875,72 +5977,72 @@ const rowGap = props => {
5875
5977
  };
5876
5978
  rowGap.propTypes = {};
5877
5979
  rowGap.filterProps = ['rowGap'];
5878
- const gridColumn = style$1({
5980
+ const gridColumn = style$2({
5879
5981
  prop: 'gridColumn'
5880
5982
  });
5881
- const gridRow = style$1({
5983
+ const gridRow = style$2({
5882
5984
  prop: 'gridRow'
5883
5985
  });
5884
- const gridAutoFlow = style$1({
5986
+ const gridAutoFlow = style$2({
5885
5987
  prop: 'gridAutoFlow'
5886
5988
  });
5887
- const gridAutoColumns = style$1({
5989
+ const gridAutoColumns = style$2({
5888
5990
  prop: 'gridAutoColumns'
5889
5991
  });
5890
- const gridAutoRows = style$1({
5992
+ const gridAutoRows = style$2({
5891
5993
  prop: 'gridAutoRows'
5892
5994
  });
5893
- const gridTemplateColumns = style$1({
5995
+ const gridTemplateColumns = style$2({
5894
5996
  prop: 'gridTemplateColumns'
5895
5997
  });
5896
- const gridTemplateRows = style$1({
5998
+ const gridTemplateRows = style$2({
5897
5999
  prop: 'gridTemplateRows'
5898
6000
  });
5899
- const gridTemplateAreas = style$1({
6001
+ const gridTemplateAreas = style$2({
5900
6002
  prop: 'gridTemplateAreas'
5901
6003
  });
5902
- const gridArea = style$1({
6004
+ const gridArea = style$2({
5903
6005
  prop: 'gridArea'
5904
6006
  });
5905
6007
  const grid = compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);
5906
6008
 
5907
- const color = style$1({
6009
+ const color = style$2({
5908
6010
  prop: 'color',
5909
6011
  themeKey: 'palette'
5910
6012
  });
5911
- const bgcolor = style$1({
6013
+ const bgcolor = style$2({
5912
6014
  prop: 'bgcolor',
5913
6015
  cssProperty: 'backgroundColor',
5914
6016
  themeKey: 'palette'
5915
6017
  });
5916
- const backgroundColor = style$1({
6018
+ const backgroundColor = style$2({
5917
6019
  prop: 'backgroundColor',
5918
6020
  themeKey: 'palette'
5919
6021
  });
5920
6022
  const palette = compose(color, bgcolor, backgroundColor);
5921
6023
 
5922
- const position = style$1({
6024
+ const position = style$2({
5923
6025
  prop: 'position'
5924
6026
  });
5925
- const zIndex$1 = style$1({
6027
+ const zIndex$1 = style$2({
5926
6028
  prop: 'zIndex',
5927
6029
  themeKey: 'zIndex'
5928
6030
  });
5929
- const top = style$1({
6031
+ const top = style$2({
5930
6032
  prop: 'top'
5931
6033
  });
5932
- const right = style$1({
6034
+ const right = style$2({
5933
6035
  prop: 'right'
5934
6036
  });
5935
- const bottom = style$1({
6037
+ const bottom = style$2({
5936
6038
  prop: 'bottom'
5937
6039
  });
5938
- const left = style$1({
6040
+ const left = style$2({
5939
6041
  prop: 'left'
5940
6042
  });
5941
6043
  var positions = compose(position, zIndex$1, top, right, bottom, left);
5942
6044
 
5943
- const boxShadow = style$1({
6045
+ const boxShadow = style$2({
5944
6046
  prop: 'boxShadow',
5945
6047
  themeKey: 'shadows'
5946
6048
  });
@@ -5949,7 +6051,7 @@ function transform(value) {
5949
6051
  return value <= 1 && value !== 0 ? `${value * 100}%` : value;
5950
6052
  }
5951
6053
 
5952
- const width = style$1({
6054
+ const width = style$2({
5953
6055
  prop: 'width',
5954
6056
  transform
5955
6057
  });
@@ -5970,66 +6072,66 @@ const maxWidth = props => {
5970
6072
  return null;
5971
6073
  };
5972
6074
  maxWidth.filterProps = ['maxWidth'];
5973
- const minWidth = style$1({
6075
+ const minWidth = style$2({
5974
6076
  prop: 'minWidth',
5975
6077
  transform
5976
6078
  });
5977
- const height = style$1({
6079
+ const height = style$2({
5978
6080
  prop: 'height',
5979
6081
  transform
5980
6082
  });
5981
- const maxHeight = style$1({
6083
+ const maxHeight = style$2({
5982
6084
  prop: 'maxHeight',
5983
6085
  transform
5984
6086
  });
5985
- const minHeight = style$1({
6087
+ const minHeight = style$2({
5986
6088
  prop: 'minHeight',
5987
6089
  transform
5988
6090
  });
5989
- style$1({
6091
+ style$2({
5990
6092
  prop: 'size',
5991
6093
  cssProperty: 'width',
5992
6094
  transform
5993
6095
  });
5994
- style$1({
6096
+ style$2({
5995
6097
  prop: 'size',
5996
6098
  cssProperty: 'height',
5997
6099
  transform
5998
6100
  });
5999
- const boxSizing = style$1({
6101
+ const boxSizing = style$2({
6000
6102
  prop: 'boxSizing'
6001
6103
  });
6002
6104
  const sizing = compose(width, maxWidth, minWidth, height, maxHeight, minHeight, boxSizing);
6003
6105
 
6004
- const fontFamily = style$1({
6106
+ const fontFamily = style$2({
6005
6107
  prop: 'fontFamily',
6006
6108
  themeKey: 'typography'
6007
6109
  });
6008
- const fontSize = style$1({
6110
+ const fontSize = style$2({
6009
6111
  prop: 'fontSize',
6010
6112
  themeKey: 'typography'
6011
6113
  });
6012
- const fontStyle = style$1({
6114
+ const fontStyle = style$2({
6013
6115
  prop: 'fontStyle',
6014
6116
  themeKey: 'typography'
6015
6117
  });
6016
- const fontWeight = style$1({
6118
+ const fontWeight = style$2({
6017
6119
  prop: 'fontWeight',
6018
6120
  themeKey: 'typography'
6019
6121
  });
6020
- const letterSpacing = style$1({
6122
+ const letterSpacing = style$2({
6021
6123
  prop: 'letterSpacing'
6022
6124
  });
6023
- const textTransform = style$1({
6125
+ const textTransform = style$2({
6024
6126
  prop: 'textTransform'
6025
6127
  });
6026
- const lineHeight = style$1({
6128
+ const lineHeight = style$2({
6027
6129
  prop: 'lineHeight'
6028
6130
  });
6029
- const textAlign = style$1({
6131
+ const textAlign = style$2({
6030
6132
  prop: 'textAlign'
6031
6133
  });
6032
- const typographyVariant = style$1({
6134
+ const typographyVariant = style$2({
6033
6135
  prop: 'typography',
6034
6136
  cssProperty: false,
6035
6137
  themeKey: 'typography'
@@ -6169,7 +6271,22 @@ function unstable_createStyleFunctionSx(styleFunctionMapping$1 = styleFunctionMa
6169
6271
  const styleFunctionSx = unstable_createStyleFunctionSx();
6170
6272
  styleFunctionSx.filterProps = ['sx'];
6171
6273
 
6172
- const _excluded$j = ["sx"];
6274
+ function _objectWithoutPropertiesLoose$1(source, excluded) {
6275
+ if (source == null) return {};
6276
+ var target = {};
6277
+ var sourceKeys = Object.keys(source);
6278
+ var key, i;
6279
+
6280
+ for (i = 0; i < sourceKeys.length; i++) {
6281
+ key = sourceKeys[i];
6282
+ if (excluded.indexOf(key) >= 0) continue;
6283
+ target[key] = source[key];
6284
+ }
6285
+
6286
+ return target;
6287
+ }
6288
+
6289
+ const _excluded$k = ["sx"];
6173
6290
 
6174
6291
  const splitProps = props => {
6175
6292
  const result = {
@@ -6190,7 +6307,7 @@ function extendSxProp(props) {
6190
6307
  const {
6191
6308
  sx: inSx
6192
6309
  } = props,
6193
- other = _objectWithoutPropertiesLoose(props, _excluded$j);
6310
+ other = _objectWithoutPropertiesLoose$1(props, _excluded$k);
6194
6311
 
6195
6312
  const {
6196
6313
  systemProps,
@@ -6208,20 +6325,20 @@ function extendSxProp(props) {
6208
6325
  return systemProps;
6209
6326
  }
6210
6327
 
6211
- return _extends$1({}, systemProps, result);
6328
+ return _extends$3({}, systemProps, result);
6212
6329
  };
6213
6330
  } else {
6214
- finalSx = _extends$1({}, systemProps, inSx);
6331
+ finalSx = _extends$3({}, systemProps, inSx);
6215
6332
  }
6216
6333
 
6217
- return _extends$1({}, otherProps, {
6334
+ return _extends$3({}, otherProps, {
6218
6335
  sx: finalSx
6219
6336
  });
6220
6337
  }
6221
6338
 
6222
6339
  function r$1(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r$1(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx$1(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r$1(e))&&(n&&(n+=" "),n+=t);return n}
6223
6340
 
6224
- const _excluded$i = ["values", "unit", "step"];
6341
+ const _excluded$j = ["values", "unit", "step"];
6225
6342
 
6226
6343
  const sortBreakpointsValues = values => {
6227
6344
  const breakpointsAsArray = Object.keys(values).map(key => ({
@@ -6231,7 +6348,7 @@ const sortBreakpointsValues = values => {
6231
6348
 
6232
6349
  breakpointsAsArray.sort((breakpoint1, breakpoint2) => breakpoint1.val - breakpoint2.val);
6233
6350
  return breakpointsAsArray.reduce((acc, obj) => {
6234
- return _extends$1({}, acc, {
6351
+ return _extends$3({}, acc, {
6235
6352
  [obj.key]: obj.val
6236
6353
  });
6237
6354
  }, {});
@@ -6257,7 +6374,7 @@ function createBreakpoints(breakpoints) {
6257
6374
  unit = 'px',
6258
6375
  step = 5
6259
6376
  } = breakpoints,
6260
- other = _objectWithoutPropertiesLoose(breakpoints, _excluded$i);
6377
+ other = _objectWithoutPropertiesLoose$1(breakpoints, _excluded$j);
6261
6378
 
6262
6379
  const sortedValues = sortBreakpointsValues(values);
6263
6380
  const keys = Object.keys(sortedValues);
@@ -6300,7 +6417,7 @@ function createBreakpoints(breakpoints) {
6300
6417
  return between(key, keys[keys.indexOf(key) + 1]).replace('@media', '@media not all and');
6301
6418
  }
6302
6419
 
6303
- return _extends$1({
6420
+ return _extends$3({
6304
6421
  keys,
6305
6422
  values: sortedValues,
6306
6423
  up,
@@ -6343,7 +6460,7 @@ function createSpacing(spacingInput = 8) {
6343
6460
  return spacing;
6344
6461
  }
6345
6462
 
6346
- const _excluded$h = ["breakpoints", "palette", "spacing", "shape"];
6463
+ const _excluded$i = ["breakpoints", "palette", "spacing", "shape"];
6347
6464
 
6348
6465
  function createTheme$1(options = {}, ...args) {
6349
6466
  const {
@@ -6352,7 +6469,7 @@ function createTheme$1(options = {}, ...args) {
6352
6469
  spacing: spacingInput,
6353
6470
  shape: shapeInput = {}
6354
6471
  } = options,
6355
- other = _objectWithoutPropertiesLoose(options, _excluded$h);
6472
+ other = _objectWithoutPropertiesLoose$1(options, _excluded$i);
6356
6473
 
6357
6474
  const breakpoints = createBreakpoints(breakpointsInput);
6358
6475
  const spacing = createSpacing(spacingInput);
@@ -6361,16 +6478,33 @@ function createTheme$1(options = {}, ...args) {
6361
6478
  direction: 'ltr',
6362
6479
  components: {},
6363
6480
  // Inject component definitions.
6364
- palette: _extends$1({
6481
+ palette: _extends$3({
6365
6482
  mode: 'light'
6366
6483
  }, paletteInput),
6367
6484
  spacing,
6368
- shape: _extends$1({}, shape, shapeInput)
6485
+ shape: _extends$3({}, shape, shapeInput)
6369
6486
  }, other);
6370
6487
  muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);
6371
6488
  return muiTheme;
6372
6489
  }
6373
6490
 
6491
+ function _extends$2() {
6492
+ _extends$2 = Object.assign ? Object.assign.bind() : function (target) {
6493
+ for (var i = 1; i < arguments.length; i++) {
6494
+ var source = arguments[i];
6495
+
6496
+ for (var key in source) {
6497
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
6498
+ target[key] = source[key];
6499
+ }
6500
+ }
6501
+ }
6502
+
6503
+ return target;
6504
+ };
6505
+ return _extends$2.apply(this, arguments);
6506
+ }
6507
+
6374
6508
  const ThemeContext = /*#__PURE__*/React.createContext(null);
6375
6509
 
6376
6510
  function useTheme$4() {
@@ -6389,7 +6523,7 @@ function mergeOuterLocalTheme(outerTheme, localTheme) {
6389
6523
  return mergedTheme;
6390
6524
  }
6391
6525
 
6392
- return _extends$1({}, outerTheme, localTheme);
6526
+ return _extends$2({}, outerTheme, localTheme);
6393
6527
  }
6394
6528
  /**
6395
6529
  * This component takes a `theme` prop.
@@ -6435,7 +6569,7 @@ function useTheme$2(defaultTheme = systemDefaultTheme$1) {
6435
6569
  return useTheme$3(defaultTheme);
6436
6570
  }
6437
6571
 
6438
- const _excluded$g = ["className", "component"];
6572
+ const _excluded$h = ["className", "component"];
6439
6573
  function createBox(options = {}) {
6440
6574
  const {
6441
6575
  defaultTheme,
@@ -6443,7 +6577,9 @@ function createBox(options = {}) {
6443
6577
  generateClassName,
6444
6578
  styleFunctionSx: styleFunctionSx$1 = styleFunctionSx
6445
6579
  } = options;
6446
- const BoxRoot = styled$2('div')(styleFunctionSx$1);
6580
+ const BoxRoot = styled$2('div', {
6581
+ shouldForwardProp: prop => prop !== 'theme' && prop !== 'sx' && prop !== 'as'
6582
+ })(styleFunctionSx$1);
6447
6583
  const Box = /*#__PURE__*/React.forwardRef(function Box(inProps, ref) {
6448
6584
  const theme = useTheme$2(defaultTheme);
6449
6585
 
@@ -6452,9 +6588,9 @@ function createBox(options = {}) {
6452
6588
  className,
6453
6589
  component = 'div'
6454
6590
  } = _extendSxProp,
6455
- other = _objectWithoutPropertiesLoose(_extendSxProp, _excluded$g);
6591
+ other = _objectWithoutPropertiesLoose$1(_extendSxProp, _excluded$h);
6456
6592
 
6457
- return /*#__PURE__*/jsxRuntime.exports.jsx(BoxRoot, _extends$1({
6593
+ return /*#__PURE__*/jsxRuntime.exports.jsx(BoxRoot, _extends$3({
6458
6594
  as: component,
6459
6595
  ref: ref,
6460
6596
  className: clsx$1(className, generateClassName ? generateClassName(defaultClassName) : defaultClassName),
@@ -6466,7 +6602,7 @@ function createBox(options = {}) {
6466
6602
 
6467
6603
  createBox();
6468
6604
 
6469
- const _excluded$f = ["variant"];
6605
+ const _excluded$g = ["variant"];
6470
6606
 
6471
6607
  function isEmpty$2(string) {
6472
6608
  return string.length === 0;
@@ -6482,7 +6618,7 @@ function propsToClassKey(props) {
6482
6618
  const {
6483
6619
  variant
6484
6620
  } = props,
6485
- other = _objectWithoutPropertiesLoose(props, _excluded$f);
6621
+ other = _objectWithoutPropertiesLoose$1(props, _excluded$g);
6486
6622
 
6487
6623
  let classKey = variant || '';
6488
6624
  Object.keys(other).sort().forEach(key => {
@@ -6495,12 +6631,20 @@ function propsToClassKey(props) {
6495
6631
  return classKey;
6496
6632
  }
6497
6633
 
6498
- const _excluded$e = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"],
6634
+ const _excluded$f = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"],
6499
6635
  _excluded2$3 = ["theme"],
6500
6636
  _excluded3 = ["theme"];
6501
6637
 
6502
6638
  function isEmpty$1(obj) {
6503
6639
  return Object.keys(obj).length === 0;
6640
+ } // https://github.com/emotion-js/emotion/blob/26ded6109fcd8ca9875cc2ce4564fee678a3f3c5/packages/styled/src/utils.js#L40
6641
+
6642
+
6643
+ function isStringTag(tag) {
6644
+ return typeof tag === 'string' && // 96 is one less than the char code
6645
+ // for "a" so this is checking that
6646
+ // it's a lowercase character
6647
+ tag.charCodeAt(0) > 96;
6504
6648
  }
6505
6649
 
6506
6650
  const getStyleOverrides = (name, theme) => {
@@ -6566,7 +6710,19 @@ function createStyled(input = {}) {
6566
6710
  slotShouldForwardProp = shouldForwardProp,
6567
6711
  styleFunctionSx: styleFunctionSx$1 = styleFunctionSx
6568
6712
  } = input;
6713
+
6714
+ const systemSx = props => {
6715
+ const theme = isEmpty$1(props.theme) ? defaultTheme : props.theme;
6716
+ return styleFunctionSx$1(_extends$3({}, props, {
6717
+ theme
6718
+ }));
6719
+ };
6720
+
6721
+ systemSx.__mui_systemSx = true;
6569
6722
  return (tag, inputOptions = {}) => {
6723
+ // Filter out the `sx` style function from the previous styled component to prevent unnecessary styles generated by the composite components.
6724
+ internal_processStyles(tag, styles => styles.filter(style => !(style != null && style.__mui_systemSx)));
6725
+
6570
6726
  const {
6571
6727
  name: componentName,
6572
6728
  slot: componentSlot,
@@ -6574,7 +6730,7 @@ function createStyled(input = {}) {
6574
6730
  skipSx: inputSkipSx,
6575
6731
  overridesResolver
6576
6732
  } = inputOptions,
6577
- options = _objectWithoutPropertiesLoose(inputOptions, _excluded$e); // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.
6733
+ options = _objectWithoutPropertiesLoose$1(inputOptions, _excluded$f); // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.
6578
6734
 
6579
6735
 
6580
6736
  const skipVariantsResolver = inputSkipVariantsResolver !== undefined ? inputSkipVariantsResolver : componentSlot && componentSlot !== 'Root' || false;
@@ -6588,9 +6744,12 @@ function createStyled(input = {}) {
6588
6744
  } else if (componentSlot) {
6589
6745
  // any other slot specified
6590
6746
  shouldForwardPropOption = slotShouldForwardProp;
6747
+ } else if (isStringTag(tag)) {
6748
+ // for string (html) tag, preserve the behavior in emotion & styled-components.
6749
+ shouldForwardPropOption = undefined;
6591
6750
  }
6592
6751
 
6593
- const defaultStyledResolver = styled$2(tag, _extends$1({
6752
+ const defaultStyledResolver = styled$2(tag, _extends$3({
6594
6753
  shouldForwardProp: shouldForwardPropOption,
6595
6754
  label
6596
6755
  }, options));
@@ -6600,14 +6759,13 @@ function createStyled(input = {}) {
6600
6759
  // On the server Emotion doesn't use React.forwardRef for creating components, so the created
6601
6760
  // component stays as a function. This condition makes sure that we do not interpolate functions
6602
6761
  // which are basically components used as a selectors.
6603
- // eslint-disable-next-line no-underscore-dangle
6604
6762
  return typeof stylesArg === 'function' && stylesArg.__emotion_real !== stylesArg ? _ref => {
6605
6763
  let {
6606
6764
  theme: themeInput
6607
6765
  } = _ref,
6608
- other = _objectWithoutPropertiesLoose(_ref, _excluded2$3);
6766
+ other = _objectWithoutPropertiesLoose$1(_ref, _excluded2$3);
6609
6767
 
6610
- return stylesArg(_extends$1({
6768
+ return stylesArg(_extends$3({
6611
6769
  theme: isEmpty$1(themeInput) ? defaultTheme : themeInput
6612
6770
  }, other));
6613
6771
  } : stylesArg;
@@ -6622,7 +6780,7 @@ function createStyled(input = {}) {
6622
6780
  if (styleOverrides) {
6623
6781
  const resolvedStyleOverrides = {};
6624
6782
  Object.entries(styleOverrides).forEach(([slotKey, slotStyle]) => {
6625
- resolvedStyleOverrides[slotKey] = typeof slotStyle === 'function' ? slotStyle(_extends$1({}, props, {
6783
+ resolvedStyleOverrides[slotKey] = typeof slotStyle === 'function' ? slotStyle(_extends$3({}, props, {
6626
6784
  theme
6627
6785
  })) : slotStyle;
6628
6786
  });
@@ -6641,12 +6799,7 @@ function createStyled(input = {}) {
6641
6799
  }
6642
6800
 
6643
6801
  if (!skipSx) {
6644
- expressionsWithDefaultTheme.push(props => {
6645
- const theme = isEmpty$1(props.theme) ? defaultTheme : props.theme;
6646
- return styleFunctionSx$1(_extends$1({}, props, {
6647
- theme
6648
- }));
6649
- });
6802
+ expressionsWithDefaultTheme.push(systemSx);
6650
6803
  }
6651
6804
 
6652
6805
  const numOfCustomFnsApplied = expressionsWithDefaultTheme.length - expressions.length;
@@ -6659,16 +6812,15 @@ function createStyled(input = {}) {
6659
6812
  } else if (typeof styleArg === 'function' && // On the server Emotion doesn't use React.forwardRef for creating components, so the created
6660
6813
  // component stays as a function. This condition makes sure that we do not interpolate functions
6661
6814
  // which are basically components used as a selectors.
6662
- // eslint-disable-next-line no-underscore-dangle
6663
6815
  styleArg.__emotion_real !== styleArg) {
6664
6816
  // If the type is function, we need to define the default theme.
6665
6817
  transformedStyleArg = _ref2 => {
6666
6818
  let {
6667
6819
  theme: themeInput
6668
6820
  } = _ref2,
6669
- other = _objectWithoutPropertiesLoose(_ref2, _excluded3);
6821
+ other = _objectWithoutPropertiesLoose$1(_ref2, _excluded3);
6670
6822
 
6671
- return styleArg(_extends$1({
6823
+ return styleArg(_extends$3({
6672
6824
  theme: isEmpty$1(themeInput) ? defaultTheme : themeInput
6673
6825
  }, other));
6674
6826
  };
@@ -7245,7 +7397,7 @@ function getColorScheme(state) {
7245
7397
  });
7246
7398
  }
7247
7399
 
7248
- function resolveValue$2(key, defaultValue) {
7400
+ function initializeValue(key, defaultValue) {
7249
7401
  if (typeof window === 'undefined') {
7250
7402
  return undefined;
7251
7403
  }
@@ -7254,6 +7406,11 @@ function resolveValue$2(key, defaultValue) {
7254
7406
 
7255
7407
  try {
7256
7408
  value = localStorage.getItem(key) || undefined;
7409
+
7410
+ if (!value) {
7411
+ // the first time that user enters the site.
7412
+ localStorage.setItem(key, defaultValue);
7413
+ }
7257
7414
  } catch (e) {// Unsupported
7258
7415
  }
7259
7416
 
@@ -7272,50 +7429,63 @@ function useCurrentColorScheme(options) {
7272
7429
  } = options;
7273
7430
  const joinedColorSchemes = supportedColorSchemes.join(',');
7274
7431
  const [state, setState] = React.useState(() => {
7275
- const initialMode = resolveValue$2(modeStorageKey, defaultMode);
7432
+ const initialMode = initializeValue(modeStorageKey, defaultMode);
7433
+ const lightColorScheme = initializeValue(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
7434
+ const darkColorScheme = initializeValue(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
7276
7435
  return {
7277
7436
  mode: initialMode,
7278
7437
  systemMode: getSystemMode(initialMode),
7279
- lightColorScheme: resolveValue$2(`${colorSchemeStorageKey}-light`) || defaultLightColorScheme,
7280
- darkColorScheme: resolveValue$2(`${colorSchemeStorageKey}-dark`) || defaultDarkColorScheme
7438
+ lightColorScheme,
7439
+ darkColorScheme
7281
7440
  };
7282
7441
  });
7283
7442
  const colorScheme = getColorScheme(state);
7284
7443
  const setMode = React.useCallback(mode => {
7285
7444
  setState(currentState => {
7286
- const newMode = !mode ? defaultMode : mode;
7287
-
7288
7445
  if (mode === currentState.mode) {
7446
+ // do nothing if mode does not change
7289
7447
  return currentState;
7290
7448
  }
7291
7449
 
7292
- if (typeof localStorage !== 'undefined') {
7450
+ const newMode = !mode ? defaultMode : mode;
7451
+
7452
+ try {
7293
7453
  localStorage.setItem(modeStorageKey, newMode);
7454
+ } catch (e) {// Unsupported
7294
7455
  }
7295
7456
 
7296
- return _extends$1({}, currentState, {
7457
+ return _extends$3({}, currentState, {
7297
7458
  mode: newMode,
7298
7459
  systemMode: getSystemMode(newMode)
7299
7460
  });
7300
7461
  });
7301
7462
  }, [modeStorageKey, defaultMode]);
7302
7463
  const setColorScheme = React.useCallback(value => {
7303
- if (!value || typeof value === 'string') {
7464
+ if (!value) {
7465
+ setState(currentState => {
7466
+ try {
7467
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, defaultLightColorScheme);
7468
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, defaultDarkColorScheme);
7469
+ } catch (e) {// Unsupported
7470
+ }
7471
+
7472
+ return _extends$3({}, currentState, {
7473
+ lightColorScheme: defaultLightColorScheme,
7474
+ darkColorScheme: defaultDarkColorScheme
7475
+ });
7476
+ });
7477
+ } else if (typeof value === 'string') {
7304
7478
  if (value && !joinedColorSchemes.includes(value)) {
7305
7479
  console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
7306
7480
  } else {
7307
7481
  setState(currentState => {
7308
- const newState = _extends$1({}, currentState);
7309
-
7310
- if (!value) {
7311
- // reset to default color scheme
7312
- newState.lightColorScheme = defaultLightColorScheme;
7313
- newState.darkColorScheme = defaultDarkColorScheme;
7314
- return newState;
7315
- }
7482
+ const newState = _extends$3({}, currentState);
7316
7483
 
7317
7484
  processState(currentState, mode => {
7318
- localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
7485
+ try {
7486
+ localStorage.setItem(`${colorSchemeStorageKey}-${mode}`, value);
7487
+ } catch (e) {// Unsupported
7488
+ }
7319
7489
 
7320
7490
  if (mode === 'light') {
7321
7491
  newState.lightColorScheme = value;
@@ -7328,35 +7498,46 @@ function useCurrentColorScheme(options) {
7328
7498
  return newState;
7329
7499
  });
7330
7500
  }
7331
- } else if (value.light && !joinedColorSchemes.includes(value.light) || value.dark && !joinedColorSchemes.includes(value.dark)) {
7332
- console.error(`\`${value}\` does not exist in \`theme.colorSchemes\`.`);
7333
7501
  } else {
7334
7502
  setState(currentState => {
7335
- const newState = _extends$1({}, currentState);
7503
+ const newState = _extends$3({}, currentState);
7336
7504
 
7337
- if (value.light || value.light === null) {
7338
- newState.lightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
7505
+ const newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;
7506
+ const newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
7507
+
7508
+ if (newLightColorScheme) {
7509
+ if (!joinedColorSchemes.includes(newLightColorScheme)) {
7510
+ console.error(`\`${newLightColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
7511
+ } else {
7512
+ newState.lightColorScheme = newLightColorScheme;
7513
+
7514
+ try {
7515
+ localStorage.setItem(`${colorSchemeStorageKey}-light`, newLightColorScheme);
7516
+ } catch (error) {// Unsupported
7517
+ }
7518
+ }
7339
7519
  }
7340
7520
 
7341
- if (value.dark || value.dark === null) {
7342
- newState.darkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;
7521
+ if (newDarkColorScheme) {
7522
+ if (!joinedColorSchemes.includes(newDarkColorScheme)) {
7523
+ console.error(`\`${newDarkColorScheme}\` does not exist in \`theme.colorSchemes\`.`);
7524
+ } else {
7525
+ newState.darkColorScheme = newDarkColorScheme;
7526
+
7527
+ try {
7528
+ localStorage.setItem(`${colorSchemeStorageKey}-dark`, newDarkColorScheme);
7529
+ } catch (error) {// Unsupported
7530
+ }
7531
+ }
7343
7532
  }
7344
7533
 
7345
7534
  return newState;
7346
7535
  });
7347
-
7348
- if (value.light) {
7349
- localStorage.setItem(`${colorSchemeStorageKey}-light`, value.light);
7350
- }
7351
-
7352
- if (value.dark) {
7353
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, value.dark);
7354
- }
7355
7536
  }
7356
7537
  }, [joinedColorSchemes, colorSchemeStorageKey, defaultLightColorScheme, defaultDarkColorScheme]);
7357
7538
  const handleMediaQuery = React.useCallback(e => {
7358
7539
  if (state.mode === 'system') {
7359
- setState(currentState => _extends$1({}, currentState, {
7540
+ setState(currentState => _extends$3({}, currentState, {
7360
7541
  systemMode: e != null && e.matches ? 'dark' : 'light'
7361
7542
  }));
7362
7543
  }
@@ -7373,23 +7554,7 @@ function useCurrentColorScheme(options) {
7373
7554
  media.addListener(handler);
7374
7555
  handler(media);
7375
7556
  return () => media.removeListener(handler);
7376
- }, []); // Save mode, lightColorScheme & darkColorScheme to localStorage
7377
-
7378
- React.useEffect(() => {
7379
- if (state.mode) {
7380
- localStorage.setItem(modeStorageKey, state.mode);
7381
- }
7382
-
7383
- processState(state, mode => {
7384
- if (mode === 'light') {
7385
- localStorage.setItem(`${colorSchemeStorageKey}-light`, state.lightColorScheme);
7386
- }
7387
-
7388
- if (mode === 'dark') {
7389
- localStorage.setItem(`${colorSchemeStorageKey}-dark`, state.darkColorScheme);
7390
- }
7391
- });
7392
- }, [state, colorSchemeStorageKey, modeStorageKey]); // Handle when localStorage has changed
7557
+ }, []); // Handle when localStorage has changed
7393
7558
 
7394
7559
  React.useEffect(() => {
7395
7560
  const handleStorage = event => {
@@ -7423,14 +7588,14 @@ function useCurrentColorScheme(options) {
7423
7588
 
7424
7589
  return undefined;
7425
7590
  }, [setColorScheme, setMode, modeStorageKey, colorSchemeStorageKey, joinedColorSchemes, defaultMode, storageWindow]);
7426
- return _extends$1({}, state, {
7591
+ return _extends$3({}, state, {
7427
7592
  colorScheme,
7428
7593
  setMode,
7429
7594
  setColorScheme
7430
7595
  });
7431
7596
  }
7432
7597
 
7433
- const _excluded$d = ["colorSchemes", "components", "cssVarPrefix"];
7598
+ const _excluded$e = ["colorSchemes", "components", "cssVarPrefix"];
7434
7599
  const DISABLE_CSS_TRANSITION = '*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}';
7435
7600
  function createCssVarsProvider(options) {
7436
7601
  const {
@@ -7485,7 +7650,7 @@ function createCssVarsProvider(options) {
7485
7650
  components = {},
7486
7651
  cssVarPrefix
7487
7652
  } = themeProp,
7488
- restThemeProp = _objectWithoutPropertiesLoose(themeProp, _excluded$d);
7653
+ restThemeProp = _objectWithoutPropertiesLoose$1(themeProp, _excluded$e);
7489
7654
 
7490
7655
  const allColorSchemes = Object.keys(colorSchemes);
7491
7656
  const defaultLightColorScheme = typeof defaultColorScheme === 'string' ? defaultColorScheme : defaultColorScheme.light;
@@ -7531,7 +7696,7 @@ function createCssVarsProvider(options) {
7531
7696
  prefix: cssVarPrefix,
7532
7697
  shouldSkipGeneratingVar
7533
7698
  });
7534
- theme = _extends$1({}, parsedTheme, {
7699
+ theme = _extends$3({}, parsedTheme, {
7535
7700
  components,
7536
7701
  colorSchemes,
7537
7702
  cssVarPrefix,
@@ -7552,7 +7717,7 @@ function createCssVarsProvider(options) {
7552
7717
  theme.vars = deepmerge(theme.vars, vars);
7553
7718
 
7554
7719
  if (key === resolvedColorScheme) {
7555
- theme = _extends$1({}, theme, parsedScheme);
7720
+ theme = _extends$3({}, theme, parsedScheme);
7556
7721
 
7557
7722
  if (theme.palette) {
7558
7723
  // assign runtime mode & colorScheme
@@ -7653,7 +7818,7 @@ function createCssVarsProvider(options) {
7653
7818
  });
7654
7819
  }
7655
7820
 
7656
- const getInitColorSchemeScript$1 = params => getInitColorSchemeScript(_extends$1({
7821
+ const getInitColorSchemeScript$1 = params => getInitColorSchemeScript(_extends$3({
7657
7822
  attribute: defaultAttribute,
7658
7823
  colorSchemeStorageKey: defaultColorSchemeStorageKey,
7659
7824
  modeStorageKey: defaultModeStorageKey,
@@ -7694,9 +7859,9 @@ function createGetCssVar$1(prefix = '') {
7694
7859
  return getCssVar;
7695
7860
  }
7696
7861
 
7697
- const _excluded$c = ["className", "component", "disableGutters", "fixed", "maxWidth", "classes"];
7698
- const defaultTheme$3 = createTheme$1();
7699
- const defaultCreateStyledComponent$1 = styled$1('div', {
7862
+ const _excluded$d = ["className", "component", "disableGutters", "fixed", "maxWidth", "classes"];
7863
+ const defaultTheme$4 = createTheme$1();
7864
+ const defaultCreateStyledComponent$2 = styled$1('div', {
7700
7865
  name: 'MuiContainer',
7701
7866
  slot: 'Root',
7702
7867
  overridesResolver: (props, styles) => {
@@ -7707,10 +7872,10 @@ const defaultCreateStyledComponent$1 = styled$1('div', {
7707
7872
  }
7708
7873
  });
7709
7874
 
7710
- const useThemePropsDefault$1 = inProps => useThemeProps$1({
7875
+ const useThemePropsDefault$2 = inProps => useThemeProps$1({
7711
7876
  props: inProps,
7712
7877
  name: 'MuiContainer',
7713
- defaultTheme: defaultTheme$3
7878
+ defaultTheme: defaultTheme$4
7714
7879
  });
7715
7880
 
7716
7881
  const useUtilityClasses$1 = (ownerState, componentName) => {
@@ -7733,14 +7898,14 @@ const useUtilityClasses$1 = (ownerState, componentName) => {
7733
7898
  function createContainer(options = {}) {
7734
7899
  const {
7735
7900
  // This will allow adding custom styled fn (for example for custom sx style function)
7736
- createStyledComponent = defaultCreateStyledComponent$1,
7737
- useThemeProps = useThemePropsDefault$1,
7901
+ createStyledComponent = defaultCreateStyledComponent$2,
7902
+ useThemeProps = useThemePropsDefault$2,
7738
7903
  componentName = 'MuiContainer'
7739
7904
  } = options;
7740
7905
  const ContainerRoot = createStyledComponent(({
7741
7906
  theme,
7742
7907
  ownerState
7743
- }) => _extends$1({
7908
+ }) => _extends$3({
7744
7909
  width: '100%',
7745
7910
  marginLeft: 'auto',
7746
7911
  boxSizing: 'border-box',
@@ -7772,7 +7937,7 @@ function createContainer(options = {}) {
7772
7937
  }, {}), ({
7773
7938
  theme,
7774
7939
  ownerState
7775
- }) => _extends$1({}, ownerState.maxWidth === 'xs' && {
7940
+ }) => _extends$3({}, ownerState.maxWidth === 'xs' && {
7776
7941
  // @ts-ignore module augmentation fails if custom breakpoints are used
7777
7942
  [theme.breakpoints.up('xs')]: {
7778
7943
  // @ts-ignore module augmentation fails if custom breakpoints are used
@@ -7796,9 +7961,9 @@ function createContainer(options = {}) {
7796
7961
  fixed = false,
7797
7962
  maxWidth = 'lg'
7798
7963
  } = props,
7799
- other = _objectWithoutPropertiesLoose(props, _excluded$c);
7964
+ other = _objectWithoutPropertiesLoose$1(props, _excluded$d);
7800
7965
 
7801
- const ownerState = _extends$1({}, props, {
7966
+ const ownerState = _extends$3({}, props, {
7802
7967
  component,
7803
7968
  disableGutters,
7804
7969
  fixed,
@@ -7810,7 +7975,7 @@ function createContainer(options = {}) {
7810
7975
  return (
7811
7976
  /*#__PURE__*/
7812
7977
  // @ts-ignore theme is injected by the styled util
7813
- jsxRuntime.exports.jsx(ContainerRoot, _extends$1({
7978
+ jsxRuntime.exports.jsx(ContainerRoot, _extends$3({
7814
7979
  as: component // @ts-ignore module augmentation fails if custom breakpoints are used
7815
7980
  ,
7816
7981
  ownerState: ownerState,
@@ -8014,10 +8179,10 @@ const generateGridDirectionStyles = ({
8014
8179
  const generateGridStyles = ({
8015
8180
  ownerState
8016
8181
  }) => {
8017
- return _extends$1({
8182
+ return _extends$3({
8018
8183
  minWidth: 0,
8019
8184
  boxSizing: 'border-box'
8020
- }, ownerState.container ? _extends$1({
8185
+ }, ownerState.container ? _extends$3({
8021
8186
  display: 'flex',
8022
8187
  flexWrap: 'wrap'
8023
8188
  }, ownerState.wrap && ownerState.wrap !== 'wrap' && {
@@ -8026,14 +8191,14 @@ const generateGridStyles = ({
8026
8191
  margin: `calc(var(--Grid-rowSpacing) / -2) calc(var(--Grid-columnSpacing) / -2)`
8027
8192
  }, ownerState.disableEqualOverflow && {
8028
8193
  margin: `calc(var(--Grid-rowSpacing) * -1) 0px 0px calc(var(--Grid-columnSpacing) * -1)`
8029
- }, ownerState.nested ? _extends$1({
8194
+ }, ownerState.nested ? _extends$3({
8030
8195
  padding: `calc(var(--Grid-nested-rowSpacing) / 2) calc(var(--Grid-nested-columnSpacing) / 2)`
8031
8196
  }, (ownerState.disableEqualOverflow || ownerState.parentDisableEqualOverflow) && {
8032
8197
  padding: `calc(var(--Grid-nested-rowSpacing)) 0px 0px calc(var(--Grid-nested-columnSpacing))`
8033
8198
  }) : {
8034
8199
  '--Grid-nested-rowSpacing': 'var(--Grid-rowSpacing)',
8035
8200
  '--Grid-nested-columnSpacing': 'var(--Grid-columnSpacing)'
8036
- }) : _extends$1({
8201
+ }) : _extends$3({
8037
8202
  padding: `calc(var(--Grid-rowSpacing) / 2) calc(var(--Grid-columnSpacing) / 2)`
8038
8203
  }, ownerState.disableEqualOverflow && {
8039
8204
  padding: `calc(var(--Grid-rowSpacing)) 0px 0px calc(var(--Grid-columnSpacing))`
@@ -8074,28 +8239,28 @@ const generateSpacingClassNames = (spacing, smallestBreakpoint = 'xs') => {
8074
8239
  return [];
8075
8240
  };
8076
8241
 
8077
- const _excluded$b = ["className", "columns", "container", "component", "direction", "wrap", "spacing", "rowSpacing", "columnSpacing", "disableEqualOverflow"];
8078
- const defaultTheme$2 = createTheme$1(); // widening Theme to any so that the consumer can own the theme structure.
8242
+ const _excluded$c = ["className", "columns", "container", "component", "direction", "wrap", "spacing", "rowSpacing", "columnSpacing", "disableEqualOverflow"];
8243
+ const defaultTheme$3 = createTheme$1(); // widening Theme to any so that the consumer can own the theme structure.
8079
8244
 
8080
- const defaultCreateStyledComponent = styled$1('div', {
8245
+ const defaultCreateStyledComponent$1 = styled$1('div', {
8081
8246
  name: 'MuiGrid',
8082
8247
  slot: 'Root',
8083
8248
  overridesResolver: (props, styles) => styles.root
8084
8249
  });
8085
8250
 
8086
- function useThemePropsDefault(props) {
8251
+ function useThemePropsDefault$1(props) {
8087
8252
  return useThemeProps$1({
8088
8253
  props,
8089
8254
  name: 'MuiGrid',
8090
- defaultTheme: defaultTheme$2
8255
+ defaultTheme: defaultTheme$3
8091
8256
  });
8092
8257
  }
8093
8258
 
8094
8259
  function createGrid(options = {}) {
8095
8260
  const {
8096
8261
  // This will allow adding custom styled fn (for example for custom sx style function)
8097
- createStyledComponent = defaultCreateStyledComponent,
8098
- useThemeProps = useThemePropsDefault,
8262
+ createStyledComponent = defaultCreateStyledComponent$1,
8263
+ useThemeProps = useThemePropsDefault$1,
8099
8264
  componentName = 'MuiGrid'
8100
8265
  } = options;
8101
8266
  const NestedContext = /*#__PURE__*/React.createContext(false);
@@ -8138,7 +8303,7 @@ function createGrid(options = {}) {
8138
8303
  columnSpacing: columnSpacingProp = spacingProp,
8139
8304
  disableEqualOverflow: themeDisableEqualOverflow
8140
8305
  } = props,
8141
- rest = _objectWithoutPropertiesLoose(props, _excluded$b); // Because `disableEqualOverflow` can be set from the theme's defaultProps, the **nested** grid should look at the instance props instead.
8306
+ rest = _objectWithoutPropertiesLoose$1(props, _excluded$c); // Because `disableEqualOverflow` can be set from the theme's defaultProps, the **nested** grid should look at the instance props instead.
8142
8307
 
8143
8308
 
8144
8309
  let disableEqualOverflow = themeDisableEqualOverflow;
@@ -8165,7 +8330,7 @@ function createGrid(options = {}) {
8165
8330
  const rowSpacing = (_ref = (_inProps$rowSpacing = inProps.rowSpacing) != null ? _inProps$rowSpacing : inProps.spacing) != null ? _ref : nested ? undefined : rowSpacingProp;
8166
8331
  const columnSpacing = (_ref2 = (_inProps$columnSpacin = inProps.columnSpacing) != null ? _inProps$columnSpacin : inProps.spacing) != null ? _ref2 : nested ? undefined : columnSpacingProp;
8167
8332
 
8168
- const ownerState = _extends$1({}, props, {
8333
+ const ownerState = _extends$3({}, props, {
8169
8334
  nested,
8170
8335
  columns,
8171
8336
  container,
@@ -8184,7 +8349,7 @@ function createGrid(options = {}) {
8184
8349
 
8185
8350
  const classes = useUtilityClasses(ownerState, theme);
8186
8351
 
8187
- let result = /*#__PURE__*/jsxRuntime.exports.jsx(GridRoot, _extends$1({
8352
+ let result = /*#__PURE__*/jsxRuntime.exports.jsx(GridRoot, _extends$3({
8188
8353
  ref: ref,
8189
8354
  as: component,
8190
8355
  ownerState: ownerState,
@@ -8236,6 +8401,179 @@ generateUtilityClasses('MuiGrid', ['root', 'container', 'item', // spacings
8236
8401
  ...WRAPS.map(wrap => `wrap-xs-${wrap}`), // grid sizes for all breakpoints
8237
8402
  ...GRID_SIZES.map(size => `grid-xs-${size}`), ...GRID_SIZES.map(size => `grid-sm-${size}`), ...GRID_SIZES.map(size => `grid-md-${size}`), ...GRID_SIZES.map(size => `grid-lg-${size}`), ...GRID_SIZES.map(size => `grid-xl-${size}`)]);
8238
8403
 
8404
+ const _excluded$b = ["component", "direction", "spacing", "divider", "children", "className"];
8405
+ const defaultTheme$2 = createTheme$1();
8406
+ // widening Theme to any so that the consumer can own the theme structure.
8407
+ const defaultCreateStyledComponent = styled$1('div', {
8408
+ name: 'MuiStack',
8409
+ slot: 'Root',
8410
+ overridesResolver: (props, styles) => styles.root
8411
+ });
8412
+
8413
+ function useThemePropsDefault(props) {
8414
+ return useThemeProps$1({
8415
+ props,
8416
+ name: 'MuiStack',
8417
+ defaultTheme: defaultTheme$2
8418
+ });
8419
+ }
8420
+ /**
8421
+ * Return an array with the separator React element interspersed between
8422
+ * each React node of the input children.
8423
+ *
8424
+ * > joinChildren([1,2,3], 0)
8425
+ * [1,0,2,0,3]
8426
+ */
8427
+
8428
+
8429
+ function joinChildren(children, separator) {
8430
+ const childrenArray = React.Children.toArray(children).filter(Boolean);
8431
+ return childrenArray.reduce((output, child, index) => {
8432
+ output.push(child);
8433
+
8434
+ if (index < childrenArray.length - 1) {
8435
+ output.push( /*#__PURE__*/React.cloneElement(separator, {
8436
+ key: `separator-${index}`
8437
+ }));
8438
+ }
8439
+
8440
+ return output;
8441
+ }, []);
8442
+ }
8443
+
8444
+ const getSideFromDirection = direction => {
8445
+ return {
8446
+ row: 'Left',
8447
+ 'row-reverse': 'Right',
8448
+ column: 'Top',
8449
+ 'column-reverse': 'Bottom'
8450
+ }[direction];
8451
+ };
8452
+
8453
+ const style = ({
8454
+ ownerState,
8455
+ theme
8456
+ }) => {
8457
+ let styles = _extends$3({
8458
+ display: 'flex',
8459
+ flexDirection: 'column'
8460
+ }, handleBreakpoints({
8461
+ theme
8462
+ }, resolveBreakpointValues({
8463
+ values: ownerState.direction,
8464
+ breakpoints: theme.breakpoints.values
8465
+ }), propValue => ({
8466
+ flexDirection: propValue
8467
+ })));
8468
+
8469
+ if (ownerState.spacing) {
8470
+ const transformer = createUnarySpacing(theme);
8471
+ const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {
8472
+ if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {
8473
+ acc[breakpoint] = true;
8474
+ }
8475
+
8476
+ return acc;
8477
+ }, {});
8478
+ const directionValues = resolveBreakpointValues({
8479
+ values: ownerState.direction,
8480
+ base
8481
+ });
8482
+ const spacingValues = resolveBreakpointValues({
8483
+ values: ownerState.spacing,
8484
+ base
8485
+ });
8486
+
8487
+ if (typeof directionValues === 'object') {
8488
+ Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {
8489
+ const directionValue = directionValues[breakpoint];
8490
+
8491
+ if (!directionValue) {
8492
+ const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';
8493
+ directionValues[breakpoint] = previousDirectionValue;
8494
+ }
8495
+ });
8496
+ }
8497
+
8498
+ const styleFromPropValue = (propValue, breakpoint) => {
8499
+ return {
8500
+ '& > :not(style) + :not(style)': {
8501
+ margin: 0,
8502
+ [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue$1(transformer, propValue)
8503
+ }
8504
+ };
8505
+ };
8506
+
8507
+ styles = deepmerge(styles, handleBreakpoints({
8508
+ theme
8509
+ }, spacingValues, styleFromPropValue));
8510
+ }
8511
+
8512
+ styles = mergeBreakpointsInOrder(theme.breakpoints, styles);
8513
+ return styles;
8514
+ };
8515
+ function createStack(options = {}) {
8516
+ const {
8517
+ // This will allow adding custom styled fn (for example for custom sx style function)
8518
+ createStyledComponent = defaultCreateStyledComponent,
8519
+ useThemeProps = useThemePropsDefault,
8520
+ componentName = 'MuiStack'
8521
+ } = options;
8522
+
8523
+ const useUtilityClasses = () => {
8524
+ const slots = {
8525
+ root: ['root']
8526
+ };
8527
+ return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});
8528
+ };
8529
+
8530
+ const StackRoot = createStyledComponent(style);
8531
+ const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {
8532
+ const themeProps = useThemeProps(inProps);
8533
+ const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.
8534
+
8535
+ const {
8536
+ component = 'div',
8537
+ direction = 'column',
8538
+ spacing = 0,
8539
+ divider,
8540
+ children,
8541
+ className
8542
+ } = props,
8543
+ other = _objectWithoutPropertiesLoose$1(props, _excluded$b);
8544
+
8545
+ const ownerState = {
8546
+ direction,
8547
+ spacing
8548
+ };
8549
+ const classes = useUtilityClasses();
8550
+ return /*#__PURE__*/jsxRuntime.exports.jsx(StackRoot, _extends$3({
8551
+ as: component,
8552
+ ownerState: ownerState,
8553
+ ref: ref,
8554
+ className: clsx$1(classes.root, className)
8555
+ }, other, {
8556
+ children: divider ? joinChildren(children, divider) : children
8557
+ }));
8558
+ });
8559
+ return Stack;
8560
+ }
8561
+
8562
+ /**
8563
+ *
8564
+ * Demos:
8565
+ *
8566
+ * - [Stack (Material UI)](https://mui.com/material-ui/react-stack/)
8567
+ *
8568
+ * API:
8569
+ *
8570
+ * - [Stack API](https://mui.com/system/api/stack/)
8571
+ */
8572
+
8573
+ createStack();
8574
+
8575
+ generateUtilityClasses('MuiStack', ['root']);
8576
+
8239
8577
  const _excluded$a = ["defaultProps", "mixins", "overrides", "palette", "props", "styleOverrides"],
8240
8578
  _excluded2$2 = ["type", "mode"];
8241
8579
  function adaptV4Theme(inputTheme) {
@@ -8248,9 +8586,9 @@ function adaptV4Theme(inputTheme) {
8248
8586
  props = {},
8249
8587
  styleOverrides = {}
8250
8588
  } = inputTheme,
8251
- other = _objectWithoutPropertiesLoose(inputTheme, _excluded$a);
8589
+ other = _objectWithoutPropertiesLoose$2(inputTheme, _excluded$a);
8252
8590
 
8253
- const theme = _extends$1({}, other, {
8591
+ const theme = _extends$5({}, other, {
8254
8592
  components: {}
8255
8593
  }); // default props
8256
8594
 
@@ -8281,13 +8619,13 @@ function adaptV4Theme(inputTheme) {
8281
8619
 
8282
8620
  const breakpoints = createBreakpoints(inputTheme.breakpoints || {});
8283
8621
  const spacing = theme.spacing;
8284
- theme.mixins = _extends$1({
8622
+ theme.mixins = _extends$5({
8285
8623
  gutters: (styles = {}) => {
8286
- return _extends$1({
8624
+ return _extends$5({
8287
8625
  paddingLeft: spacing(2),
8288
8626
  paddingRight: spacing(2)
8289
8627
  }, styles, {
8290
- [breakpoints.up('sm')]: _extends$1({
8628
+ [breakpoints.up('sm')]: _extends$5({
8291
8629
  paddingLeft: spacing(3),
8292
8630
  paddingRight: spacing(3)
8293
8631
  }, styles[breakpoints.up('sm')])
@@ -8299,10 +8637,10 @@ function adaptV4Theme(inputTheme) {
8299
8637
  type: typeInput,
8300
8638
  mode: modeInput
8301
8639
  } = palette,
8302
- paletteRest = _objectWithoutPropertiesLoose(palette, _excluded2$2);
8640
+ paletteRest = _objectWithoutPropertiesLoose$2(palette, _excluded2$2);
8303
8641
 
8304
8642
  const finalMode = modeInput || typeInput || 'light';
8305
- theme.palette = _extends$1({
8643
+ theme.palette = _extends$5({
8306
8644
  // theme.palette.text.hint
8307
8645
  text: {
8308
8646
  hint: finalMode === 'dark' ? 'rgba(255, 255, 255, 0.5)' : 'rgba(0, 0, 0, 0.38)'
@@ -8356,6 +8694,8 @@ generateUtilityClasses('MuiSlider', ['root', 'active', 'focusVisible', 'disabled
8356
8694
 
8357
8695
  generateUtilityClasses('MuiSwitch', ['root', 'input', 'track', 'thumb', 'checked', 'disabled', 'focusVisible', 'readOnly']);
8358
8696
 
8697
+ generateUtilityClasses('MuiTablePaginationUnstyled', ['root', 'toolbar', 'spacer', 'selectLabel', 'selectRoot', 'select', 'selectIcon', 'input', 'menuItem', 'displayedRows', 'actions']);
8698
+
8359
8699
  generateUtilityClasses('TabPanelUnstyled', ['root', 'hidden']);
8360
8700
 
8361
8701
  generateUtilityClasses('TabsUnstyled', ['root', 'horizontal', 'vertical']);
@@ -8365,7 +8705,7 @@ generateUtilityClasses('TabsListUnstyled', ['root', 'horizontal', 'vertical']);
8365
8705
  generateUtilityClasses('TabUnstyled', ['root', 'selected', 'disabled']);
8366
8706
 
8367
8707
  function createMixins(breakpoints, mixins) {
8368
- return _extends$1({
8708
+ return _extends$5({
8369
8709
  toolbar: {
8370
8710
  minHeight: 56,
8371
8711
  [breakpoints.up('xs')]: {
@@ -8688,7 +9028,7 @@ function createPalette(palette) {
8688
9028
  contrastThreshold = 3,
8689
9029
  tonalOffset = 0.2
8690
9030
  } = palette,
8691
- other = _objectWithoutPropertiesLoose(palette, _excluded$9);
9031
+ other = _objectWithoutPropertiesLoose$2(palette, _excluded$9);
8692
9032
 
8693
9033
  const primary = palette.primary || getDefaultPrimary(mode);
8694
9034
  const secondary = palette.secondary || getDefaultSecondary(mode);
@@ -8712,7 +9052,7 @@ function createPalette(palette) {
8712
9052
  lightShade = 300,
8713
9053
  darkShade = 700
8714
9054
  }) => {
8715
- color = _extends$1({}, color);
9055
+ color = _extends$5({}, color);
8716
9056
 
8717
9057
  if (!color.main && color[mainShade]) {
8718
9058
  color.main = color[mainShade];
@@ -8741,9 +9081,9 @@ function createPalette(palette) {
8741
9081
  light: light$1
8742
9082
  };
8743
9083
 
8744
- const paletteOutput = deepmerge(_extends$1({
9084
+ const paletteOutput = deepmerge(_extends$5({
8745
9085
  // A collection of common colors.
8746
- common: _extends$1({}, common),
9086
+ common: _extends$5({}, common),
8747
9087
  // prevent mutable object.
8748
9088
  // The palette mode, can be light or dark.
8749
9089
  mode,
@@ -8830,13 +9170,13 @@ function createTypography(palette, typography) {
8830
9170
  allVariants,
8831
9171
  pxToRem: pxToRem2
8832
9172
  } = _ref,
8833
- other = _objectWithoutPropertiesLoose(_ref, _excluded$8);
9173
+ other = _objectWithoutPropertiesLoose$2(_ref, _excluded$8);
8834
9174
 
8835
9175
  const coef = fontSize / 14;
8836
9176
 
8837
9177
  const pxToRem = pxToRem2 || (size => `${size / htmlFontSize * coef}rem`);
8838
9178
 
8839
- const buildVariant = (fontWeight, size, lineHeight, letterSpacing, casing) => _extends$1({
9179
+ const buildVariant = (fontWeight, size, lineHeight, letterSpacing, casing) => _extends$5({
8840
9180
  fontFamily,
8841
9181
  fontWeight,
8842
9182
  fontSize: pxToRem(size),
@@ -8861,7 +9201,7 @@ function createTypography(palette, typography) {
8861
9201
  caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),
8862
9202
  overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps)
8863
9203
  };
8864
- return deepmerge(_extends$1({
9204
+ return deepmerge(_extends$5({
8865
9205
  htmlFontSize,
8866
9206
  pxToRem,
8867
9207
  fontFamily,
@@ -8932,9 +9272,9 @@ function getAutoHeightDuration(height) {
8932
9272
  }
8933
9273
 
8934
9274
  function createTransitions(inputTransitions) {
8935
- const mergedEasing = _extends$1({}, easing, inputTransitions.easing);
9275
+ const mergedEasing = _extends$5({}, easing, inputTransitions.easing);
8936
9276
 
8937
- const mergedDuration = _extends$1({}, duration, inputTransitions.duration);
9277
+ const mergedDuration = _extends$5({}, duration, inputTransitions.duration);
8938
9278
 
8939
9279
  const create = (props = ['all'], options = {}) => {
8940
9280
  const {
@@ -8942,12 +9282,12 @@ function createTransitions(inputTransitions) {
8942
9282
  easing: easingOption = mergedEasing.easeInOut,
8943
9283
  delay = 0
8944
9284
  } = options;
8945
- _objectWithoutPropertiesLoose(options, _excluded$7);
9285
+ _objectWithoutPropertiesLoose$2(options, _excluded$7);
8946
9286
 
8947
9287
  return (Array.isArray(props) ? props : [props]).map(animatedProp => `${animatedProp} ${typeof durationOption === 'string' ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === 'string' ? delay : formatMs(delay)}`).join(',');
8948
9288
  };
8949
9289
 
8950
- return _extends$1({
9290
+ return _extends$5({
8951
9291
  getAutoHeightDuration,
8952
9292
  create
8953
9293
  }, inputTransitions, {
@@ -8978,7 +9318,7 @@ function createTheme(options = {}, ...args) {
8978
9318
  transitions: transitionsInput = {},
8979
9319
  typography: typographyInput = {}
8980
9320
  } = options,
8981
- other = _objectWithoutPropertiesLoose(options, _excluded$6);
9321
+ other = _objectWithoutPropertiesLoose$2(options, _excluded$6);
8982
9322
 
8983
9323
  if (options.vars) {
8984
9324
  throw new Error(formatMuiErrorMessage(18));
@@ -8993,7 +9333,7 @@ function createTheme(options = {}, ...args) {
8993
9333
  shadows: shadows.slice(),
8994
9334
  typography: createTypography(palette, typographyInput),
8995
9335
  transitions: createTransitions(transitionsInput),
8996
- zIndex: _extends$1({}, zIndex)
9336
+ zIndex: _extends$5({}, zIndex)
8997
9337
  });
8998
9338
  muiTheme = deepmerge(muiTheme, other);
8999
9339
  muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);
@@ -9057,7 +9397,7 @@ styled('div', {
9057
9397
  }) => {
9058
9398
  var _theme$vars$overlays;
9059
9399
 
9060
- return _extends$1({
9400
+ return _extends$5({
9061
9401
  backgroundColor: (theme.vars || theme).palette.background.paper,
9062
9402
  color: (theme.vars || theme).palette.text.primary,
9063
9403
  transition: theme.transitions.create('box-shadow')
@@ -9065,7 +9405,7 @@ styled('div', {
9065
9405
  borderRadius: theme.shape.borderRadius
9066
9406
  }, ownerState.variant === 'outlined' && {
9067
9407
  border: `1px solid ${(theme.vars || theme).palette.divider}`
9068
- }, ownerState.variant === 'elevation' && _extends$1({
9408
+ }, ownerState.variant === 'elevation' && _extends$5({
9069
9409
  boxShadow: (theme.vars || theme).shadows[ownerState.elevation]
9070
9410
  }, !theme.vars && theme.palette.mode === 'dark' && {
9071
9411
  backgroundImage: `linear-gradient(${alpha('#fff', getOverlayAlpha(ownerState.elevation))}, ${alpha('#fff', getOverlayAlpha(ownerState.elevation))})`
@@ -9105,33 +9445,33 @@ function extendTheme(options = {}, ...args) {
9105
9445
  colorSchemes: colorSchemesInput = {},
9106
9446
  cssVarPrefix = 'mui'
9107
9447
  } = options,
9108
- input = _objectWithoutPropertiesLoose(options, _excluded$5);
9448
+ input = _objectWithoutPropertiesLoose$2(options, _excluded$5);
9109
9449
 
9110
9450
  const getCssVar = createGetCssVar(cssVarPrefix);
9111
9451
 
9112
- const _createThemeWithoutVa = createTheme(_extends$1({}, input, colorSchemesInput.light && {
9452
+ const _createThemeWithoutVa = createTheme(_extends$5({}, input, colorSchemesInput.light && {
9113
9453
  palette: (_colorSchemesInput$li = colorSchemesInput.light) == null ? void 0 : _colorSchemesInput$li.palette
9114
9454
  })),
9115
9455
  {
9116
9456
  palette: lightPalette
9117
9457
  } = _createThemeWithoutVa,
9118
- muiTheme = _objectWithoutPropertiesLoose(_createThemeWithoutVa, _excluded2$1);
9458
+ muiTheme = _objectWithoutPropertiesLoose$2(_createThemeWithoutVa, _excluded2$1);
9119
9459
 
9120
9460
  const {
9121
9461
  palette: darkPalette
9122
9462
  } = createTheme({
9123
- palette: _extends$1({
9463
+ palette: _extends$5({
9124
9464
  mode: 'dark'
9125
9465
  }, (_colorSchemesInput$da = colorSchemesInput.dark) == null ? void 0 : _colorSchemesInput$da.palette)
9126
9466
  });
9127
9467
 
9128
- let theme = _extends$1({}, muiTheme, {
9468
+ let theme = _extends$5({}, muiTheme, {
9129
9469
  cssVarPrefix,
9130
9470
  getCssVar,
9131
- colorSchemes: _extends$1({}, colorSchemesInput, {
9132
- light: _extends$1({}, colorSchemesInput.light, {
9471
+ colorSchemes: _extends$5({}, colorSchemesInput, {
9472
+ light: _extends$5({}, colorSchemesInput.light, {
9133
9473
  palette: lightPalette,
9134
- opacity: _extends$1({
9474
+ opacity: _extends$5({
9135
9475
  inputPlaceholder: 0.42,
9136
9476
  inputUnderline: 0.42,
9137
9477
  switchTrackDisabled: 0.12,
@@ -9139,9 +9479,9 @@ function extendTheme(options = {}, ...args) {
9139
9479
  }, (_colorSchemesInput$li2 = colorSchemesInput.light) == null ? void 0 : _colorSchemesInput$li2.opacity),
9140
9480
  overlays: ((_colorSchemesInput$li3 = colorSchemesInput.light) == null ? void 0 : _colorSchemesInput$li3.overlays) || []
9141
9481
  }),
9142
- dark: _extends$1({}, colorSchemesInput.dark, {
9482
+ dark: _extends$5({}, colorSchemesInput.dark, {
9143
9483
  palette: darkPalette,
9144
- opacity: _extends$1({
9484
+ opacity: _extends$5({
9145
9485
  inputPlaceholder: 0.5,
9146
9486
  inputUnderline: 0.7,
9147
9487
  switchTrackDisabled: 0.2,
@@ -9350,7 +9690,7 @@ createCssVarsProvider({
9350
9690
  dark: 'dark'
9351
9691
  },
9352
9692
  resolveTheme: theme => {
9353
- const newTheme = _extends$1({}, theme, {
9693
+ const newTheme = _extends$5({}, theme, {
9354
9694
  typography: createTypography(theme.palette, theme.typography)
9355
9695
  });
9356
9696
 
@@ -9359,6 +9699,38 @@ createCssVarsProvider({
9359
9699
  shouldSkipGeneratingVar
9360
9700
  });
9361
9701
 
9702
+ function _extends$1() {
9703
+ _extends$1 = Object.assign ? Object.assign.bind() : function (target) {
9704
+ for (var i = 1; i < arguments.length; i++) {
9705
+ var source = arguments[i];
9706
+
9707
+ for (var key in source) {
9708
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
9709
+ target[key] = source[key];
9710
+ }
9711
+ }
9712
+ }
9713
+
9714
+ return target;
9715
+ };
9716
+ return _extends$1.apply(this, arguments);
9717
+ }
9718
+
9719
+ function _objectWithoutPropertiesLoose(source, excluded) {
9720
+ if (source == null) return {};
9721
+ var target = {};
9722
+ var sourceKeys = Object.keys(source);
9723
+ var key, i;
9724
+
9725
+ for (i = 0; i < sourceKeys.length; i++) {
9726
+ key = sourceKeys[i];
9727
+ if (excluded.indexOf(key) >= 0) continue;
9728
+ target[key] = source[key];
9729
+ }
9730
+
9731
+ return target;
9732
+ }
9733
+
9362
9734
  function _setPrototypeOf(o, p) {
9363
9735
  _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
9364
9736
  o.__proto__ = p;
@@ -10937,7 +11309,7 @@ const TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps,
10937
11309
  classes = {},
10938
11310
  className
10939
11311
  } = props,
10940
- other = _objectWithoutPropertiesLoose(props, _excluded$4);
11312
+ other = _objectWithoutPropertiesLoose$2(props, _excluded$4);
10941
11313
 
10942
11314
  const [ripples, setRipples] = React.useState([]);
10943
11315
  const nextKey = React.useRef(0);
@@ -11108,7 +11480,7 @@ const TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps,
11108
11480
  start,
11109
11481
  stop
11110
11482
  }), [pulsate, start, stop]);
11111
- return /*#__PURE__*/jsxRuntime.exports.jsx(TouchRippleRoot, _extends$1({
11483
+ return /*#__PURE__*/jsxRuntime.exports.jsx(TouchRippleRoot, _extends$5({
11112
11484
  className: clsx(touchRippleClasses.root, classes.root, className),
11113
11485
  ref: container
11114
11486
  }, other, {
@@ -11232,7 +11604,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
11232
11604
  touchRippleRef,
11233
11605
  type
11234
11606
  } = props,
11235
- other = _objectWithoutPropertiesLoose(props, _excluded$3);
11607
+ other = _objectWithoutPropertiesLoose$2(props, _excluded$3);
11236
11608
 
11237
11609
  const buttonRef = React.useRef(null);
11238
11610
  const rippleRef = React.useRef(null);
@@ -11409,7 +11781,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
11409
11781
  const handleOwnRef = useForkRef(focusVisibleRef, buttonRef);
11410
11782
  const handleRef = useForkRef(ref, handleOwnRef);
11411
11783
 
11412
- const ownerState = _extends$1({}, props, {
11784
+ const ownerState = _extends$5({}, props, {
11413
11785
  centerRipple,
11414
11786
  component,
11415
11787
  disabled,
@@ -11421,7 +11793,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
11421
11793
  });
11422
11794
 
11423
11795
  const classes = useUtilityClasses(ownerState);
11424
- return /*#__PURE__*/jsxRuntime.exports.jsxs(ButtonBaseRoot, _extends$1({
11796
+ return /*#__PURE__*/jsxRuntime.exports.jsxs(ButtonBaseRoot, _extends$5({
11425
11797
  as: ComponentProp,
11426
11798
  className: clsx(classes.root, className),
11427
11799
  ownerState: ownerState,
@@ -11446,7 +11818,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
11446
11818
  /*#__PURE__*/
11447
11819
 
11448
11820
  /* TouchRipple is only needed client-side, x2 boost on the server. */
11449
- jsxRuntime.exports.jsx(TouchRipple, _extends$1({
11821
+ jsxRuntime.exports.jsx(TouchRipple, _extends$5({
11450
11822
  ref: handleRippleRef,
11451
11823
  center: centerRipple
11452
11824
  }, TouchRippleProps)) : null]
@@ -11455,7 +11827,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
11455
11827
 
11456
11828
  const buttonClasses = generateUtilityClasses('MuiButton', ['root', 'text', 'textInherit', 'textPrimary', 'textSecondary', 'textSuccess', 'textError', 'textInfo', 'textWarning', 'outlined', 'outlinedInherit', 'outlinedPrimary', 'outlinedSecondary', 'outlinedSuccess', 'outlinedError', 'outlinedInfo', 'outlinedWarning', 'contained', 'containedInherit', 'containedPrimary', 'containedSecondary', 'containedSuccess', 'containedError', 'containedInfo', 'containedWarning', 'disableElevation', 'focusVisible', 'disabled', 'colorInherit', 'textSizeSmall', 'textSizeMedium', 'textSizeLarge', 'outlinedSizeSmall', 'outlinedSizeMedium', 'outlinedSizeLarge', 'containedSizeSmall', 'containedSizeMedium', 'containedSizeLarge', 'sizeMedium', 'sizeSmall', 'sizeLarge', 'fullWidth', 'startIcon', 'endIcon', 'iconSizeSmall', 'iconSizeMedium', 'iconSizeLarge']);
11457
11829
 
11458
- const commonIconStyles = ownerState => _extends$1({}, ownerState.size === 'small' && {
11830
+ const commonIconStyles = ownerState => _extends$5({}, ownerState.size === 'small' && {
11459
11831
  '& > *:nth-of-type(1)': {
11460
11832
  fontSize: 18
11461
11833
  }
@@ -11485,14 +11857,14 @@ styled(ButtonBase, {
11485
11857
  }) => {
11486
11858
  var _theme$palette$getCon, _theme$palette;
11487
11859
 
11488
- return _extends$1({}, theme.typography.button, {
11860
+ return _extends$5({}, theme.typography.button, {
11489
11861
  minWidth: 64,
11490
11862
  padding: '6px 16px',
11491
11863
  borderRadius: (theme.vars || theme).shape.borderRadius,
11492
11864
  transition: theme.transitions.create(['background-color', 'box-shadow', 'border-color', 'color'], {
11493
11865
  duration: theme.transitions.duration.short
11494
11866
  }),
11495
- '&:hover': _extends$1({
11867
+ '&:hover': _extends$5({
11496
11868
  textDecoration: 'none',
11497
11869
  backgroundColor: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.text.primary, theme.palette.action.hoverOpacity),
11498
11870
  // Reset on touch devices, it doesn't add specificity
@@ -11527,13 +11899,13 @@ styled(ButtonBase, {
11527
11899
  backgroundColor: (theme.vars || theme).palette[ownerState.color].main
11528
11900
  }
11529
11901
  }),
11530
- '&:active': _extends$1({}, ownerState.variant === 'contained' && {
11902
+ '&:active': _extends$5({}, ownerState.variant === 'contained' && {
11531
11903
  boxShadow: (theme.vars || theme).shadows[8]
11532
11904
  }),
11533
- [`&.${buttonClasses.focusVisible}`]: _extends$1({}, ownerState.variant === 'contained' && {
11905
+ [`&.${buttonClasses.focusVisible}`]: _extends$5({}, ownerState.variant === 'contained' && {
11534
11906
  boxShadow: (theme.vars || theme).shadows[6]
11535
11907
  }),
11536
- [`&.${buttonClasses.disabled}`]: _extends$1({
11908
+ [`&.${buttonClasses.disabled}`]: _extends$5({
11537
11909
  color: (theme.vars || theme).palette.action.disabled
11538
11910
  }, ownerState.variant === 'outlined' && {
11539
11911
  border: `1px solid ${(theme.vars || theme).palette.action.disabledBackground}`
@@ -11614,7 +11986,7 @@ styled('span', {
11614
11986
  }
11615
11987
  })(({
11616
11988
  ownerState
11617
- }) => _extends$1({
11989
+ }) => _extends$5({
11618
11990
  display: 'inherit',
11619
11991
  marginRight: 8,
11620
11992
  marginLeft: -4
@@ -11632,7 +12004,7 @@ styled('span', {
11632
12004
  }
11633
12005
  })(({
11634
12006
  ownerState
11635
- }) => _extends$1({
12007
+ }) => _extends$5({
11636
12008
  display: 'inherit',
11637
12009
  marginRight: -4,
11638
12010
  marginLeft: 8
@@ -11954,7 +12326,7 @@ function create$3(definition) {
11954
12326
  return cache[key];
11955
12327
  }
11956
12328
 
11957
- const NEBULA_VERSION_HASH = "6be9" ;
12329
+ const NEBULA_VERSION_HASH = "272f" ;
11958
12330
  ClassNameGenerator.configure(componentName => {
11959
12331
 
11960
12332
  return "njs-".concat(NEBULA_VERSION_HASH, "-").concat(componentName.replace('Mui', ''));
@@ -12527,7 +12899,7 @@ function boot(_ref2) {
12527
12899
  const appRef = React__default.createRef();
12528
12900
  const element = document.createElement('div');
12529
12901
  element.style.display = 'none';
12530
- element.setAttribute('data-nebulajs-version', "3.0.0-rc.2" );
12902
+ element.setAttribute('data-nebulajs-version', "3.0.0" );
12531
12903
  element.setAttribute('data-app-id', app.id);
12532
12904
  document.body.appendChild(element);
12533
12905
  ReactDOM.render( /*#__PURE__*/React__default.createElement(NebulaApp, {
@@ -12683,7 +13055,7 @@ function SvgIcon(_ref) {
12683
13055
  return (
12684
13056
  /*#__PURE__*/
12685
13057
  // eslint-disable-next-line react/no-array-index-key
12686
- React__default.createElement(Type, _extends$2({
13058
+ React__default.createElement(Type, _extends$6({
12687
13059
  key: ix
12688
13060
  }, attrs))
12689
13061
  );
@@ -15340,7 +15712,7 @@ const More$1 = React__default.forwardRef((_ref3, ref) => {
15340
15712
  } = _ref3;
15341
15713
  const showActions = actions.length > 0;
15342
15714
  return showActions && /*#__PURE__*/React__default.createElement(StyledPopover$1 // eslint-disable-next-line react/jsx-props-no-spreading
15343
- , _extends$2({}, popoverProps, {
15715
+ , _extends$6({}, popoverProps, {
15344
15716
  onClose: onCloseOrActionClick,
15345
15717
  ref: ref,
15346
15718
  open: show,
@@ -17339,6 +17711,7 @@ AutoSizer.defaultProps = {
17339
17711
  /**
17340
17712
  * Hook that confirms selection when
17341
17713
  * user interact outside of passed element ref.
17714
+ * @ignore
17342
17715
  */
17343
17716
 
17344
17717
  function useConfirmUnfocus(ref, selections, shouldConfirmOnBlur) {
@@ -17814,12 +18187,6 @@ function removeIndex(array, index) {
17814
18187
  return removeIdx;
17815
18188
  }
17816
18189
 
17817
- const nxDimension = f => ({
17818
- qDef: {
17819
- qFieldDefs: [f]
17820
- }
17821
- });
17822
-
17823
18190
  const nxMeasure = f => ({
17824
18191
  qDef: {
17825
18192
  qDef: f
@@ -17849,9 +18216,10 @@ function hcHandler(_ref) {
17849
18216
  },
17850
18217
 
17851
18218
  addDimension(d) {
17852
- const dimension = typeof d === 'string' ? nxDimension(d) : _objectSpread2(_objectSpread2({}, d), {}, {
18219
+ const dimension = _objectSpread2(_objectSpread2({}, d), {}, {
17853
18220
  qDef: d.qDef || {}
17854
18221
  });
18222
+
17855
18223
  dimension.qDef.cId = dimension.qDef.cId || uid(); // ====== add default objects and arrays for NxDimension =====
17856
18224
  // TODO - apply autosort properties based on tags
17857
18225
 
@@ -19128,13 +19496,13 @@ function Progress(_ref2) {
19128
19496
  const s = SIZES[size];
19129
19497
  return /*#__PURE__*/React__default.createElement(Root, {
19130
19498
  className: classes$3.root
19131
- }, /*#__PURE__*/React__default.createElement(CircularProgress, _extends$2({
19499
+ }, /*#__PURE__*/React__default.createElement(CircularProgress, _extends$6({
19132
19500
  variant: "determinate",
19133
19501
  value: 100,
19134
19502
  className: classes$3.back,
19135
19503
  size: s,
19136
19504
  thickness: 3
19137
- }, props)), /*#__PURE__*/React__default.createElement(CircularProgress, _extends$2({
19505
+ }, props)), /*#__PURE__*/React__default.createElement(CircularProgress, _extends$6({
19138
19506
  variant: "indeterminate",
19139
19507
  disableShrink: true,
19140
19508
  className: classes$3.front,
@@ -19185,7 +19553,7 @@ function Cancel(_ref) {
19185
19553
  variant: "h6",
19186
19554
  align: "center",
19187
19555
  "data-tid": "update-active"
19188
- }, translator.get('Object.Update.Active')))), /*#__PURE__*/React__default.createElement(Grid, _extends$2({
19556
+ }, translator.get('Object.Update.Active')))), /*#__PURE__*/React__default.createElement(Grid, _extends$6({
19189
19557
  item: true
19190
19558
  }, props), /*#__PURE__*/React__default.createElement(Button, {
19191
19559
  variant: "contained",
@@ -19213,7 +19581,7 @@ function Retry(_ref2) {
19213
19581
  "data-tid": "update-cancelled"
19214
19582
  }, translator.get('Object.Update.Cancelled'))), /*#__PURE__*/React__default.createElement(Grid, {
19215
19583
  item: true
19216
- }, /*#__PURE__*/React__default.createElement(Button, _extends$2({
19584
+ }, /*#__PURE__*/React__default.createElement(Button, _extends$6({
19217
19585
  variant: "contained",
19218
19586
  onClick: retry
19219
19587
  }, props), translator.get('Retry'))));
@@ -25297,14 +25665,14 @@ function nuked() {
25297
25665
  */
25298
25666
 
25299
25667
 
25300
- var index = nuked(DEFAULT_CONFIG);
25668
+ var index$1 = nuked(DEFAULT_CONFIG);
25301
25669
 
25302
25670
  var enigmaMocker = {exports: {}};
25303
25671
 
25304
25672
  var enigmaMocker_dev = {exports: {}};
25305
25673
 
25306
25674
  /*
25307
- * @nebula.js/enigma-mocker v3.0.0-rc.1
25675
+ * @nebula.js/enigma-mocker v3.0.0-rc.2
25308
25676
  * Copyright (c) 2022 QlikTech International AB
25309
25677
  * Released under the MIT license.
25310
25678
  */
@@ -25573,12 +25941,13 @@ var enigmaMocker_dev = {exports: {}};
25573
25941
  * id: getValue(fixture.id, { defaultValue: 'object-id-${+Date.now()}'}),
25574
25942
  * }
25575
25943
  * ```
25576
- *
25944
+ * @type function
25945
+ * @ignore
25577
25946
  * @param {any} prop Fixture property. Either a fixed value (string / object / boolean / ...) or a function invoked when the value is needed.
25578
25947
  * @param {object} options Options.
25579
25948
  * @param {Array<any>} options.args Arguments used to evaluate the property value.
25580
25949
  * @param {any} options.defaultValue Default value in case not value is defined in fixture.
25581
- * @returns The property value.
25950
+ * @returns {any} The property value.
25582
25951
  */
25583
25952
 
25584
25953
 
@@ -25614,13 +25983,14 @@ var enigmaMocker_dev = {exports: {}};
25614
25983
  * getHyperCubeData: getPropFn(fixture.getHyperCubeData, { defaultValue: [], usePromise: true })
25615
25984
  * };
25616
25985
  * ```
25617
- *
25986
+ * @type function
25987
+ * @ignore
25618
25988
  * @param {any} prop Fixture property. Either a fixed value (string / object / boolean / ...) or a function invoked when the value is needed.
25619
25989
  * @param {object} options Options.
25620
25990
  * @param {any} options.defaultValue Default value in case not value is defined in fixture.
25621
25991
  * @param {boolean} options.async When `true` the returns value is wrapped in a promise, otherwise the value is directly returned.
25622
25992
  * @param {number} options.number Delay before value is returned.
25623
- * @returns A fixture property function
25993
+ * @returns {function} A fixture property function
25624
25994
  */
25625
25995
 
25626
25996
 
@@ -25648,12 +26018,15 @@ var enigmaMocker_dev = {exports: {}};
25648
26018
  const _excluded = ["id", "session"];
25649
26019
  /**
25650
26020
  * Properties on `getObject()` operating synchronously.
26021
+ * @ignore
26022
+ * @type Array
25651
26023
  */
25652
26024
 
25653
26025
  const PROPS_SYNC = ['addListener', 'emit', 'listeners', 'on', 'once', 'removeAllListeners', 'removeListener', 'setMaxListerners'];
25654
26026
  /**
25655
26027
  * Is property operating asynchrously.
25656
26028
  * @param {string} name Property name.
26029
+ * @ignore
25657
26030
  * @returns `true` if property is operating asynchrously, otherwise `false`.
25658
26031
  */
25659
26032
 
@@ -25663,6 +26036,7 @@ var enigmaMocker_dev = {exports: {}};
25663
26036
  /**
25664
26037
  * Get `qId` for visualization.
25665
26038
  * @param {object} genericObject Generic object describing behaviour of mock
26039
+ * @ignore
25666
26040
  * @returns The `qId`, undefined if not present
25667
26041
  */
25668
26042
 
@@ -25675,6 +26049,7 @@ var enigmaMocker_dev = {exports: {}};
25675
26049
  * Create a mock of a generic object. Mandatory properties are added, functions returns async values where applicable etc.
25676
26050
  * @param {object} genericObject Generic object describing behaviour of mock
25677
26051
  * @param {EnigmaMockerOptions} options Options.
26052
+ * @ignore
25678
26053
  * @returns The mocked object
25679
26054
  */
25680
26055
 
@@ -25718,6 +26093,7 @@ var enigmaMocker_dev = {exports: {}};
25718
26093
  * Create mocked objects from list of generic objects.
25719
26094
  * @param {Array<object>} genericObjects Generic objects describing behaviour of mock
25720
26095
  * @param {EnigmaMockerOptions} options options
26096
+ * @ignore
25721
26097
  * @returns Object with mocks where key is `qId` and value is the mocked object.
25722
26098
  */
25723
26099
 
@@ -25728,6 +26104,7 @@ var enigmaMocker_dev = {exports: {}};
25728
26104
  /**
25729
26105
  * Validates if mandatory information is available.
25730
26106
  * @param {object} genericObject Generic object to validate
26107
+ * @ignore
25731
26108
  * @throws {}
25732
26109
  * <ul>
25733
26110
  * <li>{Error} If getLayout is missing</li>
@@ -25751,6 +26128,7 @@ var enigmaMocker_dev = {exports: {}};
25751
26128
  * Creates mock of `getObject(id)` based on an array of generic objects.
25752
26129
  * @param {Array<object>} genericObjects Generic objects.
25753
26130
  * @param {EnigmaMockerOptions} options Options.
26131
+ * @ignore
25754
26132
  * @returns Function to retrieve the mocked generic object with the corresponding id.
25755
26133
  */
25756
26134
 
@@ -25775,41 +26153,8 @@ var enigmaMocker_dev = {exports: {}};
25775
26153
  id: 'app-layout'
25776
26154
  });
25777
26155
  }
25778
- /**
25779
- * @interface EnigmaMockerOptions
25780
- * @property {number} delay Simulate delay (in ms) for calls in enigma-mocker.
25781
- */
25782
-
25783
- /**
25784
- * Mocks Engima app functionality. It accepts one / many generic objects as input argument and returns the mocked Enigma app. Each generic object represents one visulization and specifies how it behaves. For example, what layout to use the data to present.
25785
- *
25786
- * The generic object is represented with a Javascript object with a number of properties. The name of the property correlates to the name in the Enigma model for `app.getObject(id)`. For example, the property `getLayout` in the generic object is used to define `app.getObject(id).getLayout()`. Any property can be added to the fixture (just make sure it exists and behaves as in the Enigma model!).
25787
- *
25788
- * The value for each property is either fixed (string / boolean / number / object) or a function. Arguments are forwarded to the function to allow for greater flexibility. For example, this can be used to return different hypercube data when scrolling in the chart.
25789
- *
25790
- * @param {Array<object>} genericObjects Generic objects controling behaviour of visualizations.
25791
- * @param {EnigmaMockerOptions} options Options
25792
- * @returns {Promise<enigma.Doc>}
25793
- * @example
25794
- * const genericObject = {
25795
- * getLayout() {
25796
- * return {
25797
- * qInfo: {
25798
- * qId: 'qqj4zx',
25799
- * qType: 'sn-grid-chart'
25800
- * },
25801
- * ...
25802
- * }
25803
- * },
25804
- * getHyperCubeData(path, page) {
25805
- * return [ ... ];
25806
- * }
25807
- * };
25808
- * const app = await EnigmaMocker.fromGenericObjects([genericObject]);
25809
- */
25810
-
25811
26156
 
25812
- var fromGenericObjects = function (genericObjects) {
26157
+ function fromGenericObjects(genericObjects) {
25813
26158
  let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
25814
26159
  const session = new SessionMock();
25815
26160
  const createSessionObject = new CreateSessionObjectMock();
@@ -25823,12 +26168,61 @@ var enigmaMocker_dev = {exports: {}};
25823
26168
  getAppLayout
25824
26169
  };
25825
26170
  return Promise.resolve(app);
25826
- };
26171
+ }
26172
+ /**
26173
+ * @interface EnigmaMockerOptions
26174
+ * @property {number} delay Simulate delay (in ms) for calls in enigma-mocker.
26175
+ * @description Options for Enigma Mocker
26176
+ * @experimental
26177
+ * @since 3.0.0
26178
+ */
26179
+
26180
+ /**
26181
+ * @entry
26182
+ * @alias EnigmaMocker
26183
+ * @description Mocks Engima app functionality for demo and testing purposes.
26184
+ */
26185
+
26186
+
26187
+ const api =
26188
+ /** @lends EnigmaMocker# */
26189
+ {
26190
+ /**
26191
+ * Mocks Engima app functionality. It accepts one / many generic objects as input argument and returns the mocked Enigma app. Each generic object represents one visulization and specifies how it behaves. For example, what layout to use the data to present.
26192
+ *
26193
+ * The generic object is represented with a Javascript object with a number of properties. The name of the property correlates to the name in the Enigma model for `app.getObject(id)`. For example, the property `getLayout` in the generic object is used to define `app.getObject(id).getLayout()`. Any property can be added to the fixture (just make sure it exists and behaves as in the Enigma model!).
26194
+ *
26195
+ * The value for each property is either fixed (string / boolean / number / object) or a function. Arguments are forwarded to the function to allow for greater flexibility. For example, this can be used to return different hypercube data when scrolling in the chart.
26196
+ * @type function
26197
+ * @experimental
26198
+ * @since 3.0.0
26199
+ * @param {Array<object>} genericObjects Generic objects controling behaviour of visualizations.
26200
+ * @param {EnigmaMockerOptions} options Options
26201
+ * @returns {Promise<EngineAPI.IApp>}
26202
+ * @example
26203
+ * const genericObject = {
26204
+ * getLayout() {
26205
+ * return {
26206
+ * qInfo: {
26207
+ * qId: 'qqj4zx',
26208
+ * qType: 'sn-grid-chart'
26209
+ * },
26210
+ * ...
26211
+ * }
26212
+ * },
26213
+ * getHyperCubeData(path, page) {
26214
+ * return [ ... ];
26215
+ * }
26216
+ * };
26217
+ * const app = await EnigmaMocker.fromGenericObjects([genericObject]);
26218
+ */
26219
+ fromGenericObjects(genericObjects) {
26220
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
26221
+ return fromGenericObjects(genericObjects, options);
26222
+ }
25827
26223
 
25828
- var index = {
25829
- fromGenericObjects
25830
26224
  };
25831
- return index;
26225
+ return api;
25832
26226
  });
25833
26227
  })(enigmaMocker_dev);
25834
26228
 
@@ -25836,7 +26230,7 @@ var enigmaMocker_dev = {exports: {}};
25836
26230
  module.exports = enigmaMocker_dev.exports;
25837
26231
  })(enigmaMocker);
25838
26232
 
25839
- var EnigmaMocker = /*@__PURE__*/getDefaultExportFromCjs(enigmaMocker.exports);
26233
+ var index = /*@__PURE__*/getDefaultExportFromCjs(enigmaMocker.exports);
25840
26234
 
25841
26235
  /* eslint no-underscore-dangle: 0 */
25842
26236
 
@@ -25844,9 +26238,8 @@ const __DO_NOT_USE__ = {
25844
26238
  generator: generatorFn,
25845
26239
  hook,
25846
26240
  theme,
25847
- locale,
25848
- EnigmaMocker
26241
+ locale
25849
26242
  };
25850
26243
 
25851
- export { __DO_NOT_USE__, conversion, index as embed, onTakeSnapshot, useAction, useApp, useAppLayout, useConstraints, useDeviceType, useEffect, useElement, useEmbed, useGlobal, useImperativeHandle, useKeyboard, useLayout, useMemo, useModel, useOptions, usePlugins, usePromise, useRect, useRenderState, useSelections, useStaleLayout, useState, useTheme, useTranslator };
26244
+ export { index as EnigmaMocker, __DO_NOT_USE__, conversion, index$1 as embed, onTakeSnapshot, useAction, useApp, useAppLayout, useConstraints, useDeviceType, useEffect, useElement, useEmbed, useGlobal, useImperativeHandle, useKeyboard, useLayout, useMemo, useModel, useOptions, usePlugins, usePromise, useRect, useRenderState, useSelections, useStaleLayout, useState, useTheme, useTranslator };
25852
26245
  //# sourceMappingURL=dev.js.map