@ainias42/react-bootstrap-mobile 0.2.1 → 0.2.2

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.
@@ -68,6 +68,7 @@ export * from './src/Components/Layout/View';
68
68
  export * from './src/Components/Layout/ViewWithoutListeners';
69
69
  export * from './src/Components/List/BulletList/BulletList';
70
70
  export * from './src/Components/List/BulletList/ListItem';
71
+ export * from './src/Components/List/InfiniteList';
71
72
  export * from './src/Components/List/List';
72
73
  export * from './src/Components/LoadingArea/LoadingArea';
73
74
  export * from './src/Components/LoadingCircle/LoadingCircle';
@@ -68,6 +68,7 @@ export * from './src/Components/Layout/View';
68
68
  export * from './src/Components/Layout/ViewWithoutListeners';
69
69
  export * from './src/Components/List/BulletList/BulletList';
70
70
  export * from './src/Components/List/BulletList/ListItem';
71
+ export * from './src/Components/List/InfiniteList';
71
72
  export * from './src/Components/List/List';
72
73
  export * from './src/Components/LoadingArea/LoadingArea';
73
74
  export * from './src/Components/LoadingCircle/LoadingCircle';
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @ainias42/react-bootstrap-mobile v0.2.0
3
+ * @ainias42/react-bootstrap-mobile v0.2.1
4
4
  * git+https://github.com/Ainias/Bootstrap-React-Mobile.git
5
5
  * Copyright (c) Silas Günther and project contributors.
6
6
  * This source code is licensed under the MIT license found in the
@@ -1253,13 +1253,14 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1253
1253
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1254
1254
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1255
1255
  // Module
1256
- ___CSS_LOADER_EXPORT___.push([module.id, `.buttonDialog__FKbnS{font-weight:400;max-width:95%;overflow:hidden;min-width:270px}.buttonDialog__FKbnS .title__WvvXx{font-weight:500}.buttonDialog__FKbnS .buttonContainer__e9ZHw{width:100%}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{color:var(--flavor-accent);padding:0 8px}.flat-design .buttonDialog__FKbnS{border-radius:8px;background-color:#f4f4f4;padding-top:16px;color:#1f1f21;font-family:-apple-system,"Helvetica Neue","Helvetica","Arial","Lucida Grande",sans-serif;text-align:center}.flat-design .buttonDialog__FKbnS .title__WvvXx{font-size:17px;padding:0 8px}.flat-design .buttonDialog__FKbnS .message__yLthE{font-size:14px;padding:4px 12px 8px;min-height:36px}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw{display:flex;white-space:nowrap}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{flex:1;display:block;border-left:1px solid var(--border-light);border-top:1px solid var(--border-light);text-overflow:ellipsis;letter-spacing:0;vertical-align:middle;font-size:16px;text-align:center;height:44px;line-height:44px;overflow:hidden}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul:first-child{border-left:none}.material-design .buttonDialog__FKbnS{border-radius:2px;background-color:#fff;padding:22px 0 0;box-shadow:0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.4);color:#31313a;font-family:"Roboto","Noto",sans-serif;text-align:left}.material-design .buttonDialog__FKbnS .title__WvvXx{font-size:20px;padding:0 24px}.material-design .buttonDialog__FKbnS .message__yLthE{font-size:16px;line-height:20px;padding:0 24px;margin:24px 0 10px 0;min-height:0;color:rgba(49,49,58,.85)}.material-design .buttonDialog__FKbnS .buttonContainer__e9ZHw{display:block;padding:0;height:52px;line-height:1}.material-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{text-transform:uppercase;display:inline-block;width:auto;float:right;border-radius:2px;font-size:14px;font-weight:500;height:36px;line-height:36px;margin:8px 8px 8px 0;min-width:50px}`, "",{"version":3,"sources":["webpack://./src/Components/Dialog/buttonDialog.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAGA,qBACE,eAAA,CACA,aAAA,CACA,eAAA,CACA,eAAA,CAEA,mCACE,eAAA,CAMF,6CACE,UAAA,CAEA,4DACE,0BAAA,CACA,aAAA,CCjBO,kCDsBT,iBAAA,CACA,wBAAA,CACA,gBAAA,CACA,aAAA,CACA,yFAAA,CACA,iBAAA,CAEA,gDACE,cAAA,CACA,aAAA,CAGF,kDACE,cAAA,CACA,oBAAA,CACA,eAAA,CAGF,0DACE,YAAA,CACA,kBAAA,CAEA,yEACE,MAAA,CACA,aAAA,CACA,yCAAA,CACA,wCAAA,CACA,sBAAA,CACA,gBAAA,CACA,qBAAA,CACA,cAAA,CACA,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,eAAA,CAEA,qFACE,gBAAA,CC3DG,sCDkET,iBAAA,CACA,qBAAA,CACA,gBAAA,CACA,wGAAA,CACA,aAAA,CACA,sCAAA,CACA,eAAA,CAEA,oDACE,cAAA,CACA,cAAA,CAGF,sDACE,cAAA,CACA,gBAAA,CACA,cAAA,CACA,oBAAA,CACA,YAAA,CACA,wBAAA,CAGF,8DACE,aAAA,CACA,SAAA,CACA,WAAA,CACA,aAAA,CAEA,6EACE,wBAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,cAAA,CACA,eAAA,CACA,WAAA,CACA,gBAAA,CACA,oBAAA,CACA,cAAA","sourcesContent":["@import \"../../scss/variables\";\n@import \"../../scss/designMixin\";\n\n.buttonDialog {\n font-weight: 400;\n max-width: 95%;\n overflow: hidden;\n min-width: 270px;\n\n .title {\n font-weight: 500;\n }\n\n .message {\n }\n\n .buttonContainer {\n width: 100%;\n\n .button {\n color: var(--flavor-accent);\n padding: 0 8px;\n }\n }\n\n @include design($flat) {\n border-radius: 8px;\n background-color: #f4f4f4;\n padding-top: 16px;\n color: #1f1f21;\n font-family: -apple-system, 'Helvetica Neue', 'Helvetica', 'Arial', 'Lucida Grande', sans-serif;\n text-align: center;\n\n .title {\n font-size: 17px;\n padding: 0 8px;\n }\n\n .message {\n font-size: 14px;\n padding: 4px 12px 8px;\n min-height: 36px;\n }\n\n .buttonContainer {\n display: flex;\n white-space: nowrap;\n\n .button {\n flex: 1;\n display: block;\n border-left: 1px solid var(--border-light);\n border-top: 1px solid var(--border-light);\n text-overflow: ellipsis;\n letter-spacing: 0;\n vertical-align: middle;\n font-size: 16px;\n text-align: center;\n height: 44px;\n line-height: 44px;\n overflow: hidden;\n\n &:first-child {\n border-left: none;\n }\n }\n }\n }\n\n @include design($material) {\n border-radius: 2px;\n background-color: #ffffff;\n padding: 22px 0 0;\n box-shadow: 0 16px 24px 2px rgb(0 0 0 / 14%), 0 6px 30px 5px rgb(0 0 0 / 12%), 0 8px 10px -5px rgb(0 0 0 / 40%);\n color: #31313a;\n font-family: 'Roboto', 'Noto', sans-serif;\n text-align: left;\n\n .title {\n font-size: 20px;\n padding: 0 24px;\n }\n\n .message {\n font-size: 16px;\n line-height: 20px;\n padding: 0 24px;\n margin: 24px 0 10px 0;\n min-height: 0;\n color: rgba(49, 49, 58, .85);\n }\n\n .buttonContainer {\n display: block;\n padding: 0;\n height: 52px;\n line-height: 1;\n\n .button {\n text-transform: uppercase;\n display: inline-block;\n width: auto;\n float: right;\n border-radius: 2px;\n font-size: 14px;\n font-weight: 500;\n height: 36px;\n line-height: 36px;\n margin: 8px 8px 8px 0;\n min-width: 50px;\n }\n }\n }\n}\n","@use 'sass:selector';\n\n@mixin design($designName) {\n @if & {\n @at-root #{selector.nest(':global(.'+$designName+\")\", &)} {\n @content\n }\n } @else {\n :global(.#{$designName}) {\n @content\n }\n }\n}\n"],"sourceRoot":""}]);
1256
+ ___CSS_LOADER_EXPORT___.push([module.id, `.buttonDialog__FKbnS{font-weight:400;max-width:95%;overflow:hidden;min-width:270px}.buttonDialog__FKbnS .title__WvvXx{font-weight:500}.buttonDialog__FKbnS .buttonContainer__e9ZHw{width:100%}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{padding:0 8px}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI.flavor-accent{--text-primary-default-color:var(--flavor-accent)}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI.flavor-basic{--text-primary-default-color:var(--flavor-basic)}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI.flavor-destructive{--text-primary-default-color:var(--flavor-destructive)}.buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI.flavor-constructive{--text-primary-default-color:var(--flavor-constructive)}.flat-design .buttonDialog__FKbnS{border-radius:8px;background-color:#f4f4f4;padding-top:16px;color:#1f1f21;font-family:-apple-system,"Helvetica Neue","Helvetica","Arial","Lucida Grande",sans-serif;text-align:center}.flat-design .buttonDialog__FKbnS .title__WvvXx{font-size:17px;padding:0 8px}.flat-design .buttonDialog__FKbnS .message__yLthE{font-size:14px;padding:4px 12px 8px;min-height:36px}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw{display:flex;white-space:nowrap}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{flex:1;display:block;border-left:1px solid var(--border-light);border-top:1px solid var(--border-light);vertical-align:middle;text-align:center;height:44px;overflow:hidden}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI{line-height:44px;text-overflow:ellipsis;letter-spacing:0;font-size:16px}.flat-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul:first-child{border-left:none}.material-design .buttonDialog__FKbnS{border-radius:2px;background-color:#fff;padding:22px 0 0;box-shadow:0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.4);color:#31313a;font-family:"Roboto","Noto",sans-serif;text-align:left}.material-design .buttonDialog__FKbnS .title__WvvXx{font-size:20px;padding:0 24px}.material-design .buttonDialog__FKbnS .message__yLthE{font-size:16px;line-height:20px;padding:0 24px;margin:24px 0 10px 0;min-height:0;color:rgba(49,49,58,.85)}.material-design .buttonDialog__FKbnS .buttonContainer__e9ZHw{display:block;padding:0;height:52px;line-height:1}.material-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul{text-transform:uppercase;display:inline-block;width:auto;float:right;border-radius:2px;height:36px;margin:8px 8px 8px 0;min-width:50px}.material-design .buttonDialog__FKbnS .buttonContainer__e9ZHw .button__HSgul .buttonText__O0SYI{line-height:36px;font-size:14px;font-weight:500}`, "",{"version":3,"sources":["webpack://./src/Components/Dialog/buttonDialog.scss","webpack://./src/scss/_flavorMixin.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAIA,qBACE,eAAA,CACA,aAAA,CACA,eAAA,CACA,eAAA,CAEA,mCACE,eAAA,CAMF,6CACE,UAAA,CAEA,4DACE,aAAA,CClBJ,6FACE,iDAAA,CAEF,4FACE,gDAAA,CAEF,kGACE,sDAAA,CAEF,mGACE,uDAAA,CCTS,kCF4BT,iBAAA,CACA,wBAAA,CACA,gBAAA,CACA,aAAA,CACA,yFAAA,CACA,iBAAA,CAEA,gDACE,cAAA,CACA,aAAA,CAGF,kDACE,cAAA,CACA,oBAAA,CACA,eAAA,CAGF,0DACE,YAAA,CACA,kBAAA,CAEA,yEACE,MAAA,CACA,aAAA,CACA,yCAAA,CACA,wCAAA,CACA,qBAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,4FACE,gBAAA,CACA,sBAAA,CACA,gBAAA,CACA,cAAA,CAGF,qFACE,gBAAA,CEpEG,sCF2ET,iBAAA,CACA,qBAAA,CACA,gBAAA,CACA,wGAAA,CACA,aAAA,CACA,sCAAA,CACA,eAAA,CAEA,oDACE,cAAA,CACA,cAAA,CAGF,sDACE,cAAA,CACA,gBAAA,CACA,cAAA,CACA,oBAAA,CACA,YAAA,CACA,wBAAA,CAGF,8DACE,aAAA,CACA,SAAA,CACA,WAAA,CACA,aAAA,CAEA,6EACE,wBAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,WAAA,CACA,oBAAA,CACA,cAAA,CAEA,gGACE,gBAAA,CACA,cAAA,CACA,eAAA","sourcesContent":["@import \"../../scss/variables\";\n@import \"../../scss/designMixin\";\n@import \"../../scss/flavorMixin\";\n\n.buttonDialog {\n font-weight: 400;\n max-width: 95%;\n overflow: hidden;\n min-width: 270px;\n\n .title {\n font-weight: 500;\n }\n\n .message {\n }\n\n .buttonContainer {\n width: 100%;\n\n .button {\n padding: 0 8px;\n\n .buttonText {\n @include flavorSelection(--text-primary-default-color);\n\n }\n\n }\n }\n\n @include design($flat) {\n border-radius: 8px;\n background-color: #f4f4f4;\n padding-top: 16px;\n color: #1f1f21;\n font-family: -apple-system, 'Helvetica Neue', 'Helvetica', 'Arial', 'Lucida Grande', sans-serif;\n text-align: center;\n\n .title {\n font-size: 17px;\n padding: 0 8px;\n }\n\n .message {\n font-size: 14px;\n padding: 4px 12px 8px;\n min-height: 36px;\n }\n\n .buttonContainer {\n display: flex;\n white-space: nowrap;\n\n .button {\n flex: 1;\n display: block;\n border-left: 1px solid var(--border-light);\n border-top: 1px solid var(--border-light);\n vertical-align: middle;\n text-align: center;\n height: 44px;\n overflow: hidden;\n\n .buttonText {\n line-height: 44px;\n text-overflow: ellipsis;\n letter-spacing: 0;\n font-size: 16px;\n }\n\n &:first-child {\n border-left: none;\n }\n }\n }\n }\n\n @include design($material) {\n border-radius: 2px;\n background-color: #ffffff;\n padding: 22px 0 0;\n box-shadow: 0 16px 24px 2px rgb(0 0 0 / 14%), 0 6px 30px 5px rgb(0 0 0 / 12%), 0 8px 10px -5px rgb(0 0 0 / 40%);\n color: #31313a;\n font-family: 'Roboto', 'Noto', sans-serif;\n text-align: left;\n\n .title {\n font-size: 20px;\n padding: 0 24px;\n }\n\n .message {\n font-size: 16px;\n line-height: 20px;\n padding: 0 24px;\n margin: 24px 0 10px 0;\n min-height: 0;\n color: rgba(49, 49, 58, .85);\n }\n\n .buttonContainer {\n display: block;\n padding: 0;\n height: 52px;\n line-height: 1;\n\n .button {\n text-transform: uppercase;\n display: inline-block;\n width: auto;\n float: right;\n border-radius: 2px;\n height: 36px;\n margin: 8px 8px 8px 0;\n min-width: 50px;\n\n .buttonText {\n line-height: 36px;\n font-size: 14px;\n font-weight: 500;\n }\n }\n }\n }\n}\n","@use 'sass:selector';\n\n@mixin flavorSelection($varName) {\n &:global(.flavor-accent) {\n #{$varName}: var(--flavor-accent);\n }\n &:global(.flavor-basic) {\n #{$varName}: var(--flavor-basic);\n }\n &:global(.flavor-destructive) {\n #{$varName}: var(--flavor-destructive);\n }\n &:global(.flavor-constructive) {\n #{$varName}: var(--flavor-constructive);\n }\n}\n","@use 'sass:selector';\n\n@mixin design($designName) {\n @if & {\n @at-root #{selector.nest(':global(.'+$designName+\")\", &)} {\n @content\n }\n } @else {\n :global(.#{$designName}) {\n @content\n }\n }\n}\n"],"sourceRoot":""}]);
1257
1257
  // Exports
1258
1258
  ___CSS_LOADER_EXPORT___.locals = {
1259
1259
  "buttonDialog": `buttonDialog__FKbnS`,
1260
1260
  "title": `title__WvvXx`,
1261
1261
  "buttonContainer": `buttonContainer__e9ZHw`,
1262
1262
  "button": `button__HSgul`,
1263
+ "buttonText": `buttonText__O0SYI`,
1263
1264
  "message": `message__yLthE`
1264
1265
  };
1265
1266
  module.exports = ___CSS_LOADER_EXPORT___;
@@ -1314,7 +1315,7 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1314
1315
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1315
1316
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1316
1317
  // Module
1317
- ___CSS_LOADER_EXPORT___.push([module.id, `.button__jnst2{cursor:pointer;margin:0;user-select:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-decoration:none;letter-spacing:0;vertical-align:middle;border-radius:3px;transition:none}.button__jnst2.flavor-accent{--button-color:var(--flavor-accent)}.button__jnst2.flavor-basic{--button-color:var(--flavor-basic)}.material-design .button__jnst2{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);min-height:40px;line-height:40px;padding:0 16px;text-align:center;font-size:14px;text-transform:uppercase;font-weight:500}.flat-design .button__jnst2{line-height:32px;padding:4px 18px;font-size:17px}.button__jnst2.primary__cT39p{background-color:var(--button-color);border:0 solid currentColor;color:#fff;--text-primary-default-color: white}.button__jnst2.secondary__Fozj5{background-color:rgba(0,0,0,0);border:1px solid var(--button-color);color:var(--button-color);--text-primary-default-color: var(--button-color)}.button__jnst2.disabled__tYMFZ{opacity:.3;cursor:default;pointer-events:none}.material-design .button__jnst2.small__dpDPv{min-height:17px;line-height:17px;padding:0 8px}.flat-design .button__jnst2.small__dpDPv{line-height:17px;padding:4px 9px}.button__jnst2.fullWidth__E_iTN{width:100%}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Button/button.scss","webpack://./src/scss/_flavorMixin.scss","webpack://./src/scss/_designMixin.scss","webpack://./src/scss/_variables.scss"],"names":[],"mappings":"AAIA,eACE,cAAA,CACA,QAAA,CACA,gBAAA,CACA,sBAAA,CACA,kBAAA,CACA,eAAA,CACA,oBAAA,CACA,gBAAA,CACA,qBAAA,CACA,iBAAA,CACA,eAAA,CCZA,6BACE,mCAAA,CAEF,4BACE,kCAAA,CCHS,gCFgBT,gGGDgB,CHEhB,eAAA,CACA,gBAAA,CACA,cAAA,CACA,iBAAA,CACA,cAAA,CACA,wBAAA,CACA,eAAA,CEvBS,4BF2BT,gBAAA,CACA,gBAAA,CACA,cAAA,CAGF,8BACE,oCAAA,CACA,2BAAA,CACA,UAAA,CACA,mCAAA,CAGF,gCACE,8BAAA,CACA,oCAAA,CACA,yBAAA,CACA,iDAAA,CAGF,+BACE,UAAA,CACA,cAAA,CACA,mBAAA,CEjDS,6CFsDP,eAAA,CACA,gBAAA,CACA,aAAA,CExDO,yCF4DP,gBAAA,CACA,eAAA,CAIJ,gCACE,UAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n@import \"../../../scss/flavorMixin\";\n\n.button {\n cursor: pointer;\n margin: 0;\n user-select: none;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n text-decoration: none;\n letter-spacing: 0;\n vertical-align: middle;\n border-radius: 3px;\n transition: none;\n\n @include flavorSelection(--button-color);\n\n @include design($material) {\n box-shadow: $boxShadowMaterial;\n min-height: 40px;\n line-height: 40px;\n padding: 0 16px;\n text-align: center;\n font-size: 14px;\n text-transform: uppercase;\n font-weight: 500;\n }\n\n @include design($flat) {\n line-height: 32px;\n padding: 4px 18px;\n font-size: 17px;\n }\n\n &.primary {\n background-color: var(--button-color);\n border: 0 solid currentColor;\n color: white;\n --text-primary-default-color: white;\n }\n\n &.secondary {\n background-color: transparent;\n border: 1px solid var(--button-color);\n color: var(--button-color);\n --text-primary-default-color: var(--button-color);\n }\n\n &.disabled {\n opacity: 0.3;\n cursor: default;\n pointer-events: none;\n }\n\n &.small {\n @include design($material) {\n min-height: 17px;\n line-height: 17px;\n padding: 0 8px;\n }\n\n @include design($flat) {\n line-height: 17px;\n padding: 4px 9px;\n }\n }\n\n &.fullWidth {\n width: 100%;\n }\n}\n","@use 'sass:selector';\n\n@mixin flavorSelection($varName) {\n &:global(.flavor-accent) {\n #{$varName}: var(--flavor-accent);\n }\n &:global(.flavor-basic) {\n #{$varName}: var(--flavor-basic);\n }\n}\n","@use 'sass:selector';\n\n@mixin design($designName) {\n @if & {\n @at-root #{selector.nest(':global(.'+$designName+\")\", &)} {\n @content\n }\n } @else {\n :global(.#{$designName}) {\n @content\n }\n }\n}\n","@import 'bootstrap/scss/functions';\n@import 'bootstrap/scss/variables';\n\n$classPrefix: \"rbm-\";\n\n$material: \"material-design\";\n$flat: \"flat-design\";\n\n$android: $material;\n$ios: $flat;\n\n$animationDuration: 0.3s;\n$animationDurationMaterial: $animationDuration;\n$animationDurationFlat: $animationDuration;\n$animationDurationAndroid: $animationDurationMaterial;\n$animationDurationIos: $animationDurationFlat;\n\n$fontSizeBase: 16px;\n\n$boxShadowMaterial: 0 2px 2px 0 rgb(0 0 0 / 14%),\n0 1px 5px 0 rgb(0 0 0 / 12%),\n0 3px 1px -2px rgb(0 0 0 / 20%);\n"],"sourceRoot":""}]);
1318
+ ___CSS_LOADER_EXPORT___.push([module.id, `.button__jnst2{cursor:pointer;margin:0;user-select:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-decoration:none;letter-spacing:0;vertical-align:middle;border-radius:3px;transition:none}.button__jnst2.flavor-accent{--button-color:var(--flavor-accent)}.button__jnst2.flavor-basic{--button-color:var(--flavor-basic)}.button__jnst2.flavor-destructive{--button-color:var(--flavor-destructive)}.button__jnst2.flavor-constructive{--button-color:var(--flavor-constructive)}.material-design .button__jnst2{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);min-height:40px;line-height:40px;padding:0 16px;text-align:center;font-size:14px;text-transform:uppercase;font-weight:500}.flat-design .button__jnst2{line-height:32px;padding:4px 18px;font-size:17px}.button__jnst2.primary__cT39p{background-color:var(--button-color);border:0 solid currentColor;color:#fff;--text-primary-default-color: white}.button__jnst2.secondary__Fozj5{background-color:rgba(0,0,0,0);border:1px solid var(--button-color);color:var(--button-color);--text-primary-default-color: var(--button-color)}.button__jnst2.disabled__tYMFZ{opacity:.3;cursor:default;pointer-events:none}.material-design .button__jnst2.small__dpDPv{min-height:17px;line-height:17px;padding:0 8px}.flat-design .button__jnst2.small__dpDPv{line-height:17px;padding:4px 9px}.button__jnst2.fullWidth__E_iTN{width:100%}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Button/button.scss","webpack://./src/scss/_flavorMixin.scss","webpack://./src/scss/_designMixin.scss","webpack://./src/scss/_variables.scss"],"names":[],"mappings":"AAIA,eACE,cAAA,CACA,QAAA,CACA,gBAAA,CACA,sBAAA,CACA,kBAAA,CACA,eAAA,CACA,oBAAA,CACA,gBAAA,CACA,qBAAA,CACA,iBAAA,CACA,eAAA,CCZA,6BACE,mCAAA,CAEF,4BACE,kCAAA,CAEF,kCACE,wCAAA,CAEF,mCACE,yCAAA,CCTS,gCFgBT,gGGDgB,CHEhB,eAAA,CACA,gBAAA,CACA,cAAA,CACA,iBAAA,CACA,cAAA,CACA,wBAAA,CACA,eAAA,CEvBS,4BF2BT,gBAAA,CACA,gBAAA,CACA,cAAA,CAGF,8BACE,oCAAA,CACA,2BAAA,CACA,UAAA,CACA,mCAAA,CAGF,gCACE,8BAAA,CACA,oCAAA,CACA,yBAAA,CACA,iDAAA,CAGF,+BACE,UAAA,CACA,cAAA,CACA,mBAAA,CEjDS,6CFsDP,eAAA,CACA,gBAAA,CACA,aAAA,CExDO,yCF4DP,gBAAA,CACA,eAAA,CAIJ,gCACE,UAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n@import \"../../../scss/flavorMixin\";\n\n.button {\n cursor: pointer;\n margin: 0;\n user-select: none;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n text-decoration: none;\n letter-spacing: 0;\n vertical-align: middle;\n border-radius: 3px;\n transition: none;\n\n @include flavorSelection(--button-color);\n\n @include design($material) {\n box-shadow: $boxShadowMaterial;\n min-height: 40px;\n line-height: 40px;\n padding: 0 16px;\n text-align: center;\n font-size: 14px;\n text-transform: uppercase;\n font-weight: 500;\n }\n\n @include design($flat) {\n line-height: 32px;\n padding: 4px 18px;\n font-size: 17px;\n }\n\n &.primary {\n background-color: var(--button-color);\n border: 0 solid currentColor;\n color: white;\n --text-primary-default-color: white;\n }\n\n &.secondary {\n background-color: transparent;\n border: 1px solid var(--button-color);\n color: var(--button-color);\n --text-primary-default-color: var(--button-color);\n }\n\n &.disabled {\n opacity: 0.3;\n cursor: default;\n pointer-events: none;\n }\n\n &.small {\n @include design($material) {\n min-height: 17px;\n line-height: 17px;\n padding: 0 8px;\n }\n\n @include design($flat) {\n line-height: 17px;\n padding: 4px 9px;\n }\n }\n\n &.fullWidth {\n width: 100%;\n }\n}\n","@use 'sass:selector';\n\n@mixin flavorSelection($varName) {\n &:global(.flavor-accent) {\n #{$varName}: var(--flavor-accent);\n }\n &:global(.flavor-basic) {\n #{$varName}: var(--flavor-basic);\n }\n &:global(.flavor-destructive) {\n #{$varName}: var(--flavor-destructive);\n }\n &:global(.flavor-constructive) {\n #{$varName}: var(--flavor-constructive);\n }\n}\n","@use 'sass:selector';\n\n@mixin design($designName) {\n @if & {\n @at-root #{selector.nest(':global(.'+$designName+\")\", &)} {\n @content\n }\n } @else {\n :global(.#{$designName}) {\n @content\n }\n }\n}\n","@import 'bootstrap/scss/functions';\n@import 'bootstrap/scss/variables';\n\n$classPrefix: \"rbm-\";\n\n$material: \"material-design\";\n$flat: \"flat-design\";\n\n$android: $material;\n$ios: $flat;\n\n$animationDuration: 0.3s;\n$animationDurationMaterial: $animationDuration;\n$animationDurationFlat: $animationDuration;\n$animationDurationAndroid: $animationDurationMaterial;\n$animationDurationIos: $animationDurationFlat;\n\n$fontSizeBase: 16px;\n\n$boxShadowMaterial: 0 2px 2px 0 rgb(0 0 0 / 14%),\n0 1px 5px 0 rgb(0 0 0 / 12%),\n0 3px 1px -2px rgb(0 0 0 / 20%);\n"],"sourceRoot":""}]);
1318
1319
  // Exports
1319
1320
  ___CSS_LOADER_EXPORT___.locals = {
1320
1321
  "button": `button__jnst2`,
@@ -10016,6 +10017,7 @@ __webpack_require__.d(__webpack_exports__, {
10016
10017
  Icon: () => (/* reexport */ Icon),
10017
10018
  Image: () => (/* reexport */ ImageMemo),
10018
10019
  InViewport: () => (/* reexport */ InViewportMemo),
10020
+ InfiniteList: () => (/* reexport */ InfiniteList),
10019
10021
  Inline: () => (/* reexport */ InlineMemo),
10020
10022
  InlineBlock: () => (/* reexport */ InlineBlockMemo),
10021
10023
  Input: () => (/* reexport */ Input),
@@ -11013,6 +11015,14 @@ const CardMemo = withMemo(Card, (card_default()));
11013
11015
  // EXTERNAL MODULE: ./src/Components/Dialog/buttonDialog.scss
11014
11016
  var buttonDialog = __webpack_require__(7661);
11015
11017
  var buttonDialog_default = /*#__PURE__*/__webpack_require__.n(buttonDialog);
11018
+ ;// CONCATENATED MODULE: ./src/Components/Flavor.ts
11019
+ var Flavor;
11020
+ (function (Flavor) {
11021
+ Flavor["Accent"] = "flavor-accent";
11022
+ Flavor["Basic"] = "flavor-basic";
11023
+ Flavor["Destructive"] = "flavor-destructive";
11024
+ Flavor["Constructive"] = "flavor-constructive";
11025
+ })(Flavor || (Flavor = {}));
11016
11026
  ;// CONCATENATED MODULE: ./src/Components/Dialog/ButtonDialog.tsx
11017
11027
 
11018
11028
 
@@ -11021,12 +11031,14 @@ var buttonDialog_default = /*#__PURE__*/__webpack_require__.n(buttonDialog);
11021
11031
 
11022
11032
 
11023
11033
 
11034
+
11024
11035
  function ButtonDialog({
11025
11036
  title,
11026
11037
  message,
11027
11038
  buttons,
11028
11039
  style,
11029
- className
11040
+ className,
11041
+ extraContent
11030
11042
  }) {
11031
11043
  // Variables
11032
11044
  // Refs
@@ -11039,20 +11051,27 @@ function ButtonDialog({
11039
11051
  return /*#__PURE__*/external_react_.createElement(BlockMemo, {
11040
11052
  className: classnames_default()((buttonDialog_default()).buttonDialog, className),
11041
11053
  style: style
11042
- }, !!title && /*#__PURE__*/external_react_.createElement(BlockMemo, {
11054
+ }, !!title && /*#__PURE__*/external_react_.createElement(BlockMemo, null, /*#__PURE__*/external_react_.createElement(tmp, {
11055
+ size: TEXT_SIZE.large,
11043
11056
  className: (buttonDialog_default()).title
11044
- }, /*#__PURE__*/external_react_.createElement(tmp, null, title)), /*#__PURE__*/external_react_.createElement(BlockMemo, {
11057
+ }, title)), /*#__PURE__*/external_react_.createElement(BlockMemo, null, /*#__PURE__*/external_react_.createElement(tmp, {
11045
11058
  className: (buttonDialog_default()).message
11046
- }, /*#__PURE__*/external_react_.createElement(tmp, null, message)), /*#__PURE__*/external_react_.createElement(BlockMemo, {
11059
+ }, message)), extraContent, /*#__PURE__*/external_react_.createElement(BlockMemo, {
11047
11060
  className: (buttonDialog_default()).buttonContainer
11048
- }, buttons.map((b, i) =>
11049
- /*#__PURE__*/
11050
- // eslint-disable-next-line react/no-array-index-key
11051
- external_react_.createElement(ClickableMemo, {
11052
- onClick: b.callback,
11053
- className: (buttonDialog_default()).button,
11054
- key: i + b.text
11055
- }, /*#__PURE__*/external_react_.createElement(tmp, null, b.text)))));
11061
+ }, buttons.map((b, i) => {
11062
+ var _a;
11063
+ return (
11064
+ /*#__PURE__*/
11065
+ // eslint-disable-next-line react/no-array-index-key
11066
+ external_react_.createElement(ClickableMemo, {
11067
+ onClick: b.callback,
11068
+ className: classnames_default()((buttonDialog_default()).button),
11069
+ key: i + b.text
11070
+ }, /*#__PURE__*/external_react_.createElement(tmp, {
11071
+ className: classnames_default()((buttonDialog_default()).buttonText, (_a = b.flavor) !== null && _a !== void 0 ? _a : Flavor.Accent)
11072
+ }, b.text))
11073
+ );
11074
+ })));
11056
11075
  }
11057
11076
  // Need ButtonDialogMemo for autocompletion of phpstorm
11058
11077
  const ButtonDialogMemo = withMemo(ButtonDialog, (buttonDialog_default()));
@@ -11094,6 +11113,7 @@ const AlertDialogMemo = withMemo(AlertDialog);
11094
11113
 
11095
11114
 
11096
11115
 
11116
+ // TODO Translation
11097
11117
  function ConfirmDialog({
11098
11118
  title,
11099
11119
  message,
@@ -11456,12 +11476,6 @@ const DropArea = withMemo(function DropArea(_a) {
11456
11476
  className: className
11457
11477
  }), children, placeholder));
11458
11478
  });
11459
- ;// CONCATENATED MODULE: ./src/Components/Flavor.ts
11460
- var Flavor;
11461
- (function (Flavor) {
11462
- Flavor["Accent"] = "flavor-accent";
11463
- Flavor["Basic"] = "flavor-basic";
11464
- })(Flavor || (Flavor = {}));
11465
11479
  // EXTERNAL MODULE: ./src/Components/FormElements/Button/button.scss
11466
11480
  var Button_button = __webpack_require__(2853);
11467
11481
  var button_default = /*#__PURE__*/__webpack_require__.n(Button_button);
@@ -24825,7 +24839,7 @@ function Grid({
24825
24839
  useContainerWidth = false,
24826
24840
  className,
24827
24841
  __allowChildren
24828
- }) {
24842
+ }, ref) {
24829
24843
  // Variables
24830
24844
  const appliedStyle = (0,external_react_.useMemo)(() => Object.assign(Object.assign({}, style), {
24831
24845
  '--grid-columns': columns,
@@ -24839,6 +24853,7 @@ function Grid({
24839
24853
  // Other
24840
24854
  // Render Functions
24841
24855
  return /*#__PURE__*/external_react_.createElement(BlockMemo, {
24856
+ ref: ref,
24842
24857
  style: appliedStyle,
24843
24858
  className: classnames_default()((grid_default()).grid, className, {
24844
24859
  [(grid_default()).useContainerWidth]: useContainerWidth
@@ -24847,7 +24862,7 @@ function Grid({
24847
24862
  }, children);
24848
24863
  }
24849
24864
  // Need RowMemo for autocompletion of phpstorm
24850
- const GridMemo = withMemo(Grid, (grid_default()));
24865
+ const GridMemo = withForwardRef(Grid, (grid_default()));
24851
24866
 
24852
24867
  ;// CONCATENATED MODULE: ./src/Components/Layout/Grid/GridItem.tsx
24853
24868
 
@@ -25025,6 +25040,270 @@ function ListItem({
25025
25040
  // Need ListItemMemo for autocompletion of phpstorm
25026
25041
  const ListItemMemo = withMemo(ListItem);
25027
25042
 
25043
+ ;// CONCATENATED MODULE: ./node_modules/react-window-infinite-loader/dist/index.esm.js
25044
+
25045
+
25046
+ function isInteger(value) {
25047
+ return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;
25048
+ }
25049
+
25050
+ function isRangeVisible(_ref) {
25051
+ var lastRenderedStartIndex = _ref.lastRenderedStartIndex,
25052
+ lastRenderedStopIndex = _ref.lastRenderedStopIndex,
25053
+ startIndex = _ref.startIndex,
25054
+ stopIndex = _ref.stopIndex;
25055
+
25056
+ return !(startIndex > lastRenderedStopIndex || stopIndex < lastRenderedStartIndex);
25057
+ }
25058
+
25059
+ function scanForUnloadedRanges(_ref) {
25060
+ var isItemLoaded = _ref.isItemLoaded,
25061
+ itemCount = _ref.itemCount,
25062
+ minimumBatchSize = _ref.minimumBatchSize,
25063
+ startIndex = _ref.startIndex,
25064
+ stopIndex = _ref.stopIndex;
25065
+
25066
+ var unloadedRanges = [];
25067
+
25068
+ var rangeStartIndex = null;
25069
+ var rangeStopIndex = null;
25070
+
25071
+ for (var _index = startIndex; _index <= stopIndex; _index++) {
25072
+ var loaded = isItemLoaded(_index);
25073
+
25074
+ if (!loaded) {
25075
+ rangeStopIndex = _index;
25076
+ if (rangeStartIndex === null) {
25077
+ rangeStartIndex = _index;
25078
+ }
25079
+ } else if (rangeStopIndex !== null) {
25080
+ unloadedRanges.push(rangeStartIndex, rangeStopIndex);
25081
+
25082
+ rangeStartIndex = rangeStopIndex = null;
25083
+ }
25084
+ }
25085
+
25086
+ // If :rangeStopIndex is not null it means we haven't ran out of unloaded rows.
25087
+ // Scan forward to try filling our :minimumBatchSize.
25088
+ if (rangeStopIndex !== null) {
25089
+ var potentialStopIndex = Math.min(Math.max(rangeStopIndex, rangeStartIndex + minimumBatchSize - 1), itemCount - 1);
25090
+
25091
+ for (var _index2 = rangeStopIndex + 1; _index2 <= potentialStopIndex; _index2++) {
25092
+ if (!isItemLoaded(_index2)) {
25093
+ rangeStopIndex = _index2;
25094
+ } else {
25095
+ break;
25096
+ }
25097
+ }
25098
+
25099
+ unloadedRanges.push(rangeStartIndex, rangeStopIndex);
25100
+ }
25101
+
25102
+ // Check to see if our first range ended prematurely.
25103
+ // In this case we should scan backwards to try filling our :minimumBatchSize.
25104
+ if (unloadedRanges.length) {
25105
+ while (unloadedRanges[1] - unloadedRanges[0] + 1 < minimumBatchSize && unloadedRanges[0] > 0) {
25106
+ var _index3 = unloadedRanges[0] - 1;
25107
+
25108
+ if (!isItemLoaded(_index3)) {
25109
+ unloadedRanges[0] = _index3;
25110
+ } else {
25111
+ break;
25112
+ }
25113
+ }
25114
+ }
25115
+
25116
+ return unloadedRanges;
25117
+ }
25118
+
25119
+ var classCallCheck = function (instance, Constructor) {
25120
+ if (!(instance instanceof Constructor)) {
25121
+ throw new TypeError("Cannot call a class as a function");
25122
+ }
25123
+ };
25124
+
25125
+ var createClass = function () {
25126
+ function defineProperties(target, props) {
25127
+ for (var i = 0; i < props.length; i++) {
25128
+ var descriptor = props[i];
25129
+ descriptor.enumerable = descriptor.enumerable || false;
25130
+ descriptor.configurable = true;
25131
+ if ("value" in descriptor) descriptor.writable = true;
25132
+ Object.defineProperty(target, descriptor.key, descriptor);
25133
+ }
25134
+ }
25135
+
25136
+ return function (Constructor, protoProps, staticProps) {
25137
+ if (protoProps) defineProperties(Constructor.prototype, protoProps);
25138
+ if (staticProps) defineProperties(Constructor, staticProps);
25139
+ return Constructor;
25140
+ };
25141
+ }();
25142
+
25143
+ var inherits = function (subClass, superClass) {
25144
+ if (typeof superClass !== "function" && superClass !== null) {
25145
+ throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
25146
+ }
25147
+
25148
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
25149
+ constructor: {
25150
+ value: subClass,
25151
+ enumerable: false,
25152
+ writable: true,
25153
+ configurable: true
25154
+ }
25155
+ });
25156
+ if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
25157
+ };
25158
+
25159
+ var possibleConstructorReturn = function (self, call) {
25160
+ if (!self) {
25161
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
25162
+ }
25163
+
25164
+ return call && (typeof call === "object" || typeof call === "function") ? call : self;
25165
+ };
25166
+
25167
+ var InfiniteLoader = function (_PureComponent) {
25168
+ inherits(InfiniteLoader, _PureComponent);
25169
+
25170
+ function InfiniteLoader() {
25171
+ var _ref;
25172
+
25173
+ var _temp, _this, _ret;
25174
+
25175
+ classCallCheck(this, InfiniteLoader);
25176
+
25177
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
25178
+ args[_key] = arguments[_key];
25179
+ }
25180
+
25181
+ return _ret = (_temp = (_this = possibleConstructorReturn(this, (_ref = InfiniteLoader.__proto__ || Object.getPrototypeOf(InfiniteLoader)).call.apply(_ref, [this].concat(args))), _this), _this._lastRenderedStartIndex = -1, _this._lastRenderedStopIndex = -1, _this._memoizedUnloadedRanges = [], _this._onItemsRendered = function (_ref2) {
25182
+ var visibleStartIndex = _ref2.visibleStartIndex,
25183
+ visibleStopIndex = _ref2.visibleStopIndex;
25184
+
25185
+ if (false) {}
25186
+
25187
+ _this._lastRenderedStartIndex = visibleStartIndex;
25188
+ _this._lastRenderedStopIndex = visibleStopIndex;
25189
+
25190
+ _this._ensureRowsLoaded(visibleStartIndex, visibleStopIndex);
25191
+ }, _this._setRef = function (listRef) {
25192
+ _this._listRef = listRef;
25193
+ }, _temp), possibleConstructorReturn(_this, _ret);
25194
+ }
25195
+
25196
+ createClass(InfiniteLoader, [{
25197
+ key: 'resetloadMoreItemsCache',
25198
+ value: function resetloadMoreItemsCache() {
25199
+ var autoReload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
25200
+
25201
+ this._memoizedUnloadedRanges = [];
25202
+
25203
+ if (autoReload) {
25204
+ this._ensureRowsLoaded(this._lastRenderedStartIndex, this._lastRenderedStopIndex);
25205
+ }
25206
+ }
25207
+ }, {
25208
+ key: 'componentDidMount',
25209
+ value: function componentDidMount() {
25210
+ if (false) {}
25211
+ }
25212
+ }, {
25213
+ key: 'render',
25214
+ value: function render() {
25215
+ var children = this.props.children;
25216
+
25217
+
25218
+ return children({
25219
+ onItemsRendered: this._onItemsRendered,
25220
+ ref: this._setRef
25221
+ });
25222
+ }
25223
+ }, {
25224
+ key: '_ensureRowsLoaded',
25225
+ value: function _ensureRowsLoaded(startIndex, stopIndex) {
25226
+ var _props = this.props,
25227
+ isItemLoaded = _props.isItemLoaded,
25228
+ itemCount = _props.itemCount,
25229
+ _props$minimumBatchSi = _props.minimumBatchSize,
25230
+ minimumBatchSize = _props$minimumBatchSi === undefined ? 10 : _props$minimumBatchSi,
25231
+ _props$threshold = _props.threshold,
25232
+ threshold = _props$threshold === undefined ? 15 : _props$threshold;
25233
+
25234
+
25235
+ var unloadedRanges = scanForUnloadedRanges({
25236
+ isItemLoaded: isItemLoaded,
25237
+ itemCount: itemCount,
25238
+ minimumBatchSize: minimumBatchSize,
25239
+ startIndex: Math.max(0, startIndex - threshold),
25240
+ stopIndex: Math.min(itemCount - 1, stopIndex + threshold)
25241
+ });
25242
+
25243
+ // Avoid calling load-rows unless range has changed.
25244
+ // This shouldn't be strictly necessary, but is maybe nice to do.
25245
+ if (this._memoizedUnloadedRanges.length !== unloadedRanges.length || this._memoizedUnloadedRanges.some(function (startOrStop, index) {
25246
+ return unloadedRanges[index] !== startOrStop;
25247
+ })) {
25248
+ this._memoizedUnloadedRanges = unloadedRanges;
25249
+ this._loadUnloadedRanges(unloadedRanges);
25250
+ }
25251
+ }
25252
+ }, {
25253
+ key: '_loadUnloadedRanges',
25254
+ value: function _loadUnloadedRanges(unloadedRanges) {
25255
+ var _this2 = this;
25256
+
25257
+ // loadMoreRows was renamed to loadMoreItems in v1.0.3; will be removed in v2.0
25258
+ var loadMoreItems = this.props.loadMoreItems || this.props.loadMoreRows;
25259
+
25260
+ var _loop = function _loop(i) {
25261
+ var startIndex = unloadedRanges[i];
25262
+ var stopIndex = unloadedRanges[i + 1];
25263
+ var promise = loadMoreItems(startIndex, stopIndex);
25264
+ if (promise != null) {
25265
+ promise.then(function () {
25266
+ // Refresh the visible rows if any of them have just been loaded.
25267
+ // Otherwise they will remain in their unloaded visual state.
25268
+ if (isRangeVisible({
25269
+ lastRenderedStartIndex: _this2._lastRenderedStartIndex,
25270
+ lastRenderedStopIndex: _this2._lastRenderedStopIndex,
25271
+ startIndex: startIndex,
25272
+ stopIndex: stopIndex
25273
+ })) {
25274
+ // Handle an unmount while promises are still in flight.
25275
+ if (_this2._listRef == null) {
25276
+ return;
25277
+ }
25278
+
25279
+ // Resize cached row sizes for VariableSizeList,
25280
+ // otherwise just re-render the list.
25281
+ if (typeof _this2._listRef.resetAfterIndex === 'function') {
25282
+ _this2._listRef.resetAfterIndex(startIndex, true);
25283
+ } else {
25284
+ // HACK reset temporarily cached item styles to force PureComponent to re-render.
25285
+ // This is pretty gross, but I'm okay with it for now.
25286
+ // Don't judge me.
25287
+ if (typeof _this2._listRef._getItemStyleCache === 'function') {
25288
+ _this2._listRef._getItemStyleCache(-1);
25289
+ }
25290
+ _this2._listRef.forceUpdate();
25291
+ }
25292
+ }
25293
+ });
25294
+ }
25295
+ };
25296
+
25297
+ for (var i = 0; i < unloadedRanges.length; i += 2) {
25298
+ _loop(i);
25299
+ }
25300
+ }
25301
+ }]);
25302
+ return InfiniteLoader;
25303
+ }(external_react_.PureComponent);
25304
+
25305
+ /* harmony default export */ const index_esm = (InfiniteLoader);
25306
+
25028
25307
  // EXTERNAL MODULE: ./src/Components/List/list.scss
25029
25308
  var list = __webpack_require__(2477);
25030
25309
  var list_default = /*#__PURE__*/__webpack_require__.n(list);
@@ -27500,13 +27779,15 @@ const SizeCalculatorMemo = withMemo(SizeCalculator);
27500
27779
 
27501
27780
 
27502
27781
 
27503
- const List = withMemo(function List({
27782
+ const List = withForwardRef(function List({
27504
27783
  items,
27505
27784
  renderItem,
27506
27785
  itemHeight: initialItemHeight = 0,
27507
27786
  className,
27508
- style
27509
- }) {
27787
+ style,
27788
+ onItemsRendered,
27789
+ autoSizeClassName
27790
+ }, ref) {
27510
27791
  // Variables
27511
27792
  // States
27512
27793
  const [itemHeight, setItemHeight] = (0,external_react_.useState)(initialItemHeight);
@@ -27520,7 +27801,9 @@ const List = withMemo(function List({
27520
27801
  // Effects
27521
27802
  // Other
27522
27803
  // Render Functions
27523
- return /*#__PURE__*/external_react_.createElement(AutoSizer, null, ({
27804
+ return /*#__PURE__*/external_react_.createElement(AutoSizer, {
27805
+ className: autoSizeClassName
27806
+ }, ({
27524
27807
  height,
27525
27808
  width
27526
27809
  }) => {
@@ -27528,12 +27811,16 @@ const List = withMemo(function List({
27528
27811
  onSize: setHeight,
27529
27812
  absolute: true
27530
27813
  }, renderItem(items[0], {
27814
+ visibility: 'hidden',
27815
+ pointerEvents: 'none',
27531
27816
  position: 'relative',
27532
27817
  top: '0px',
27533
27818
  left: '0px',
27534
27819
  width: '100%',
27535
27820
  zIndex: -1
27536
27821
  }, 0)), height !== undefined && width !== undefined && /*#__PURE__*/external_react_.createElement(FixedSizeList, {
27822
+ onItemsRendered: onItemsRendered,
27823
+ ref: ref,
27537
27824
  height: height,
27538
27825
  itemCount: items.length,
27539
27826
  width: width,
@@ -27544,6 +27831,87 @@ const List = withMemo(function List({
27544
27831
  }, renderItemInner));
27545
27832
  });
27546
27833
  }, (list_default()));
27834
+ ;// CONCATENATED MODULE: ./src/Components/List/InfiniteList.tsx
27835
+ var InfiniteList_awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
27836
+ function adopt(value) {
27837
+ return value instanceof P ? value : new P(function (resolve) {
27838
+ resolve(value);
27839
+ });
27840
+ }
27841
+ return new (P || (P = Promise))(function (resolve, reject) {
27842
+ function fulfilled(value) {
27843
+ try {
27844
+ step(generator.next(value));
27845
+ } catch (e) {
27846
+ reject(e);
27847
+ }
27848
+ }
27849
+ function rejected(value) {
27850
+ try {
27851
+ step(generator["throw"](value));
27852
+ } catch (e) {
27853
+ reject(e);
27854
+ }
27855
+ }
27856
+ function step(result) {
27857
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
27858
+ }
27859
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
27860
+ });
27861
+ };
27862
+
27863
+
27864
+
27865
+
27866
+ const InfiniteList = withMemo(function InfiniteList({
27867
+ renderItem,
27868
+ itemHeight,
27869
+ items,
27870
+ renderBefore,
27871
+ keyExtractor,
27872
+ hasNextPage,
27873
+ loadNextPage,
27874
+ style,
27875
+ className
27876
+ }) {
27877
+ // Refs
27878
+ // States/Variables/Selectors
27879
+ const [isPageLoading, setIsPageLoading] = (0,external_react_.useState)(false);
27880
+ // Dispatch
27881
+ // Callbacks
27882
+ const isItemLoaded = (0,external_react_.useCallback)(index => !hasNextPage || index < items.length, [hasNextPage, items]);
27883
+ const loadMore = (0,external_react_.useCallback)(() => InfiniteList_awaiter(this, void 0, void 0, function* () {
27884
+ if (!isPageLoading) {
27885
+ setIsPageLoading(true);
27886
+ try {
27887
+ loadNextPage();
27888
+ } finally {
27889
+ setIsPageLoading(false);
27890
+ }
27891
+ }
27892
+ }), [isPageLoading, loadNextPage]);
27893
+ // Effects
27894
+ // Other
27895
+ // RenderFunctions
27896
+ return /*#__PURE__*/external_react_default().createElement(index_esm, {
27897
+ isItemLoaded: isItemLoaded,
27898
+ loadMoreItems: loadMore,
27899
+ itemCount: hasNextPage ? items.length + 1 : items.length
27900
+ }, ({
27901
+ onItemsRendered,
27902
+ ref
27903
+ }) => /*#__PURE__*/external_react_default().createElement(List, {
27904
+ items: items,
27905
+ renderItem: renderItem,
27906
+ style: style,
27907
+ className: className,
27908
+ itemHeight: itemHeight,
27909
+ renderBefore: renderBefore,
27910
+ keyExtractor: keyExtractor,
27911
+ ref: ref,
27912
+ onItemsRendered: onItemsRendered
27913
+ }));
27914
+ });
27547
27915
  ;// CONCATENATED MODULE: ./src/Components/Menu/HoverMenu.tsx
27548
27916
 
27549
27917
 
@@ -28693,6 +29061,7 @@ function nonEmptyString(str, other = Characters.NBSP) {
28693
29061
 
28694
29062
 
28695
29063
 
29064
+
28696
29065
 
28697
29066
 
28698
29067
  })();
@@ -28735,6 +29104,7 @@ exports.HoverMenu = __webpack_exports__.HoverMenu;
28735
29104
  exports.Icon = __webpack_exports__.Icon;
28736
29105
  exports.Image = __webpack_exports__.Image;
28737
29106
  exports.InViewport = __webpack_exports__.InViewport;
29107
+ exports.InfiniteList = __webpack_exports__.InfiniteList;
28738
29108
  exports.Inline = __webpack_exports__.Inline;
28739
29109
  exports.InlineBlock = __webpack_exports__.InlineBlock;
28740
29110
  exports.Input = __webpack_exports__.Input;