nauticsIcons method

Widget nauticsIcons({
  1. required Size size,
  2. required String platform,
})

Implementation

Widget nauticsIcons({required Size size, required String platform}) {
  AnimatedContainer animatedContainer = AnimatedContainer(
    duration: const Duration(seconds: 1),
    curve: Curves.easeInBack,
    width: widget.collapsedWidth,
    color: widget.isFloating == true
        ? null
        : widget.nauticsColor ?? Colors.white,
    child: Container(
      decoration: widget.collapsedNauticsDecoration,
      child: Column(
        mainAxisAlignment: widget.mainAxisAlignmentCollapsedForm,
        crossAxisAlignment: widget.crossAxisAlignmentCollapsedForm,
        children: [
          widget.header == null ? Container() : headerIcon(),
          Expanded(
            child: ListView.builder(
              itemCount: widget.children.length,
              itemBuilder: (contex, index) {
                TabItem tI = widget.children[index];
                return InkWell(
                  onTap: () => {
                    setState(() {
                      itemChildSelected!.value = index;
                    }),
                    tI.children!.isEmpty
                        ? isNauticsExpanded = false
                        : {
                            transformNautics(),
                            setState(() {
                              isExpansionTileSelected = true;
                            }),
                          },
                    tI.onTap!(),
                    widget.onChange(itemChildSelected!.value),
                  },
                  child: Container(
                    decoration: BoxDecoration(
                      shape: BoxShape.circle,
                      color: itemChildSelected!.value == index
                          ? (widget.selectedColor ??
                              Theme.of(context).primaryColor.withOpacity(0.5))
                          : Colors.transparent,
                    ),
                    height: 45,
                    width: 45,
                    alignment: Alignment.center,
                    child: NotificationBadge(
                        count: tI.badgeCount ?? 0, child: tI.selectedLeading),
                  ),
                );
              },
            ),
          ),
          widget.footer == null ? Container() : footerIcon(),
        ],
      ),
    ),
  );
  return GestureDetector(
    onTap: transformNautics,
    child: widget.isFloating == true
        ? Floater(
            backgroundColor: widget.nauticsColor ?? Colors.white,
            child: animatedContainer,
          )
        : animatedContainer,
  );
}