diff --git a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor index c187234..34120e6 100644 --- a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor +++ b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor @@ -1,6 +1,15 @@ 
- - + @if (nextIsEntrata) + { + + + + } + else + { + + + }
diff --git a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.cs b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.cs index fe2760b..d68b37f 100644 --- a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.cs +++ b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.cs @@ -14,6 +14,7 @@ using Microsoft.JSInterop; using GPW.CORE.Smart; using GPW.CORE.Smart.Shared; using GPW.CORE.Comp; +using GPW.CORE.Smart.Data; namespace GPW.CORE.Smart.Components { @@ -24,7 +25,27 @@ namespace GPW.CORE.Smart.Components /// private bool isInternal { get; set; } = false; + /// + /// Determina il tipo di chiamata ammessa successiva (entrata/uscita) + /// + private bool nextIsEntrata + { + get => MService.NextIsEntrata; + set => MService.NextIsEntrata = value; + } + [Parameter] public int IdxDipendente { get; set; } = -1; + [Inject] + protected MessageService MService { get; set; } = null!; + [Inject] + private CoreSmartDataService CDataServ { get; set; } = null!; + + private async Task registraTimbratura(bool isEntrata) + { + await Task.Delay(1); + nextIsEntrata = !isEntrata; + await InvokeAsync(StateHasChanged); + } } } \ No newline at end of file diff --git a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.css b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.css index 4071111..4594253 100644 --- a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.css +++ b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.css @@ -45,4 +45,34 @@ font-size: 16px; box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.7); background-color: #4CAF50; +} +.entrataDisabled { + border-radius: 12px; + border: none; + color: white; + /*width: 10.313rem; + height: 2.438rem;*/ + width: 100%; + height: 2.438rem; + text-align: center; + display: inline-block; + font-size: 16px; + box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.7); + border-color: #9B59B6; + color: #000; +} +.uscitaDisabled { + border-radius: 12px; + border: none; + color: white; + /*width: 10.313rem; + height: 2.438rem;*/ + width: 100%; + height: 2.438rem; + text-align: center; + display: inline-block; + font-size: 16px; + box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.7); + border-color: #4CAF50; + color: #000; } \ No newline at end of file diff --git a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.less b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.less index f10284c..0bbfac6 100644 --- a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.less +++ b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.less @@ -29,3 +29,16 @@ .buttonsAll; background-color: #4CAF50; } + + +.entrataDisabled { + .buttonsAll; + border-color: #9B59B6; + color: #000; +} + +.uscitaDisabled { + .buttonsAll; + border-color: #4CAF50; + color: #000; +} diff --git a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.min.css b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.min.css index d946adf..e4881dd 100644 --- a/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.min.css +++ b/GPW.CORE.SMART/Components/BottoniEntrEsc.razor.min.css @@ -1 +1 @@ -.buttons{display:flex;justify-content:space-between;gap:15px;width:100%;height:100%;}.buttonsAll{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);}.entrata{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);background-color:#9b59b6;}.uscita{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);background-color:#4caf50;} \ No newline at end of file +.buttons{display:flex;justify-content:space-between;gap:15px;width:100%;height:100%;}.buttonsAll{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);}.entrata{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);background-color:#9b59b6;}.uscita{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);background-color:#4caf50;}.entrataDisabled{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);border-color:#9b59b6;color:#000;}.uscitaDisabled{border-radius:12px;border:0;color:#fff;width:100%;height:2.438rem;text-align:center;display:inline-block;font-size:16px;box-shadow:0 3px 4px rgba(0,0,0,.7);border-color:#4caf50;color:#000;} \ No newline at end of file diff --git a/GPW.CORE.SMART/Components/CheckTemp.razor.cs b/GPW.CORE.SMART/Components/CheckTemp.razor.cs index 454f9fe..c115068 100644 --- a/GPW.CORE.SMART/Components/CheckTemp.razor.cs +++ b/GPW.CORE.SMART/Components/CheckTemp.razor.cs @@ -27,8 +27,6 @@ namespace GPW.CORE.Smart.Components set { _targetDate = value; - //var pUpd = Task.Run(async () => await ReloadData()); - //pUpd.Wait(); } } @@ -132,15 +130,9 @@ namespace GPW.CORE.Smart.Components #region Private Properties - [Inject] - private MessageService AppMServ { get; set; } = null!; - [Inject] private CoreSmartDataService CDataServ { get; set; } = null!; - [Inject] - private IJSRuntime JSRuntime { get; set; } = null!; - private int numDays { get diff --git a/GPW.CORE.SMART/Components/DtCard.razor b/GPW.CORE.SMART/Components/DtCard.razor index e81d1fc..2dc6ccd 100644 --- a/GPW.CORE.SMART/Components/DtCard.razor +++ b/GPW.CORE.SMART/Components/DtCard.razor @@ -1,4 +1,4 @@ -
+
@dateForm
diff --git a/GPW.CORE.SMART/Components/DtCard.razor.cs b/GPW.CORE.SMART/Components/DtCard.razor.cs index 2b0ea5c..1ee4b4e 100644 --- a/GPW.CORE.SMART/Components/DtCard.razor.cs +++ b/GPW.CORE.SMART/Components/DtCard.razor.cs @@ -7,10 +7,7 @@ namespace GPW.CORE.Smart.Components #region Public Properties [Parameter] - public string cardBg { get; set; } = "background-color: #7F8C8D;"; - - [Parameter] - public int IdxDipendente { get; set; } = -1; + public bool NextIsExtrata { get; set; } = true; #endregion Public Properties @@ -32,6 +29,14 @@ namespace GPW.CORE.Smart.Components get => $"{dtOggi.ToString("HH:mm")}"; } + /// + /// Card da collegare al tipo di stato/colore + /// + private string cardCss + { + get => NextIsExtrata ? "cardEntrata" : "cardUscita"; + } + #endregion Private Properties } } \ No newline at end of file diff --git a/GPW.CORE.SMART/Components/DtCard.razor.css b/GPW.CORE.SMART/Components/DtCard.razor.css index e9d2c8b..4795240 100644 --- a/GPW.CORE.SMART/Components/DtCard.razor.css +++ b/GPW.CORE.SMART/Components/DtCard.razor.css @@ -19,4 +19,13 @@ position: relative; font-size: 3.5rem; text-align: center; +} +.defaultRedCard { + background-color: #E74C3C; +} +.cardEntrata { + background-color: #9B59B6; +} +.cardUscita { + background-color: #4CAF50; } \ No newline at end of file diff --git a/GPW.CORE.SMART/Components/DtCard.razor.less b/GPW.CORE.SMART/Components/DtCard.razor.less index 7a15008..1a04320 100644 --- a/GPW.CORE.SMART/Components/DtCard.razor.less +++ b/GPW.CORE.SMART/Components/DtCard.razor.less @@ -22,3 +22,15 @@ font-size: 3.5rem; text-align: center; } + +.defaultRedCard { + background-color: #E74C3C; +} + +.cardEntrata { + background-color: #9B59B6; +} + +.cardUscita { + background-color: #4CAF50; +} diff --git a/GPW.CORE.SMART/Components/DtCard.razor.min.css b/GPW.CORE.SMART/Components/DtCard.razor.min.css index c838f55..3908f26 100644 --- a/GPW.CORE.SMART/Components/DtCard.razor.min.css +++ b/GPW.CORE.SMART/Components/DtCard.razor.min.css @@ -1 +1 @@ -.cardContainer{height:8.563rem;border-radius:12px;width:100%;box-shadow:0 3px 4px rgba(0,0,0,.7);color:#fff;}.data{font-weight:bold;padding-top:1.5rem;padding-left:1.5rem;position:relative;font-size:1.25rem;text-transform:uppercase;}.ora{width:100%;font-weight:bold;position:relative;font-size:3.5rem;text-align:center;} \ No newline at end of file +.cardContainer{height:8.563rem;border-radius:12px;width:100%;box-shadow:0 3px 4px rgba(0,0,0,.7);color:#fff;}.data{font-weight:bold;padding-top:1.5rem;padding-left:1.5rem;position:relative;font-size:1.25rem;text-transform:uppercase;}.ora{width:100%;font-weight:bold;position:relative;font-size:3.5rem;text-align:center;}.defaultRedCard{background-color:#e74c3c;}.cardEntrata{background-color:#9b59b6;}.cardUscita{background-color:#4caf50;} \ No newline at end of file diff --git a/GPW.CORE.SMART/Data/MessageService.cs b/GPW.CORE.SMART/Data/MessageService.cs index be945b0..eb40fd6 100644 --- a/GPW.CORE.SMART/Data/MessageService.cs +++ b/GPW.CORE.SMART/Data/MessageService.cs @@ -29,9 +29,9 @@ namespace GPW.CORE.Smart.Data public event Action EA_PageUpdated = null!; - public event Action EA_SearchUpdated = null!; + public event Action EA_DipUpdated = null!; - public event Action EA_ShowSearch = null!; + public event Action EA_TimbUpd = null!; #endregion Public Events @@ -54,6 +54,21 @@ namespace GPW.CORE.Smart.Data return hash; } } + /// + /// Indica se il prossimo stato timbratura sia entrata + /// + public bool NextIsEntrata { + get => nextIsEntrata; + set + { + if (nextIsEntrata != value) + { + nextIsEntrata = value; + ReportEntrata(); + } + } + } + private bool nextIsEntrata { get; set; } = true; public int IdxDipendente { @@ -117,9 +132,9 @@ namespace GPW.CORE.Smart.Data { // salvo _rigaDip = value; - if (EA_SearchUpdated != null) + if (EA_DipUpdated != null) { - EA_SearchUpdated?.Invoke(); + EA_DipUpdated?.Invoke(); } } } @@ -133,9 +148,9 @@ namespace GPW.CORE.Smart.Data { _searchVal = value; - if (EA_SearchUpdated != null) + if (EA_DipUpdated != null) { - EA_SearchUpdated?.Invoke(); + EA_DipUpdated?.Invoke(); } } } @@ -154,9 +169,9 @@ namespace GPW.CORE.Smart.Data showSearch = value; if (showSearch) { - if (EA_ShowSearch != null) + if (EA_TimbUpd != null) { - EA_ShowSearch?.Invoke(); + EA_TimbUpd?.Invoke(); } } else @@ -266,12 +281,19 @@ namespace GPW.CORE.Smart.Data EA_PageUpdated?.Invoke(); } } + private void ReportEntrata() + { + if (EA_TimbUpd != null) + { + EA_TimbUpd?.Invoke(); + } + } private void ReportSearch() { - if (EA_SearchUpdated != null) + if (EA_DipUpdated != null) { - EA_SearchUpdated?.Invoke(); + EA_DipUpdated?.Invoke(); } } diff --git a/GPW.CORE.SMART/Pages/Index.razor b/GPW.CORE.SMART/Pages/Index.razor index 9e97b08..625a47b 100644 --- a/GPW.CORE.SMART/Pages/Index.razor +++ b/GPW.CORE.SMART/Pages/Index.razor @@ -1,7 +1,7 @@ @using GPW.CORE.Smart.Components @page "/" - +
diff --git a/GPW.CORE.SMART/Pages/Index.razor.cs b/GPW.CORE.SMART/Pages/Index.razor.cs index 9eba968..6baec48 100644 --- a/GPW.CORE.SMART/Pages/Index.razor.cs +++ b/GPW.CORE.SMART/Pages/Index.razor.cs @@ -14,10 +14,21 @@ namespace GPW.CORE.Smart.Pages #region Protected Methods - + /// + /// Indica quale deve essere prossima timbratura + /// + private bool nextIsExtrata { get; set; } = true; protected override void OnInitialized() { - MService.EA_SearchUpdated += MService_EA_SearchUpdated; + MService.EA_DipUpdated += MService_EA_SearchUpdated; + MService.EA_TimbUpd += MService_EA_TimbUpd; ; + } + + private async void MService_EA_TimbUpd() + { + nextIsExtrata = MService.NextIsEntrata; + await Task.Delay(1); + await InvokeAsync(StateHasChanged); } private async void MService_EA_SearchUpdated() diff --git a/GPW.CORE.SMART/Pages/TempRil.razor.cs b/GPW.CORE.SMART/Pages/TempRil.razor.cs index 768fc9f..bd2dc8d 100644 --- a/GPW.CORE.SMART/Pages/TempRil.razor.cs +++ b/GPW.CORE.SMART/Pages/TempRil.razor.cs @@ -27,7 +27,7 @@ namespace GPW.CORE.Smart.Pages protected override async Task OnAfterRenderAsync(bool firstRender) { await Task.Delay(50); - MService.EA_SearchUpdated += MService_EA_SearchUpdated; + MService.EA_DipUpdated += MService_EA_SearchUpdated; } #endregion Protected Methods diff --git a/GPW.CORE.SMART/compilerconfig.json b/GPW.CORE.SMART/compilerconfig.json index 99d6463..60c6ddf 100644 --- a/GPW.CORE.SMART/compilerconfig.json +++ b/GPW.CORE.SMART/compilerconfig.json @@ -22,5 +22,9 @@ { "outputFile": "Components/Calendario.razor.css", "inputFile": "Components/Calendario.razor.less" + }, + { + "outputFile": "wwwroot/css/site.css", + "inputFile": "wwwroot/css/site.less" } ] \ No newline at end of file diff --git a/GPW.CORE.SMART/wwwroot/css/site.css b/GPW.CORE.SMART/wwwroot/css/site.css index 1f4b8cf..8fb5e70 100644 --- a/GPW.CORE.SMART/wwwroot/css/site.css +++ b/GPW.CORE.SMART/wwwroot/css/site.css @@ -1,64 +1,54 @@ -@import url('open-iconic/font/css/open-iconic-bootstrap.min.css'); - -html, body { - font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; +@import url('open-iconic/font/css/open-iconic-bootstrap.min.css'); +html, +body { + font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; } - h1:focus { - outline: none; + outline: none; } - -a, .btn-link { - color: #0071c1; +a, +.btn-link { + color: #0071c1; } - .btn-primary { - color: #fff; - background-color: #1b6ec2; - border-color: #1861ac; + color: #fff; + background-color: #1b6ec2; + border-color: #1861ac; } - .content { - padding-top: 1.1rem; + padding-top: 1.1rem; } - .valid.modified:not([type=checkbox]) { - outline: 1px solid #26b050; + outline: 1px solid #26b050; } - .invalid { - outline: 1px solid red; + outline: 1px solid red; } - .validation-message { - color: red; + color: red; } - #blazor-error-ui { - background: lightyellow; - bottom: 0; - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); - display: none; - left: 0; - padding: 0.6rem 1.25rem 0.7rem 1.25rem; - position: fixed; - width: 100%; - z-index: 1000; + background: lightyellow; + bottom: 0; + box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); + display: none; + left: 0; + padding: 0.6rem 1.25rem 0.7rem 1.25rem; + position: fixed; + width: 100%; + z-index: 1000; +} +#blazor-error-ui .dismiss { + cursor: pointer; + position: absolute; + right: 0.75rem; + top: 0.5rem; } - - #blazor-error-ui .dismiss { - cursor: pointer; - position: absolute; - right: 0.75rem; - top: 0.5rem; - } - .blazor-error-boundary { - background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121; - padding: 1rem 1rem 1rem 3.7rem; - color: white; + background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121; + padding: 1rem 1rem 1rem 3.7rem; + color: white; } - - .blazor-error-boundary::after { - content: "An error has occurred." - } +.blazor-error-boundary::after { + content: "An error has occurred."; +} \ No newline at end of file diff --git a/GPW.CORE.SMART/wwwroot/css/site.less b/GPW.CORE.SMART/wwwroot/css/site.less new file mode 100644 index 0000000..1f4b8cf --- /dev/null +++ b/GPW.CORE.SMART/wwwroot/css/site.less @@ -0,0 +1,64 @@ +@import url('open-iconic/font/css/open-iconic-bootstrap.min.css'); + +html, body { + font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; +} + +h1:focus { + outline: none; +} + +a, .btn-link { + color: #0071c1; +} + +.btn-primary { + color: #fff; + background-color: #1b6ec2; + border-color: #1861ac; +} + +.content { + padding-top: 1.1rem; +} + +.valid.modified:not([type=checkbox]) { + outline: 1px solid #26b050; +} + +.invalid { + outline: 1px solid red; +} + +.validation-message { + color: red; +} + +#blazor-error-ui { + background: lightyellow; + bottom: 0; + box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); + display: none; + left: 0; + padding: 0.6rem 1.25rem 0.7rem 1.25rem; + position: fixed; + width: 100%; + z-index: 1000; +} + + #blazor-error-ui .dismiss { + cursor: pointer; + position: absolute; + right: 0.75rem; + top: 0.5rem; + } + +.blazor-error-boundary { + background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121; + padding: 1rem 1rem 1rem 3.7rem; + color: white; +} + + .blazor-error-boundary::after { + content: "An error has occurred." + } diff --git a/GPW.CORE.SMART/wwwroot/css/site.min.css b/GPW.CORE.SMART/wwwroot/css/site.min.css new file mode 100644 index 0000000..1a36af4 --- /dev/null +++ b/GPW.CORE.SMART/wwwroot/css/site.min.css @@ -0,0 +1 @@ +@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');html,body{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;}h1:focus{outline:0;}a,.btn-link{color:#0071c1;}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac;}.content{padding-top:1.1rem;}.valid.modified:not([type=checkbox]){outline:1px solid #26b050;}.invalid{outline:1px solid #f00;}.validation-message{color:#f00;}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000;}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem;}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff;}.blazor-error-boundary::after{content:"An error has occurred.";} \ No newline at end of file