@app-studio/web 0.8.54 → 0.8.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/web.esm.js CHANGED
@@ -140,7 +140,6 @@ var TextView = _ref3 => {
140
140
  } : {};
141
141
  var fontSize = Typography.fontSizes[size];
142
142
  return /*#__PURE__*/React.createElement(Element, Object.assign({
143
- role: "text",
144
143
  fontSize: fontSize,
145
144
  lineHeight: Typography.lineHeights[size],
146
145
  fontStyle: isItalic ? 'italic' : 'normal',
@@ -2221,19 +2220,23 @@ var DefaultSpeeds = {
2221
2220
  slow: 300
2222
2221
  };
2223
2222
 
2224
- var _excluded$8 = ["size", "speed", "color"],
2225
- _excluded2$1 = ["size", "speed", "color"],
2226
- _excluded3$1 = ["size", "speed", "color"],
2223
+ var _excluded$8 = ["size", "speed", "color", "themeMode"],
2224
+ _excluded2$1 = ["size", "speed", "color", "themeMode"],
2225
+ _excluded3$1 = ["size", "speed", "color", "themeMode"],
2227
2226
  _excluded4$1 = ["size", "children", "textColor", "loaderColor", "type", "speed", "textPosition"];
2228
2227
  var DefaultSpinner = _ref => {
2229
2228
  var {
2230
2229
  size = 'md',
2231
2230
  speed = 'normal',
2232
- color = 'theme.loading'
2231
+ color = 'theme.loading',
2232
+ themeMode: elementMode
2233
2233
  } = _ref,
2234
2234
  props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
2235
- var theme = useTheme();
2236
- var colorStyle = theme.getColor(color);
2235
+ var {
2236
+ getColor,
2237
+ themeMode
2238
+ } = useTheme();
2239
+ var colorStyle = getColor(color, elementMode ? elementMode : themeMode);
2237
2240
  var sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];
2238
2241
  var [angle, setAngle] = useState(0);
2239
2242
  useEffect(() => {
@@ -2272,11 +2275,15 @@ var Dotted = _ref2 => {
2272
2275
  var {
2273
2276
  size = 'md',
2274
2277
  speed = 'normal',
2275
- color = 'theme.loading'
2278
+ color = 'theme.loading',
2279
+ themeMode: elementMode
2276
2280
  } = _ref2,
2277
2281
  props = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
2278
- var theme = useTheme();
2279
- var colorStyle = theme.getColor(color);
2282
+ var {
2283
+ getColor,
2284
+ themeMode
2285
+ } = useTheme();
2286
+ var colorStyle = getColor(color, elementMode ? elementMode : themeMode);
2280
2287
  var sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];
2281
2288
  var [angle, setAngle] = useState(0);
2282
2289
  useEffect(() => {
@@ -2314,11 +2321,15 @@ var Quarter = _ref3 => {
2314
2321
  var {
2315
2322
  size = 'md',
2316
2323
  speed = 'normal',
2317
- color = 'theme.loading'
2324
+ color = 'theme.loading',
2325
+ themeMode: elementMode
2318
2326
  } = _ref3,
2319
2327
  props = _objectWithoutPropertiesLoose(_ref3, _excluded3$1);
2320
- var theme = useTheme();
2321
- var colorStyle = theme.getColor(color);
2328
+ var {
2329
+ getColor,
2330
+ themeMode
2331
+ } = useTheme();
2332
+ var colorStyle = getColor(color, elementMode ? elementMode : themeMode);
2322
2333
  var sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];
2323
2334
  var [angle, setAngle] = useState(0);
2324
2335
  useEffect(() => {
@@ -2384,7 +2395,7 @@ React.createElement(LoaderView, Object.assign({}, props)));
2384
2395
  // Exports the LoaderComponent as Loader, making it available for use in other parts of the application.
2385
2396
  var Loader = LoaderComponent;
2386
2397
 
2387
- var _excluded$9 = ["icon", "shadow", "children", "ariaLabel", "to", "isAuto", "isFilled", "isIconRounded", "isLoading", "isDisabled", "size", "variant", "iconPosition", "colorScheme", "shape", "onClick", "loaderProps", "loaderPosition", "effect", "isHovered", "setIsHovered", "isExternal"];
2398
+ var _excluded$9 = ["icon", "shadow", "children", "ariaLabel", "to", "isAuto", "isFilled", "isIconRounded", "isLoading", "isDisabled", "size", "variant", "iconPosition", "colorScheme", "shape", "onClick", "loaderProps", "loaderPosition", "effect", "isHovered", "setIsHovered", "isExternal", "themeMode"];
2388
2399
  var contrast = /*#__PURE__*/require('contrast');
2389
2400
  var ButtonView = _ref => {
2390
2401
  var _props$onClick;
@@ -2418,14 +2429,16 @@ var ButtonView = _ref => {
2418
2429
  effect = 'default',
2419
2430
  isHovered,
2420
2431
  setIsHovered = () => {},
2421
- isExternal = false
2432
+ isExternal = false,
2433
+ themeMode: elementMode
2422
2434
  // Defines CSS properties for 'outline' variant of the button with conditional styles based on reverse state.
2423
2435
  } = _ref,
2424
2436
  props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
2425
2437
  var {
2426
- getColor
2438
+ getColor,
2439
+ themeMode
2427
2440
  } = useTheme();
2428
- var handleHover = () => setIsHovered(!isHovered);
2441
+ var handleHover = over => setIsHovered(over);
2429
2442
  var isActive = !(isDisabled || isLoading);
2430
2443
  var defaultNativeProps = {
2431
2444
  disabled: !isActive
@@ -2433,7 +2446,7 @@ var ButtonView = _ref => {
2433
2446
  var buttonColor = isActive ? colorScheme : 'theme.disabled';
2434
2447
  var hovering = isHovered && effect === 'hover';
2435
2448
  var reverse = isHovered && effect === 'reverse';
2436
- var isLight = contrast(getColor(buttonColor)) == 'light';
2449
+ var isLight = contrast(getColor(buttonColor, elementMode ? elementMode : themeMode)) == 'light';
2437
2450
  var ButtonVariants = {
2438
2451
  filled: {
2439
2452
  // Defines CSS properties for 'link' variant of the button with conditional styles based on reverse state, includes text decoration.
@@ -2484,7 +2497,6 @@ var ButtonView = _ref => {
2484
2497
  return /*#__PURE__*/React.createElement(Element, Object.assign({
2485
2498
  gap: 8,
2486
2499
  as: "button",
2487
- role: "button",
2488
2500
  border: "none",
2489
2501
  color: "color.white",
2490
2502
  display: "flex",
@@ -2494,8 +2506,8 @@ var ButtonView = _ref => {
2494
2506
  backgroundColor: buttonColor,
2495
2507
  borderRadius: ButtonShapes[shape],
2496
2508
  onClick: (_props$onClick = props.onClick) != null ? _props$onClick : onClick,
2497
- onMouseEnter: handleHover,
2498
- onMouseLeave: handleHover,
2509
+ onMouseEnter: () => handleHover(true),
2510
+ onMouseLeave: () => handleHover(false),
2499
2511
  cursor: isActive ? 'pointer' : 'default',
2500
2512
  filter: hovering ? 'brightness(0.85)' : 'brightness(1)'
2501
2513
  }, hovering && !props.isDisabled ? {
@@ -2536,20 +2548,22 @@ var ButtonComponent = props => {
2536
2548
  };
2537
2549
  var Button = ButtonComponent;
2538
2550
 
2539
- var _excluded$a = ["src", "color"],
2551
+ var _excluded$a = ["src", "color", "themeMode"],
2540
2552
  _excluded2$2 = ["path"];
2541
2553
  var FileSVG = _ref => {
2542
2554
  var {
2543
2555
  src,
2544
- color
2556
+ color,
2557
+ themeMode: elementMode
2545
2558
  } = _ref,
2546
2559
  props = _objectWithoutPropertiesLoose(_ref, _excluded$a);
2547
2560
  var {
2548
- getColor
2561
+ getColor,
2562
+ themeMode
2549
2563
  } = useTheme();
2550
2564
  var Colorprops = color ? {
2551
- fill: getColor(color),
2552
- stroke: getColor(color)
2565
+ fill: getColor(color, elementMode ? elementMode : themeMode),
2566
+ stroke: getColor(color, elementMode ? elementMode : themeMode)
2553
2567
  } : {};
2554
2568
  return /*#__PURE__*/React.createElement(Center, Object.assign({}, props), /*#__PURE__*/React.createElement(Image, Object.assign({}, Colorprops, {
2555
2569
  content: 'url("' + src + '")',
@@ -3653,7 +3667,7 @@ var useTextFieldState = _ref => {
3653
3667
  };
3654
3668
  };
3655
3669
 
3656
- var _excluded$l = ["id", "name", "label", "hint", "value", "onChange", "left", "right", "helperText", "placeholder", "onChangeText", "shadow", "styles", "size", "shape", "variant", "colorScheme", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isClearable", "isAutoFocus", "setHint", "setIsFocused", "setIsHovered", "setValue", "onClick", "onFocus", "onBlur"];
3670
+ var _excluded$l = ["id", "name", "label", "hint", "value", "onChange", "left", "right", "helperText", "placeholder", "onChangeText", "shadow", "styles", "size", "shape", "variant", "colorScheme", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isClearable", "isAutoFocus", "setHint", "setIsFocused", "setIsHovered", "setValue", "onClick", "onFocus", "onBlur", "themeMode"];
3657
3671
  var TextFieldInput = props => /*#__PURE__*/React.createElement(Input, Object.assign({
3658
3672
  type: "text"
3659
3673
  }, props));
@@ -3694,13 +3708,15 @@ var TextFieldView = _ref => {
3694
3708
  setValue = () => {},
3695
3709
  onClick = () => {},
3696
3710
  onFocus,
3697
- onBlur = () => {}
3711
+ onBlur = () => {},
3712
+ themeMode: elementMode
3698
3713
  } = _ref,
3699
3714
  props = _objectWithoutPropertiesLoose(_ref, _excluded$l);
3700
3715
  var {
3701
- getColor
3716
+ getColor,
3717
+ themeMode
3702
3718
  } = useTheme();
3703
- var IconColor = getColor('color.blueGray.700');
3719
+ var IconColor = getColor('color.blueGray.700', elementMode ? elementMode : themeMode);
3704
3720
  var isWithLabel = !!(isFocused && label);
3705
3721
  var fieldStyles = Object.assign({
3706
3722
  margin: 0,
@@ -5471,7 +5487,7 @@ var IconSizes$4 = {
5471
5487
 
5472
5488
  var _excluded$n = ["size"],
5473
5489
  _excluded2$4 = ["size"],
5474
- _excluded3$3 = ["id", "name", "label", "value", "placeholder", "helperText", "hide", "error", "isHovered", "isFocused", "isAutoFocus", "isDisabled", "isReadOnly", "shadow", "newOptions", "size", "variant", "shape", "colorScheme", "onChange", "onBlur", "setHide", "setNewOptions", "setIsHovered", "setIsFocused", "setValue", "styles"];
5490
+ _excluded3$3 = ["id", "name", "label", "value", "placeholder", "helperText", "hide", "error", "isHovered", "isFocused", "isAutoFocus", "isDisabled", "isReadOnly", "shadow", "newOptions", "size", "variant", "shape", "colorScheme", "onChange", "onBlur", "setHide", "setNewOptions", "setIsHovered", "setIsFocused", "setValue", "styles", "themeMode"];
5475
5491
  var CountryList = _ref => {
5476
5492
  var props = _objectWithoutPropertiesLoose(_ref, _excluded$n);
5477
5493
  return /*#__PURE__*/React.createElement(Element, Object.assign({
@@ -5583,13 +5599,15 @@ var CountryPickerView = _ref5 => {
5583
5599
  dropDown: {},
5584
5600
  helperText: {},
5585
5601
  box: {}
5586
- }
5602
+ },
5603
+ themeMode: elementMode
5587
5604
  } = _ref5,
5588
5605
  props = _objectWithoutPropertiesLoose(_ref5, _excluded3$3);
5589
5606
  var {
5590
- getColor
5607
+ getColor,
5608
+ themeMode
5591
5609
  } = useTheme();
5592
- var IconColor = getColor('color.blueGray.700');
5610
+ var IconColor = getColor('color.blueGray.700', elementMode ? elementMode : themeMode);
5593
5611
  var handleHover = () => setIsHovered(!isHovered);
5594
5612
  var handleFocus = () => setIsFocused(true);
5595
5613
  var handleCallback = option => {
@@ -6625,6 +6643,11 @@ var MessageLayout = _ref => {
6625
6643
 
6626
6644
  var useModalStore = /*#__PURE__*/create(set => ({
6627
6645
  modals: [],
6646
+ onHide: name => name,
6647
+ onShow: (name, props) => ({
6648
+ name,
6649
+ props
6650
+ }),
6628
6651
  show: function show(name, modalProps, overlayProps) {
6629
6652
  if (modalProps === void 0) {
6630
6653
  modalProps = {};
@@ -6632,7 +6655,7 @@ var useModalStore = /*#__PURE__*/create(set => ({
6632
6655
  if (overlayProps === void 0) {
6633
6656
  overlayProps = {};
6634
6657
  }
6635
- set(state => ({
6658
+ set(state => Object.assign({}, state, {
6636
6659
  modals: [...state.modals, {
6637
6660
  name,
6638
6661
  props: Object.assign({}, modalProps, {
@@ -6651,10 +6674,20 @@ var useModalStore = /*#__PURE__*/create(set => ({
6651
6674
  };
6652
6675
  }
6653
6676
  // Hide specific modal by name
6654
- return {
6677
+ return Object.assign({}, state, {
6655
6678
  modals: state.modals.filter(modal => modal.name !== name)
6656
- };
6679
+ });
6657
6680
  });
6681
+ },
6682
+ setOnHide: onHide => {
6683
+ set(state => Object.assign({}, state, {
6684
+ onHide
6685
+ }));
6686
+ },
6687
+ setOnShow: onShow => {
6688
+ set(state => Object.assign({}, state, {
6689
+ onShow
6690
+ }));
6658
6691
  }
6659
6692
  }));
6660
6693
  var showModal = function showModal(name, modalProps, overlayProps) {
@@ -6665,9 +6698,11 @@ var showModal = function showModal(name, modalProps, overlayProps) {
6665
6698
  overlayProps = {};
6666
6699
  }
6667
6700
  useModalStore.getState().show(name, modalProps, overlayProps);
6701
+ useModalStore.getState().onShow(name, modalProps);
6668
6702
  };
6669
6703
  var hideModal = name => {
6670
6704
  console.log('hideModal', name);
6705
+ useModalStore.getState().onHide(name);
6671
6706
  useModalStore.getState().hide(typeof name === 'string' ? name : undefined);
6672
6707
  };
6673
6708
 
@@ -6838,9 +6873,17 @@ var ModalFooter = _ref5 => {
6838
6873
 
6839
6874
  var ModalLayout = _ref => {
6840
6875
  var {
6841
- modals: availableModals
6876
+ modals: availableModals,
6877
+ onShow,
6878
+ onHide
6842
6879
  } = _ref;
6843
6880
  var activeModals = useModalStore(state => state.modals);
6881
+ if (onShow) {
6882
+ useModalStore.getState().setOnShow(onShow);
6883
+ }
6884
+ if (onHide) {
6885
+ useModalStore.getState().setOnHide(onHide);
6886
+ }
6844
6887
  if (activeModals.length === 0) {
6845
6888
  return null;
6846
6889
  }