* feat(app): introduce new env vars ui
feat(app): introduce new env vars ui
feat(UX): WIP new env variables UI
feat(UX): update button and placeholder
feat(UX): mention .env file in message
feat(UX): allow add/remove value & load correctly
feat(UX): restrict filesize to 1MB
feat(UX): vertical align error message
feat(UX): fill UI from file & when switching modes
feat(UX): strip un-needed newline character
feat(UX): introduce component to other views
feat(UX): fix title alignment
feat(UX): only populate editor on mode switch when key exists
feat(UX): prevent trimming of whitespace on values
feat(UX): change editor to async
feat(UX): add message describing use
feat(UX): Refactor variable text to editorText
refactor(app): rename env vars controller
refactor(app): move env var explanation to parent
refactor(app): order env var panels
refactor(app): move simple env vars mode to component
refactor(app): parse env vars
refactor(app): move styles to css
refactor(app): rename functions
refactor(container): parse env vars
refactor(env-vars): move utils to helper module
refactor(env-vars): use util function for parse dot env file
fix(env-vars): ignore comments
refactor(services): use env vars utils
refactor(env-vars): rename files
refactor(env-panel): use utils
style(stack): revert EnvContent to Env
style(service): revert EnvContent to Env
style(container): revert EnvContent to Env
refactor(env-vars): support default value
refactor(service): use new env var component
refactor(env-var): use one way data flow
refactor(containers): remove unused function
* fix(env-vars): prevent using non .env files
* refactor(env-vars): move env vars items to a component
* feat(app): fixed env vars form validation in Stack
* feat(services): disable env form submit if invalid
* fix(app): show key pairs correctly
* fix(env-var): use the same validation as with kubernetes
* fix(env-vars): parse env var
Co-authored-by: Chaim Lev-Ari <chiptus@gmail.com>
Co-authored-by: Felix Han <felix.han@portainer.io>
* feat(dockerhub): introduce local status endpoint
* feat(proxy): rewrite request with dockerhub credentials
* feat(endpoint): check env type
* feat(endpoint): check for local endpoint
* feat(docker): introduce client side service to get limits
* feat(container): add info about rate limits in container
* feat(dockerhub): load rate limits just for specific endpoints
* feat(images): show specific dockerhub messages for admin
* feat(service-create): show docker rate limits
* feat(service-edit): show rate limit messages
* fix(images): fix loading of page
* refactor(images): move rate limits check to container
* feat(kubernetes): proxy agent requests
* feat(kubernetes/apps): show pull limits in application creation
* refactor(image-registry): move warning to end of field
* fix(image-registry): show right message for admin
* fix(images): silently fail when loading rate limits
* fix(kube/apps): use new rate limits comp
* fix(images): move rate warning to end
* fix(registry): move search to right place
* fix(service): remove service warning
* fix(endpoints): check if kube endpoint is local
* feat(containers): enforce disable bind mounts
* refactor(docker): move check for endpoint admin to a function
* feat(docker): check if service has bind mounts
* feat(services): allow bind mounts for endpoint admin
* feat(container): enable bind mounts for endpoint admin
* fix(services): fix typo
* feat(settings): introduce settings to allow/disable
* feat(settings): update the setting
* feat(docker): prevent user from using caps if disabled
* refactor(stacks): revert file
* style(api): remove portainer ns
* feat(settings): add setting to disable device mapping for regular users
* feat(settings): introduce device mapping service
* feat(containers): hide devices field when setting is on
* feat(containers): prevent passing of devices when not allowed
* feat(stacks): prevent non admin from device mapping
* feat(stacks): disallow swarm stack creation for user
* refactor(settings): replace disableDeviceMapping with allow
* fix(stacks): remove check for disable device mappings from swarm
* feat(settings): rename field to disable
* feat(settings): supply default value for disableDeviceMapping
* feat(container): check for endpoint admin
* style(server): sort imports
* feat(auth): introduce new timeout constant
* feat(auth): pass timeout from handler
* feat(auth): add timeout selector to auth settings view
* feat(settings): add user session timeout property
* feat(auth): load user session timeout from settings
* fix(settings): use correct time format
* feat(auth): remove no-auth flag
* refactor(auth): move timeout mgmt to jwt service
* refactor(client): remove no-auth checks from client
* refactor(cli): remove defaultNoAuth
* feat(settings): create settings with default user timeout value
* refactor(db): save user session timeout always
* refactor(jwt): return error
* feat(auth): set session timeout in jwt service on update
* feat(auth): add description and time settings
* feat(auth): parse duration
* feat(settings): validate user timeout format
* refactor(settings): remove unneccesary import
* chore(project): install prettier and lint-staged
* chore(project): apply prettier to html too
* chore(project): git ignore eslintcache
* chore(project): add a comment about format script
* chore(prettier): update printWidth
* chore(prettier): remove useTabs option
* chore(prettier): add HTML validation
* refactor(prettier): fix closing tags
* feat(prettier): define angular parser for html templates
* style(prettier): run prettier on codebase
Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
* feat: add setting to change DNS servers
* style: fixing codeclimate warning
Looks like conditional was excessive, it works as expected even without
it.
* style: rename 'DNS Server 1/2' to 'Primary/Secondary DNS Server'
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
* style: rename variables in code to match UI naming
* feat: add tooltips on DNS servers input fields
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
* Revert "feat: add tooltips on DNS servers input fields"
This reverts commit b83ef50825.
* style: secondary DNS placeholder
Signed-off-by: Kirill K <kovalev.kirill.a@gmail.com>
* feat(containers): added support for port range mappings when deploying containers
* feat(containers): added placeholders to port publishing input fields
* feat(containers): added a tooltip to the manual network port publishing
* feat(containers): improved the code consistency
* fix(containers): creating a container with default runtime let the docker daemon assume the correct value
* refactor(containers): implementation simplification of default runtime value
* refactor(container-creation): change order of container creation steps
* refactor(container-creation): remove nested methods
* fix(container-creation): skip actions if old container missing
* fix(container-creation): reject if user is not authorized
* fix(container-creation): remove rejection on invalid form
* refactor(container-creation): start container after duplicate
* fix(container-creation): add form validation error message
* fix(container-creation): pass correct id to create resource control
* fix(container-creation): set action in progress after confirmation
* feat(container-creation): container add/drop capabilities on creation
* feat(container-creation): capabilities are now loaded on edit/duplicate/update
* fix(container): Use first network's Mac address by default
* fix(container): Connect additional networks to container after creation
* fix(container): Remove warning message