event_current_widget.dart 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761
  1. import '/backend/api_requests/api_calls.dart';
  2. import '/evenement/evenement_horecagelegenheid/evenement_horecagelegenheid_widget.dart';
  3. import '/evenement/evenement_info/evenement_info_widget.dart';
  4. import '/evenement/evenement_v2_h_t_m_l_component/evenement_v2_h_t_m_l_component_widget.dart';
  5. import '/flutter_flow/flutter_flow_icon_button.dart';
  6. import '/flutter_flow/flutter_flow_theme.dart';
  7. import '/flutter_flow/flutter_flow_util.dart';
  8. import '/flutter_flow/flutter_flow_widgets.dart';
  9. import '/shared/drawer_component/drawer_component_widget.dart';
  10. import 'dart:ui';
  11. import 'package:aligned_tooltip/aligned_tooltip.dart';
  12. import 'package:carousel_slider/carousel_slider.dart';
  13. import 'package:cached_network_image/cached_network_image.dart';
  14. import 'package:flutter/material.dart';
  15. import 'package:flutter_spinkit/flutter_spinkit.dart';
  16. import 'package:google_fonts/google_fonts.dart';
  17. import 'package:provider/provider.dart';
  18. import 'package:share_plus/share_plus.dart';
  19. import 'event_current_model.dart';
  20. export 'event_current_model.dart';
  21. class EventCurrentWidget extends StatefulWidget {
  22. const EventCurrentWidget({
  23. super.key,
  24. this.nid,
  25. this.horecaid,
  26. });
  27. final String? nid;
  28. final String? horecaid;
  29. static String routeName = 'EventCurrent';
  30. static String routePath = '/eventCurrent';
  31. @override
  32. State<EventCurrentWidget> createState() => _EventCurrentWidgetState();
  33. }
  34. class _EventCurrentWidgetState extends State<EventCurrentWidget>
  35. with RouteAware {
  36. late EventCurrentModel _model;
  37. final scaffoldKey = GlobalKey<ScaffoldState>();
  38. @override
  39. void initState() {
  40. super.initState();
  41. _model = createModel(context, () => EventCurrentModel());
  42. }
  43. @override
  44. void dispose() {
  45. routeObserver.unsubscribe(this);
  46. _model.dispose();
  47. super.dispose();
  48. }
  49. @override
  50. void didUpdateWidget(EventCurrentWidget oldWidget) {
  51. super.didUpdateWidget(oldWidget);
  52. _model.widget = widget;
  53. }
  54. @override
  55. void didChangeDependencies() {
  56. super.didChangeDependencies();
  57. final route = DebugModalRoute.of(context);
  58. if (route != null) {
  59. routeObserver.subscribe(this, route);
  60. }
  61. debugLogGlobalProperty(context);
  62. }
  63. @override
  64. void didPopNext() {
  65. if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
  66. setState(() => _model.isRouteVisible = true);
  67. debugLogWidgetClass(_model);
  68. }
  69. }
  70. @override
  71. void didPush() {
  72. if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
  73. setState(() => _model.isRouteVisible = true);
  74. debugLogWidgetClass(_model);
  75. }
  76. }
  77. @override
  78. void didPop() {
  79. _model.isRouteVisible = false;
  80. }
  81. @override
  82. void didPushNext() {
  83. _model.isRouteVisible = false;
  84. }
  85. @override
  86. Widget build(BuildContext context) {
  87. DebugFlutterFlowModelContext.maybeOf(context)
  88. ?.parentModelCallback
  89. ?.call(_model);
  90. return FutureBuilder<ApiCallResponse>(
  91. future: EvenementCall.call(
  92. nid: widget!.nid,
  93. ),
  94. builder: (context, snapshot) {
  95. // Customize what your widget looks like when it's loading.
  96. if (!snapshot.hasData) {
  97. return Scaffold(
  98. backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
  99. body: Center(
  100. child: SizedBox(
  101. width: 80.0,
  102. height: 80.0,
  103. child: SpinKitFadingCircle(
  104. color: Color(0xFFB1061E),
  105. size: 80.0,
  106. ),
  107. ),
  108. ),
  109. );
  110. }
  111. final eventCurrentEvenementResponse = snapshot.data!;
  112. _model.debugBackendQueries[
  113. 'EvenementCall_statusCode_Scaffold_vv4pr88m'] = debugSerializeParam(
  114. eventCurrentEvenementResponse.statusCode,
  115. ParamType.int,
  116. link:
  117. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=EventCurrent',
  118. name: 'int',
  119. nullable: false,
  120. );
  121. _model.debugBackendQueries[
  122. 'EvenementCall_responseBody_Scaffold_vv4pr88m'] =
  123. debugSerializeParam(
  124. eventCurrentEvenementResponse.bodyText,
  125. ParamType.String,
  126. link:
  127. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=EventCurrent',
  128. name: 'String',
  129. nullable: false,
  130. );
  131. debugLogWidgetClass(_model);
  132. return GestureDetector(
  133. onTap: () {
  134. FocusScope.of(context).unfocus();
  135. FocusManager.instance.primaryFocus?.unfocus();
  136. },
  137. child: Scaffold(
  138. key: scaffoldKey,
  139. backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
  140. drawer: Drawer(
  141. elevation: 16.0,
  142. child: wrapWithModel(
  143. model: _model.drawerComponentModel,
  144. updateCallback: () => safeSetState(() {}),
  145. child: Builder(builder: (_) {
  146. return DebugFlutterFlowModelContext(
  147. rootModel: _model.rootModel,
  148. child: DrawerComponentWidget(),
  149. );
  150. }),
  151. ),
  152. ),
  153. appBar: PreferredSize(
  154. preferredSize:
  155. Size.fromHeight(MediaQuery.sizeOf(context).height * 0.12),
  156. child: AppBar(
  157. backgroundColor: FlutterFlowTheme.of(context).info,
  158. automaticallyImplyLeading: false,
  159. actions: [],
  160. flexibleSpace: FlexibleSpaceBar(
  161. title: Align(
  162. alignment: AlignmentDirectional(0.0, 0.0),
  163. child: Row(
  164. mainAxisSize: MainAxisSize.max,
  165. children: [
  166. Padding(
  167. padding: EdgeInsetsDirectional.fromSTEB(
  168. 12.0, 0.0, 0.0, 0.0),
  169. child: FlutterFlowIconButton(
  170. borderColor: Color(0x00FF0000),
  171. borderRadius: 30.0,
  172. borderWidth: 1.0,
  173. buttonSize: 50.0,
  174. fillColor: Color(0xFFFF0000),
  175. icon: Icon(
  176. Icons.arrow_back_outlined,
  177. color: Colors.white,
  178. size: 30.0,
  179. ),
  180. onPressed: () async {
  181. context.pop();
  182. },
  183. ),
  184. ),
  185. FlutterFlowIconButton(
  186. borderRadius: 8.0,
  187. buttonSize: 40.0,
  188. fillColor: FlutterFlowTheme.of(context).primary,
  189. icon: Icon(
  190. Icons.dehaze_outlined,
  191. color: FlutterFlowTheme.of(context).info,
  192. size: 24.0,
  193. ),
  194. onPressed: () async {
  195. scaffoldKey.currentState!.openDrawer();
  196. },
  197. ),
  198. ],
  199. ),
  200. ),
  201. background: Align(
  202. alignment: AlignmentDirectional(0.0, 0.0),
  203. child: Padding(
  204. padding:
  205. EdgeInsetsDirectional.fromSTEB(100.0, 0.0, 15.0, 0.0),
  206. child: ClipRRect(
  207. borderRadius: BorderRadius.circular(8.0),
  208. child: Image.asset(
  209. 'assets/images/logo800px.png',
  210. width: MediaQuery.sizeOf(context).width * 0.7,
  211. fit: BoxFit.fitWidth,
  212. ),
  213. ),
  214. ),
  215. ),
  216. centerTitle: true,
  217. expandedTitleScale: 1.0,
  218. ),
  219. toolbarHeight: MediaQuery.sizeOf(context).height * 0.2,
  220. elevation: 2.0,
  221. ),
  222. ),
  223. body: SafeArea(
  224. top: true,
  225. child: Column(
  226. mainAxisSize: MainAxisSize.max,
  227. children: [
  228. Builder(
  229. builder: (context) {
  230. final fotoos = EvenementCall.eventFotoos(
  231. eventCurrentEvenementResponse.jsonBody,
  232. )?.toList() ??
  233. [];
  234. _model.debugGeneratorVariables[
  235. 'fotoos${fotoos.length > 100 ? ' (first 100)' : ''}'] =
  236. debugSerializeParam(
  237. fotoos.take(100),
  238. ParamType.String,
  239. isList: true,
  240. link:
  241. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=EventCurrent',
  242. name: 'String',
  243. nullable: false,
  244. );
  245. debugLogWidgetClass(_model);
  246. return Container(
  247. width: double.infinity,
  248. height: 200.0,
  249. child: CarouselSlider.builder(
  250. itemCount: fotoos.length,
  251. itemBuilder: (context, fotoosIndex, _) {
  252. final fotoosItem = fotoos[fotoosIndex];
  253. return ClipRRect(
  254. borderRadius: BorderRadius.circular(8.0),
  255. child: CachedNetworkImage(
  256. fadeInDuration: Duration(milliseconds: 500),
  257. fadeOutDuration: Duration(milliseconds: 500),
  258. imageUrl: fotoosItem,
  259. width: 200.0,
  260. height: 200.0,
  261. fit: BoxFit.cover,
  262. ),
  263. );
  264. },
  265. carouselController: _model.carouselController ??=
  266. CarouselSliderController(),
  267. options: CarouselOptions(
  268. initialPage: max(0, min(1, fotoos.length - 1)),
  269. viewportFraction: 0.5,
  270. disableCenter: true,
  271. enlargeCenterPage: true,
  272. enlargeFactor: 0.25,
  273. enableInfiniteScroll: true,
  274. scrollDirection: Axis.horizontal,
  275. autoPlay: false,
  276. onPageChanged: (index, _) =>
  277. _model.carouselCurrentIndex = index,
  278. ),
  279. ),
  280. );
  281. },
  282. ),
  283. Row(
  284. mainAxisSize: MainAxisSize.max,
  285. mainAxisAlignment: MainAxisAlignment.center,
  286. children: [
  287. Text(
  288. valueOrDefault<String>(
  289. EvenementCall.eventTitle(
  290. eventCurrentEvenementResponse.jsonBody,
  291. ),
  292. 'title',
  293. ),
  294. style:
  295. FlutterFlowTheme.of(context).headlineLarge.override(
  296. font: GoogleFonts.interTight(
  297. fontWeight: FlutterFlowTheme.of(context)
  298. .headlineLarge
  299. .fontWeight,
  300. fontStyle: FlutterFlowTheme.of(context)
  301. .headlineLarge
  302. .fontStyle,
  303. ),
  304. letterSpacing: 0.0,
  305. fontWeight: FlutterFlowTheme.of(context)
  306. .headlineLarge
  307. .fontWeight,
  308. fontStyle: FlutterFlowTheme.of(context)
  309. .headlineLarge
  310. .fontStyle,
  311. shadows: [
  312. Shadow(
  313. color: FlutterFlowTheme.of(context).secondaryText,
  314. offset: Offset(2.0, 2.0),
  315. blurRadius: 2.0,
  316. )
  317. ],
  318. ),
  319. ),
  320. AlignedTooltip(
  321. content: Padding(
  322. padding: EdgeInsets.all(4.0),
  323. child: Text(
  324. FFLocalizations.of(context).getText(
  325. 'z63o5kzf' /* Delen */,
  326. ),
  327. style:
  328. FlutterFlowTheme.of(context).bodyLarge.override(
  329. font: GoogleFonts.inter(
  330. fontWeight: FlutterFlowTheme.of(context)
  331. .bodyLarge
  332. .fontWeight,
  333. fontStyle: FlutterFlowTheme.of(context)
  334. .bodyLarge
  335. .fontStyle,
  336. ),
  337. letterSpacing: 0.0,
  338. fontWeight: FlutterFlowTheme.of(context)
  339. .bodyLarge
  340. .fontWeight,
  341. fontStyle: FlutterFlowTheme.of(context)
  342. .bodyLarge
  343. .fontStyle,
  344. ),
  345. ),
  346. ),
  347. offset: 4.0,
  348. preferredDirection: AxisDirection.down,
  349. borderRadius: BorderRadius.circular(8.0),
  350. backgroundColor:
  351. FlutterFlowTheme.of(context).secondaryBackground,
  352. elevation: 4.0,
  353. tailBaseWidth: 24.0,
  354. tailLength: 12.0,
  355. waitDuration: Duration(milliseconds: 100),
  356. showDuration: Duration(milliseconds: 1500),
  357. triggerMode: TooltipTriggerMode.tap,
  358. child: Builder(
  359. builder: (context) => FlutterFlowIconButton(
  360. borderRadius: 8.0,
  361. buttonSize: 40.0,
  362. fillColor: Color(0xFFF265A0),
  363. icon: Icon(
  364. Icons.share,
  365. color: FlutterFlowTheme.of(context).info,
  366. size: 24.0,
  367. ),
  368. onPressed: () async {
  369. await Share.share(
  370. 'https://uitgk.com/${widget!.nid}',
  371. sharePositionOrigin:
  372. getWidgetBoundingBox(context),
  373. );
  374. },
  375. ),
  376. ),
  377. ),
  378. ],
  379. ),
  380. Text(
  381. valueOrDefault<String>(
  382. widget!.nid,
  383. 'nid',
  384. ),
  385. style: FlutterFlowTheme.of(context).bodyMedium.override(
  386. font: GoogleFonts.inter(
  387. fontWeight: FlutterFlowTheme.of(context)
  388. .bodyMedium
  389. .fontWeight,
  390. fontStyle: FlutterFlowTheme.of(context)
  391. .bodyMedium
  392. .fontStyle,
  393. ),
  394. letterSpacing: 0.0,
  395. fontWeight: FlutterFlowTheme.of(context)
  396. .bodyMedium
  397. .fontWeight,
  398. fontStyle:
  399. FlutterFlowTheme.of(context).bodyMedium.fontStyle,
  400. ),
  401. ),
  402. Text(
  403. valueOrDefault<String>(
  404. EvenementCall.eventDate(
  405. eventCurrentEvenementResponse.jsonBody,
  406. ),
  407. 'date',
  408. ),
  409. style: FlutterFlowTheme.of(context).headlineSmall.override(
  410. font: GoogleFonts.interTight(
  411. fontWeight: FlutterFlowTheme.of(context)
  412. .headlineSmall
  413. .fontWeight,
  414. fontStyle: FlutterFlowTheme.of(context)
  415. .headlineSmall
  416. .fontStyle,
  417. ),
  418. letterSpacing: 0.0,
  419. fontWeight: FlutterFlowTheme.of(context)
  420. .headlineSmall
  421. .fontWeight,
  422. fontStyle: FlutterFlowTheme.of(context)
  423. .headlineSmall
  424. .fontStyle,
  425. ),
  426. ),
  427. Expanded(
  428. child: Row(
  429. mainAxisSize: MainAxisSize.max,
  430. children: [
  431. Material(
  432. color: Colors.transparent,
  433. elevation: 7.0,
  434. child: Container(
  435. decoration: BoxDecoration(
  436. boxShadow: [
  437. BoxShadow(
  438. blurRadius: 4.0,
  439. color: Color(0x33000000),
  440. offset: Offset(
  441. 0.0,
  442. 2.0,
  443. ),
  444. )
  445. ],
  446. gradient: LinearGradient(
  447. colors: [Color(0xFFE51414), Color(0xFFD28039)],
  448. stops: [0.0, 1.0],
  449. begin: AlignmentDirectional(0.0, -1.0),
  450. end: AlignmentDirectional(0, 1.0),
  451. ),
  452. border: Border.all(
  453. width: 2.0,
  454. ),
  455. ),
  456. child: Column(
  457. mainAxisSize: MainAxisSize.max,
  458. children: [
  459. Padding(
  460. padding: EdgeInsetsDirectional.fromSTEB(
  461. 1.0, 3.0, 1.0, 2.0),
  462. child: Builder(
  463. builder: (context) {
  464. final categorie =
  465. EvenementCall.eventCategorie(
  466. eventCurrentEvenementResponse
  467. .jsonBody,
  468. )?.toList() ??
  469. [];
  470. _model.debugGeneratorVariables[
  471. 'categorie${categorie.length > 100 ? ' (first 100)' : ''}'] =
  472. debugSerializeParam(
  473. categorie.take(100),
  474. ParamType.String,
  475. isList: true,
  476. link:
  477. 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=EventCurrent',
  478. name: 'String',
  479. nullable: false,
  480. );
  481. debugLogWidgetClass(_model);
  482. return Row(
  483. mainAxisSize: MainAxisSize.max,
  484. mainAxisAlignment:
  485. MainAxisAlignment.end,
  486. children: List.generate(
  487. categorie.length, (categorieIndex) {
  488. final categorieItem =
  489. categorie[categorieIndex];
  490. return Align(
  491. alignment:
  492. AlignmentDirectional(1.0, 0.0),
  493. child: Padding(
  494. padding: EdgeInsetsDirectional
  495. .fromSTEB(4.0, 1.0, 4.0, 1.0),
  496. child: Material(
  497. color: Colors.transparent,
  498. elevation: 3.0,
  499. shape: RoundedRectangleBorder(
  500. borderRadius:
  501. BorderRadius.circular(
  502. 2.0),
  503. ),
  504. child: Container(
  505. decoration: BoxDecoration(
  506. color: Color(0xFF25CC3E),
  507. boxShadow: [
  508. BoxShadow(
  509. blurRadius: 4.0,
  510. color:
  511. Color(0x33000000),
  512. offset: Offset(
  513. 0.0,
  514. 2.0,
  515. ),
  516. )
  517. ],
  518. borderRadius:
  519. BorderRadius.circular(
  520. 2.0),
  521. border: Border.all(
  522. width: 0.5,
  523. ),
  524. ),
  525. child: Padding(
  526. padding:
  527. EdgeInsetsDirectional
  528. .fromSTEB(0.0, 0.0,
  529. 4.0, 0.0),
  530. child: Text(
  531. categorieItem,
  532. style:
  533. FlutterFlowTheme.of(
  534. context)
  535. .titleSmall
  536. .override(
  537. font: GoogleFonts
  538. .interTight(
  539. fontWeight:
  540. FlutterFlowTheme.of(
  541. context)
  542. .titleSmall
  543. .fontWeight,
  544. fontStyle:
  545. FlutterFlowTheme.of(
  546. context)
  547. .titleSmall
  548. .fontStyle,
  549. ),
  550. letterSpacing: 0.0,
  551. fontWeight:
  552. FlutterFlowTheme.of(
  553. context)
  554. .titleSmall
  555. .fontWeight,
  556. fontStyle:
  557. FlutterFlowTheme.of(
  558. context)
  559. .titleSmall
  560. .fontStyle,
  561. shadows: [
  562. Shadow(
  563. color: FlutterFlowTheme
  564. .of(context)
  565. .secondaryText,
  566. offset: Offset(
  567. 2.0, 2.0),
  568. blurRadius: 2.0,
  569. )
  570. ],
  571. ),
  572. ),
  573. ),
  574. ),
  575. ),
  576. ),
  577. );
  578. }),
  579. );
  580. },
  581. ),
  582. ),
  583. Padding(
  584. padding: EdgeInsetsDirectional.fromSTEB(
  585. 4.0, 2.0, 4.0, 15.0),
  586. child: ClipRRect(
  587. borderRadius: BorderRadius.circular(8.0),
  588. child: CachedNetworkImage(
  589. fadeInDuration:
  590. Duration(milliseconds: 500),
  591. fadeOutDuration:
  592. Duration(milliseconds: 500),
  593. imageUrl: EvenementCall.eventLogog(
  594. eventCurrentEvenementResponse.jsonBody,
  595. )!,
  596. width: MediaQuery.sizeOf(context).width *
  597. 0.15,
  598. height:
  599. MediaQuery.sizeOf(context).height *
  600. 0.15,
  601. fit: BoxFit.cover,
  602. ),
  603. ),
  604. ),
  605. Expanded(
  606. child: wrapWithModel(
  607. model: _model.evenementInfoModel,
  608. updateCallback: () => safeSetState(() {}),
  609. child: Builder(builder: (_) {
  610. return DebugFlutterFlowModelContext(
  611. rootModel: _model.rootModel,
  612. child: EvenementInfoWidget(
  613. nid: EvenementCall.eventNid(
  614. eventCurrentEvenementResponse
  615. .jsonBody,
  616. ),
  617. title: EvenementCall.eventTitle(
  618. eventCurrentEvenementResponse
  619. .jsonBody,
  620. ),
  621. date: EvenementCall.eventDate(
  622. eventCurrentEvenementResponse
  623. .jsonBody,
  624. ),
  625. adres: EvenementCall.eventAdres(
  626. eventCurrentEvenementResponse
  627. .jsonBody,
  628. ),
  629. plaats: EvenementCall.eventPlaats(
  630. eventCurrentEvenementResponse
  631. .jsonBody,
  632. ),
  633. entreetoelichting: EvenementCall
  634. .eventEntreeToelichting(
  635. eventCurrentEvenementResponse
  636. .jsonBody,
  637. ),
  638. entreeprijs:
  639. EvenementCall.eventEntreeprijs(
  640. eventCurrentEvenementResponse
  641. .jsonBody,
  642. ),
  643. website: EvenementCall.eventWebsiteg(
  644. eventCurrentEvenementResponse
  645. .jsonBody,
  646. ),
  647. contact: EvenementCall.eventContact(
  648. eventCurrentEvenementResponse
  649. .jsonBody,
  650. ),
  651. logo: EvenementCall.eventLogog(
  652. eventCurrentEvenementResponse
  653. .jsonBody,
  654. ),
  655. fotoos: EvenementCall.eventFotoos(
  656. eventCurrentEvenementResponse
  657. .jsonBody,
  658. ),
  659. categories:
  660. EvenementCall.eventCategorie(
  661. eventCurrentEvenementResponse
  662. .jsonBody,
  663. ),
  664. ),
  665. );
  666. }),
  667. ),
  668. ),
  669. ],
  670. ),
  671. ),
  672. ),
  673. SingleChildScrollView(
  674. child: Column(
  675. mainAxisSize: MainAxisSize.max,
  676. children: [
  677. Container(
  678. width: MediaQuery.sizeOf(context).width * 0.6,
  679. decoration: BoxDecoration(
  680. color: FlutterFlowTheme.of(context).alternate,
  681. boxShadow: [
  682. BoxShadow(
  683. blurRadius: 4.0,
  684. color: Color(0x33000000),
  685. offset: Offset(
  686. 4.0,
  687. 2.0,
  688. ),
  689. )
  690. ],
  691. borderRadius: BorderRadius.circular(4.0),
  692. border: Border.all(
  693. color: Colors.black,
  694. ),
  695. ),
  696. child: wrapWithModel(
  697. model: _model.evenementV2HTMLComponentModel,
  698. updateCallback: () => safeSetState(() {}),
  699. child: Builder(builder: (_) {
  700. return DebugFlutterFlowModelContext(
  701. rootModel: _model.rootModel,
  702. child: EvenementV2HTMLComponentWidget(
  703. body: EvenementCall.eventBody(
  704. eventCurrentEvenementResponse
  705. .jsonBody,
  706. ),
  707. ),
  708. );
  709. }),
  710. ),
  711. ),
  712. ],
  713. ),
  714. ),
  715. ],
  716. ),
  717. ),
  718. Expanded(
  719. child: wrapWithModel(
  720. model: _model.evenementHorecagelegenheidModel,
  721. updateCallback: () => safeSetState(() {}),
  722. child: Builder(builder: (_) {
  723. return DebugFlutterFlowModelContext(
  724. rootModel: _model.rootModel,
  725. child: EvenementHorecagelegenheidWidget(
  726. establishmentID: widget!.horecaid!,
  727. ),
  728. );
  729. }),
  730. ),
  731. ),
  732. ],
  733. ),
  734. ),
  735. ),
  736. );
  737. },
  738. );
  739. }
  740. }