Git Product home page Git Product logo

angular-contract-hours's People

Contributors

jurek2006 avatar

Watchers

 avatar  avatar

angular-contract-hours's Issues

Application is cumbersome in use on mobile devices in landscape orientation.

When user selects a input - screen keyboard appears and occupies large part of the screen. As on mobile summary panel also occupies the bottom part of left space on the screen - there is no space to see table/form with data.
It makes app in landscape mode impossible to use.
Moving summary panel to the left side on landscape mode should improve the situation.

Unnecessary unused moment locales making bunlde size bigger

Analyzing bundle size we can see at a glance there is big node_modules and one of the reasons are unused in application moment's locales.

image

Whole gzipped bundle is 390KB, where main (352KB) contains node_modules - 208KB (comparing to src size 140KB).

We can see that moment occupies in the bundle 71 KB and comprises 54KB of locales (which are unused, expect one or two).

Downloading PDFs not working properly on mobile browsers.

On some mobile devices, in some browsers, downloading of PDF doesn't work at all (shows "page not found" or nothing happens. In other browsers downloading works but it lasts a few seconds and there is no indicator that something is happening.
On one android device:

  • in firefox - download works (without indicator, user has to wait to long)
  • in chrome and opera - after pressing "Download PDF" browser shows an error (without any further information)
  • UC Browser crashes (and disappears ;) )

On second android device:

  • works ok on chrome and samsung browser (without indicator, user has to wait to long)

It looks as a problem in jspdf. After short investigation there are some people experiencing the same issue in jspdf (no working short and easy solution found)

Opened schedule settings has wrong height on safari mobile.

Opened schedule settings on safari mobile (and safari 11 also when resized) should have height: calc(100% - .5rem) [it can't be 100vh because there is difference of treating it in mobile browsers and browser bar can overlap the element].

After update to Angular 9 (Ivy) AppDisableControlDirective doesn't work properly

After submitting contractor name and schedule month we can see input for amount of defined total hours is missing
obraz
Looking closer it is like (firefox):
obraz
should look like this:
obraz
After any interaction with scheduleForm (e.g. changing any day working status or scheduled hours) or with scheduleSummary (e.g. hovering on Generate PDF button) input "is back" (but is enabled and should be disabled)
obraz
After toggling isTotalHoursDefined checkbox works fine.

There's also an error "ERROR TypeError: Cannot read property 'disable' of undefined at AppDisableControlDirective.set [as appDisableControl] (app-disable-control.directive.ts:10)" (chrome) or "ERROR TypeError: "this.ngControl.control is undefined"" (firefox)
The error occurs only on first display of component scheduleSummary

Bigger bundle size because of jspdf and html2canvas

As we can see analyzing bundle size (after making it smaller like in #7 ) - node_modules is slightly bigger than src:
image

Whole gzipped main is 296KB big, where src is 140KB and node_modules 155KB.
The biggest parts of node_modules are jspdf (86KB gzipped) and html2canvas (39KB gzipped)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.