@ainias42/react-bootstrap-mobile 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/bin/updateCopies.js +3 -2
  2. package/bootstrapReactMobile.ts +9 -0
  3. package/dist/bootstrapReactMobile.d.ts +9 -0
  4. package/dist/bootstrapReactMobile.js +881 -670
  5. package/dist/bootstrapReactMobile.js.map +1 -1
  6. package/dist/src/Components/Clickable/Clickable.d.ts +6 -3
  7. package/dist/src/Components/FormElements/Button/Button.d.ts +4 -1
  8. package/dist/src/Components/FormElements/Controller/HookForm.d.ts +8 -0
  9. package/dist/src/Components/FormElements/Controller/InputController.d.ts +4 -0
  10. package/dist/src/Components/FormElements/Controller/MultipleFileInputController.d.ts +3 -0
  11. package/dist/src/Components/FormElements/Controller/PasswordInputController.d.ts +4 -0
  12. package/dist/src/Components/FormElements/Controller/SelectController.d.ts +3 -0
  13. package/dist/src/Components/FormElements/Controller/SendFormContext.d.ts +3 -0
  14. package/dist/src/Components/FormElements/Controller/TextareaController.d.ts +4 -0
  15. package/dist/src/Components/FormElements/Controller/withHookController.d.ts +4 -0
  16. package/dist/src/Components/FormElements/Input/FileInput/MultipleFileInput.d.ts +2 -1
  17. package/dist/src/Components/FormElements/Input/Input.d.ts +1 -0
  18. package/dist/src/Components/FormElements/Select/Select.d.ts +2 -1
  19. package/dist/src/Components/FormElements/Textarea/Textarea.d.ts +1 -0
  20. package/dist/src/Components/Hooks/useComposedRef.d.ts +1 -1
  21. package/dist/src/Components/Image/Image.d.ts +2 -2
  22. package/dist/src/Size.d.ts +8 -0
  23. package/package.json +5 -3
  24. package/src/Components/Clickable/Clickable.tsx +41 -6
  25. package/src/Components/FormElements/Button/Button.tsx +14 -8
  26. package/src/Components/FormElements/Button/button.scss +17 -0
  27. package/src/Components/FormElements/Controller/HookForm.tsx +43 -0
  28. package/src/Components/FormElements/Controller/InputController.ts +4 -0
  29. package/src/Components/FormElements/Controller/MultipleFileInputController.ts +4 -0
  30. package/src/Components/FormElements/Controller/PasswordInputController.ts +4 -0
  31. package/src/Components/FormElements/Controller/SelectController.ts +4 -0
  32. package/src/Components/FormElements/Controller/SendFormContext.ts +7 -0
  33. package/src/Components/FormElements/Controller/TextareaController.ts +4 -0
  34. package/src/Components/FormElements/Controller/withHookController.tsx +53 -0
  35. package/src/Components/FormElements/Input/FileInput/MultipleFileInput.tsx +4 -1
  36. package/src/Components/FormElements/Input/FileInput/fileInput.scss +5 -6
  37. package/src/Components/FormElements/Input/Input.tsx +17 -6
  38. package/src/Components/FormElements/Input/PasswordInput/PasswordInput.tsx +1 -1
  39. package/src/Components/FormElements/Input/input.scss +5 -0
  40. package/src/Components/FormElements/Select/Select.tsx +5 -0
  41. package/src/Components/FormElements/Select/select.scss +5 -0
  42. package/src/Components/FormElements/Textarea/Textarea.tsx +9 -4
  43. package/src/Components/FormElements/Textarea/textarea.scss +10 -1
  44. package/src/Components/FormElements/hooks/useOnChangeDone.ts +1 -1
  45. package/src/Components/Hooks/useComposedRef.ts +13 -16
  46. package/src/Components/Image/Image.tsx +2 -2
  47. package/src/Size.ts +9 -0
  48. package/src/scss/_baseClasses.scss +7 -11
  49. package/src/scss/_colors.scss +10 -5
  50. package/src/scss/_default.scss +2 -2
  51. package/src/scss/_variables.scss +2 -2
  52. package/webpack.config.js +1 -0
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @ainias42/react-bootstrap-mobile v0.1.32
3
+ * @ainias42/react-bootstrap-mobile v0.2.0
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
@@ -1210,7 +1210,7 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1210
1210
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1211
1211
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1212
1212
  // Module
1213
- ___CSS_LOADER_EXPORT___.push([module.id, `.card__JNkK_{margin:8px;padding:16px;word-wrap:break-word;background-color:#fff}.card__JNkK_.fullHeight__xYEuK{height:calc(100% - 16px)}.card__JNkK_.noPaddingHeight__hOIog{padding-top:0;padding-bottom:0}.card__JNkK_.noPaddingWidth__ontjp{padding-left:0;padding-right:0}.card__JNkK_.noPadding__bi80V{padding:0}.card__JNkK_.noMargin__NLiNU{margin:0}.card__JNkK_.noMargin__NLiNU.fullHeight__xYEuK{height:100%}.card__JNkK_ .content__jwaqW{font-size:16px;margin:0;line-height:1.4}.card__JNkK_ .title__BrHn0{padding:0}.material-design .card__JNkK_{border-radius:2px;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)}.material-design .card__JNkK_ .content__jwaqW{color:#000;color:rgba(0,0,0,.54)}.material-design .card__JNkK_ .title__BrHn0{margin:8px 0 12px 0;font-size:24px}.flat-design .card__JNkK_{border-radius:8px;box-shadow:0 1px 2px 0 rgba(0,0,0,.12)}.flat-design .card__JNkK_ .content__jwaqW{color:#030303}.flat-design .card__JNkK_ .title__BrHn0{margin:4px 0 8px 0;font-size:20px}`, "",{"version":3,"sources":["webpack://./src/Components/Card/card.scss","webpack://./src/scss/_variables.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAKA,aACE,UAHW,CAIX,YAAA,CACA,oBAAA,CACA,qBAAA,CAEA,+BACE,wBAAA,CAGF,oCACE,aAAA,CACA,gBAAA,CAGF,mCACE,cAAA,CACA,eAAA,CAGF,8BACE,SAAA,CAGF,6BACE,QAAA,CAEA,+CACE,WAAA,CAIJ,6BACE,cCrBW,CDsBX,QAAA,CACA,eAAA,CAGF,2BACE,SAAA,CExCS,8BF4CT,iBAAA,CACA,gGC9BgB,CDgChB,8CACE,UAAA,CACA,qBAAA,CAGF,4CACE,mBAAA,CACA,cAAA,CEtDO,0BF2DT,iBAAA,CACA,sCAAA,CAEA,0CACE,aAAA,CAGF,wCACE,kBAAA,CACA,cAAA","sourcesContent":["@import \"../../scss/variables\";\n@import \"../../scss/designMixin\";\n\n$marginCard: 8px;\n\n.card {\n margin: $marginCard;\n padding: 16px;\n word-wrap: break-word;\n background-color: #ffffff;\n\n &.fullHeight {\n height: calc(100% - #{2*$marginCard})\n }\n\n &.noPaddingHeight {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n &.noPaddingWidth {\n padding-left: 0;\n padding-right: 0;\n }\n\n &.noPadding {\n padding: 0\n }\n\n &.noMargin {\n margin: 0;\n\n &.fullHeight {\n height: 100%\n }\n }\n\n .content {\n font-size: $fontSizeBase;\n margin: 0;\n line-height: 1.4;\n }\n\n .title {\n padding: 0;\n }\n\n @include design($material) {\n border-radius: 2px;\n box-shadow: $boxShadowMaterial;\n\n .content {\n color: #000000;\n color: rgba(0, 0, 0, 0.54);\n }\n\n .title {\n margin: 8px 0 12px 0;\n font-size: 24px;\n }\n }\n\n @include design($flat) {\n border-radius: 8px;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 12%);\n\n .content {\n color: #030303;\n }\n\n .title {\n margin: 4px 0 8px 0;\n font-size: 20px;\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","@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":""}]);
1213
+ ___CSS_LOADER_EXPORT___.push([module.id, `.card__JNkK_{margin:8px;padding:16px;word-wrap:break-word;background-color:#fff}.card__JNkK_.fullHeight__xYEuK{height:calc(100% - 16px)}.card__JNkK_.noPaddingHeight__hOIog{padding-top:0;padding-bottom:0}.card__JNkK_.noPaddingWidth__ontjp{padding-left:0;padding-right:0}.card__JNkK_.noPadding__bi80V{padding:0}.card__JNkK_.noMargin__NLiNU{margin:0}.card__JNkK_.noMargin__NLiNU.fullHeight__xYEuK{height:100%}.card__JNkK_ .content__jwaqW{font-size:16px;margin:0;line-height:1.4}.card__JNkK_ .title__BrHn0{padding:0}.material-design .card__JNkK_{border-radius:2px;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)}.material-design .card__JNkK_ .content__jwaqW{color:#000;color:rgba(0,0,0,.54)}.material-design .card__JNkK_ .title__BrHn0{margin:8px 0 12px 0;font-size:24px}.flat-design .card__JNkK_{border-radius:8px;box-shadow:0 1px 2px 0 rgba(0,0,0,.12)}.flat-design .card__JNkK_ .content__jwaqW{color:#030303}.flat-design .card__JNkK_ .title__BrHn0{margin:4px 0 8px 0;font-size:20px}`, "",{"version":3,"sources":["webpack://./src/Components/Card/card.scss","webpack://./src/scss/_variables.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAKA,aACE,UAHW,CAIX,YAAA,CACA,oBAAA,CACA,qBAAA,CAEA,+BACE,wBAAA,CAGF,oCACE,aAAA,CACA,gBAAA,CAGF,mCACE,cAAA,CACA,eAAA,CAGF,8BACE,SAAA,CAGF,6BACE,QAAA,CAEA,+CACE,WAAA,CAIJ,6BACE,cCrBW,CDsBX,QAAA,CACA,eAAA,CAGF,2BACE,SAAA,CExCS,8BF4CT,iBAAA,CACA,gGC9BgB,CDgChB,8CACE,UAAA,CACA,qBAAA,CAGF,4CACE,mBAAA,CACA,cAAA,CEtDO,0BF2DT,iBAAA,CACA,sCAAA,CAEA,0CACE,aAAA,CAGF,wCACE,kBAAA,CACA,cAAA","sourcesContent":["@import \"../../scss/variables\";\n@import \"../../scss/designMixin\";\n\n$marginCard: 8px;\n\n.card {\n margin: $marginCard;\n padding: 16px;\n word-wrap: break-word;\n background-color: #ffffff;\n\n &.fullHeight {\n height: calc(100% - #{2*$marginCard})\n }\n\n &.noPaddingHeight {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n &.noPaddingWidth {\n padding-left: 0;\n padding-right: 0;\n }\n\n &.noPadding {\n padding: 0\n }\n\n &.noMargin {\n margin: 0;\n\n &.fullHeight {\n height: 100%\n }\n }\n\n .content {\n font-size: $fontSizeBase;\n margin: 0;\n line-height: 1.4;\n }\n\n .title {\n padding: 0;\n }\n\n @include design($material) {\n border-radius: 2px;\n box-shadow: $boxShadowMaterial;\n\n .content {\n color: #000000;\n color: rgba(0, 0, 0, 0.54);\n }\n\n .title {\n margin: 8px 0 12px 0;\n font-size: 24px;\n }\n }\n\n @include design($flat) {\n border-radius: 8px;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 12%);\n\n .content {\n color: #030303;\n }\n\n .title {\n margin: 4px 0 8px 0;\n font-size: 20px;\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","@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":""}]);
1214
1214
  // Exports
1215
1215
  ___CSS_LOADER_EXPORT___.locals = {
1216
1216
  "card": `card__JNkK_`,
@@ -1314,13 +1314,15 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1314
1314
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1315
1315
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1316
1316
  // 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}`, "",{"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","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","@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":""}]);
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
1318
  // Exports
1319
1319
  ___CSS_LOADER_EXPORT___.locals = {
1320
1320
  "button": `button__jnst2`,
1321
1321
  "primary": `primary__cT39p`,
1322
1322
  "secondary": `secondary__Fozj5`,
1323
- "disabled": `disabled__tYMFZ`
1323
+ "disabled": `disabled__tYMFZ`,
1324
+ "small": `small__dpDPv`,
1325
+ "fullWidth": `fullWidth__E_iTN`
1324
1326
  };
1325
1327
  module.exports = ___CSS_LOADER_EXPORT___;
1326
1328
 
@@ -1378,7 +1380,7 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1378
1380
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1379
1381
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1380
1382
  // Module
1381
- ___CSS_LOADER_EXPORT___.push([module.id, `.fileInput__h2WBs{display:flex;flex-direction:column;position:relative;cursor:pointer}.fileInput__h2WBs .previewContainer__IdxyI{align-items:stretch;flex-grow:1}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A{position:relative;border:1px solid var(--border-light)}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A .previewRemove__GYrmU{position:absolute;top:5px;right:5px;opacity:0;font-size:1.5rem}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A .previewRemove__GYrmU svg{background:rgba(255,255,255,.2)}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A:hover .previewRemove__GYrmU{opacity:.7}.fileInput__h2WBs .previewContainer__IdxyI .previewImage__v8Iv_{width:100%;height:100%;object-fit:contain}.fileInput__h2WBs .previewContainer__IdxyI .previewText__BD6Nu{width:100%;height:100%;min-height:4rem;display:flex;justify-content:center;align-items:center}.fileInput__h2WBs .previewContainer__IdxyI .previewTextIcon__MUiWT{padding-right:4px}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S{position:relative;border-radius:3px;background-color:var(--border-light);display:flex;justify-content:center;align-items:center;font-size:2rem}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S .addFileButton__tJkSa{width:100%;height:100%;min-height:4rem;display:flex;justify-content:center;align-items:center}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S.hidden__p2FRj{display:none}.fileInput__h2WBs .value__lzxOL{display:none}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Input/FileInput/fileInput.scss"],"names":[],"mappings":"AAAA,kBACE,YAAA,CACA,qBAAA,CACA,iBAAA,CACA,cAAA,CAEA,2CACE,mBAAA,CACA,WAAA,CAEA,2DACE,iBAAA,CACA,oCAAA,CAEA,iFACE,iBAAA,CACA,OAAA,CACA,SAAA,CACA,SAAA,CACA,gBAAA,CAEA,qFACE,+BAAA,CAIJ,uFACE,UAAA,CAIJ,gEACE,UAAA,CACA,WAAA,CACA,kBAAA,CAGF,+DACE,UAAA,CACA,WAAA,CACA,eAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CAGF,mEACE,iBAAA,CAIF,2DACE,iBAAA,CACA,iBAAA,CACA,oCAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,cAAA,CAEA,iFACE,UAAA,CACA,WAAA,CACA,eAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CAGF,yEACE,YAAA,CAMN,gCACE,YAAA","sourcesContent":[".fileInput {\n display: flex;\n flex-direction: column;\n position: relative;\n cursor: pointer;\n\n .previewContainer {\n align-items: stretch;\n flex-grow: 1;\n\n .preview {\n position: relative;\n border: 1px solid var(--border-light);\n\n .previewRemove {\n position: absolute;\n top: 5px;\n right: 5px;\n opacity: 0;\n font-size: 1.5rem;\n\n svg {\n background: rgba(255, 255, 255, 0.2);\n }\n }\n\n &:hover .previewRemove {\n opacity: 0.7;\n }\n }\n\n .previewImage {\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n\n .previewText {\n width: 100%;\n height: 100%;\n min-height: 4rem;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .previewTextIcon {\n padding-right: 4px;\n }\n\n\n .addFile {\n position: relative;\n border-radius: 3px;\n background-color: var(--border-light);\n\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n\n .addFileButton {\n width: 100%;\n height: 100%;\n min-height: 4rem;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n &.hidden {\n display: none;\n }\n }\n }\n\n\n .value {\n display: none;\n //position: absolute;\n //top: 0;\n //left: 0;\n //right: 0;\n //bottom: 0;\n //opacity: 0;\n }\n}\n"],"sourceRoot":""}]);
1383
+ ___CSS_LOADER_EXPORT___.push([module.id, `.fileInput__h2WBs{display:flex;flex-direction:column;position:relative;cursor:pointer}.fileInput__h2WBs .previewContainer__IdxyI{align-items:stretch;flex-grow:1}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A{position:relative;border:1px solid var(--border-light)}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A .previewRemove__GYrmU{position:absolute;top:5px;right:5px;opacity:0;font-size:1.5rem}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A .previewRemove__GYrmU svg{background:rgba(255,255,255,.2)}.fileInput__h2WBs .previewContainer__IdxyI .preview__cd_2A:hover .previewRemove__GYrmU{opacity:.7}.fileInput__h2WBs .previewContainer__IdxyI .previewImage__v8Iv_{width:100%;height:100%;object-fit:contain}.fileInput__h2WBs .previewContainer__IdxyI .previewText__BD6Nu{width:100%;height:100%;min-height:4rem;display:flex;justify-content:center;align-items:center}.fileInput__h2WBs .previewContainer__IdxyI .previewTextIcon__MUiWT{padding-right:4px}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S{position:relative;border-radius:3px;background-color:var(--border-light);display:flex;justify-content:center;align-items:center;font-size:2rem}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S .addFileButton__tJkSa{width:100%;height:100%;min-height:4rem;display:flex;justify-content:center;align-items:center}.fileInput__h2WBs .previewContainer__IdxyI .addFile__l9v3S.hidden__p2FRj{display:none}.fileInput__h2WBs .value__lzxOL{display:none}.fileInput__h2WBs .error__v0GST{font-size:.7rem;--text-primary-default-color: var(--text-error) }`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Input/FileInput/fileInput.scss"],"names":[],"mappings":"AAAA,kBACE,YAAA,CACA,qBAAA,CACA,iBAAA,CACA,cAAA,CAEA,2CACE,mBAAA,CACA,WAAA,CAEA,2DACE,iBAAA,CACA,oCAAA,CAEA,iFACE,iBAAA,CACA,OAAA,CACA,SAAA,CACA,SAAA,CACA,gBAAA,CAEA,qFACE,+BAAA,CAIJ,uFACE,UAAA,CAIJ,gEACE,UAAA,CACA,WAAA,CACA,kBAAA,CAGF,+DACE,UAAA,CACA,WAAA,CACA,eAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CAGF,mEACE,iBAAA,CAIF,2DACE,iBAAA,CACA,iBAAA,CACA,oCAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,cAAA,CAEA,iFACE,UAAA,CACA,WAAA,CACA,eAAA,CAEA,YAAA,CACA,sBAAA,CACA,kBAAA,CAGF,yEACE,YAAA,CAMN,gCACE,YAAA,CAGF,gCACE,eAAA,CACA,gDAAA","sourcesContent":[".fileInput {\n display: flex;\n flex-direction: column;\n position: relative;\n cursor: pointer;\n\n .previewContainer {\n align-items: stretch;\n flex-grow: 1;\n\n .preview {\n position: relative;\n border: 1px solid var(--border-light);\n\n .previewRemove {\n position: absolute;\n top: 5px;\n right: 5px;\n opacity: 0;\n font-size: 1.5rem;\n\n svg {\n background: rgba(255, 255, 255, 0.2);\n }\n }\n\n &:hover .previewRemove {\n opacity: 0.7;\n }\n }\n\n .previewImage {\n width: 100%;\n height: 100%;\n object-fit: contain;\n }\n\n .previewText {\n width: 100%;\n height: 100%;\n min-height: 4rem;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .previewTextIcon {\n padding-right: 4px;\n }\n\n\n .addFile {\n position: relative;\n border-radius: 3px;\n background-color: var(--border-light);\n\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n\n .addFileButton {\n width: 100%;\n height: 100%;\n min-height: 4rem;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n &.hidden {\n display: none;\n }\n }\n }\n\n\n .value {\n display: none;\n }\n\n .error {\n font-size: 0.7rem;\n --text-primary-default-color: var(--text-error)\n }\n}\n"],"sourceRoot":""}]);
1382
1384
  // Exports
1383
1385
  ___CSS_LOADER_EXPORT___.locals = {
1384
1386
  "fileInput": `fileInput__h2WBs`,
@@ -1391,7 +1393,8 @@ ___CSS_LOADER_EXPORT___.locals = {
1391
1393
  "addFile": `addFile__l9v3S`,
1392
1394
  "addFileButton": `addFileButton__tJkSa`,
1393
1395
  "hidden": `hidden__p2FRj`,
1394
- "value": `value__lzxOL`
1396
+ "value": `value__lzxOL`,
1397
+ "error": `error__v0GST`
1395
1398
  };
1396
1399
  module.exports = ___CSS_LOADER_EXPORT___;
1397
1400
 
@@ -1425,7 +1428,7 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1425
1428
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1426
1429
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1427
1430
  // Module
1428
- ___CSS_LOADER_EXPORT___.push([module.id, `.input__ylsuY{width:100%}.input__ylsuY.inline__CuO0B{--basis: 50%;display:flex}.input__ylsuY.inline__CuO0B .label__Uty0i{display:inline-block;flex-grow:1;flex-shrink:0;flex-basis:var(--basis);font-weight:normal}.input__ylsuY.inline__CuO0B .text__OJDZ5{min-width:41px}.input__ylsuY .label__Uty0i{display:block;font-weight:bold}.input__ylsuY .text__OJDZ5{width:100%;background-color:rgba(0,0,0,0);border:0;outline:none;padding:0;font-size:1rem}.material-design .input__ylsuY .text__OJDZ5{color:#212121;background-image:linear-gradient(to top, transparent 1px, #afafaf 1px);background-size:100% 2px;background-repeat:no-repeat;background-position:center bottom;padding-bottom:2px}.material-design .input__ylsuY .text__OJDZ5:read-only,.material-design .input__ylsuY .text__OJDZ5:read-only:focus{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}.material-design .input__ylsuY .text__OJDZ5:focus{background-image:linear-gradient(var(--flavor-accent), var(--flavor-accent)),linear-gradient(to top, transparent 1px, #afafaf 1px)}.flat-design .input__ylsuY .text__OJDZ5{color:#1f1f21}.flat-design .input__ylsuY .text__OJDZ5,.flat-design .input__ylsuY .text__OJDZ5:focus{border-bottom:1px solid var(--border-light)}.input__ylsuY.hiddenInput__KSMQB .text__OJDZ5{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}.input__ylsuY.hiddenInput__KSMQB.noFocusHint__bBtc8 .text__OJDZ5:focus{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Input/input.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAGA,cACE,UAAA,CAEA,4BACE,YAAA,CACA,YAAA,CACA,0CACE,oBAAA,CACA,WAAA,CACA,aAAA,CACA,uBAAA,CACA,kBAAA,CAEF,yCAEE,cAAA,CAIJ,4BACE,aAAA,CACA,gBAAA,CAGF,2BACE,UAAA,CACA,8BAAA,CACA,QAAA,CACA,YAAA,CACA,SAAA,CACA,cAAA,CC7BS,4CDgCP,aAAA,CACA,sEAAA,CACA,wBAAA,CACA,2BAAA,CACA,iCAAA,CACA,kBAAA,CAEA,kHACE,qBAAA,CACA,qCAAA,CAGF,kDACE,kIAAA,CC7CK,wCDmDP,aAAA,CACA,sFACE,2CAAA,CAMJ,8CACE,qBAAA,CACA,qCAAA,CAKE,uEACE,qBAAA,CACA,qCAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n\n.input {\n width: 100%;\n\n &.inline {\n --basis: 50%;\n display: flex;\n .label {\n display: inline-block;\n flex-grow: 1;\n flex-shrink: 0;\n flex-basis: var(--basis);\n font-weight: normal;\n }\n .text {\n // 3 numbers\n min-width: 41px;\n }\n }\n\n .label {\n display: block;\n font-weight: bold;\n }\n\n .text {\n width: 100%;\n background-color: transparent;\n border: 0;\n outline: none;\n padding: 0;\n font-size: 1rem;\n\n @include design($material) {\n color: #212121;\n background-image: linear-gradient(to top, transparent 1px, #afafaf 1px);\n background-size: 100% 2px;\n background-repeat: no-repeat;\n background-position: center bottom;\n padding-bottom: 2px;\n\n &:read-only, &:read-only:focus {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\n\n &:focus {\n background-image: linear-gradient(var(--flavor-accent), var(--flavor-accent)),\n linear-gradient(to top, transparent 1px, #afafaf 1px);\n }\n }\n\n @include design($flat) {\n color: #1f1f21;\n &, &:focus {\n border-bottom: 1px solid var(--border-light);\n }\n }\n }\n\n &.hiddenInput {\n .text {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\n\n &.noFocusHint {\n .text {\n &:focus {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\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":""}]);
1431
+ ___CSS_LOADER_EXPORT___.push([module.id, `.input__ylsuY{width:100%}.input__ylsuY.inline__CuO0B{--basis: 50%;display:flex}.input__ylsuY.inline__CuO0B .label__Uty0i{display:inline-block;flex-grow:1;flex-shrink:0;flex-basis:var(--basis);font-weight:normal}.input__ylsuY.inline__CuO0B .text__OJDZ5{min-width:41px}.input__ylsuY .label__Uty0i{display:block;font-weight:bold}.input__ylsuY .text__OJDZ5{width:100%;background-color:rgba(0,0,0,0);border:0;outline:none;padding:0;font-size:1rem}.material-design .input__ylsuY .text__OJDZ5{color:#212121;background-image:linear-gradient(to top, transparent 1px, #afafaf 1px);background-size:100% 2px;background-repeat:no-repeat;background-position:center bottom;padding-bottom:2px}.material-design .input__ylsuY .text__OJDZ5:read-only,.material-design .input__ylsuY .text__OJDZ5:read-only:focus{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}.material-design .input__ylsuY .text__OJDZ5:focus{background-image:linear-gradient(var(--flavor-accent), var(--flavor-accent)),linear-gradient(to top, transparent 1px, #afafaf 1px)}.flat-design .input__ylsuY .text__OJDZ5{color:#1f1f21}.flat-design .input__ylsuY .text__OJDZ5,.flat-design .input__ylsuY .text__OJDZ5:focus{border-bottom:1px solid var(--border-light)}.input__ylsuY.hiddenInput__KSMQB .text__OJDZ5{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}.input__ylsuY.hiddenInput__KSMQB.noFocusHint__bBtc8 .text__OJDZ5:focus{background-image:none;border-bottom:1px solid rgba(0,0,0,0)}.input__ylsuY .error__LVBul{font-size:.7rem;--text-primary-default-color: var(--text-error) }`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Input/input.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAGA,cACE,UAAA,CAEA,4BACE,YAAA,CACA,YAAA,CACA,0CACE,oBAAA,CACA,WAAA,CACA,aAAA,CACA,uBAAA,CACA,kBAAA,CAEF,yCAEE,cAAA,CAIJ,4BACE,aAAA,CACA,gBAAA,CAGF,2BACE,UAAA,CACA,8BAAA,CACA,QAAA,CACA,YAAA,CACA,SAAA,CACA,cAAA,CC7BS,4CDgCP,aAAA,CACA,sEAAA,CACA,wBAAA,CACA,2BAAA,CACA,iCAAA,CACA,kBAAA,CAEA,kHACE,qBAAA,CACA,qCAAA,CAGF,kDACE,kIAAA,CC7CK,wCDmDP,aAAA,CACA,sFACE,2CAAA,CAMJ,8CACE,qBAAA,CACA,qCAAA,CAKE,uEACE,qBAAA,CACA,qCAAA,CAMR,4BACE,eAAA,CACA,gDAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n\n.input {\n width: 100%;\n\n &.inline {\n --basis: 50%;\n display: flex;\n .label {\n display: inline-block;\n flex-grow: 1;\n flex-shrink: 0;\n flex-basis: var(--basis);\n font-weight: normal;\n }\n .text {\n // 3 numbers\n min-width: 41px;\n }\n }\n\n .label {\n display: block;\n font-weight: bold;\n }\n\n .text {\n width: 100%;\n background-color: transparent;\n border: 0;\n outline: none;\n padding: 0;\n font-size: 1rem;\n\n @include design($material) {\n color: #212121;\n background-image: linear-gradient(to top, transparent 1px, #afafaf 1px);\n background-size: 100% 2px;\n background-repeat: no-repeat;\n background-position: center bottom;\n padding-bottom: 2px;\n\n &:read-only, &:read-only:focus {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\n\n &:focus {\n background-image: linear-gradient(var(--flavor-accent), var(--flavor-accent)),\n linear-gradient(to top, transparent 1px, #afafaf 1px);\n }\n }\n\n @include design($flat) {\n color: #1f1f21;\n &, &:focus {\n border-bottom: 1px solid var(--border-light);\n }\n }\n }\n\n &.hiddenInput {\n .text {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\n\n &.noFocusHint {\n .text {\n &:focus {\n background-image: none;\n border-bottom: 1px solid transparent;\n }\n }\n }\n }\n\n .error {\n font-size: 0.7rem;\n --text-primary-default-color: var(--text-error)\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":""}]);
1429
1432
  // Exports
1430
1433
  ___CSS_LOADER_EXPORT___.locals = {
1431
1434
  "input": `input__ylsuY`,
@@ -1433,7 +1436,8 @@ ___CSS_LOADER_EXPORT___.locals = {
1433
1436
  "label": `label__Uty0i`,
1434
1437
  "text": `text__OJDZ5`,
1435
1438
  "hiddenInput": `hiddenInput__KSMQB`,
1436
- "noFocusHint": `noFocusHint__bBtc8`
1439
+ "noFocusHint": `noFocusHint__bBtc8`,
1440
+ "error": `error__LVBul`
1437
1441
  };
1438
1442
  module.exports = ___CSS_LOADER_EXPORT___;
1439
1443
 
@@ -1473,14 +1477,15 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1473
1477
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1474
1478
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1475
1479
  // Module
1476
- ___CSS_LOADER_EXPORT___.push([module.id, `.select__mz94a{width:100%}.select__mz94a .label__oyzeA{font-weight:bold;display:block}.select__mz94a .input__HyuSy{outline:none;background-color:rgba(0,0,0,0);height:2rem;line-height:2rem;color:#1f1f21;appearance:none;border:none;border-radius:0;padding:0 20px 0 0;background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI1cHgiIHZpZXdCb3g9IjAgMCAxMCA1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0My4yICgzOTA2OSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+c2VsZWN0LWFsbG93PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9InNlbGVjdCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imlvcy1zZWxlY3QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOTguMDAwMDAwLCAtMTE0LjAwMDAwMCkiIGZpbGw9IiM3NTc1NzUiPgogICAgICAgICAgICA8ZyBpZD0ibWVudS1iYXItKy1vcGVuLW1lbnUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMy4wMDAwMDAsIDEwMC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJtZW51LWJhciI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9InNlbGVjdC1hbGxvdyIgcG9pbnRzPSI3NSAxNCA4MCAxOSA4NSAxNCI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=");background-repeat:no-repeat}.select__mz94a .input__HyuSy:focus{outline:none}.material-design .select__mz94a .input__HyuSy{-webkit-font-smoothing:antialiased;font-size:15px;background-size:auto,100% 1px;background-position:right center,left bottom}.flat-design .select__mz94a .input__HyuSy{font-size:17px;background-position:right center}.select__mz94a.inline__VLoaD{display:flex;align-items:center}.select__mz94a.inline__VLoaD .label__oyzeA{padding-right:4px;flex:1}.select__mz94a.small__UbTP3 .input__HyuSy{height:initial;line-height:1.5rem}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Select/select.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAGA,eACE,UAAA,CAEA,6BACE,gBAAA,CACA,aAAA,CAGF,6BACE,YAAA,CACA,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,aAAA,CACA,eAAA,CACA,WAAA,CACA,eAAA,CACA,kBAAA,CACA,8lCAAA,CACA,2BAAA,CAEA,mCACE,YAAA,CCrBO,8CDyBP,kCAAA,CACA,cAAA,CACA,6BAAA,CACA,4CAAA,CC5BO,0CDgCP,cAAA,CACA,gCAAA,CAIJ,6BACE,YAAA,CACA,kBAAA,CAEA,2CACE,iBAAA,CACA,MAAA,CAIJ,0CACE,cAAA,CACA,kBAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n\n.select {\n width: 100%;\n\n .label {\n font-weight: bold;\n display: block;\n }\n\n .input {\n outline: none;\n background-color: transparent;\n height: 2rem;\n line-height: 2rem;\n color: #1f1f21;\n appearance: none;\n border: none;\n border-radius: 0;\n padding: 0 20px 0 0;\n background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI1cHgiIHZpZXdCb3g9IjAgMCAxMCA1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0My4yICgzOTA2OSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+c2VsZWN0LWFsbG93PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9InNlbGVjdCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imlvcy1zZWxlY3QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOTguMDAwMDAwLCAtMTE0LjAwMDAwMCkiIGZpbGw9IiM3NTc1NzUiPgogICAgICAgICAgICA8ZyBpZD0ibWVudS1iYXItKy1vcGVuLW1lbnUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMy4wMDAwMDAsIDEwMC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJtZW51LWJhciI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9InNlbGVjdC1hbGxvdyIgcG9pbnRzPSI3NSAxNCA4MCAxOSA4NSAxNCI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=');\n background-repeat: no-repeat;\n\n &:focus {\n outline: none;\n }\n\n @include design($material) {\n -webkit-font-smoothing: antialiased;\n font-size: 15px;\n background-size: auto, 100% 1px;\n background-position: right center, left bottom;\n }\n\n @include design($flat) {\n font-size: 17px;\n background-position: right center;\n }\n }\n\n &.inline {\n display: flex;\n align-items: center;\n\n .label {\n padding-right: 4px;\n flex: 1;\n }\n }\n\n &.small .input {\n height: initial;\n line-height: 1.5rem;\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":""}]);
1480
+ ___CSS_LOADER_EXPORT___.push([module.id, `.select__mz94a{width:100%}.select__mz94a .label__oyzeA{font-weight:bold;display:block}.select__mz94a .input__HyuSy{outline:none;background-color:rgba(0,0,0,0);height:2rem;line-height:2rem;color:#1f1f21;appearance:none;border:none;border-radius:0;padding:0 20px 0 0;background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI1cHgiIHZpZXdCb3g9IjAgMCAxMCA1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0My4yICgzOTA2OSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+c2VsZWN0LWFsbG93PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9InNlbGVjdCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imlvcy1zZWxlY3QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOTguMDAwMDAwLCAtMTE0LjAwMDAwMCkiIGZpbGw9IiM3NTc1NzUiPgogICAgICAgICAgICA8ZyBpZD0ibWVudS1iYXItKy1vcGVuLW1lbnUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMy4wMDAwMDAsIDEwMC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJtZW51LWJhciI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9InNlbGVjdC1hbGxvdyIgcG9pbnRzPSI3NSAxNCA4MCAxOSA4NSAxNCI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=");background-repeat:no-repeat}.select__mz94a .input__HyuSy:focus{outline:none}.material-design .select__mz94a .input__HyuSy{-webkit-font-smoothing:antialiased;font-size:15px;background-size:auto,100% 1px;background-position:right center,left bottom}.flat-design .select__mz94a .input__HyuSy{font-size:17px;background-position:right center}.select__mz94a.inline__VLoaD{display:flex;align-items:center}.select__mz94a.inline__VLoaD .label__oyzeA{padding-right:4px;flex:1}.select__mz94a.small__UbTP3 .input__HyuSy{height:initial;line-height:1.5rem}.select__mz94a .error__VJG4n{font-size:.7rem;--text-primary-default-color: var(--text-error) }`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Select/select.scss","webpack://./src/scss/_designMixin.scss"],"names":[],"mappings":"AAGA,eACE,UAAA,CAEA,6BACE,gBAAA,CACA,aAAA,CAGF,6BACE,YAAA,CACA,8BAAA,CACA,WAAA,CACA,gBAAA,CACA,aAAA,CACA,eAAA,CACA,WAAA,CACA,eAAA,CACA,kBAAA,CACA,8lCAAA,CACA,2BAAA,CAEA,mCACE,YAAA,CCrBO,8CDyBP,kCAAA,CACA,cAAA,CACA,6BAAA,CACA,4CAAA,CC5BO,0CDgCP,cAAA,CACA,gCAAA,CAIJ,6BACE,YAAA,CACA,kBAAA,CAEA,2CACE,iBAAA,CACA,MAAA,CAIJ,0CACE,cAAA,CACA,kBAAA,CAGF,6BACE,eAAA,CACA,gDAAA","sourcesContent":["@import \"../../../scss/variables\";\n@import \"../../../scss/designMixin\";\n\n.select {\n width: 100%;\n\n .label {\n font-weight: bold;\n display: block;\n }\n\n .input {\n outline: none;\n background-color: transparent;\n height: 2rem;\n line-height: 2rem;\n color: #1f1f21;\n appearance: none;\n border: none;\n border-radius: 0;\n padding: 0 20px 0 0;\n background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI1cHgiIHZpZXdCb3g9IjAgMCAxMCA1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0My4yICgzOTA2OSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+c2VsZWN0LWFsbG93PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9InNlbGVjdCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imlvcy1zZWxlY3QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOTguMDAwMDAwLCAtMTE0LjAwMDAwMCkiIGZpbGw9IiM3NTc1NzUiPgogICAgICAgICAgICA8ZyBpZD0ibWVudS1iYXItKy1vcGVuLW1lbnUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMy4wMDAwMDAsIDEwMC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJtZW51LWJhciI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9InNlbGVjdC1hbGxvdyIgcG9pbnRzPSI3NSAxNCA4MCAxOSA4NSAxNCI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=');\n background-repeat: no-repeat;\n\n &:focus {\n outline: none;\n }\n\n @include design($material) {\n -webkit-font-smoothing: antialiased;\n font-size: 15px;\n background-size: auto, 100% 1px;\n background-position: right center, left bottom;\n }\n\n @include design($flat) {\n font-size: 17px;\n background-position: right center;\n }\n }\n\n &.inline {\n display: flex;\n align-items: center;\n\n .label {\n padding-right: 4px;\n flex: 1;\n }\n }\n\n &.small .input {\n height: initial;\n line-height: 1.5rem;\n }\n\n .error {\n font-size: 0.7rem;\n --text-primary-default-color: var(--text-error)\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":""}]);
1477
1481
  // Exports
1478
1482
  ___CSS_LOADER_EXPORT___.locals = {
1479
1483
  "select": `select__mz94a`,
1480
1484
  "label": `label__oyzeA`,
1481
1485
  "input": `input__HyuSy`,
1482
1486
  "inline": `inline__VLoaD`,
1483
- "small": `small__UbTP3`
1487
+ "small": `small__UbTP3`,
1488
+ "error": `error__VJG4n`
1484
1489
  };
1485
1490
  module.exports = ___CSS_LOADER_EXPORT___;
1486
1491
 
@@ -1536,11 +1541,12 @@ var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(1354);
1536
1541
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(6314);
1537
1542
  var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
1538
1543
  // Module
1539
- ___CSS_LOADER_EXPORT___.push([module.id, `.container__oHydJ{width:100%;height:10rem}.container__oHydJ .label__flbC2{display:block}.container__oHydJ textarea{background-color:#efeff4;color:#1f1f21;box-shadow:none;appearance:none;width:100%;height:100%;resize:none;outline:none;padding:5px;border-radius:4px;border:1px solid var(--border-light)}`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Textarea/textarea.scss"],"names":[],"mappings":"AAAA,kBACE,UAAA,CACA,YAAA,CAEA,gCACE,aAAA,CAGF,2BACE,wBAAA,CACA,aAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,YAAA,CACA,WAAA,CACA,iBAAA,CACA,oCAAA","sourcesContent":[".container {\n width: 100%;\n height: 10rem;\n\n .label {\n display: block;\n }\n\n textarea {\n background-color: #efeff4;\n color: #1f1f21;\n box-shadow: none;\n appearance: none;\n width: 100%;\n height: 100%;\n resize: none;\n outline: none;\n padding: 5px;\n border-radius: 4px;\n border: 1px solid var(--border-light);\n }\n}\n"],"sourceRoot":""}]);
1544
+ ___CSS_LOADER_EXPORT___.push([module.id, `.container__oHydJ{width:100%;min-height:10rem;height:100%;display:flex;flex-direction:column}.container__oHydJ .label__flbC2{display:block}.container__oHydJ textarea{flex:1;background-color:#efeff4;color:#1f1f21;box-shadow:none;appearance:none;width:100%;height:100%;resize:none;outline:none;padding:5px;border-radius:4px;border:1px solid var(--border-light)}.container__oHydJ .error__cup_B{font-size:.7rem;--text-primary-default-color: var(--text-error) }`, "",{"version":3,"sources":["webpack://./src/Components/FormElements/Textarea/textarea.scss"],"names":[],"mappings":"AAAA,kBACE,UAAA,CACA,gBAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CAEA,gCACE,aAAA,CAGF,2BACE,MAAA,CACA,wBAAA,CACA,aAAA,CACA,eAAA,CACA,eAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,YAAA,CACA,WAAA,CACA,iBAAA,CACA,oCAAA,CAGF,gCACE,eAAA,CACA,gDAAA","sourcesContent":[".container {\n width: 100%;\n min-height: 10rem;\n height: 100%;\n display: flex;\n flex-direction: column;\n\n .label {\n display: block;\n }\n\n textarea {\n flex: 1;\n background-color: #efeff4;\n color: #1f1f21;\n box-shadow: none;\n appearance: none;\n width: 100%;\n height: 100%;\n resize: none;\n outline: none;\n padding: 5px;\n border-radius: 4px;\n border: 1px solid var(--border-light);\n }\n\n .error {\n font-size: 0.7rem;\n --text-primary-default-color: var(--text-error)\n }\n}\n"],"sourceRoot":""}]);
1540
1545
  // Exports
1541
1546
  ___CSS_LOADER_EXPORT___.locals = {
1542
1547
  "container": `container__oHydJ`,
1543
- "label": `label__flbC2`
1548
+ "label": `label__flbC2`,
1549
+ "error": `error__cup_B`
1544
1550
  };
1545
1551
  module.exports = ___CSS_LOADER_EXPORT___;
1546
1552
 
@@ -10005,6 +10011,7 @@ __webpack_require__.d(__webpack_exports__, {
10005
10011
  Grow: () => (/* reexport */ Grow),
10006
10012
  Heading: () => (/* reexport */ HeadingMemo),
10007
10013
  HiddenInput: () => (/* reexport */ HiddenInput_tmp),
10014
+ HookForm: () => (/* reexport */ HookForm),
10008
10015
  HoverMenu: () => (/* reexport */ HoverMenu),
10009
10016
  Icon: () => (/* reexport */ Icon),
10010
10017
  Image: () => (/* reexport */ ImageMemo),
@@ -10012,6 +10019,7 @@ __webpack_require__.d(__webpack_exports__, {
10012
10019
  Inline: () => (/* reexport */ InlineMemo),
10013
10020
  InlineBlock: () => (/* reexport */ InlineBlockMemo),
10014
10021
  Input: () => (/* reexport */ Input),
10022
+ InputController: () => (/* reexport */ InputController),
10015
10023
  List: () => (/* reexport */ List),
10016
10024
  ListItem: () => (/* reexport */ ListItemMemo),
10017
10025
  ListRow: () => (/* reexport */ ListRow),
@@ -10024,10 +10032,15 @@ __webpack_require__.d(__webpack_exports__, {
10024
10032
  MenuItem: () => (/* reexport */ MenuItem),
10025
10033
  MoreButton: () => (/* reexport */ MoreButtonMemo),
10026
10034
  MultipleFileInput: () => (/* reexport */ MultipleFileInput),
10035
+ MultipleFileInputController: () => (/* reexport */ MultipleFileInputController),
10027
10036
  PasswordInput: () => (/* reexport */ PasswordInput),
10037
+ PasswordInputController: () => (/* reexport */ PasswordInputController),
10028
10038
  RESTRICT_CHILDREN: () => (/* reexport */ RESTRICT_CHILDREN),
10029
10039
  SearchSelectInput: () => (/* reexport */ SearchSelectInput),
10030
10040
  Select: () => (/* reexport */ Select),
10041
+ SelectController: () => (/* reexport */ SelectController),
10042
+ SendFormContext: () => (/* reexport */ SendFormContext),
10043
+ Size: () => (/* reexport */ Size),
10031
10044
  SizeCalculator: () => (/* reexport */ SizeCalculatorMemo),
10032
10045
  Slider: () => (/* reexport */ Slider_Slider),
10033
10046
  Spoiler: () => (/* reexport */ SpoilerMemo),
@@ -10042,6 +10055,7 @@ __webpack_require__.d(__webpack_exports__, {
10042
10055
  Table: () => (/* reexport */ Table_tmp),
10043
10056
  Text: () => (/* reexport */ tmp),
10044
10057
  Textarea: () => (/* reexport */ Textarea),
10058
+ TextareaController: () => (/* reexport */ TextareaController),
10045
10059
  Toast: () => (/* reexport */ ToastMemo),
10046
10060
  ToastContainer: () => (/* reexport */ ToastContainerMemo),
10047
10061
  ToastContext: () => (/* reexport */ ToastContext),
@@ -10074,6 +10088,7 @@ __webpack_require__.d(__webpack_exports__, {
10074
10088
  useOnChangeDone: () => (/* reexport */ useOnChangeDone),
10075
10089
  useOnMount: () => (/* reexport */ useOnMount),
10076
10090
  useOnce: () => (/* reexport */ useOnce),
10091
+ useSendFormContext: () => (/* reexport */ useSendFormContext),
10077
10092
  useSharedSelectedColor: () => (/* reexport */ useSharedSelectedColor),
10078
10093
  useSpoilerGroup: () => (/* reexport */ useSpoilerGroup),
10079
10094
  useStrictEnabled: () => (/* reexport */ useStrictEnabled),
@@ -10081,6 +10096,7 @@ __webpack_require__.d(__webpack_exports__, {
10081
10096
  useWindow: () => (/* reexport */ useWindow),
10082
10097
  useWindowDimensions: () => (/* reexport */ useWindowDimensions),
10083
10098
  withForwardRef: () => (/* reexport */ withForwardRef),
10099
+ withHookController: () => (/* reexport */ withHookController),
10084
10100
  withMemo: () => (/* reexport */ withMemo),
10085
10101
  withRenderBrowserOnly: () => (/* reexport */ withRenderBrowserOnly),
10086
10102
  withRestrictedChildren: () => (/* reexport */ withRestrictedChildren)
@@ -10233,18 +10249,18 @@ function withForwardRef(component, styles, defaultAllowChildren) {
10233
10249
  }
10234
10250
  ;// CONCATENATED MODULE: ./src/Components/Hooks/useComposedRef.ts
10235
10251
 
10236
- const useComposedRef = (ref, initialValue = null) => {
10237
- const targetRef = (0,external_react_.useRef)(initialValue);
10238
- (0,external_react_.useEffect)(() => {
10239
- if (!ref) return;
10240
- if (typeof ref === 'function') {
10241
- ref(targetRef.current);
10242
- } else {
10243
- ref.current = targetRef.current;
10252
+ function useComposedRef(...refs) {
10253
+ return (0,external_react_.useCallback)(val => {
10254
+ for (const ref of refs) {
10255
+ if (typeof ref === 'function') {
10256
+ ref(val);
10257
+ } else if (ref) {
10258
+ ref.current = val;
10259
+ }
10244
10260
  }
10245
- }, [ref]);
10246
- return targetRef;
10247
- };
10261
+ // eslint-disable-next-line react-hooks/exhaustive-deps
10262
+ }, refs);
10263
+ }
10248
10264
  ;// CONCATENATED MODULE: ./src/Components/Clickable/Clickable.tsx
10249
10265
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
10250
10266
  var Clickable_rest = undefined && undefined.__rest || function (s, e) {
@@ -10274,12 +10290,15 @@ function Clickable(_a, ref) {
10274
10290
  interactable = true,
10275
10291
  preventDefault = false,
10276
10292
  stopPropagation = true,
10277
- useReactOnMouseLeave = false
10293
+ useReactOnMouseLeave = false,
10294
+ tabIndex,
10295
+ draggable
10278
10296
  } = _a,
10279
- clickData = Clickable_rest(_a, ["className", "children", "style", "href", "target", "id", "interactable", "preventDefault", "stopPropagation", "useReactOnMouseLeave"]);
10297
+ clickData = Clickable_rest(_a, ["className", "children", "style", "href", "target", "id", "interactable", "preventDefault", "stopPropagation", "useReactOnMouseLeave", "tabIndex", "draggable"]);
10280
10298
  // States
10281
10299
  // Refs
10282
- const clickableRef = useComposedRef(ref);
10300
+ const clickableRef = (0,external_react_.useRef)(null);
10301
+ const refSetter = useComposedRef(ref, clickableRef);
10283
10302
  // Callbacks
10284
10303
  const onClickInner = useListener('onClick', clickData);
10285
10304
  const realOnClick = (0,external_react_.useCallback)(e => {
@@ -10365,6 +10384,18 @@ function Clickable(_a, ref) {
10365
10384
  onDragOver(e);
10366
10385
  }
10367
10386
  }, [clickData.onDragOver, onDragOver, preventDefault, stopPropagation]);
10387
+ const onDragStartListener = useListener('onDragStart', clickData);
10388
+ const realOnDragStartListener = (0,external_react_.useCallback)(e => {
10389
+ if (clickData.onDragStart) {
10390
+ if (stopPropagation) {
10391
+ e.stopPropagation();
10392
+ }
10393
+ if (preventDefault) {
10394
+ e.preventDefault();
10395
+ }
10396
+ onDragStartListener(e);
10397
+ }
10398
+ }, [clickData.onDragStart, onDragStartListener, preventDefault, stopPropagation]);
10368
10399
  const onMouseEnter = useListener('onMouseEnter', clickData);
10369
10400
  const realOnMouseEnter = (0,external_react_.useCallback)(e => {
10370
10401
  if (clickData.onMouseEnter) {
@@ -10431,16 +10462,18 @@ function Clickable(_a, ref) {
10431
10462
  onMouseEnter: realOnMouseEnter,
10432
10463
  onMouseLeave: useReactOnMouseLeave ? realOnMouseLeave : undefined,
10433
10464
  onDoubleClick: realOnDoubleClick,
10434
- tabIndex: interactable ? 0 : undefined
10465
+ tabIndex: interactable ? 0 : tabIndex,
10466
+ draggable,
10467
+ onDragStart: realOnDragStartListener
10435
10468
  };
10436
10469
  if (typeof href === 'string') {
10437
10470
  return /*#__PURE__*/external_react_.createElement("a", _extends({}, props, {
10438
10471
  href: href,
10439
- ref: clickableRef
10472
+ ref: refSetter
10440
10473
  }), children);
10441
10474
  }
10442
10475
  return /*#__PURE__*/external_react_.createElement("span", _extends({}, props, {
10443
- ref: clickableRef
10476
+ ref: refSetter
10444
10477
  }), children);
10445
10478
  }
10446
10479
  const ClickableMemo = withForwardRef(Clickable, (clickable_default()));
@@ -11438,6 +11471,17 @@ var ButtonType;
11438
11471
  ButtonType["Primary"] = "primary";
11439
11472
  ButtonType["Secondary"] = "secondary";
11440
11473
  })(ButtonType || (ButtonType = {}));
11474
+ ;// CONCATENATED MODULE: ./src/Size.ts
11475
+ var Size;
11476
+ (function (Size) {
11477
+ Size[Size["xSmall"] = 0] = "xSmall";
11478
+ Size[Size["small"] = 1] = "small";
11479
+ Size[Size["medium"] = 2] = "medium";
11480
+ Size[Size["large"] = 3] = "large";
11481
+ Size[Size["xLarge"] = 4] = "xLarge";
11482
+ Size[Size["xxLarge"] = 5] = "xxLarge";
11483
+ })(Size || (Size = {}));
11484
+ ;
11441
11485
  ;// CONCATENATED MODULE: ./src/Components/FormElements/Button/Button.tsx
11442
11486
  function Button_extends() { return Button_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Button_extends.apply(null, arguments); }
11443
11487
  var Button_rest = undefined && undefined.__rest || function (s, e) {
@@ -11455,26 +11499,32 @@ var Button_rest = undefined && undefined.__rest || function (s, e) {
11455
11499
 
11456
11500
 
11457
11501
 
11502
+
11458
11503
  const Button = withMemo(function Button(_a) {
11459
11504
  var {
11460
11505
  children,
11461
11506
  className,
11462
11507
  disabled,
11508
+ size,
11509
+ fullWidth = false,
11463
11510
  flavor = Flavor.Accent,
11464
11511
  type = ButtonType.Primary
11465
11512
  } = _a,
11466
- props = Button_rest(_a, ["children", "className", "disabled", "flavor", "type"]);
11513
+ props = Button_rest(_a, ["children", "className", "disabled", "size", "fullWidth", "flavor", "type"]);
11467
11514
  const [onClick, otherProps] = useListenerWithExtractedProps('onClick', props);
11468
11515
  const classes = {
11469
11516
  [(button_default()).primary]: type === ButtonType.Primary,
11470
11517
  [(button_default()).secondary]: type === ButtonType.Secondary,
11471
- [(button_default()).disabled]: disabled
11518
+ [(button_default()).disabled]: disabled,
11519
+ [(button_default()).small]: size === Size.small
11472
11520
  };
11473
11521
  return /*#__PURE__*/external_react_.createElement("button", Button_extends({}, otherProps, {
11474
11522
  disabled: disabled,
11475
11523
  type: "button",
11476
11524
  onClick: onClick,
11477
- className: classnames_default()((button_default()).button, classes, flavor, className)
11525
+ className: classnames_default()((button_default()).button, {
11526
+ [(button_default()).fullWidth]: fullWidth
11527
+ }, classes, flavor, className)
11478
11528
  }), children);
11479
11529
  }, (button_default()));
11480
11530
  // EXTERNAL MODULE: ./src/Components/FormElements/CheckBox/checkbox.scss
@@ -23072,49 +23122,97 @@ function ColorInput(_a) {
23072
23122
  // Need ColorInputMemo for autocompletion of phpstorm
23073
23123
  const ColorInputMemo = withMemo(ColorInput, (colorInput_default()));
23074
23124
 
23075
- // EXTERNAL MODULE: ./src/Components/FormElements/Input/FileInput/fileInput.scss
23076
- var fileInput = __webpack_require__(4372);
23077
- var fileInput_default = /*#__PURE__*/__webpack_require__.n(fileInput);
23078
- ;// CONCATENATED MODULE: ./src/Components/Layout/Grow.tsx
23125
+ ;// CONCATENATED MODULE: external "react-hook-form"
23126
+ const external_react_hook_form_namespaceObject = require("react-hook-form");
23127
+ // EXTERNAL MODULE: ./src/Components/LoadingCircle/loadingCircle.scss
23128
+ var loadingCircle = __webpack_require__(5391);
23129
+ var loadingCircle_default = /*#__PURE__*/__webpack_require__.n(loadingCircle);
23130
+ ;// CONCATENATED MODULE: ./src/Components/LoadingCircle/LoadingCircle.tsx
23079
23131
 
23080
23132
 
23081
23133
 
23082
23134
 
23083
- const Grow = withForwardRef(function Grow({
23135
+ function LoadingCircle({
23136
+ size = 32,
23137
+ className,
23138
+ style
23139
+ }) {
23140
+ // Variables
23141
+ // States
23142
+ // Refs
23143
+ // Callbacks
23144
+ // Effects
23145
+ // Other
23146
+ // Render Functions
23147
+ return /*#__PURE__*/external_react_.createElement("svg", {
23148
+ className: classnames_default()((loadingCircle_default()).loadingCircle, className),
23149
+ viewBox: `0 0 ${size} ${size}`,
23150
+ width: size,
23151
+ height: size,
23152
+ style: style
23153
+ }, /*#__PURE__*/external_react_.createElement("circle", {
23154
+ cx: "50%",
23155
+ cy: "50%",
23156
+ r: "40%",
23157
+ fill: "none",
23158
+ className: (loadingCircle_default()).spinner
23159
+ }));
23160
+ }
23161
+ const LoadingCircleMemo = withMemo(LoadingCircle, (loadingCircle_default()));
23162
+
23163
+ // EXTERNAL MODULE: ./src/Components/LoadingArea/loadingArea.scss
23164
+ var loadingArea = __webpack_require__(5455);
23165
+ var loadingArea_default = /*#__PURE__*/__webpack_require__.n(loadingArea);
23166
+ ;// CONCATENATED MODULE: ./src/Components/LoadingArea/LoadingArea.tsx
23167
+
23168
+
23169
+
23170
+
23171
+
23172
+ function LoadingArea({
23173
+ loading,
23174
+ fullWidth = false,
23175
+ fullSize = false,
23176
+ fullHeight = false,
23177
+ opacity = 0.65,
23084
23178
  className,
23085
- children,
23086
- center = false,
23087
23179
  style,
23088
- weight = 1
23089
- }, ref) {
23180
+ children
23181
+ }) {
23090
23182
  // Variables
23183
+ if (fullSize) {
23184
+ fullHeight = true;
23185
+ fullWidth = true;
23186
+ }
23091
23187
  // States
23092
23188
  // Refs
23093
23189
  // Callbacks
23094
23190
  // Effects
23095
23191
  // Other
23096
23192
  // Render Functions
23097
- return /*#__PURE__*/external_react_.createElement("div", {
23098
- ref: ref,
23099
- className: classnames_default()((layout_default()).grow, {
23100
- [(layout_default()).center]: center,
23101
- [(layout_default()).weight0]: weight === 0,
23102
- [(layout_default()).weight1]: weight === 1,
23103
- [(layout_default()).weight2]: weight === 2,
23104
- [(layout_default()).weight3]: weight === 3,
23105
- [(layout_default()).weight4]: weight === 4,
23106
- [(layout_default()).weight5]: weight === 5,
23107
- [(layout_default()).weight6]: weight === 6
23108
- }, className),
23193
+ return /*#__PURE__*/external_react_.createElement("span", {
23194
+ className: classnames_default()((loadingArea_default()).loadingArea, className, {
23195
+ 'full-height': fullHeight,
23196
+ 'full-width': fullWidth
23197
+ }),
23109
23198
  style: style
23110
- }, children);
23111
- }, (layout_default()));
23112
- // EXTERNAL MODULE: ./src/Components/Image/image.scss
23113
- var Image_image = __webpack_require__(6435);
23114
- var image_default = /*#__PURE__*/__webpack_require__.n(Image_image);
23115
- ;// CONCATENATED MODULE: ./src/Components/Image/Image.tsx
23116
- function Image_extends() { return Image_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Image_extends.apply(null, arguments); }
23117
- var Image_rest = undefined && undefined.__rest || function (s, e) {
23199
+ }, children, loading ? /*#__PURE__*/external_react_.createElement("span", {
23200
+ className: (loadingArea_default()).curtain,
23201
+ style: {
23202
+ opacity
23203
+ }
23204
+ }, /*#__PURE__*/external_react_.createElement(LoadingCircleMemo, null)) : null);
23205
+ }
23206
+ const LoadingAreaMemo = withMemo(LoadingArea, (loadingArea_default()));
23207
+
23208
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/SendFormContext.ts
23209
+
23210
+ const SendFormContext = /*#__PURE__*/(0,external_react_.createContext)(undefined);
23211
+ function useSendFormContext() {
23212
+ return (0,external_react_.useContext)(SendFormContext);
23213
+ }
23214
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/HookForm.tsx
23215
+ var HookForm_rest = undefined && undefined.__rest || function (s, e) {
23118
23216
  var t = {};
23119
23217
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23120
23218
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
@@ -23126,62 +23224,49 @@ var Image_rest = undefined && undefined.__rest || function (s, e) {
23126
23224
 
23127
23225
 
23128
23226
 
23129
- function Image(_a) {
23130
- // Variables
23227
+
23228
+ const HookForm = withMemo(function HookForm(_a) {
23229
+ // Refs
23131
23230
  var {
23132
- src,
23133
- alt = '',
23134
- className,
23135
- style
23231
+ children,
23232
+ onSend
23136
23233
  } = _a,
23137
- otherProps = Image_rest(_a, ["src", "alt", "className", "style"]);
23138
- // Refs
23139
- // States
23140
- // Selectors
23234
+ methods = HookForm_rest(_a, ["children", "onSend"]);
23235
+ // States/Variables/Selectors
23236
+ // Create an inner, as the onSend may have other attributes
23237
+ const innerOnSend = (0,external_react_.useCallback)(() => onSend === null || onSend === void 0 ? void 0 : onSend(), [onSend]);
23238
+ // Dispatch
23141
23239
  // Callbacks
23142
23240
  // Effects
23143
23241
  // Other
23144
- // Render Functions
23145
- return /*#__PURE__*/external_react_.createElement("img", Image_extends({
23146
- src: src,
23147
- alt: alt,
23148
- className: classnames_default()((image_default()).image, className),
23149
- style: style
23150
- }, otherProps));
23151
- }
23152
- // Need ImageMemo for autocompletion of phpstorm
23153
- const ImageMemo = withMemo(Image, (image_default()));
23242
+ // RenderFunctions
23243
+ return /*#__PURE__*/external_react_default().createElement(external_react_hook_form_namespaceObject.FormProvider, methods, /*#__PURE__*/external_react_default().createElement(SendFormContext.Provider, {
23244
+ value: innerOnSend
23245
+ }, /*#__PURE__*/external_react_default().createElement(LoadingAreaMemo, {
23246
+ loading: methods.formState.isSubmitting,
23247
+ __allowChildren: "all"
23248
+ }, children)));
23249
+ });
23250
+ // EXTERNAL MODULE: ./src/Components/FormElements/Input/input.scss
23251
+ var input = __webpack_require__(2923);
23252
+ var input_default = /*#__PURE__*/__webpack_require__.n(input);
23253
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/hooks/useOnChangeDone.ts
23154
23254
 
23155
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/FileInput/MultipleFileInput.tsx
23156
- function MultipleFileInput_extends() { return MultipleFileInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, MultipleFileInput_extends.apply(null, arguments); }
23157
- var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
23158
- function adopt(value) {
23159
- return value instanceof P ? value : new P(function (resolve) {
23160
- resolve(value);
23161
- });
23162
- }
23163
- return new (P || (P = Promise))(function (resolve, reject) {
23164
- function fulfilled(value) {
23165
- try {
23166
- step(generator.next(value));
23167
- } catch (e) {
23168
- reject(e);
23169
- }
23170
- }
23171
- function rejected(value) {
23172
- try {
23173
- step(generator["throw"](value));
23174
- } catch (e) {
23175
- reject(e);
23176
- }
23177
- }
23178
- function step(result) {
23179
- result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
23180
- }
23181
- step((generator = generator.apply(thisArg, _arguments || [])).next());
23182
- });
23183
- };
23184
- var MultipleFileInput_rest = undefined && undefined.__rest || function (s, e) {
23255
+ function useOnChangeDone(onChangeDone, ref) {
23256
+ const innerRef = (0,external_react_.useRef)(null);
23257
+ const usedRef = ref !== null && ref !== void 0 ? ref : innerRef;
23258
+ (0,external_react_.useEffect)(() => {
23259
+ const elem = usedRef.current;
23260
+ elem === null || elem === void 0 ? void 0 : elem.addEventListener('change', onChangeDone);
23261
+ return () => {
23262
+ elem === null || elem === void 0 ? void 0 : elem.removeEventListener('change', onChangeDone);
23263
+ };
23264
+ }, [onChangeDone, usedRef]);
23265
+ return usedRef;
23266
+ }
23267
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/Input.tsx
23268
+ function Input_extends() { return Input_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Input_extends.apply(null, arguments); }
23269
+ var Input_rest = undefined && undefined.__rest || function (s, e) {
23185
23270
  var t = {};
23186
23271
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23187
23272
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
@@ -23200,307 +23285,37 @@ var MultipleFileInput_rest = undefined && undefined.__rest || function (s, e) {
23200
23285
 
23201
23286
 
23202
23287
 
23203
-
23204
-
23205
-
23206
-
23207
- const MultipleFileInput = withMemo(function MultipleImageInput(_a) {
23288
+ const Input = withForwardRef(function Input(_a, ref) {
23208
23289
  // Variables
23209
23290
  var {
23291
+ label,
23210
23292
  className,
23211
23293
  style,
23294
+ onKeyDown,
23295
+ inline = false,
23212
23296
  value,
23213
- label,
23214
- mimeTypes = ['image/*'],
23215
- maxFiles = 1,
23216
- maxSizePerFile = 1024 * 1024 * 10,
23217
- allowOverride = maxFiles === 1,
23218
- onError,
23219
- showDeleteButton = true
23297
+ error,
23298
+ onChangeText,
23299
+ onEnter
23220
23300
  } = _a,
23221
- otherProps = MultipleFileInput_rest(_a, ["className", "style", "value", "label", "mimeTypes", "maxFiles", "maxSizePerFile", "allowOverride", "onError", "showDeleteButton"]);
23222
- // Refs
23223
- const inputRef = (0,external_react_.useRef)(null);
23224
- const indexRef = (0,external_react_.useRef)(undefined);
23301
+ otherProps = Input_rest(_a, ["label", "className", "style", "onKeyDown", "inline", "value", "error", "onChangeText", "onEnter"]);
23225
23302
  // States
23226
- // Selectors
23227
- // Callbacks
23228
- const checkMimeType = (0,external_react_.useCallback)(fileType => {
23229
- return mimeTypes.some(type => {
23230
- if (type === '*/*' || type === '*') {
23231
- return true;
23303
+ const usedValue = (0,external_react_.useMemo)(() => {
23304
+ if (otherProps.type !== "number" || typeof value === "number") {
23305
+ return value;
23306
+ }
23307
+ if (typeof value === "string") {
23308
+ if (value === "-") {
23309
+ return value;
23232
23310
  }
23233
- if (type.endsWith('/*')) {
23234
- return fileType.startsWith(type.substring(0, type.length - 2));
23235
- }
23236
- return fileType === type;
23237
- });
23238
- }, [mimeTypes]);
23239
- const [onChangeFiles, ...props] = useListenerWithExtractedProps('onChangeFiles', otherProps);
23240
- const getBase64 = (0,external_react_.useCallback)(inputFiles => {
23241
- const promises = inputFiles.map(file => new Promise((resolve, reject) => {
23242
- const reader = new FileReader();
23243
- reader.onload = () => {
23244
- resolve(reader.result);
23245
- };
23246
- reader.onerror = reject;
23247
- reader.readAsDataURL(file);
23248
- }));
23249
- return Promise.all(promises);
23250
- }, []);
23251
- const onNewFiles = (0,external_react_.useCallback)((newFiles, index) => __awaiter(this, void 0, void 0, function* () {
23252
- if (newFiles.some(file => !checkMimeType(file.type))) {
23253
- onError === null || onError === void 0 ? void 0 : onError('Eine Datei ist im falschen Format');
23254
- return;
23255
- }
23256
- if (newFiles.length + value.length > maxFiles && (!allowOverride || index === undefined || index + newFiles.length > maxFiles)) {
23257
- onError === null || onError === void 0 ? void 0 : onError(`Es sind nur ${maxFiles} Dateien erlaubt.`);
23258
- return;
23259
- }
23260
- if (maxSizePerFile && newFiles.some(file => file.size > maxSizePerFile)) {
23261
- onError === null || onError === void 0 ? void 0 : onError(`Eine Datei ist zu groß. Jede Datei darf nur ${maxSizePerFile / 1024 / 1024}MB groß sein.`);
23262
- return;
23263
- }
23264
- const newUrls = yield getBase64(newFiles);
23265
- const newValue = newFiles.map((file, fileIndex) => ({
23266
- name: file.name,
23267
- data: newUrls[fileIndex],
23268
- mimeType: file.type,
23269
- blob: file
23270
- }));
23271
- if (newFiles.length + value.length > maxFiles && index !== undefined) {
23272
- const onChangeFilesValue = [...value];
23273
- onChangeFilesValue.splice(index, newFiles.length, ...newValue);
23274
- onChangeFiles(onChangeFilesValue);
23275
- } else {
23276
- onChangeFiles([...value, ...newValue]);
23277
- }
23278
- }), [allowOverride, checkMimeType, getBase64, maxFiles, maxSizePerFile, onChangeFiles, onError, value]);
23279
- const onInputChange = (0,external_react_.useCallback)(e => __awaiter(this, void 0, void 0, function* () {
23280
- const index = indexRef.current;
23281
- indexRef.current = undefined;
23282
- if (!e.target.files || e.target.files.length === 0) {
23283
- return;
23284
- }
23285
- const newFiles = Array.from(e.target.files);
23286
- yield onNewFiles(newFiles, index);
23287
- }), [onNewFiles]);
23288
- const removeFile = (0,external_react_.useCallback)((_, index) => {
23289
- if (index >= 0 && index < value.length) {
23290
- const newData = [...value];
23291
- newData.splice(index, 1);
23292
- onChangeFiles(newData);
23293
- }
23294
- }, [onChangeFiles, value]);
23295
- const onDrop = (0,external_react_.useCallback)((event, index) => __awaiter(this, void 0, void 0, function* () {
23296
- event.preventDefault();
23297
- const files = [];
23298
- if (event.dataTransfer.items) {
23299
- for (let i = 0; i < event.dataTransfer.items.length; i++) {
23300
- if (event.dataTransfer.items[i].kind === 'file') {
23301
- const file = event.dataTransfer.items[i].getAsFile();
23302
- if (file) {
23303
- files.push(file);
23304
- }
23305
- }
23306
- }
23307
- } else {
23308
- for (let i = 0; i < event.dataTransfer.files.length; i++) {
23309
- files.push(event.dataTransfer.files[i]);
23310
- }
23311
- }
23312
- yield onNewFiles(files, index);
23313
- }), [onNewFiles]);
23314
- const onDragOver = (0,external_react_.useCallback)(e => e.preventDefault(), []);
23315
- const clickOnFile = (0,external_react_.useCallback)((_, index) => {
23316
- if (index !== undefined && !allowOverride || !inputRef.current) {
23317
- return;
23318
- }
23319
- indexRef.current = index;
23320
- inputRef.current.dispatchEvent(new MouseEvent("click"));
23321
- }, [allowOverride]);
23322
- // Effects
23323
- // Other
23324
- // Render Functions
23325
- const renderFile = file => {
23326
- if (file.mimeType.startsWith('image/')) {
23327
- return /*#__PURE__*/external_react_.createElement(ImageMemo, {
23328
- key: file.data,
23329
- src: file.data,
23330
- alt: file.name,
23331
- className: classnames_default()((fileInput_default()).previewImage, file.data)
23332
- });
23333
- }
23334
- // TODO style
23335
- return /*#__PURE__*/external_react_.createElement(BlockMemo, {
23336
- className: (fileInput_default()).previewText
23337
- }, /*#__PURE__*/external_react_.createElement(Icon, {
23338
- icon: free_solid_svg_icons_namespaceObject.faFile,
23339
- className: (fileInput_default()).previewTextIcon
23340
- }), /*#__PURE__*/external_react_.createElement(tmp, null, file.name));
23341
- };
23342
- return /*#__PURE__*/external_react_.createElement("span", {
23343
- className: classnames_default()((fileInput_default()).fileInput, className),
23344
- style: style
23345
- }, /*#__PURE__*/external_react_.createElement(Flex_tmp, {
23346
- horizontal: true
23347
- }, !!label && /*#__PURE__*/external_react_.createElement(Grow, null, /*#__PURE__*/external_react_.createElement(tmp, null, label)), maxFiles > 1 && /*#__PURE__*/external_react_.createElement(InlineMemo, null, /*#__PURE__*/external_react_.createElement(tmp, null, value.length, "/", maxFiles))), /*#__PURE__*/external_react_.createElement(Flex_tmp, {
23348
- horizontal: true,
23349
- className: (fileInput_default()).previewContainer
23350
- }, value === null || value === void 0 ? void 0 : value.map((file, index) => {
23351
- return /*#__PURE__*/external_react_.createElement(Grow, {
23352
- className: (fileInput_default()).preview,
23353
- center: true,
23354
- key: file.data
23355
- }, /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23356
- onDrop: onDrop,
23357
- onDragOver: onDragOver,
23358
- onDropData: index,
23359
- onClick: clickOnFile,
23360
- onClickData: index
23361
- }, renderFile(file), showDeleteButton && /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23362
- className: (fileInput_default()).previewRemove,
23363
- onClick: removeFile,
23364
- onClickData: index
23365
- }, /*#__PURE__*/external_react_.createElement(Icon, {
23366
- icon: free_solid_svg_icons_namespaceObject.faTimesCircle
23367
- }))));
23368
- }), /*#__PURE__*/external_react_.createElement(Grow, {
23369
- className: classnames_default()((fileInput_default()).addFile, {
23370
- [(fileInput_default()).hidden]: value.length >= maxFiles
23371
- }),
23372
- center: true
23373
- }, /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23374
- className: (fileInput_default()).addFileButton,
23375
- onDrop: onDrop,
23376
- onDragOver: onDragOver,
23377
- onDropData: maxFiles,
23378
- onClick: clickOnFile,
23379
- __allowChildren: "html"
23380
- }, /*#__PURE__*/external_react_.createElement(Icon, {
23381
- icon: free_solid_svg_icons_namespaceObject.faPlus
23382
- }), /*#__PURE__*/external_react_.createElement("input", MultipleFileInput_extends({}, props, {
23383
- ref: inputRef,
23384
- className: (fileInput_default()).value,
23385
- onChange: onInputChange,
23386
- value: "",
23387
- type: "file",
23388
- multiple: maxFiles > 1,
23389
- accept: mimeTypes.join(', ')
23390
- }))))));
23391
- }, (fileInput_default()));
23392
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/FileInput/FileInput.tsx
23393
- function FileInput_extends() { return FileInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, FileInput_extends.apply(null, arguments); }
23394
- var FileInput_rest = undefined && undefined.__rest || function (s, e) {
23395
- var t = {};
23396
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23397
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23398
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23399
- }
23400
- return t;
23401
- };
23402
-
23403
-
23404
-
23405
-
23406
-
23407
-
23408
- // TODO use MultipleFileInput internal
23409
- const FileInput = withMemo(function FileInput(_a) {
23410
- // Variables
23411
- var {
23412
- value,
23413
- mimeType,
23414
- required = false
23415
- } = _a,
23416
- otherProps = FileInput_rest(_a, ["value", "mimeType", "required"]);
23417
- // Refs
23418
- // States
23419
- const mimeTypes = (0,external_react_.useMemo)(() => mimeType ? [mimeType] : undefined, [mimeType]);
23420
- const innerValue = (0,external_react_.useMemo)(() => value ? [value] : [], [value]);
23421
- // Selectors
23422
- // Callbacks
23423
- const [onChangeFile, multipleFileInputProps] = useListenerWithExtractedProps("onChangeFile", otherProps);
23424
- const onChangeFiles = (0,external_react_.useCallback)(files => {
23425
- if (!required || files[0]) {
23426
- onChangeFile(files[0]);
23427
- }
23428
- }, [onChangeFile, required]);
23429
- // Effects
23430
- // Other
23431
- // Render Functions
23432
- return /*#__PURE__*/external_react_.createElement(MultipleFileInput, FileInput_extends({
23433
- maxFiles: 1,
23434
- value: innerValue,
23435
- onChangeFiles: onChangeFiles,
23436
- mimeTypes: mimeTypes,
23437
- showDeleteButton: !required
23438
- }, multipleFileInputProps));
23439
- }, (fileInput_default()));
23440
- // EXTERNAL MODULE: ./src/Components/FormElements/Input/input.scss
23441
- var input = __webpack_require__(2923);
23442
- var input_default = /*#__PURE__*/__webpack_require__.n(input);
23443
- ;// CONCATENATED MODULE: ./src/Components/FormElements/hooks/useOnChangeDone.ts
23444
-
23445
- function useOnChangeDone(onChangeDone, ref) {
23446
- const innerRef = (0,external_react_.useRef)(null);
23447
- const usedRef = ref !== null && ref !== void 0 ? ref : innerRef;
23448
- (0,external_react_.useEffect)(() => {
23449
- const elem = usedRef.current;
23450
- elem === null || elem === void 0 ? void 0 : elem.addEventListener('change', onChangeDone);
23451
- return () => {
23452
- elem === null || elem === void 0 ? void 0 : elem.removeEventListener('change', onChangeDone);
23453
- };
23454
- }, [ref, onChangeDone, usedRef]);
23455
- return usedRef;
23456
- }
23457
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/Input.tsx
23458
- function Input_extends() { return Input_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Input_extends.apply(null, arguments); }
23459
- var Input_rest = undefined && undefined.__rest || function (s, e) {
23460
- var t = {};
23461
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23462
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23463
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23464
- }
23465
- return t;
23466
- };
23467
-
23468
-
23469
-
23470
-
23471
-
23472
-
23473
-
23474
-
23475
- const Input = withForwardRef(function Input(_a, ref) {
23476
- // Variables
23477
- var {
23478
- label,
23479
- className,
23480
- style,
23481
- onKeyDown,
23482
- inline = false,
23483
- value,
23484
- onChangeText
23485
- } = _a,
23486
- otherProps = Input_rest(_a, ["label", "className", "style", "onKeyDown", "inline", "value", "onChangeText"]);
23487
- // States
23488
- const usedValue = (0,external_react_.useMemo)(() => {
23489
- if (otherProps.type !== "number" || typeof value === "number") {
23490
- return value;
23491
- }
23492
- if (typeof value === "string") {
23493
- if (value === "-") {
23494
- return value;
23495
- }
23496
- const numberValue = parseFloat(value);
23497
- if (!Number.isNaN(numberValue) && Number.isFinite(numberValue)) {
23498
- if (otherProps.max !== undefined && numberValue > Number(otherProps.max)) {
23499
- return otherProps.max;
23500
- }
23501
- if (otherProps.min !== undefined && numberValue < Number(otherProps.min)) {
23502
- return otherProps.min;
23503
- }
23311
+ const numberValue = parseFloat(value);
23312
+ if (!Number.isNaN(numberValue) && Number.isFinite(numberValue)) {
23313
+ if (otherProps.max !== undefined && numberValue > Number(otherProps.max)) {
23314
+ return otherProps.max;
23315
+ }
23316
+ if (otherProps.min !== undefined && numberValue < Number(otherProps.min)) {
23317
+ return otherProps.min;
23318
+ }
23504
23319
  }
23505
23320
  if (!Number.isNaN(Number(value))) {
23506
23321
  // Do not parse to allow ., and so on
@@ -23513,8 +23328,11 @@ const Input = withForwardRef(function Input(_a, ref) {
23513
23328
  return "";
23514
23329
  }, [value, otherProps.max, otherProps.min, otherProps.type]);
23515
23330
  // Refs
23516
- const innerRef = useComposedRef(ref);
23331
+ const innerRef = (0,external_react_.useRef)(null);
23332
+ const refFunction = useComposedRef(ref, innerRef);
23517
23333
  // Callbacks
23334
+ const sendForm = useSendFormContext();
23335
+ onEnter !== null && onEnter !== void 0 ? onEnter : onEnter = sendForm;
23518
23336
  const [onChangeWithData, otherPropsWithoutOnchange] = useListenerWithExtractedProps('onChange', otherProps);
23519
23337
  const onChange = (0,external_react_.useCallback)(e => {
23520
23338
  if (onChangeText) {
@@ -23535,13 +23353,13 @@ const Input = withForwardRef(function Input(_a, ref) {
23535
23353
  const [onChangeDone, otherPropsWithoutData] = useListenerWithExtractedProps('onChangeDone', otherPropsWithoutBlur);
23536
23354
  const realOnKeyDown = (0,external_react_.useCallback)(e => {
23537
23355
  onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
23538
- if (otherProps.onEnter && e.key === 'Enter' && !e.defaultPrevented) {
23356
+ if (onEnter && e.key === 'Enter' && !e.defaultPrevented) {
23539
23357
  if (otherProps.type === "number") {
23540
23358
  const stringValue = e.target.value;
23541
23359
  const val = !Number.isNaN(Number(stringValue)) ? stringValue : !Number.isNaN(parseFloat(stringValue)) ? String(parseFloat(stringValue)) : "";
23542
- otherProps.onEnter(val);
23360
+ onEnter(val);
23543
23361
  } else {
23544
- otherProps.onEnter(e.target.value);
23362
+ onEnter(e.target.value);
23545
23363
  }
23546
23364
  }
23547
23365
  if (otherProps.type === "number") {
@@ -23590,16 +23408,18 @@ const Input = withForwardRef(function Input(_a, ref) {
23590
23408
  }, otherPropsWithoutData, {
23591
23409
  value: usedValue,
23592
23410
  type: otherProps.type === "number" ? "text" : otherProps.type,
23593
- ref: innerRef,
23411
+ ref: refFunction,
23594
23412
  className: (input_default()).text,
23595
23413
  onBlur: onBlur,
23596
23414
  onChange: onChange,
23597
23415
  onKeyDown: realOnKeyDown
23598
- })));
23416
+ })), error && /*#__PURE__*/external_react_.createElement(InlineBlockMemo, {
23417
+ className: (input_default()).error
23418
+ }, /*#__PURE__*/external_react_.createElement(tmp, null, error)));
23599
23419
  }, (input_default()));
23600
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/HiddenInput.tsx
23601
- function HiddenInput_extends() { return HiddenInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, HiddenInput_extends.apply(null, arguments); }
23602
- var HiddenInput_rest = undefined && undefined.__rest || function (s, e) {
23420
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/withHookController.tsx
23421
+ function withHookController_extends() { return withHookController_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, withHookController_extends.apply(null, arguments); }
23422
+ var withHookController_rest = undefined && undefined.__rest || function (s, e) {
23603
23423
  var t = {};
23604
23424
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23605
23425
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
@@ -23611,28 +23431,373 @@ var HiddenInput_rest = undefined && undefined.__rest || function (s, e) {
23611
23431
 
23612
23432
 
23613
23433
 
23614
-
23615
- function HiddenInput(_a) {
23616
- // Variables
23617
- var {
23618
- noFocusHint = false,
23619
- className
23620
- } = _a,
23621
- props = HiddenInput_rest(_a, ["noFocusHint", "className"]);
23434
+ function withHookController(Comp, onChangeProp, emptyValue = null) {
23435
+ function WithHookComponent(_a, ref) {
23436
+ var _b, _c;
23437
+ var {
23438
+ name
23439
+ } = _a,
23440
+ otherProps = withHookController_rest(_a, ["name"]);
23441
+ const children = "children" in otherProps ? otherProps.children : undefined;
23442
+ const {
23443
+ field,
23444
+ fieldState
23445
+ } = (0,external_react_hook_form_namespaceObject.useController)({
23446
+ name
23447
+ });
23448
+ const {
23449
+ clearErrors
23450
+ } = (0,external_react_hook_form_namespaceObject.useFormContext)();
23451
+ const composedRef = useComposedRef(ref, field.ref);
23452
+ const errorMessage = (_b = fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
23453
+ const internalOnChange = (0,external_react_.useCallback)(arg => {
23454
+ clearErrors(name);
23455
+ field.onChange(arg);
23456
+ }, [clearErrors, field, name]);
23457
+ const onChangeProps = {
23458
+ [onChangeProp]: internalOnChange
23459
+ };
23460
+ return (
23461
+ /*#__PURE__*/
23462
+ // @ts-expect-error Because of the prop spreading, typescript is really confused here
23463
+ external_react_default().createElement(Comp, withHookController_extends({}, otherProps, field, onChangeProps, {
23464
+ value: (_c = field.value) !== null && _c !== void 0 ? _c : emptyValue,
23465
+ ref: composedRef,
23466
+ error: errorMessage
23467
+ }), children)
23468
+ );
23469
+ }
23470
+ return withForwardRef(WithHookComponent);
23471
+ }
23472
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/InputController.ts
23473
+
23474
+
23475
+ const InputController = withHookController(Input, "onChangeText");
23476
+ // EXTERNAL MODULE: ./src/Components/FormElements/Input/FileInput/fileInput.scss
23477
+ var fileInput = __webpack_require__(4372);
23478
+ var fileInput_default = /*#__PURE__*/__webpack_require__.n(fileInput);
23479
+ ;// CONCATENATED MODULE: ./src/Components/Layout/Grow.tsx
23480
+
23481
+
23482
+
23483
+
23484
+ const Grow = withForwardRef(function Grow({
23485
+ className,
23486
+ children,
23487
+ center = false,
23488
+ style,
23489
+ weight = 1
23490
+ }, ref) {
23491
+ // Variables
23622
23492
  // States
23623
23493
  // Refs
23624
23494
  // Callbacks
23625
23495
  // Effects
23626
23496
  // Other
23627
23497
  // Render Functions
23628
- return /*#__PURE__*/external_react_.createElement(Input, HiddenInput_extends({
23629
- className: classnames_default()((input_default()).hiddenInput, {
23630
- [(input_default()).noFocusHint]: noFocusHint
23631
- }, className)
23632
- }, props));
23498
+ return /*#__PURE__*/external_react_.createElement("div", {
23499
+ ref: ref,
23500
+ className: classnames_default()((layout_default()).grow, {
23501
+ [(layout_default()).center]: center,
23502
+ [(layout_default()).weight0]: weight === 0,
23503
+ [(layout_default()).weight1]: weight === 1,
23504
+ [(layout_default()).weight2]: weight === 2,
23505
+ [(layout_default()).weight3]: weight === 3,
23506
+ [(layout_default()).weight4]: weight === 4,
23507
+ [(layout_default()).weight5]: weight === 5,
23508
+ [(layout_default()).weight6]: weight === 6
23509
+ }, className),
23510
+ style: style
23511
+ }, children);
23512
+ }, (layout_default()));
23513
+ // EXTERNAL MODULE: ./src/Components/Image/image.scss
23514
+ var Image_image = __webpack_require__(6435);
23515
+ var image_default = /*#__PURE__*/__webpack_require__.n(Image_image);
23516
+ ;// CONCATENATED MODULE: ./src/Components/Image/Image.tsx
23517
+ function Image_extends() { return Image_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Image_extends.apply(null, arguments); }
23518
+ var Image_rest = undefined && undefined.__rest || function (s, e) {
23519
+ var t = {};
23520
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23521
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23522
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23523
+ }
23524
+ return t;
23525
+ };
23526
+
23527
+
23528
+
23529
+
23530
+ function Image(_a) {
23531
+ // Variables
23532
+ var {
23533
+ src,
23534
+ alt = '',
23535
+ className,
23536
+ style
23537
+ } = _a,
23538
+ otherProps = Image_rest(_a, ["src", "alt", "className", "style"]);
23539
+ // Refs
23540
+ // States
23541
+ // Selectors
23542
+ // Callbacks
23543
+ // Effects
23544
+ // Other
23545
+ // Render Functions
23546
+ return /*#__PURE__*/external_react_.createElement("img", Image_extends({
23547
+ src: src,
23548
+ alt: alt,
23549
+ className: classnames_default()((image_default()).image, className),
23550
+ style: style
23551
+ }, otherProps));
23633
23552
  }
23634
- const HiddenInput_tmp = withMemo(HiddenInput);
23553
+ // Need ImageMemo for autocompletion of phpstorm
23554
+ const ImageMemo = withMemo(Image, (image_default()));
23555
+
23556
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/FileInput/MultipleFileInput.tsx
23557
+ function MultipleFileInput_extends() { return MultipleFileInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, MultipleFileInput_extends.apply(null, arguments); }
23558
+ var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
23559
+ function adopt(value) {
23560
+ return value instanceof P ? value : new P(function (resolve) {
23561
+ resolve(value);
23562
+ });
23563
+ }
23564
+ return new (P || (P = Promise))(function (resolve, reject) {
23565
+ function fulfilled(value) {
23566
+ try {
23567
+ step(generator.next(value));
23568
+ } catch (e) {
23569
+ reject(e);
23570
+ }
23571
+ }
23572
+ function rejected(value) {
23573
+ try {
23574
+ step(generator["throw"](value));
23575
+ } catch (e) {
23576
+ reject(e);
23577
+ }
23578
+ }
23579
+ function step(result) {
23580
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
23581
+ }
23582
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
23583
+ });
23584
+ };
23585
+ var MultipleFileInput_rest = undefined && undefined.__rest || function (s, e) {
23586
+ var t = {};
23587
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23588
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23589
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23590
+ }
23591
+ return t;
23592
+ };
23593
+
23594
+
23595
+
23596
+
23597
+
23598
+
23599
+
23600
+
23601
+
23602
+
23603
+
23604
+
23605
+
23606
+
23607
+
23608
+
23609
+ const MultipleFileInput = withMemo(function MultipleImageInput(_a) {
23610
+ // Variables
23611
+ var {
23612
+ className,
23613
+ style,
23614
+ value,
23615
+ label,
23616
+ mimeTypes = ['image/*'],
23617
+ maxFiles = 1,
23618
+ maxSizePerFile = 1024 * 1024 * 10,
23619
+ allowOverride = maxFiles === 1,
23620
+ onError,
23621
+ showDeleteButton = true,
23622
+ error
23623
+ } = _a,
23624
+ otherProps = MultipleFileInput_rest(_a, ["className", "style", "value", "label", "mimeTypes", "maxFiles", "maxSizePerFile", "allowOverride", "onError", "showDeleteButton", "error"]);
23625
+ // Refs
23626
+ const inputRef = (0,external_react_.useRef)(null);
23627
+ const indexRef = (0,external_react_.useRef)(undefined);
23628
+ // States
23629
+ // Selectors
23630
+ // Callbacks
23631
+ const checkMimeType = (0,external_react_.useCallback)(fileType => {
23632
+ return mimeTypes.some(type => {
23633
+ if (type === '*/*' || type === '*') {
23634
+ return true;
23635
+ }
23636
+ if (type.endsWith('/*')) {
23637
+ return fileType.startsWith(type.substring(0, type.length - 2));
23638
+ }
23639
+ return fileType === type;
23640
+ });
23641
+ }, [mimeTypes]);
23642
+ const [onChangeFiles, ...props] = useListenerWithExtractedProps('onChangeFiles', otherProps);
23643
+ const getBase64 = (0,external_react_.useCallback)(inputFiles => {
23644
+ const promises = inputFiles.map(file => new Promise((resolve, reject) => {
23645
+ const reader = new FileReader();
23646
+ reader.onload = () => {
23647
+ resolve(reader.result);
23648
+ };
23649
+ reader.onerror = reject;
23650
+ reader.readAsDataURL(file);
23651
+ }));
23652
+ return Promise.all(promises);
23653
+ }, []);
23654
+ const onNewFiles = (0,external_react_.useCallback)((newFiles, index) => __awaiter(this, void 0, void 0, function* () {
23655
+ if (newFiles.some(file => !checkMimeType(file.type))) {
23656
+ onError === null || onError === void 0 ? void 0 : onError('Eine Datei ist im falschen Format');
23657
+ return;
23658
+ }
23659
+ if (newFiles.length + value.length > maxFiles && (!allowOverride || index === undefined || index + newFiles.length > maxFiles)) {
23660
+ onError === null || onError === void 0 ? void 0 : onError(`Es sind nur ${maxFiles} Dateien erlaubt.`);
23661
+ return;
23662
+ }
23663
+ if (maxSizePerFile && newFiles.some(file => file.size > maxSizePerFile)) {
23664
+ onError === null || onError === void 0 ? void 0 : onError(`Eine Datei ist zu groß. Jede Datei darf nur ${maxSizePerFile / 1024 / 1024}MB groß sein.`);
23665
+ return;
23666
+ }
23667
+ const newUrls = yield getBase64(newFiles);
23668
+ const newValue = newFiles.map((file, fileIndex) => ({
23669
+ name: file.name,
23670
+ data: newUrls[fileIndex],
23671
+ mimeType: file.type,
23672
+ blob: file
23673
+ }));
23674
+ if (newFiles.length + value.length > maxFiles && index !== undefined) {
23675
+ const onChangeFilesValue = [...value];
23676
+ onChangeFilesValue.splice(index, newFiles.length, ...newValue);
23677
+ onChangeFiles(onChangeFilesValue);
23678
+ } else {
23679
+ onChangeFiles([...value, ...newValue]);
23680
+ }
23681
+ }), [allowOverride, checkMimeType, getBase64, maxFiles, maxSizePerFile, onChangeFiles, onError, value]);
23682
+ const onInputChange = (0,external_react_.useCallback)(e => __awaiter(this, void 0, void 0, function* () {
23683
+ const index = indexRef.current;
23684
+ indexRef.current = undefined;
23685
+ if (!e.target.files || e.target.files.length === 0) {
23686
+ return;
23687
+ }
23688
+ const newFiles = Array.from(e.target.files);
23689
+ yield onNewFiles(newFiles, index);
23690
+ }), [onNewFiles]);
23691
+ const removeFile = (0,external_react_.useCallback)((_, index) => {
23692
+ if (index >= 0 && index < value.length) {
23693
+ const newData = [...value];
23694
+ newData.splice(index, 1);
23695
+ onChangeFiles(newData);
23696
+ }
23697
+ }, [onChangeFiles, value]);
23698
+ const onDrop = (0,external_react_.useCallback)((event, index) => __awaiter(this, void 0, void 0, function* () {
23699
+ event.preventDefault();
23700
+ const files = [];
23701
+ if (event.dataTransfer.items) {
23702
+ for (let i = 0; i < event.dataTransfer.items.length; i++) {
23703
+ if (event.dataTransfer.items[i].kind === 'file') {
23704
+ const file = event.dataTransfer.items[i].getAsFile();
23705
+ if (file) {
23706
+ files.push(file);
23707
+ }
23708
+ }
23709
+ }
23710
+ } else {
23711
+ for (let i = 0; i < event.dataTransfer.files.length; i++) {
23712
+ files.push(event.dataTransfer.files[i]);
23713
+ }
23714
+ }
23715
+ yield onNewFiles(files, index);
23716
+ }), [onNewFiles]);
23717
+ const onDragOver = (0,external_react_.useCallback)(e => e.preventDefault(), []);
23718
+ const clickOnFile = (0,external_react_.useCallback)((_, index) => {
23719
+ if (index !== undefined && !allowOverride || !inputRef.current) {
23720
+ return;
23721
+ }
23722
+ indexRef.current = index;
23723
+ inputRef.current.dispatchEvent(new MouseEvent("click"));
23724
+ }, [allowOverride]);
23725
+ // Effects
23726
+ // Other
23727
+ // Render Functions
23728
+ const renderFile = file => {
23729
+ if (file.mimeType.startsWith('image/')) {
23730
+ return /*#__PURE__*/external_react_.createElement(ImageMemo, {
23731
+ key: file.data,
23732
+ src: file.data,
23733
+ alt: file.name,
23734
+ className: classnames_default()((fileInput_default()).previewImage, file.data)
23735
+ });
23736
+ }
23737
+ // TODO style
23738
+ return /*#__PURE__*/external_react_.createElement(BlockMemo, {
23739
+ className: (fileInput_default()).previewText
23740
+ }, /*#__PURE__*/external_react_.createElement(Icon, {
23741
+ icon: free_solid_svg_icons_namespaceObject.faFile,
23742
+ className: (fileInput_default()).previewTextIcon
23743
+ }), /*#__PURE__*/external_react_.createElement(tmp, null, file.name));
23744
+ };
23745
+ return /*#__PURE__*/external_react_.createElement("span", {
23746
+ className: classnames_default()((fileInput_default()).fileInput, className),
23747
+ style: style
23748
+ }, /*#__PURE__*/external_react_.createElement(Flex_tmp, {
23749
+ horizontal: true
23750
+ }, !!label && /*#__PURE__*/external_react_.createElement(Grow, null, /*#__PURE__*/external_react_.createElement(tmp, null, label)), maxFiles > 1 && /*#__PURE__*/external_react_.createElement(InlineMemo, null, /*#__PURE__*/external_react_.createElement(tmp, null, value.length, "/", maxFiles))), /*#__PURE__*/external_react_.createElement(Flex_tmp, {
23751
+ horizontal: true,
23752
+ className: (fileInput_default()).previewContainer
23753
+ }, value === null || value === void 0 ? void 0 : value.map((file, index) => {
23754
+ return /*#__PURE__*/external_react_.createElement(Grow, {
23755
+ className: (fileInput_default()).preview,
23756
+ center: true,
23757
+ key: file.data
23758
+ }, /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23759
+ onDrop: onDrop,
23760
+ onDragOver: onDragOver,
23761
+ onDropData: index,
23762
+ onClick: clickOnFile,
23763
+ onClickData: index
23764
+ }, renderFile(file), showDeleteButton && /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23765
+ className: (fileInput_default()).previewRemove,
23766
+ onClick: removeFile,
23767
+ onClickData: index
23768
+ }, /*#__PURE__*/external_react_.createElement(Icon, {
23769
+ icon: free_solid_svg_icons_namespaceObject.faTimesCircle
23770
+ }))));
23771
+ }), /*#__PURE__*/external_react_.createElement(Grow, {
23772
+ className: classnames_default()((fileInput_default()).addFile, {
23773
+ [(fileInput_default()).hidden]: value.length >= maxFiles
23774
+ }),
23775
+ center: true
23776
+ }, /*#__PURE__*/external_react_.createElement(ClickableMemo, {
23777
+ className: (fileInput_default()).addFileButton,
23778
+ onDrop: onDrop,
23779
+ onDragOver: onDragOver,
23780
+ onDropData: maxFiles,
23781
+ onClick: clickOnFile,
23782
+ __allowChildren: "html"
23783
+ }, /*#__PURE__*/external_react_.createElement(Icon, {
23784
+ icon: free_solid_svg_icons_namespaceObject.faPlus
23785
+ }), /*#__PURE__*/external_react_.createElement("input", MultipleFileInput_extends({}, props, {
23786
+ ref: inputRef,
23787
+ className: (fileInput_default()).value,
23788
+ onChange: onInputChange,
23789
+ value: "",
23790
+ type: "file",
23791
+ multiple: maxFiles > 1,
23792
+ accept: mimeTypes.join(', ')
23793
+ }))))), error && /*#__PURE__*/external_react_.createElement(InlineBlockMemo, {
23794
+ className: (fileInput_default()).error
23795
+ }, /*#__PURE__*/external_react_.createElement(tmp, null, error)));
23796
+ }, (fileInput_default()));
23797
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/MultipleFileInputController.ts
23798
+
23635
23799
 
23800
+ const MultipleFileInputController = withHookController(MultipleFileInput, 'onChangeFiles');
23636
23801
  // EXTERNAL MODULE: ./src/Components/FormElements/Input/PasswordInput/passwordInput.scss
23637
23802
  var passwordInput = __webpack_require__(1436);
23638
23803
  var passwordInput_default = /*#__PURE__*/__webpack_require__.n(passwordInput);
@@ -23661,31 +23826,281 @@ const PasswordInput = withForwardRef(function PasswordInput(_a, ref) {
23661
23826
  className,
23662
23827
  style
23663
23828
  } = _a,
23664
- props = PasswordInput_rest(_a, ["className", "style"]);
23665
- // Variables
23666
- const [isVisible, setIsVisible] = (0,external_react_.useState)(false);
23667
- // Refs
23829
+ props = PasswordInput_rest(_a, ["className", "style"]);
23830
+ // Variables
23831
+ const [isVisible, setIsVisible] = (0,external_react_.useState)(false);
23832
+ // Refs
23833
+ // States
23834
+ // Selectors
23835
+ // Callbacks
23836
+ const toggleVisible = (0,external_react_.useCallback)(() => setIsVisible(old => !old), []);
23837
+ // Effects
23838
+ // Other
23839
+ // Render Functions
23840
+ return /*#__PURE__*/external_react_default().createElement(Flex_tmp, {
23841
+ horizontal: true,
23842
+ className: classnames_default()((passwordInput_default()).passwordInput, className),
23843
+ style: style
23844
+ }, /*#__PURE__*/external_react_default().createElement(Grow, null, /*#__PURE__*/external_react_default().createElement(Input, PasswordInput_extends({}, props, {
23845
+ type: isVisible ? 'text' : 'password',
23846
+ ref: ref
23847
+ }))), /*#__PURE__*/external_react_default().createElement(ClickableMemo, {
23848
+ onClick: toggleVisible,
23849
+ className: (passwordInput_default()).showButton,
23850
+ interactable: false
23851
+ }, /*#__PURE__*/external_react_default().createElement(Icon, {
23852
+ icon: isVisible ? free_solid_svg_icons_namespaceObject.faEye : free_solid_svg_icons_namespaceObject.faEyeSlash
23853
+ })));
23854
+ }, (passwordInput_default()));
23855
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/PasswordInputController.ts
23856
+
23857
+
23858
+ const PasswordInputController = withHookController(PasswordInput, "onChangeText");
23859
+ // EXTERNAL MODULE: ./src/Components/FormElements/Select/select.scss
23860
+ var Select_select = __webpack_require__(8581);
23861
+ var select_default = /*#__PURE__*/__webpack_require__.n(Select_select);
23862
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Select/Select.tsx
23863
+ function Select_extends() { return Select_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Select_extends.apply(null, arguments); }
23864
+ var Select_rest = undefined && undefined.__rest || function (s, e) {
23865
+ var t = {};
23866
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23867
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23868
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23869
+ }
23870
+ return t;
23871
+ };
23872
+
23873
+
23874
+
23875
+
23876
+
23877
+
23878
+
23879
+
23880
+ const Select = withMemo(function Select(_a) {
23881
+ // Variables
23882
+ var {
23883
+ label,
23884
+ options,
23885
+ className,
23886
+ style,
23887
+ onChangeValue,
23888
+ inline = false,
23889
+ small = false,
23890
+ error
23891
+ } = _a,
23892
+ otherProps = Select_rest(_a, ["label", "options", "className", "style", "onChangeValue", "inline", "small", "error"]);
23893
+ // Refs
23894
+ // States
23895
+ // Selectors
23896
+ // Callbacks
23897
+ const [onChangeWithData, propsWithoutData] = useListenerWithExtractedProps('onChange', otherProps);
23898
+ const onChange = (0,external_react_.useCallback)(e => {
23899
+ onChangeValue === null || onChangeValue === void 0 ? void 0 : onChangeValue(e.target.value);
23900
+ onChangeWithData(e);
23901
+ }, [onChangeWithData, onChangeValue]);
23902
+ // Effects
23903
+ // Other
23904
+ // Render Functions
23905
+ return (
23906
+ /*#__PURE__*/
23907
+ // eslint-disable-next-line jsx-a11y/label-has-associated-control
23908
+ external_react_.createElement("label", {
23909
+ className: classnames_default()((select_default()).select, {
23910
+ [(select_default()).inline]: inline,
23911
+ [(select_default()).small]: small
23912
+ }, className),
23913
+ style: style
23914
+ }, label ? /*#__PURE__*/external_react_.createElement("span", {
23915
+ className: (select_default()).label
23916
+ }, label) : null, /*#__PURE__*/external_react_.createElement("select", Select_extends({}, propsWithoutData, {
23917
+ className: (select_default()).input,
23918
+ onChange: onChange
23919
+ }), options.map(option => {
23920
+ var _a;
23921
+ return /*#__PURE__*/external_react_.createElement("option", {
23922
+ value: option.value,
23923
+ key: (_a = option.key) !== null && _a !== void 0 ? _a : option.value
23924
+ }, option.label);
23925
+ })), error && /*#__PURE__*/external_react_.createElement(InlineBlockMemo, {
23926
+ className: (select_default()).error
23927
+ }, /*#__PURE__*/external_react_.createElement(tmp, null, error)))
23928
+ );
23929
+ }, (select_default()));
23930
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/SelectController.ts
23931
+
23932
+
23933
+ const SelectController = withHookController(Select, "onChangeValue");
23934
+ // EXTERNAL MODULE: ./src/Components/FormElements/Textarea/textarea.scss
23935
+ var Textarea_textarea = __webpack_require__(817);
23936
+ var textarea_default = /*#__PURE__*/__webpack_require__.n(Textarea_textarea);
23937
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Textarea/Textarea.tsx
23938
+ function Textarea_extends() { return Textarea_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Textarea_extends.apply(null, arguments); }
23939
+ var Textarea_rest = undefined && undefined.__rest || function (s, e) {
23940
+ var t = {};
23941
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23942
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23943
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23944
+ }
23945
+ return t;
23946
+ };
23947
+
23948
+
23949
+
23950
+
23951
+
23952
+
23953
+
23954
+
23955
+
23956
+
23957
+ const Textarea = withForwardRef(function Textarea(_a, ref) {
23958
+ var {
23959
+ label,
23960
+ className,
23961
+ style,
23962
+ onKeyUp,
23963
+ onChangeText,
23964
+ onEnter,
23965
+ onEscape,
23966
+ textareaStyles,
23967
+ containerRef,
23968
+ error
23969
+ } = _a,
23970
+ otherProps = Textarea_rest(_a, ["label", "className", "style", "onKeyUp", "onChangeText", "onEnter", "onEscape", "textareaStyles", "containerRef", "error"]);
23971
+ // Refs
23972
+ const innerRef = (0,external_react_.useRef)(null);
23973
+ const refSetter = useComposedRef(ref, innerRef);
23974
+ // Variables
23975
+ // States
23976
+ // Callbacks
23977
+ const [onChangeWithData, otherPropsWithoutOnchange] = useListenerWithExtractedProps('onChange', otherProps);
23978
+ const [onChangeDone, otherPropsWithoutData] = useListenerWithExtractedProps('onChangeDone', otherPropsWithoutOnchange);
23979
+ const onChange = (0,external_react_.useCallback)(e => {
23980
+ if (onChangeText) {
23981
+ onChangeText(e.target.value);
23982
+ }
23983
+ onChangeWithData(e);
23984
+ }, [onChangeWithData, onChangeText]);
23985
+ const realOnKeyPress = (0,external_react_.useCallback)(e => {
23986
+ if (onKeyUp) {
23987
+ onKeyUp(e);
23988
+ }
23989
+ if (onEnter && e.key === 'Enter' && !e.defaultPrevented) {
23990
+ onEnter(e.target.value);
23991
+ }
23992
+ if (onEscape && e.key === 'Escape' && !e.defaultPrevented) {
23993
+ onEscape(e.target.value);
23994
+ }
23995
+ }, [onEnter, onEscape, onKeyUp]);
23996
+ // Effects
23997
+ useOnChangeDone(onChangeDone, innerRef);
23998
+ // Other
23999
+ // Render Functions
24000
+ return /*#__PURE__*/external_react_.createElement("label", {
24001
+ className: classnames_default()((textarea_default()).container, className),
24002
+ style: style,
24003
+ ref: containerRef
24004
+ }, label ? /*#__PURE__*/external_react_.createElement("span", {
24005
+ className: (textarea_default()).label
24006
+ }, label) : null, /*#__PURE__*/external_react_.createElement("textarea", Textarea_extends({}, otherPropsWithoutData, {
24007
+ style: textareaStyles,
24008
+ onKeyUp: realOnKeyPress,
24009
+ className: (textarea_default()).textarea,
24010
+ onChange: onChange,
24011
+ ref: refSetter
24012
+ })), error && /*#__PURE__*/external_react_.createElement(InlineBlockMemo, {
24013
+ className: (textarea_default()).error
24014
+ }, /*#__PURE__*/external_react_.createElement(tmp, null, error)));
24015
+ }, (textarea_default()));
24016
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Controller/TextareaController.ts
24017
+
24018
+
24019
+ const TextareaController = withHookController(Textarea, 'onChangeText');
24020
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/FileInput/FileInput.tsx
24021
+ function FileInput_extends() { return FileInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, FileInput_extends.apply(null, arguments); }
24022
+ var FileInput_rest = undefined && undefined.__rest || function (s, e) {
24023
+ var t = {};
24024
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
24025
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
24026
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
24027
+ }
24028
+ return t;
24029
+ };
24030
+
24031
+
24032
+
24033
+
24034
+
24035
+
24036
+ // TODO use MultipleFileInput internal
24037
+ const FileInput = withMemo(function FileInput(_a) {
24038
+ // Variables
24039
+ var {
24040
+ value,
24041
+ mimeType,
24042
+ required = false
24043
+ } = _a,
24044
+ otherProps = FileInput_rest(_a, ["value", "mimeType", "required"]);
24045
+ // Refs
24046
+ // States
24047
+ const mimeTypes = (0,external_react_.useMemo)(() => mimeType ? [mimeType] : undefined, [mimeType]);
24048
+ const innerValue = (0,external_react_.useMemo)(() => value ? [value] : [], [value]);
24049
+ // Selectors
24050
+ // Callbacks
24051
+ const [onChangeFile, multipleFileInputProps] = useListenerWithExtractedProps("onChangeFile", otherProps);
24052
+ const onChangeFiles = (0,external_react_.useCallback)(files => {
24053
+ if (!required || files[0]) {
24054
+ onChangeFile(files[0]);
24055
+ }
24056
+ }, [onChangeFile, required]);
24057
+ // Effects
24058
+ // Other
24059
+ // Render Functions
24060
+ return /*#__PURE__*/external_react_.createElement(MultipleFileInput, FileInput_extends({
24061
+ maxFiles: 1,
24062
+ value: innerValue,
24063
+ onChangeFiles: onChangeFiles,
24064
+ mimeTypes: mimeTypes,
24065
+ showDeleteButton: !required
24066
+ }, multipleFileInputProps));
24067
+ }, (fileInput_default()));
24068
+ ;// CONCATENATED MODULE: ./src/Components/FormElements/Input/HiddenInput.tsx
24069
+ function HiddenInput_extends() { return HiddenInput_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, HiddenInput_extends.apply(null, arguments); }
24070
+ var HiddenInput_rest = undefined && undefined.__rest || function (s, e) {
24071
+ var t = {};
24072
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
24073
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
24074
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
24075
+ }
24076
+ return t;
24077
+ };
24078
+
24079
+
24080
+
24081
+
24082
+
24083
+ function HiddenInput(_a) {
24084
+ // Variables
24085
+ var {
24086
+ noFocusHint = false,
24087
+ className
24088
+ } = _a,
24089
+ props = HiddenInput_rest(_a, ["noFocusHint", "className"]);
23668
24090
  // States
23669
- // Selectors
24091
+ // Refs
23670
24092
  // Callbacks
23671
- const toggleVisible = (0,external_react_.useCallback)(() => setIsVisible(old => !old), []);
23672
24093
  // Effects
23673
24094
  // Other
23674
24095
  // Render Functions
23675
- return /*#__PURE__*/external_react_default().createElement(Flex_tmp, {
23676
- horizontal: true,
23677
- className: classnames_default()((passwordInput_default()).passwordInput, className),
23678
- style: style
23679
- }, /*#__PURE__*/external_react_default().createElement(Grow, null, /*#__PURE__*/external_react_default().createElement(Input, PasswordInput_extends({}, props, {
23680
- type: isVisible ? 'text' : 'password',
23681
- ref: ref
23682
- }))), /*#__PURE__*/external_react_default().createElement(ClickableMemo, {
23683
- onClick: toggleVisible,
23684
- className: (passwordInput_default()).showButton
23685
- }, /*#__PURE__*/external_react_default().createElement(Icon, {
23686
- icon: isVisible ? free_solid_svg_icons_namespaceObject.faEye : free_solid_svg_icons_namespaceObject.faEyeSlash
23687
- })));
23688
- }, (passwordInput_default()));
24096
+ return /*#__PURE__*/external_react_.createElement(Input, HiddenInput_extends({
24097
+ className: classnames_default()((input_default()).hiddenInput, {
24098
+ [(input_default()).noFocusHint]: noFocusHint
24099
+ }, className)
24100
+ }, props));
24101
+ }
24102
+ const HiddenInput_tmp = withMemo(HiddenInput);
24103
+
23689
24104
  // EXTERNAL MODULE: ./src/Components/FormElements/SearchSelectInput/seachSelectInput.scss
23690
24105
  var seachSelectInput = __webpack_require__(6245);
23691
24106
  var seachSelectInput_default = /*#__PURE__*/__webpack_require__.n(seachSelectInput);
@@ -23836,72 +24251,6 @@ const SearchSelectInput = withMemo(function SearchSelectInput({
23836
24251
  }, selectableOptions.map(renderSelectableOption)))
23837
24252
  );
23838
24253
  }, (seachSelectInput_default()));
23839
- // EXTERNAL MODULE: ./src/Components/FormElements/Select/select.scss
23840
- var Select_select = __webpack_require__(8581);
23841
- var select_default = /*#__PURE__*/__webpack_require__.n(Select_select);
23842
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Select/Select.tsx
23843
- function Select_extends() { return Select_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Select_extends.apply(null, arguments); }
23844
- var Select_rest = undefined && undefined.__rest || function (s, e) {
23845
- var t = {};
23846
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23847
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23848
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
23849
- }
23850
- return t;
23851
- };
23852
-
23853
-
23854
-
23855
-
23856
-
23857
-
23858
- const Select = withMemo(function Select(_a) {
23859
- // Variables
23860
- var {
23861
- label,
23862
- options,
23863
- className,
23864
- style,
23865
- onChangeValue,
23866
- inline = false,
23867
- small = false
23868
- } = _a,
23869
- otherProps = Select_rest(_a, ["label", "options", "className", "style", "onChangeValue", "inline", "small"]);
23870
- // Refs
23871
- // States
23872
- // Selectors
23873
- // Callbacks
23874
- const [onChangeWithData, propsWithoutData] = useListenerWithExtractedProps('onChange', otherProps);
23875
- const onChange = (0,external_react_.useCallback)(e => {
23876
- onChangeValue === null || onChangeValue === void 0 ? void 0 : onChangeValue(e.target.value);
23877
- onChangeWithData(e);
23878
- }, [onChangeWithData, onChangeValue]);
23879
- // Effects
23880
- // Other
23881
- // Render Functions
23882
- return (
23883
- /*#__PURE__*/
23884
- // eslint-disable-next-line jsx-a11y/label-has-associated-control
23885
- external_react_.createElement("label", {
23886
- className: classnames_default()((select_default()).select, {
23887
- [(select_default()).inline]: inline,
23888
- [(select_default()).small]: small
23889
- }, className),
23890
- style: style
23891
- }, label ? /*#__PURE__*/external_react_.createElement("span", {
23892
- className: (select_default()).label
23893
- }, label) : null, /*#__PURE__*/external_react_.createElement("select", Select_extends({}, propsWithoutData, {
23894
- className: (select_default()).input,
23895
- onChange: onChange
23896
- }), options.map(option => {
23897
- var _a;
23898
- return /*#__PURE__*/external_react_.createElement("option", {
23899
- value: option.value,
23900
- key: (_a = option.key) !== null && _a !== void 0 ? _a : option.value
23901
- }, option.label);
23902
- })))
23903
- );
23904
- }, (select_default()));
23905
24254
  // EXTERNAL MODULE: ./src/Components/FormElements/Slider/slider.scss
23906
24255
  var slider = __webpack_require__(5471);
23907
24256
  var slider_default = /*#__PURE__*/__webpack_require__.n(slider);
@@ -24034,82 +24383,6 @@ const Switch = withMemo(function Switch(_a) {
24034
24383
  className: (switch_default()).label
24035
24384
  }, label)));
24036
24385
  }, (switch_default()));
24037
- // EXTERNAL MODULE: ./src/Components/FormElements/Textarea/textarea.scss
24038
- var Textarea_textarea = __webpack_require__(817);
24039
- var textarea_default = /*#__PURE__*/__webpack_require__.n(Textarea_textarea);
24040
- ;// CONCATENATED MODULE: ./src/Components/FormElements/Textarea/Textarea.tsx
24041
- function Textarea_extends() { return Textarea_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, Textarea_extends.apply(null, arguments); }
24042
- var Textarea_rest = undefined && undefined.__rest || function (s, e) {
24043
- var t = {};
24044
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
24045
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
24046
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
24047
- }
24048
- return t;
24049
- };
24050
-
24051
-
24052
-
24053
-
24054
-
24055
-
24056
-
24057
-
24058
- const Textarea = withForwardRef(function Textarea(_a, ref) {
24059
- var {
24060
- label,
24061
- className,
24062
- style,
24063
- onKeyUp,
24064
- onChangeText,
24065
- onEnter,
24066
- onEscape,
24067
- textareaStyles,
24068
- containerRef
24069
- } = _a,
24070
- otherProps = Textarea_rest(_a, ["label", "className", "style", "onKeyUp", "onChangeText", "onEnter", "onEscape", "textareaStyles", "containerRef"]);
24071
- // Refs
24072
- const innerRef = useComposedRef(ref);
24073
- // Variables
24074
- // States
24075
- // Callbacks
24076
- const [onChangeWithData, otherPropsWithoutOnchange] = useListenerWithExtractedProps('onChange', otherProps);
24077
- const [onChangeDone, otherPropsWithoutData] = useListenerWithExtractedProps('onChangeDone', otherPropsWithoutOnchange);
24078
- const onChange = (0,external_react_.useCallback)(e => {
24079
- if (onChangeText) {
24080
- onChangeText(e.target.value);
24081
- }
24082
- onChangeWithData(e);
24083
- }, [onChangeWithData, onChangeText]);
24084
- const realOnKeyPress = (0,external_react_.useCallback)(e => {
24085
- if (onKeyUp) {
24086
- onKeyUp(e);
24087
- }
24088
- if (onEnter && e.key === 'Enter' && !e.defaultPrevented) {
24089
- onEnter(e.target.value);
24090
- }
24091
- if (onEscape && e.key === 'Escape' && !e.defaultPrevented) {
24092
- onEscape(e.target.value);
24093
- }
24094
- }, [onEnter, onEscape, onKeyUp]);
24095
- // Effects
24096
- useOnChangeDone(onChangeDone, innerRef);
24097
- // Other
24098
- // Render Functions
24099
- return /*#__PURE__*/external_react_.createElement("label", {
24100
- className: classnames_default()((textarea_default()).container, className),
24101
- style: style,
24102
- ref: containerRef
24103
- }, label ? /*#__PURE__*/external_react_.createElement("span", {
24104
- className: (textarea_default()).label
24105
- }, label) : null, /*#__PURE__*/external_react_.createElement("textarea", Textarea_extends({}, otherPropsWithoutData, {
24106
- style: textareaStyles,
24107
- onKeyUp: realOnKeyPress,
24108
- className: (textarea_default()).textarea,
24109
- onChange: onChange,
24110
- ref: innerRef
24111
- })));
24112
- }, (textarea_default()));
24113
24386
  ;// CONCATENATED MODULE: ./src/Components/FullScreen/FullScreen.tsx
24114
24387
  var FullScreen_rest = undefined && undefined.__rest || function (s, e) {
24115
24388
  var t = {};
@@ -27271,87 +27544,6 @@ const List = withMemo(function List({
27271
27544
  }, renderItemInner));
27272
27545
  });
27273
27546
  }, (list_default()));
27274
- // EXTERNAL MODULE: ./src/Components/LoadingCircle/loadingCircle.scss
27275
- var loadingCircle = __webpack_require__(5391);
27276
- var loadingCircle_default = /*#__PURE__*/__webpack_require__.n(loadingCircle);
27277
- ;// CONCATENATED MODULE: ./src/Components/LoadingCircle/LoadingCircle.tsx
27278
-
27279
-
27280
-
27281
-
27282
- function LoadingCircle({
27283
- size = 32,
27284
- className,
27285
- style
27286
- }) {
27287
- // Variables
27288
- // States
27289
- // Refs
27290
- // Callbacks
27291
- // Effects
27292
- // Other
27293
- // Render Functions
27294
- return /*#__PURE__*/external_react_.createElement("svg", {
27295
- className: classnames_default()((loadingCircle_default()).loadingCircle, className),
27296
- viewBox: `0 0 ${size} ${size}`,
27297
- width: size,
27298
- height: size,
27299
- style: style
27300
- }, /*#__PURE__*/external_react_.createElement("circle", {
27301
- cx: "50%",
27302
- cy: "50%",
27303
- r: "40%",
27304
- fill: "none",
27305
- className: (loadingCircle_default()).spinner
27306
- }));
27307
- }
27308
- const LoadingCircleMemo = withMemo(LoadingCircle, (loadingCircle_default()));
27309
-
27310
- // EXTERNAL MODULE: ./src/Components/LoadingArea/loadingArea.scss
27311
- var loadingArea = __webpack_require__(5455);
27312
- var loadingArea_default = /*#__PURE__*/__webpack_require__.n(loadingArea);
27313
- ;// CONCATENATED MODULE: ./src/Components/LoadingArea/LoadingArea.tsx
27314
-
27315
-
27316
-
27317
-
27318
-
27319
- function LoadingArea({
27320
- loading,
27321
- fullWidth = false,
27322
- fullSize = false,
27323
- fullHeight = false,
27324
- opacity = 0.65,
27325
- className,
27326
- style,
27327
- children
27328
- }) {
27329
- // Variables
27330
- if (fullSize) {
27331
- fullHeight = true;
27332
- fullWidth = true;
27333
- }
27334
- // States
27335
- // Refs
27336
- // Callbacks
27337
- // Effects
27338
- // Other
27339
- // Render Functions
27340
- return /*#__PURE__*/external_react_.createElement("span", {
27341
- className: classnames_default()((loadingArea_default()).loadingArea, className, {
27342
- 'full-height': fullHeight,
27343
- 'full-width': fullWidth
27344
- }),
27345
- style: style
27346
- }, children, loading ? /*#__PURE__*/external_react_.createElement("span", {
27347
- className: (loadingArea_default()).curtain,
27348
- style: {
27349
- opacity
27350
- }
27351
- }, /*#__PURE__*/external_react_.createElement(LoadingCircleMemo, null)) : null);
27352
- }
27353
- const LoadingAreaMemo = withMemo(LoadingArea, (loadingArea_default()));
27354
-
27355
27547
  ;// CONCATENATED MODULE: ./src/Components/Menu/HoverMenu.tsx
27356
27548
 
27357
27549
 
@@ -28484,6 +28676,15 @@ function nonEmptyString(str, other = Characters.NBSP) {
28484
28676
 
28485
28677
 
28486
28678
 
28679
+
28680
+
28681
+
28682
+
28683
+
28684
+
28685
+
28686
+
28687
+
28487
28688
 
28488
28689
 
28489
28690
 
@@ -28529,6 +28730,7 @@ exports.GridItem = __webpack_exports__.GridItem;
28529
28730
  exports.Grow = __webpack_exports__.Grow;
28530
28731
  exports.Heading = __webpack_exports__.Heading;
28531
28732
  exports.HiddenInput = __webpack_exports__.HiddenInput;
28733
+ exports.HookForm = __webpack_exports__.HookForm;
28532
28734
  exports.HoverMenu = __webpack_exports__.HoverMenu;
28533
28735
  exports.Icon = __webpack_exports__.Icon;
28534
28736
  exports.Image = __webpack_exports__.Image;
@@ -28536,6 +28738,7 @@ exports.InViewport = __webpack_exports__.InViewport;
28536
28738
  exports.Inline = __webpack_exports__.Inline;
28537
28739
  exports.InlineBlock = __webpack_exports__.InlineBlock;
28538
28740
  exports.Input = __webpack_exports__.Input;
28741
+ exports.InputController = __webpack_exports__.InputController;
28539
28742
  exports.List = __webpack_exports__.List;
28540
28743
  exports.ListItem = __webpack_exports__.ListItem;
28541
28744
  exports.ListRow = __webpack_exports__.ListRow;
@@ -28548,10 +28751,15 @@ exports.MenuDivider = __webpack_exports__.MenuDivider;
28548
28751
  exports.MenuItem = __webpack_exports__.MenuItem;
28549
28752
  exports.MoreButton = __webpack_exports__.MoreButton;
28550
28753
  exports.MultipleFileInput = __webpack_exports__.MultipleFileInput;
28754
+ exports.MultipleFileInputController = __webpack_exports__.MultipleFileInputController;
28551
28755
  exports.PasswordInput = __webpack_exports__.PasswordInput;
28756
+ exports.PasswordInputController = __webpack_exports__.PasswordInputController;
28552
28757
  exports.RESTRICT_CHILDREN = __webpack_exports__.RESTRICT_CHILDREN;
28553
28758
  exports.SearchSelectInput = __webpack_exports__.SearchSelectInput;
28554
28759
  exports.Select = __webpack_exports__.Select;
28760
+ exports.SelectController = __webpack_exports__.SelectController;
28761
+ exports.SendFormContext = __webpack_exports__.SendFormContext;
28762
+ exports.Size = __webpack_exports__.Size;
28555
28763
  exports.SizeCalculator = __webpack_exports__.SizeCalculator;
28556
28764
  exports.Slider = __webpack_exports__.Slider;
28557
28765
  exports.Spoiler = __webpack_exports__.Spoiler;
@@ -28566,6 +28774,7 @@ exports.TabBarButton = __webpack_exports__.TabBarButton;
28566
28774
  exports.Table = __webpack_exports__.Table;
28567
28775
  exports.Text = __webpack_exports__.Text;
28568
28776
  exports.Textarea = __webpack_exports__.Textarea;
28777
+ exports.TextareaController = __webpack_exports__.TextareaController;
28569
28778
  exports.Toast = __webpack_exports__.Toast;
28570
28779
  exports.ToastContainer = __webpack_exports__.ToastContainer;
28571
28780
  exports.ToastContext = __webpack_exports__.ToastContext;
@@ -28598,6 +28807,7 @@ exports.useMousePosition = __webpack_exports__.useMousePosition;
28598
28807
  exports.useOnChangeDone = __webpack_exports__.useOnChangeDone;
28599
28808
  exports.useOnMount = __webpack_exports__.useOnMount;
28600
28809
  exports.useOnce = __webpack_exports__.useOnce;
28810
+ exports.useSendFormContext = __webpack_exports__.useSendFormContext;
28601
28811
  exports.useSharedSelectedColor = __webpack_exports__.useSharedSelectedColor;
28602
28812
  exports.useSpoilerGroup = __webpack_exports__.useSpoilerGroup;
28603
28813
  exports.useStrictEnabled = __webpack_exports__.useStrictEnabled;
@@ -28605,6 +28815,7 @@ exports.useToast = __webpack_exports__.useToast;
28605
28815
  exports.useWindow = __webpack_exports__.useWindow;
28606
28816
  exports.useWindowDimensions = __webpack_exports__.useWindowDimensions;
28607
28817
  exports.withForwardRef = __webpack_exports__.withForwardRef;
28818
+ exports.withHookController = __webpack_exports__.withHookController;
28608
28819
  exports.withMemo = __webpack_exports__.withMemo;
28609
28820
  exports.withRenderBrowserOnly = __webpack_exports__.withRenderBrowserOnly;
28610
28821
  exports.withRestrictedChildren = __webpack_exports__.withRestrictedChildren;