* 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(stack): prevent stack duplication if name already used
* refacto(stack): deduplicate functions and rename variables
* refacto(stack): add a generic helper for findDeepAll function
* fix(templates): remove forgotten conflict markers
* refactor(app): backport technical changes
* refactor(app): remove EE only features
* feat(app): small review changes to match EE codebase layout on some files
Co-authored-by: xAt0mZ <baron_l@epitech.eu>
* 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(api): gitlab registry type
* feat(registries): early support for gitlab registries
* feat(app): registry service selector
* feat(registry): gitlab support : list repositories and tags - remove features missing
* feat(registry): gitlab registry remove features
* feat(registry): gitlab switch to registry V2 API for repositories and tags
* feat(api): use development extension binary
* fix(registry): avoid 401 on gitlab retrieve to disconnect the user
* feat(registry): gitlab browse projects without extension
* style(app): code cleaning
* refactor(app): PR review changes + refactor on types
* fix(gitlab): remove gitlab info from registrymanagementconfig and force gitlab type
* style(api): go fmt
* feat(api): update APIVersion and ExtensionDefinitionsURL
* fix(api): fix invalid RM extension URL
* feat(registry): PAT scope help
* feat(registry): defaults on registry creation
* style(registry-creation): update layout and text for Gitlab registry
* feat(registry-creation): update gitlab notice
* 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(registry): fetch datatable details on page/filter/order state change instead of fetching all data on first load
* fix(registry): fetch tags datatable details on state change instead of fetching all data on first load
* fix(registry): add pagination support for tags + loading display on data load
* fix(registry): debounce on text filter to avoid querying transient matching values
* refactor(registry): rebase on latest develop
* feat(registries): background tags and optimisation -- need code cleanup and for-await-of to cancel on page leave
* refactor(registry-management): code cleanup
* feat(registry): most optimized version -- need fix for add/retag
* fix(registry): addTag working without page reload
* fix(registry): retag working without reload
* fix(registry): remove tag working without reload
* fix(registry): remove repository working with latest changes
* fix(registry): disable cache on firefox
* feat(registry): use jquery for all 'most used' manifests requests
* feat(registry): retag with progression + rewrite manifest REST service to jquery
* fix(registry): remove forgotten DI
* fix(registry): pagination on repository details
* refactor(registry): info message + hidding images count until fetch has been done
* fix(registry): fix selection reset deleting selectAll function and not resetting status
* fix(registry): resetSelection was trying to set value on a getter
* fix(registry): tags were dropped when too much tags were impacted by a tag removal
* fix(registry): firefox add tag + progression
* refactor(registry): rewording of elements
* style(registry): add space between buttons and texts in status elements
* fix(registry): cancelling a retag/delete action was not removing the status panel
* fix(registry): tags count of empty repositories
* feat(registry): reload page on action cancel to avoid desync
* feat(registry): uncancellable modal on long operations
* feat(registry): modal now closes on error + modal message improvement
* feat(registries): remove empty repositories from the list
* fix(registry): various bugfixes
* feat(registry): independant timer on async actions + modal fix
* fix(services): replicas numbers display is now correct with constraints and down nodes
* refactor(helpers): constraint helper has less complexity
* feat(services): constraints on node/engine labels are now supported
* refactor(helpers): ConstraintsHelper - remove regex patterns and improve code lisibility
* refactor(helpers): rework matchesConstraint() for better code lisibility and lodash find() instead for IE compatibility
* feat(services): add the ability to pull latest image when updating a service
* feat(services): update version header value
* refactor(services): remove TODO
* feat(services): rollback version header value to 1.29