JSFiddle - React, Tailwind, and code Playground

JavaScript

<script language="javascript" type="text/javascript">
        $(document).ready(function () {

            var catalogueSearch;
            var noResultsFound = false;
			var oldSearch = 0;
            let pageSize = 5;

            @* Setup the Selected Contracts table (client side setup as adding / removing will not work with serverSide = true) *@
            var linkedUrl = "/ClientSetup/GetLinkedCatalogueContracts?catalogueId=" + "@Model.ID";
			var selectedContractsTable = $('#catalogueLinkedContractsTable').DataTable({
                sAjaxSource: linkedUrl,
                columns: [
                    { "data": "ID" },
                    { "data": "Selected"},
                    { "data": "Name"},
                    { "data": "ContractType"},
                    { "data": "StartDate"},
                    { "data": "TerminationDate"},
                    { "button": "Action" }
                    ],
				serverSide: false,
                sDom: 't<"dt-panelfooter clearfix"ip>',
                pageLength: pageSize,
				bSort: false,
				bLengthChange: false,
				bSearch: true,
				paging: true,
				searching: true,
				order: [[2, "asc"]],
				language: {
					emptyTable: "No linked contracts found.",
					zeroRecords: "No linked contracts found.",
					info: "_START_ to _END_ of _TOTAL_",
                    paginate: {
                        first: "First",
                        previous: "Previous",
                        next: "Next",
                        last: "Last"
                    }
				},
				columnDefs: [
                    {
                        targets: [0],
                        visible: false
                    },
                    {
                        targets: [1],
                        visible: false
                    },
                    {
                        targets: [3],
                        sClass: "hidden-xs hidden-sm contractType"
                    },
                    {
                   ...