Go to file
John Cowen 466c3c6899 ui: Allow text selection of clickable elements and their contents (#5770)
* ui: Allow text selection of clickable elements and their contents

This commit disables a click on mousedown be removing the `href`
attribute and moving it to a `data-href` attribute. On mouseup it will
only move it back if there is no selection. This means that an anchor
will only be followed on click _if_ there is no selection.

This fixes the fact that whenever you select some copy within a
clickable element it immediately throws you into the linked page when
you release your mouse.

Further notes:

We use the `isCollapsed` property here which 'seems' to be classed as
'experimental' in one place where I researched it:

https://developer.mozilla.org/en-US/docs/Web/API/Selection/isCollapsed

Although in others it makes no mention of this 'experimental' e.g:

- https://webplatform.github.io/docs/dom/Selection/isCollapsed/
- https://w3c.github.io/selection-api/#dom-selection-iscollapsed

I may have gone a little overboard in feature detection for this, but I
conscious of that fact that if `isCollapsed` doesn't exist at some point
in the future (something that seems unlikely). The code here will have
no effect on the UI. But I'd specifically like a second pair of eyes on
that.

* ui: Don't break right click, detects a secondary click on mousedown

* ui: Put anchor selection capability behind an ENV var
2019-09-04 08:34:58 +00:00
.circleci test: actually run envoy 1.11.1 integration tests on PRs (#6397) 2019-08-26 16:30:17 -05:00
.github Update questions issue template directing q's to the forum (#5957) 2019-06-12 09:07:44 -05:00
acl Fix to prevent allowing recursive KV deletions when we shouldn’t 2019-05-22 20:13:30 +00:00
agent refactor & add better retry logic to NewTestAgent (#6363) 2019-09-03 15:05:51 -07:00
api api: bump to sdk v0.2.0 2019-08-23 16:41:19 -05:00
bench
build-support Update toolchain to Go 1.12.8 (#6319) 2019-08-14 09:40:57 -04:00
command refactor & add better retry logic to NewTestAgent (#6363) 2019-09-03 15:05:51 -07:00
connect connect: remove managed proxies (#6220) 2019-08-09 15:19:30 -04:00
demo
ipaddr Ensure Consul is IPv6 compliant (#5468) 2019-06-04 10:02:38 -04:00
lib connect: remove managed proxies (#6220) 2019-08-09 15:19:30 -04:00
logger log rotation: limit count of rotated log files (#5831) 2019-07-19 15:36:34 -06:00
sdk connect: remove managed proxies (#6220) 2019-08-09 15:19:30 -04:00
sentinel Update to use a consulent build tag instead of just ent (#5759) 2019-05-01 11:11:27 -04:00
service_os
snapshot
terraform terraform: remove modules in repo (#5085) 2019-04-04 16:31:43 -07:00
test [BUGFIX][BUILD] When test fail in circle-ci in main, have a proper error message (#6416) 2019-08-28 10:26:05 -04:00
testrpc
tlsutil connect: Support RSA keys in addition to ECDSA (#6055) 2019-07-30 17:47:39 -04:00
types
ui-v2 ui: Allow text selection of clickable elements and their contents (#5770) 2019-09-04 08:34:58 +00:00
vendor refactor & add better retry logic to NewTestAgent (#6363) 2019-09-03 15:05:51 -07:00
version Putting source back into Dev Mode 2019-08-26 12:22:20 -05:00
website Add option to register services and their checks idempotently (#4905) 2019-09-02 09:38:29 -06:00
.dockerignore
.gitattributes
.gitignore connect: Support RSA keys in addition to ECDSA (#6055) 2019-07-30 17:47:39 -04:00
CHANGELOG.md Update CHANGELOG.md 2019-09-02 09:42:45 -06:00
GNUmakefile Revert "connect: support AWS PCA as a CA provider" (#6251) 2019-07-31 09:08:10 -04:00
INTERNALS.md
LICENSE
NOTICE.md
README.md
Vagrantfile
go.mod update dependencies for enterprise change (#6395) 2019-08-26 15:22:28 -04:00
go.sum update dependencies for enterprise change (#6395) 2019-08-26 15:22:28 -04:00
main.go
main_test.go

README.md

Consul Build Status Join the chat at https://gitter.im/hashicorp-consul/Lobby

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

Consul provides several key features:

  • Service Discovery - Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. External services such as SaaS providers can be registered as well.

  • Health Checking - Health Checking enables Consul to quickly alert operators about any issues in a cluster. The integration with service discovery prevents routing traffic to unhealthy hosts and enables service level circuit breakers.

  • Key/Value Storage - A flexible key/value store enables storing dynamic configuration, feature flagging, coordination, leader election and more. The simple HTTP API makes it easy to use anywhere.

  • Multi-Datacenter - Consul is built to be datacenter aware, and can support any number of regions without complex configuration.

  • Service Segmentation - Consul Connect enables secure service-to-service communication with automatic TLS encryption and identity-based authorization.

Consul runs on Linux, Mac OS X, FreeBSD, Solaris, and Windows. A commercial version called Consul Enterprise is also available.

Please note: We take Consul's security and our users' trust very seriously. If you believe you have found a security issue in Consul, please responsibly disclose by contacting us at security@hashicorp.com.

Quick Start

An extensive quick start is viewable on the Consul website:

https://www.consul.io/intro/getting-started/install.html

Documentation

Full, comprehensive documentation is viewable on the Consul website:

https://www.consul.io/docs

Contributing

Thank you for your interest in contributing! Please refer to CONTRIBUTING.md for guidance.