Widget _buildDetailsSection()

in ui/lib/modules/my_services/service_detail.dart [154:239]


  Widget _buildDetailsSection(Service service, BuildContext context) {
    return Column(
      children: [
        Row(
          mainAxisAlignment: MainAxisAlignment.spaceBetween,
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            // <<  SERVICE SUMMARY  >>
            ServiceSummary(service: service),
          ],
        ),

        Row(
          crossAxisAlignment: CrossAxisAlignment.center,
          children: [
            //   << REPO LINK >>
            SummaryItem(
              label: "Repository",
              child: Text.rich(
                TextSpan(
                  style: TextStyle(
                      color: Theme.of(context).primaryColor,
                      decoration: TextDecoration.underline),
                  text: service.instanceRepo,
                  recognizer: TapGestureRecognizer()
                    ..onTap = () async {
                      launchUrl(Uri.parse(service.instanceRepo));
                    },
                ),
              ),
            ),
          ],
        ),
        Divider(),
        //   << CLOUD SHELL || WORKSTATION BUTTON >>

        service.workstationConfig.isNotEmpty
            ? WorkStationWidget(service)
            : LaunchInCloudShellButton(service: service),
        Divider(),
        //   << VULNERABILITIES >>

        VulnerabilityWidget(service: service),
        Divider(),

        //   << RECOMMENDATIONS >>
        if (_serviceUses(service, ["cloudrun"]))
          RecommendationsWidget(service: service),
        Divider(),

        //   << BUILD HISTORY >>
        BuildHistoryWidget(service: service),

        //   << RESOURCES >>
        ServiceResourcesWidget(service: service),

        //   << TEMPLATE DETAILS >>
        TemplateDetailsWidget(service: service),
        Divider(),

        // <<  DELETE BUTTON  >>
        IconButton(
          tooltip: 'Delete',
          onPressed: () async {
            String result = await ref
                .read(buildRepositoryProvider)
                .deleteService(service);

            if (result != "") {
              await ref
                  .read(servicesRepositoryProvider)
                  .deleteService(service);

              ref.invalidate(servicesProvider);
            }

            context.go("/services");
          },
          icon: Icon(
            Icons.delete,
            color: Colors.red,
          ),
        ),
      ],
    );
  }