messy

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
storeInputs :: (MonadWidget t m)
            => Dynamic t StoreNetwork
            -> m (Event t (Int, StoreInput))
storeInputs dstoreMap = do
  let dstoreMap' = fmap unStoreNetwork dstoreMap
  elClass "div" "row" $ do
    s <- listWithKey dstoreMap' $ \k store -> do
      storeInputE <- storeInputWidget
      pure $ (,) k <$> storeInputE
    pure s

storeInputWidget :: MonadWidget t m => m (Event t StoreInput)
storeInputWidget = do
  i <- elAttr "div" storeStyle $ do -- Event t Float
    UI.h3' "Lead Time"
    Widget.simpleRangeInput 1 7 (Just "days")
  pure $ fmap (StoreInput . floor) $ updated i


data StoreInput = StoreInput { _leadTime :: Int }
newtype StoreNetwork = StoreNetwork { unStoreNetwork :: (Map Int StoreInput) } deriving (Show)