0000: 27 75 73 65 20 73 74 72 69 63 74 27 3b 0a 0a 69 'use strict';..i
0010: 6d 70 6f 72 74 20 24 20 66 72 6f 6d 20 27 6a 71 mport $ from 'jq
0020: 75 65 72 79 27 3b 0a 69 6d 70 6f 72 74 20 5f 64 uery';.import _d
0030: 65 66 61 75 6c 74 73 20 66 72 6f 6d 20 27 2e 2f efaults from './
0040: 6f 70 74 69 6f 6e 73 27 3b 0a 0a 2f 2a 2a 0a 20 options';../**.
0050: 2a 20 48 61 6e 64 6c 65 73 20 65 76 65 72 79 74 * Handles everyt
0060: 68 69 6e 67 20 72 65 6c 61 74 65 64 20 74 6f 20 hing related to
0070: 74 68 65 20 55 49 20 6f 66 20 74 68 65 20 63 6f the UI of the co
0080: 6c 6f 72 70 69 63 6b 65 72 20 70 6f 70 75 70 3a lorpicker popup:
0090: 20 73 68 6f 77 2c 20 68 69 64 65 2c 20 70 6f 73 show, hide, pos
00a0: 69 74 69 6f 6e 2c 2e 2e 2e 0a 20 2a 20 40 69 67 ition,.... * @ig
00b0: 6e 6f 72 65 0a 20 2a 2f 0a 63 6c 61 73 73 20 50 nore. */.class P
00c0: 6f 70 75 70 48 61 6e 64 6c 65 72 20 7b 0a 20 20 opupHandler {.
00d0: 2f 2a 2a 0a 20 20 20 2a 20 40 70 61 72 61 6d 20 /**. * @param
00e0: 7b 43 6f 6c 6f 72 70 69 63 6b 65 72 7d 20 63 6f {Colorpicker} co
00f0: 6c 6f 72 70 69 63 6b 65 72 0a 20 20 20 2a 20 40 lorpicker. * @
0100: 70 61 72 61 6d 20 7b 57 69 6e 64 6f 77 7d 20 72 param {Window} r
0110: 6f 6f 74 0a 20 20 20 2a 2f 0a 20 20 63 6f 6e 73 oot. */. cons
0120: 74 72 75 63 74 6f 72 28 63 6f 6c 6f 72 70 69 63 tructor(colorpic
0130: 6b 65 72 2c 20 72 6f 6f 74 29 20 7b 0a 20 20 20 ker, root) {.
0140: 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 40 74 79 70 /**. * @typ
0150: 65 20 7b 57 69 6e 64 6f 77 7d 0a 20 20 20 20 20 e {Window}.
0160: 2a 2f 0a 20 20 20 20 74 68 69 73 2e 72 6f 6f 74 */. this.root
0170: 20 3d 20 72 6f 6f 74 3b 0a 20 20 20 20 2f 2a 2a = root;. /**
0180: 0a 20 20 20 20 20 2a 20 40 74 79 70 65 20 7b 43 . * @type {C
0190: 6f 6c 6f 72 70 69 63 6b 65 72 7d 0a 20 20 20 20 olorpicker}.
01a0: 20 2a 2f 0a 20 20 20 20 74 68 69 73 2e 63 6f 6c */. this.col
01b0: 6f 72 70 69 63 6b 65 72 20 3d 20 63 6f 6c 6f 72 orpicker = color
01c0: 70 69 63 6b 65 72 3b 0a 20 20 20 20 2f 2a 2a 0a picker;. /**.
01d0: 20 20 20 20 20 2a 20 40 74 79 70 65 20 7b 6a 51 * @type {jQ
01e0: 75 65 72 79 7d 0a 20 20 20 20 20 2a 2f 0a 20 20 uery}. */.
01f0: 20 20 74 68 69 73 2e 70 6f 70 6f 76 65 72 54 61 this.popoverTa
0200: 72 67 65 74 20 3d 20 6e 75 6c 6c 3b 0a 20 20 20 rget = null;.
0210: 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 40 74 79 70 /**. * @typ
0220: 65 20 7b 6a 51 75 65 72 79 7d 0a 20 20 20 20 20 e {jQuery}.
0230: 2a 2f 0a 20 20 20 20 74 68 69 73 2e 70 6f 70 6f */. this.popo
0240: 76 65 72 54 69 70 20 3d 20 6e 75 6c 6c 3b 0a 0a verTip = null;..
0250: 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 49 /**. * I
0260: 66 20 74 72 75 65 2c 20 74 68 65 20 6c 61 74 65 f true, the late
0270: 73 74 20 63 6c 69 63 6b 20 77 61 73 20 69 6e 73 st click was ins
0280: 69 64 65 20 74 68 65 20 70 6f 70 6f 76 65 72 0a ide the popover.
0290: 20 20 20 20 20 2a 20 40 74 79 70 65 20 7b 62 6f * @type {bo
02a0: 6f 6c 65 61 6e 7d 0a 20 20 20 20 20 2a 2f 0a 20 olean}. */.
02b0: 20 20 20 74 68 69 73 2e 63 6c 69 63 6b 69 6e 67 this.clicking
02c0: 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 2f 2a = false;. /*
02d0: 2a 0a 20 20 20 20 20 2a 20 40 74 79 70 65 20 7b *. * @type {
02e0: 62 6f 6f 6c 65 61 6e 7d 0a 20 20 20 20 20 2a 2f boolean}. */
02f0: 0a 20 20 20 20 74 68 69 73 2e 68 69 64 64 69 6e . this.hiddin
0300: 67 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 2f g = false;. /
0310: 2a 2a 0a 20 20 20 20 20 2a 20 40 74 79 70 65 20 **. * @type
0320: 7b 62 6f 6f 6c 65 61 6e 7d 0a 20 20 20 20 20 2a {boolean}. *
0330: 2f 0a 20 20 20 20 74 68 69 73 2e 73 68 6f 77 69 /. this.showi
0340: 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 20 20 7d 0a ng = false;. }.
0350: 0a 20 20 2f 2a 2a 0a 20 20 20 2a 20 40 70 72 69 . /**. * @pri
0360: 76 61 74 65 0a 20 20 20 2a 20 40 72 65 74 75 72 vate. * @retur
0370: 6e 73 20 7b 6a 51 75 65 72 79 7c 66 61 6c 73 65 ns {jQuery|false
0380: 7d 0a 20 20 20 2a 2f 0a 20 20 67 65 74 20 69 6e }. */. get in
0390: 70 75 74 28 29 20 7b 0a 20 20 20 20 72 65 74 75 put() {. retu
03a0: 72 6e 20 74 68 69 73 2e 63 6f 6c 6f 72 70 69 63 rn this.colorpic
03b0: 6b 65 72 2e 69 6e 70 75 74 48 61 6e 64 6c 65 72 ker.inputHandler
03c0: 2e 69 6e 70 75 74 3b 0a 20 20 7d 0a 0a 20 20 2f .input;. }.. /
03d0: 2a 2a 0a 20 20 20 2a 20 40 70 72 69 76 61 74 65 **. * @private
03e0: 0a 20 20 20 2a 20 40 72 65 74 75 72 6e 73 20 7b . * @returns {
03f0: 62 6f 6f 6c 65 61 6e 7d 0a 20 20 20 2a 2f 0a 20 boolean}. */.
0400: 20 67 65 74 20 68 61 73 49 6e 70 75 74 28 29 20 get hasInput()
0410: 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 {. return thi
0420: 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 69 6e s.colorpicker.in
0430: 70 75 74 48 61 6e 64 6c 65 72 2e 68 61 73 49 6e putHandler.hasIn
0440: 70 75 74 28 29 3b 0a 20 20 7d 0a 0a 20 20 2f 2a put();. }.. /*
0450: 2a 0a 20 20 20 2a 20 40 70 72 69 76 61 74 65 0a *. * @private.
0460: 20 20 20 2a 20 40 72 65 74 75 72 6e 73 20 7b 6a * @returns {j
0470: 51 75 65 72 79 7c 66 61 6c 73 65 7d 0a 20 20 20 Query|false}.
0480: 2a 2f 0a 20 20 67 65 74 20 61 64 64 6f 6e 28 29 */. get addon()
0490: 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 74 68 {. return th
04a0: 69 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 61 is.colorpicker.a
04b0: 64 64 6f 6e 48 61 6e 64 6c 65 72 2e 61 64 64 6f ddonHandler.addo
04c0: 6e 3b 0a 20 20 7d 0a 0a 20 20 2f 2a 2a 0a 20 20 n;. }.. /**.
04d0: 20 2a 20 40 70 72 69 76 61 74 65 0a 20 20 20 2a * @private. *
04e0: 20 40 72 65 74 75 72 6e 73 20 7b 62 6f 6f 6c 65 @returns {boole
04f0: 61 6e 7d 0a 20 20 20 2a 2f 0a 20 20 67 65 74 20 an}. */. get
0500: 68 61 73 41 64 64 6f 6e 28 29 20 7b 0a 20 20 20 hasAddon() {.
0510: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6f 6c return this.col
0520: 6f 72 70 69 63 6b 65 72 2e 61 64 64 6f 6e 48 61 orpicker.addonHa
0530: 6e 64 6c 65 72 2e 68 61 73 41 64 64 6f 6e 28 29 ndler.hasAddon()
0540: 3b 0a 20 20 7d 0a 0a 20 20 2f 2a 2a 0a 20 20 20 ;. }.. /**.
0550: 2a 20 40 70 72 69 76 61 74 65 0a 20 20 20 2a 20 * @private. *
0560: 40 72 65 74 75 72 6e 73 20 7b 62 6f 6f 6c 65 61 @returns {boolea
0570: 6e 7d 0a 20 20 20 2a 2f 0a 20 20 67 65 74 20 69 n}. */. get i
0580: 73 50 6f 70 6f 76 65 72 28 29 20 7b 0a 20 20 20 sPopover() {.
0590: 20 72 65 74 75 72 6e 20 21 74 68 69 73 2e 63 6f return !this.co
05a0: 6c 6f 72 70 69 63 6b 65 72 2e 6f 70 74 69 6f 6e lorpicker.option
05b0: 73 2e 69 6e 6c 69 6e 65 20 26 26 20 21 21 74 68 s.inline && !!th
05c0: 69 73 2e 70 6f 70 6f 76 65 72 54 69 70 3b 0a 20 is.popoverTip;.
05d0: 20 7d 0a 0a 20 20 2f 2a 2a 0a 20 20 20 2a 20 42 }.. /**. * B
05e0: 69 6e 64 73 20 74 68 65 20 64 69 66 66 65 72 65 inds the differe
05f0: 6e 74 20 63 6f 6c 6f 72 70 69 63 6b 65 72 20 65 nt colorpicker e
0600: 6c 65 6d 65 6e 74 73 20 74 6f 20 74 68 65 20 66 lements to the f
0610: 6f 63 75 73 2f 6d 6f 75 73 65 2f 74 6f 75 63 68 ocus/mouse/touch
0620: 20 65 76 65 6e 74 73 20 73 6f 20 69 74 20 72 65 events so it re
0630: 61 63 74 73 20 69 6e 20 6f 72 64 65 72 20 74 6f acts in order to
0640: 20 73 68 6f 77 20 6f 72 0a 20 20 20 2a 20 68 69 show or. * hi
0650: 64 65 20 74 68 65 20 63 6f 6c 6f 72 70 69 63 6b de the colorpick
0660: 65 72 20 70 6f 70 75 70 20 61 63 63 6f 72 64 69 er popup accordi
0670: 6e 67 6c 79 2e 20 49 74 20 61 6c 73 6f 20 61 64 ngly. It also ad
0680: 64 73 20 74 68 65 20 70 72 6f 70 65 72 20 63 6c ds the proper cl
0690: 61 73 73 65 73 2e 0a 20 20 20 2a 2f 0a 20 20 62 asses.. */. b
06a0: 69 6e 64 28 29 20 7b 0a 20 20 20 20 6c 65 74 20 ind() {. let
06b0: 63 70 20 3d 20 74 68 69 73 2e 63 6f 6c 6f 72 70 cp = this.colorp
06c0: 69 63 6b 65 72 3b 0a 0a 20 20 20 20 69 66 20 28 icker;.. if (
06d0: 63 70 2e 6f 70 74 69 6f 6e 73 2e 69 6e 6c 69 6e cp.options.inlin
06e0: 65 29 20 7b 0a 20 20 20 20 20 20 63 70 2e 70 69 e) {. cp.pi
06f0: 63 6b 65 72 2e 61 64 64 43 6c 61 73 73 28 27 63 cker.addClass('c
0700: 6f 6c 6f 72 70 69 63 6b 65 72 2d 69 6e 6c 69 6e olorpicker-inlin
0710: 65 20 63 6f 6c 6f 72 70 69 63 6b 65 72 2d 76 69 e colorpicker-vi
0720: 73 69 62 6c 65 27 29 3b 0a 20 20 20 20 20 20 72 sible');. r
0730: 65 74 75 72 6e 3b 20 2f 2f 20 6e 6f 20 6e 65 65 eturn; // no nee
0740: 64 20 74 6f 20 62 69 6e 64 20 73 68 6f 77 2f 68 d to bind show/h
0750: 69 64 65 20 65 76 65 6e 74 73 20 66 6f 72 20 69 ide events for i
0760: 6e 6c 69 6e 65 20 65 6c 65 6d 65 6e 74 73 0a 20 nline elements.
0770: 20 20 20 7d 0a 0a 20 20 20 20 63 70 2e 70 69 63 }.. cp.pic
0780: 6b 65 72 2e 61 64 64 43 6c 61 73 73 28 27 63 6f ker.addClass('co
0790: 6c 6f 72 70 69 63 6b 65 72 2d 70 6f 70 75 70 20 lorpicker-popup
07a0: 63 6f 6c 6f 72 70 69 63 6b 65 72 2d 68 69 64 64 colorpicker-hidd
07b0: 65 6e 27 29 3b 0a 0a 20 20 20 20 2f 2f 20 74 68 en');.. // th
07c0: 65 72 65 20 69 73 20 6e 6f 20 69 6e 70 75 74 20 ere is no input
07d0: 6f 72 20 61 64 64 6f 6e 0a 20 20 20 20 69 66 20 or addon. if
07e0: 28 21 74 68 69 73 2e 68 61 73 49 6e 70 75 74 20 (!this.hasInput
07f0: 26 26 20 21 74 68 69 73 2e 68 61 73 41 64 64 6f && !this.hasAddo
0800: 6e 29 20 7b 0a 20 20 20 20 20 20 72 65 74 75 72 n) {. retur
0810: 6e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2f n;. }.. //
0820: 20 63 72 65 61 74 65 20 42 6f 6f 74 73 74 72 61 create Bootstra
0830: 70 20 34 20 70 6f 70 6f 76 65 72 0a 20 20 20 20 p 4 popover.
0840: 69 66 20 28 63 70 2e 6f 70 74 69 6f 6e 73 2e 70 if (cp.options.p
0850: 6f 70 6f 76 65 72 29 20 7b 0a 20 20 20 20 20 20 opover) {.
0860: 74 68 69 73 2e 63 72 65 61 74 65 50 6f 70 6f 76 this.createPopov
0870: 65 72 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 er();. }..
0880: 20 2f 2f 20 62 69 6e 64 20 61 64 64 6f 6e 20 73 // bind addon s
0890: 68 6f 77 2f 68 69 64 65 20 65 76 65 6e 74 73 0a how/hide events.
08a0: 20 20 20 20 69 66 20 28 74 68 69 73 2e 68 61 73 if (this.has
08b0: 41 64 64 6f 6e 29 20 7b 0a 20 20 20 20 20 20 2f Addon) {. /
08c0: 2f 20 65 6e 61 62 6c 65 20 66 6f 63 75 73 20 6f / enable focus o
08d0: 6e 20 61 64 64 6f 6e 73 0a 20 20 20 20 20 20 69 n addons. i
08e0: 66 20 28 21 74 68 69 73 2e 61 64 64 6f 6e 2e 61 f (!this.addon.a
08f0: 74 74 72 28 27 74 61 62 69 6e 64 65 78 27 29 29 ttr('tabindex'))
0900: 20 7b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e {. this.
0910: 61 64 64 6f 6e 2e 61 74 74 72 28 27 74 61 62 69 addon.attr('tabi
0920: 6e 64 65 78 27 2c 20 30 29 3b 0a 20 20 20 20 20 ndex', 0);.
0930: 20 7d 0a 0a 20 20 20 20 20 20 74 68 69 73 2e 61 }.. this.a
0940: 64 64 6f 6e 2e 6f 6e 28 7b 0a 20 20 20 20 20 20 ddon.on({.
0950: 20 20 27 6d 6f 75 73 65 64 6f 77 6e 2e 63 6f 6c 'mousedown.col
0960: 6f 72 70 69 63 6b 65 72 20 74 6f 75 63 68 73 74 orpicker touchst
0970: 61 72 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 art.colorpicker'
0980: 3a 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 74 : $.proxy(this.t
0990: 6f 67 67 6c 65 2c 20 74 68 69 73 29 0a 20 20 20 oggle, this).
09a0: 20 20 20 7d 29 3b 0a 0a 20 20 20 20 20 20 74 68 });.. th
09b0: 69 73 2e 61 64 64 6f 6e 2e 6f 6e 28 7b 0a 20 20 is.addon.on({.
09c0: 20 20 20 20 20 20 27 66 6f 63 75 73 2e 63 6f 6c 'focus.col
09d0: 6f 72 70 69 63 6b 65 72 27 3a 20 24 2e 70 72 6f orpicker': $.pro
09e0: 78 79 28 74 68 69 73 2e 73 68 6f 77 2c 20 74 68 xy(this.show, th
09f0: 69 73 29 0a 20 20 20 20 20 20 7d 29 3b 0a 0a 20 is). });..
0a00: 20 20 20 20 20 74 68 69 73 2e 61 64 64 6f 6e 2e this.addon.
0a10: 6f 6e 28 7b 0a 20 20 20 20 20 20 20 20 27 66 6f on({. 'fo
0a20: 63 75 73 6f 75 74 2e 63 6f 6c 6f 72 70 69 63 6b cusout.colorpick
0a30: 65 72 27 3a 20 24 2e 70 72 6f 78 79 28 74 68 69 er': $.proxy(thi
0a40: 73 2e 68 69 64 65 2c 20 74 68 69 73 29 0a 20 20 s.hide, this).
0a50: 20 20 20 20 7d 29 3b 0a 20 20 20 20 7d 0a 0a 20 });. }..
0a60: 20 20 20 2f 2f 20 62 69 6e 64 20 69 6e 70 75 74 // bind input
0a70: 20 73 68 6f 77 2f 68 69 64 65 20 65 76 65 6e 74 show/hide event
0a80: 73 0a 20 20 20 20 69 66 20 28 74 68 69 73 2e 68 s. if (this.h
0a90: 61 73 49 6e 70 75 74 20 26 26 20 21 74 68 69 73 asInput && !this
0aa0: 2e 68 61 73 41 64 64 6f 6e 29 20 7b 0a 20 20 20 .hasAddon) {.
0ab0: 20 20 20 74 68 69 73 2e 69 6e 70 75 74 2e 6f 6e this.input.on
0ac0: 28 7b 0a 20 20 20 20 20 20 20 20 27 6d 6f 75 73 ({. 'mous
0ad0: 65 64 6f 77 6e 2e 63 6f 6c 6f 72 70 69 63 6b 65 edown.colorpicke
0ae0: 72 20 74 6f 75 63 68 73 74 61 72 74 2e 63 6f 6c r touchstart.col
0af0: 6f 72 70 69 63 6b 65 72 27 3a 20 24 2e 70 72 6f orpicker': $.pro
0b00: 78 79 28 74 68 69 73 2e 73 68 6f 77 2c 20 74 68 xy(this.show, th
0b10: 69 73 29 2c 0a 20 20 20 20 20 20 20 20 27 66 6f is),. 'fo
0b20: 63 75 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 cus.colorpicker'
0b30: 3a 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 73 : $.proxy(this.s
0b40: 68 6f 77 2c 20 74 68 69 73 29 0a 20 20 20 20 20 how, this).
0b50: 20 7d 29 3b 0a 0a 20 20 20 20 20 20 74 68 69 73 });.. this
0b60: 2e 69 6e 70 75 74 2e 6f 6e 28 7b 0a 20 20 20 20 .input.on({.
0b70: 20 20 20 20 27 66 6f 63 75 73 6f 75 74 2e 63 6f 'focusout.co
0b80: 6c 6f 72 70 69 63 6b 65 72 27 3a 20 24 2e 70 72 lorpicker': $.pr
0b90: 6f 78 79 28 74 68 69 73 2e 68 69 64 65 2c 20 74 oxy(this.hide, t
0ba0: 68 69 73 29 0a 20 20 20 20 20 20 7d 29 3b 0a 20 his). });.
0bb0: 20 20 20 7d 0a 0a 20 20 20 20 2f 2f 20 72 65 70 }.. // rep
0bc0: 6f 73 69 74 69 6f 6e 20 70 6f 70 75 70 20 6f 6e osition popup on
0bd0: 20 77 69 6e 64 6f 77 20 72 65 73 69 7a 65 0a 20 window resize.
0be0: 20 20 20 24 28 74 68 69 73 2e 72 6f 6f 74 29 2e $(this.root).
0bf0: 6f 6e 28 27 72 65 73 69 7a 65 2e 63 6f 6c 6f 72 on('resize.color
0c00: 70 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 79 picker', $.proxy
0c10: 28 74 68 69 73 2e 72 65 70 6f 73 69 74 69 6f 6e (this.reposition
0c20: 2c 20 74 68 69 73 29 29 3b 0a 20 20 7d 0a 0a 20 , this));. }..
0c30: 20 2f 2a 2a 0a 20 20 20 2a 20 55 6e 62 69 6e 64 /**. * Unbind
0c40: 73 20 61 6e 79 20 65 76 65 6e 74 20 62 6f 75 6e s any event boun
0c50: 64 20 62 79 20 74 68 69 73 20 68 61 6e 64 6c 65 d by this handle
0c60: 72 0a 20 20 20 2a 2f 0a 20 20 75 6e 62 69 6e 64 r. */. unbind
0c70: 28 29 20 7b 0a 20 20 20 20 69 66 20 28 74 68 69 () {. if (thi
0c80: 73 2e 68 61 73 49 6e 70 75 74 29 20 7b 0a 20 20 s.hasInput) {.
0c90: 20 20 20 20 74 68 69 73 2e 69 6e 70 75 74 2e 6f this.input.o
0ca0: 66 66 28 7b 0a 20 20 20 20 20 20 20 20 27 6d 6f ff({. 'mo
0cb0: 75 73 65 64 6f 77 6e 2e 63 6f 6c 6f 72 70 69 63 usedown.colorpic
0cc0: 6b 65 72 20 74 6f 75 63 68 73 74 61 72 74 2e 63 ker touchstart.c
0cd0: 6f 6c 6f 72 70 69 63 6b 65 72 27 3a 20 24 2e 70 olorpicker': $.p
0ce0: 72 6f 78 79 28 74 68 69 73 2e 73 68 6f 77 2c 20 roxy(this.show,
0cf0: 74 68 69 73 29 2c 0a 20 20 20 20 20 20 20 20 27 this),. '
0d00: 66 6f 63 75 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 focus.colorpicke
0d10: 72 27 3a 20 24 2e 70 72 6f 78 79 28 74 68 69 73 r': $.proxy(this
0d20: 2e 73 68 6f 77 2c 20 74 68 69 73 29 0a 20 20 20 .show, this).
0d30: 20 20 20 7d 29 3b 0a 20 20 20 20 20 20 74 68 69 });. thi
0d40: 73 2e 69 6e 70 75 74 2e 6f 66 66 28 7b 0a 20 20 s.input.off({.
0d50: 20 20 20 20 20 20 27 66 6f 63 75 73 6f 75 74 2e 'focusout.
0d60: 63 6f 6c 6f 72 70 69 63 6b 65 72 27 3a 20 24 2e colorpicker': $.
0d70: 70 72 6f 78 79 28 74 68 69 73 2e 68 69 64 65 2c proxy(this.hide,
0d80: 20 74 68 69 73 29 0a 20 20 20 20 20 20 7d 29 3b this). });
0d90: 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 28 . }.. if (
0da0: 74 68 69 73 2e 68 61 73 41 64 64 6f 6e 29 20 7b this.hasAddon) {
0db0: 0a 20 20 20 20 20 20 74 68 69 73 2e 61 64 64 6f . this.addo
0dc0: 6e 2e 6f 66 66 28 7b 0a 20 20 20 20 20 20 20 20 n.off({.
0dd0: 27 6d 6f 75 73 65 64 6f 77 6e 2e 63 6f 6c 6f 72 'mousedown.color
0de0: 70 69 63 6b 65 72 20 74 6f 75 63 68 73 74 61 72 picker touchstar
0df0: 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 3a 20 t.colorpicker':
0e00: 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 74 6f 67 $.proxy(this.tog
0e10: 67 6c 65 2c 20 74 68 69 73 29 0a 20 20 20 20 20 gle, this).
0e20: 20 7d 29 3b 0a 20 20 20 20 20 20 74 68 69 73 2e });. this.
0e30: 61 64 64 6f 6e 2e 6f 66 66 28 7b 0a 20 20 20 20 addon.off({.
0e40: 20 20 20 20 27 66 6f 63 75 73 2e 63 6f 6c 6f 72 'focus.color
0e50: 70 69 63 6b 65 72 27 3a 20 24 2e 70 72 6f 78 79 picker': $.proxy
0e60: 28 74 68 69 73 2e 73 68 6f 77 2c 20 74 68 69 73 (this.show, this
0e70: 29 0a 20 20 20 20 20 20 7d 29 3b 0a 20 20 20 20 ). });.
0e80: 20 20 74 68 69 73 2e 61 64 64 6f 6e 2e 6f 66 66 this.addon.off
0e90: 28 7b 0a 20 20 20 20 20 20 20 20 27 66 6f 63 75 ({. 'focu
0ea0: 73 6f 75 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 sout.colorpicker
0eb0: 27 3a 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e ': $.proxy(this.
0ec0: 68 69 64 65 2c 20 74 68 69 73 29 0a 20 20 20 20 hide, this).
0ed0: 20 20 7d 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 });. }..
0ee0: 20 69 66 20 28 74 68 69 73 2e 70 6f 70 6f 76 65 if (this.popove
0ef0: 72 54 61 72 67 65 74 29 20 7b 0a 20 20 20 20 20 rTarget) {.
0f00: 20 74 68 69 73 2e 70 6f 70 6f 76 65 72 54 61 72 this.popoverTar
0f10: 67 65 74 2e 70 6f 70 6f 76 65 72 28 27 64 69 73 get.popover('dis
0f20: 70 6f 73 65 27 29 3b 0a 20 20 20 20 7d 0a 0a 20 pose');. }..
0f30: 20 20 20 24 28 74 68 69 73 2e 72 6f 6f 74 29 2e $(this.root).
0f40: 6f 66 66 28 27 72 65 73 69 7a 65 2e 63 6f 6c 6f off('resize.colo
0f50: 72 70 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 rpicker', $.prox
0f60: 79 28 74 68 69 73 2e 72 65 70 6f 73 69 74 69 6f y(this.repositio
0f70: 6e 2c 20 74 68 69 73 29 29 3b 0a 20 20 20 20 24 n, this));. $
0f80: 28 74 68 69 73 2e 72 6f 6f 74 2e 64 6f 63 75 6d (this.root.docum
0f90: 65 6e 74 29 2e 6f 66 66 28 27 6d 6f 75 73 65 64 ent).off('moused
0fa0: 6f 77 6e 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 20 own.colorpicker
0fb0: 74 6f 75 63 68 73 74 61 72 74 2e 63 6f 6c 6f 72 touchstart.color
0fc0: 70 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 79 picker', $.proxy
0fd0: 28 74 68 69 73 2e 68 69 64 65 2c 20 74 68 69 73 (this.hide, this
0fe0: 29 29 3b 0a 20 20 20 20 24 28 74 68 69 73 2e 72 ));. $(this.r
0ff0: 6f 6f 74 2e 64 6f 63 75 6d 65 6e 74 29 2e 6f 66 oot.document).of
1000: 66 28 27 6d 6f 75 73 65 64 6f 77 6e 2e 63 6f 6c f('mousedown.col
1010: 6f 72 70 69 63 6b 65 72 20 74 6f 75 63 68 73 74 orpicker touchst
1020: 61 72 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 art.colorpicker'
1030: 2c 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 6f , $.proxy(this.o
1040: 6e 43 6c 69 63 6b 69 6e 67 49 6e 73 69 64 65 2c nClickingInside,
1050: 20 74 68 69 73 29 29 3b 0a 20 20 7d 0a 0a 20 20 this));. }..
1060: 69 73 43 6c 69 63 6b 69 6e 67 49 6e 73 69 64 65 isClickingInside
1070: 28 65 29 20 7b 0a 20 20 20 20 69 66 20 28 21 65 (e) {. if (!e
1080: 29 20 7b 0a 20 20 20 20 20 20 72 65 74 75 72 6e ) {. return
1090: 20 66 61 6c 73 65 3b 0a 20 20 20 20 7d 0a 0a 20 false;. }..
10a0: 20 20 20 72 65 74 75 72 6e 20 28 0a 20 20 20 20 return (.
10b0: 20 20 74 68 69 73 2e 69 73 4f 72 49 73 49 6e 73 this.isOrIsIns
10c0: 69 64 65 28 74 68 69 73 2e 70 6f 70 6f 76 65 72 ide(this.popover
10d0: 54 69 70 2c 20 65 2e 63 75 72 72 65 6e 74 54 61 Tip, e.currentTa
10e0: 72 67 65 74 29 20 7c 7c 0a 20 20 20 20 20 20 74 rget) ||. t
10f0: 68 69 73 2e 69 73 4f 72 49 73 49 6e 73 69 64 65 his.isOrIsInside
1100: 28 74 68 69 73 2e 70 6f 70 6f 76 65 72 54 69 70 (this.popoverTip
1110: 2c 20 65 2e 74 61 72 67 65 74 29 20 7c 7c 0a 20 , e.target) ||.
1120: 20 20 20 20 20 74 68 69 73 2e 69 73 4f 72 49 73 this.isOrIs
1130: 49 6e 73 69 64 65 28 74 68 69 73 2e 63 6f 6c 6f Inside(this.colo
1140: 72 70 69 63 6b 65 72 2e 70 69 63 6b 65 72 2c 20 rpicker.picker,
1150: 65 2e 63 75 72 72 65 6e 74 54 61 72 67 65 74 29 e.currentTarget)
1160: 20 7c 7c 0a 20 20 20 20 20 20 74 68 69 73 2e 69 ||. this.i
1170: 73 4f 72 49 73 49 6e 73 69 64 65 28 74 68 69 73 sOrIsInside(this
1180: 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 70 69 63 .colorpicker.pic
1190: 6b 65 72 2c 20 65 2e 74 61 72 67 65 74 29 0a 20 ker, e.target).
11a0: 20 20 20 29 3b 0a 20 20 7d 0a 0a 20 20 69 73 4f );. }.. isO
11b0: 72 49 73 49 6e 73 69 64 65 28 63 6f 6e 74 61 69 rIsInside(contai
11c0: 6e 65 72 2c 20 65 6c 65 6d 65 6e 74 29 20 7b 0a ner, element) {.
11d0: 20 20 20 20 69 66 20 28 21 63 6f 6e 74 61 69 6e if (!contain
11e0: 65 72 20 7c 7c 20 21 65 6c 65 6d 65 6e 74 29 20 er || !element)
11f0: 7b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 {. return f
1200: 61 6c 73 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 alse;. }..
1210: 20 65 6c 65 6d 65 6e 74 20 3d 20 24 28 65 6c 65 element = $(ele
1220: 6d 65 6e 74 29 3b 0a 0a 20 20 20 20 72 65 74 75 ment);.. retu
1230: 72 6e 20 28 0a 20 20 20 20 20 20 65 6c 65 6d 65 rn (. eleme
1240: 6e 74 2e 69 73 28 63 6f 6e 74 61 69 6e 65 72 29 nt.is(container)
1250: 20 7c 7c 0a 20 20 20 20 20 20 63 6f 6e 74 61 69 ||. contai
1260: 6e 65 72 2e 66 69 6e 64 28 65 6c 65 6d 65 6e 74 ner.find(element
1270: 29 2e 6c 65 6e 67 74 68 20 3e 20 30 0a 20 20 20 ).length > 0.
1280: 20 29 3b 0a 20 20 7d 0a 0a 20 20 6f 6e 43 6c 69 );. }.. onCli
1290: 63 6b 69 6e 67 49 6e 73 69 64 65 28 65 29 20 7b ckingInside(e) {
12a0: 0a 20 20 20 20 74 68 69 73 2e 63 6c 69 63 6b 69 . this.clicki
12b0: 6e 67 20 3d 20 74 68 69 73 2e 69 73 43 6c 69 63 ng = this.isClic
12c0: 6b 69 6e 67 49 6e 73 69 64 65 28 65 29 3b 0a 20 kingInside(e);.
12d0: 20 7d 0a 0a 20 20 63 72 65 61 74 65 50 6f 70 6f }.. createPopo
12e0: 76 65 72 28 29 20 7b 0a 20 20 20 20 6c 65 74 20 ver() {. let
12f0: 63 70 20 3d 20 74 68 69 73 2e 63 6f 6c 6f 72 70 cp = this.colorp
1300: 69 63 6b 65 72 3b 0a 0a 20 20 20 20 74 68 69 73 icker;.. this
1310: 2e 70 6f 70 6f 76 65 72 54 61 72 67 65 74 20 3d .popoverTarget =
1320: 20 74 68 69 73 2e 68 61 73 41 64 64 6f 6e 20 3f this.hasAddon ?
1330: 20 74 68 69 73 2e 61 64 64 6f 6e 20 3a 20 74 68 this.addon : th
1340: 69 73 2e 69 6e 70 75 74 3b 0a 0a 20 20 20 20 63 is.input;.. c
1350: 70 2e 70 69 63 6b 65 72 2e 61 64 64 43 6c 61 73 p.picker.addClas
1360: 73 28 27 63 6f 6c 6f 72 70 69 63 6b 65 72 2d 62 s('colorpicker-b
1370: 73 2d 70 6f 70 6f 76 65 72 2d 63 6f 6e 74 65 6e s-popover-conten
1380: 74 27 29 3b 0a 0a 20 20 20 20 74 68 69 73 2e 70 t');.. this.p
1390: 6f 70 6f 76 65 72 54 61 72 67 65 74 2e 70 6f 70 opoverTarget.pop
13a0: 6f 76 65 72 28 0a 20 20 20 20 20 20 24 2e 65 78 over(. $.ex
13b0: 74 65 6e 64 28 0a 20 20 20 20 20 20 20 20 74 72 tend(. tr
13c0: 75 65 2c 0a 20 20 20 20 20 20 20 20 7b 7d 2c 0a ue,. {},.
13d0: 20 20 20 20 20 20 20 20 5f 64 65 66 61 75 6c 74 _default
13e0: 73 2e 70 6f 70 6f 76 65 72 2c 0a 20 20 20 20 20 s.popover,.
13f0: 20 20 20 63 70 2e 6f 70 74 69 6f 6e 73 2e 70 6f cp.options.po
1400: 70 6f 76 65 72 2c 0a 20 20 20 20 20 20 20 20 7b pover,. {
1410: 74 72 69 67 67 65 72 3a 20 27 6d 61 6e 75 61 6c trigger: 'manual
1420: 27 2c 20 63 6f 6e 74 65 6e 74 3a 20 63 70 2e 70 ', content: cp.p
1430: 69 63 6b 65 72 2c 20 68 74 6d 6c 3a 20 74 72 75 icker, html: tru
1440: 65 7d 0a 20 20 20 20 20 20 29 0a 20 20 20 20 29 e}. ). )
1450: 3b 0a 0a 20 20 20 20 74 68 69 73 2e 70 6f 70 6f ;.. this.popo
1460: 76 65 72 54 69 70 20 3d 20 24 28 74 68 69 73 2e verTip = $(this.
1470: 70 6f 70 6f 76 65 72 54 61 72 67 65 74 2e 70 6f popoverTarget.po
1480: 70 6f 76 65 72 28 27 67 65 74 54 69 70 45 6c 65 pover('getTipEle
1490: 6d 65 6e 74 27 29 2e 64 61 74 61 28 27 62 73 2e ment').data('bs.
14a0: 70 6f 70 6f 76 65 72 27 29 2e 74 69 70 29 3b 0a popover').tip);.
14b0: 20 20 20 20 74 68 69 73 2e 70 6f 70 6f 76 65 72 this.popover
14c0: 54 69 70 2e 61 64 64 43 6c 61 73 73 28 27 63 6f Tip.addClass('co
14d0: 6c 6f 72 70 69 63 6b 65 72 2d 62 73 2d 70 6f 70 lorpicker-bs-pop
14e0: 6f 76 65 72 27 29 3b 0a 0a 20 20 20 20 74 68 69 over');.. thi
14f0: 73 2e 70 6f 70 6f 76 65 72 54 61 72 67 65 74 2e s.popoverTarget.
1500: 6f 6e 28 27 73 68 6f 77 6e 2e 62 73 2e 70 6f 70 on('shown.bs.pop
1510: 6f 76 65 72 27 2c 20 24 2e 70 72 6f 78 79 28 74 over', $.proxy(t
1520: 68 69 73 2e 66 69 72 65 53 68 6f 77 2c 20 74 68 his.fireShow, th
1530: 69 73 29 29 3b 0a 20 20 20 20 74 68 69 73 2e 70 is));. this.p
1540: 6f 70 6f 76 65 72 54 61 72 67 65 74 2e 6f 6e 28 opoverTarget.on(
1550: 27 68 69 64 64 65 6e 2e 62 73 2e 70 6f 70 6f 76 'hidden.bs.popov
1560: 65 72 27 2c 20 24 2e 70 72 6f 78 79 28 74 68 69 er', $.proxy(thi
1570: 73 2e 66 69 72 65 48 69 64 65 2c 20 74 68 69 73 s.fireHide, this
1580: 29 29 3b 0a 20 20 7d 0a 0a 20 20 2f 2a 2a 0a 20 ));. }.. /**.
1590: 20 20 2a 20 49 66 20 74 68 65 20 77 69 64 67 65 * If the widge
15a0: 74 20 69 73 20 6e 6f 74 20 69 6e 73 69 64 65 20 t is not inside
15b0: 61 20 63 6f 6e 74 61 69 6e 65 72 20 6f 72 20 69 a container or i
15c0: 6e 6c 69 6e 65 2c 20 72 65 61 72 72 61 6e 67 65 nline, rearrange
15d0: 73 20 69 74 73 20 70 6f 73 69 74 69 6f 6e 20 72 s its position r
15e0: 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 20 65 elative to its e
15f0: 6c 65 6d 65 6e 74 20 6f 66 66 73 65 74 2e 0a 20 lement offset..
1600: 20 20 2a 0a 20 20 20 2a 20 40 70 61 72 61 6d 20 *. * @param
1610: 7b 45 76 65 6e 74 7d 20 5b 65 5d 0a 20 20 20 2a {Event} [e]. *
1620: 20 40 70 72 69 76 61 74 65 0a 20 20 20 2a 2f 0a @private. */.
1630: 20 20 72 65 70 6f 73 69 74 69 6f 6e 28 65 29 20 reposition(e)
1640: 7b 0a 20 20 20 20 69 66 20 28 74 68 69 73 2e 70 {. if (this.p
1650: 6f 70 6f 76 65 72 54 61 72 67 65 74 20 26 26 20 opoverTarget &&
1660: 74 68 69 73 2e 69 73 56 69 73 69 62 6c 65 28 29 this.isVisible()
1670: 29 20 7b 0a 20 20 20 20 20 20 74 68 69 73 2e 70 ) {. this.p
1680: 6f 70 6f 76 65 72 54 61 72 67 65 74 2e 70 6f 70 opoverTarget.pop
1690: 6f 76 65 72 28 27 75 70 64 61 74 65 27 29 3b 0a over('update');.
16a0: 20 20 20 20 7d 0a 20 20 7d 0a 0a 20 20 2f 2a 2a }. }.. /**
16b0: 0a 20 20 20 2a 20 54 6f 67 67 6c 65 73 20 74 68 . * Toggles th
16c0: 65 20 63 6f 6c 6f 72 70 69 63 6b 65 72 20 62 65 e colorpicker be
16d0: 74 77 65 65 6e 20 76 69 73 69 62 6c 65 20 6f 72 tween visible or
16e0: 20 68 69 64 64 65 6e 0a 20 20 20 2a 0a 20 20 20 hidden. *.
16f0: 2a 20 40 66 69 72 65 73 20 43 6f 6c 6f 72 70 69 * @fires Colorpi
1700: 63 6b 65 72 23 63 6f 6c 6f 72 70 69 63 6b 65 72 cker#colorpicker
1710: 53 68 6f 77 0a 20 20 20 2a 20 40 66 69 72 65 73 Show. * @fires
1720: 20 43 6f 6c 6f 72 70 69 63 6b 65 72 23 63 6f 6c Colorpicker#col
1730: 6f 72 70 69 63 6b 65 72 48 69 64 65 0a 20 20 20 orpickerHide.
1740: 2a 20 40 70 61 72 61 6d 20 7b 45 76 65 6e 74 7d * @param {Event}
1750: 20 5b 65 5d 0a 20 20 20 2a 2f 0a 20 20 74 6f 67 [e]. */. tog
1760: 67 6c 65 28 65 29 20 7b 0a 20 20 20 20 69 66 20 gle(e) {. if
1770: 28 74 68 69 73 2e 69 73 56 69 73 69 62 6c 65 28 (this.isVisible(
1780: 29 29 20 7b 0a 20 20 20 20 20 20 74 68 69 73 2e )) {. this.
1790: 68 69 64 65 28 65 29 3b 0a 20 20 20 20 7d 20 65 hide(e);. } e
17a0: 6c 73 65 20 7b 0a 20 20 20 20 20 20 74 68 69 73 lse {. this
17b0: 2e 73 68 6f 77 28 65 29 3b 0a 20 20 20 20 7d 0a .show(e);. }.
17c0: 20 20 7d 0a 0a 20 20 2f 2a 2a 0a 20 20 20 2a 20 }.. /**. *
17d0: 53 68 6f 77 73 20 74 68 65 20 63 6f 6c 6f 72 70 Shows the colorp
17e0: 69 63 6b 65 72 20 77 69 64 67 65 74 20 69 66 20 icker widget if
17f0: 68 69 64 64 65 6e 2e 0a 20 20 20 2a 0a 20 20 20 hidden.. *.
1800: 2a 20 40 66 69 72 65 73 20 43 6f 6c 6f 72 70 69 * @fires Colorpi
1810: 63 6b 65 72 23 63 6f 6c 6f 72 70 69 63 6b 65 72 cker#colorpicker
1820: 53 68 6f 77 0a 20 20 20 2a 20 40 70 61 72 61 6d Show. * @param
1830: 20 7b 45 76 65 6e 74 7d 20 5b 65 5d 0a 20 20 20 {Event} [e].
1840: 2a 2f 0a 20 20 73 68 6f 77 28 65 29 20 7b 0a 20 */. show(e) {.
1850: 20 20 20 69 66 20 28 74 68 69 73 2e 69 73 56 69 if (this.isVi
1860: 73 69 62 6c 65 28 29 20 7c 7c 20 74 68 69 73 2e sible() || this.
1870: 73 68 6f 77 69 6e 67 20 7c 7c 20 74 68 69 73 2e showing || this.
1880: 68 69 64 64 69 6e 67 29 20 7b 0a 20 20 20 20 20 hidding) {.
1890: 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 7d 0a 0a return;. }..
18a0: 20 20 20 20 74 68 69 73 2e 73 68 6f 77 69 6e 67 this.showing
18b0: 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 74 68 69 = true;. thi
18c0: 73 2e 68 69 64 64 69 6e 67 20 3d 20 66 61 6c 73 s.hidding = fals
18d0: 65 3b 0a 20 20 20 20 74 68 69 73 2e 63 6c 69 63 e;. this.clic
18e0: 6b 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 king = false;..
18f0: 20 20 20 6c 65 74 20 63 70 20 3d 20 74 68 69 73 let cp = this
1900: 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 3b 0a 0a 20 .colorpicker;..
1910: 20 20 20 63 70 2e 6c 61 73 74 45 76 65 6e 74 2e cp.lastEvent.
1920: 61 6c 69 61 73 20 3d 20 27 73 68 6f 77 27 3b 0a alias = 'show';.
1930: 20 20 20 20 63 70 2e 6c 61 73 74 45 76 65 6e 74 cp.lastEvent
1940: 2e 65 20 3d 20 65 3b 0a 0a 20 20 20 20 2f 2f 20 .e = e;.. //
1950: 50 72 65 76 65 6e 74 20 73 68 6f 77 69 6e 67 20 Prevent showing
1960: 62 72 6f 77 73 65 72 20 6e 61 74 69 76 65 20 48 browser native H
1970: 54 4d 4c 35 20 63 6f 6c 6f 72 70 69 63 6b 65 72 TML5 colorpicker
1980: 0a 20 20 20 20 69 66 20 28 0a 20 20 20 20 20 20 . if (.
1990: 28 65 20 26 26 20 28 21 74 68 69 73 2e 68 61 73 (e && (!this.has
19a0: 49 6e 70 75 74 20 7c 7c 20 74 68 69 73 2e 69 6e Input || this.in
19b0: 70 75 74 2e 61 74 74 72 28 27 74 79 70 65 27 29 put.attr('type')
19c0: 20 3d 3d 3d 20 27 63 6f 6c 6f 72 27 29 29 20 26 === 'color')) &
19d0: 26 0a 20 20 20 20 20 20 28 65 20 26 26 20 65 2e &. (e && e.
19e0: 70 72 65 76 65 6e 74 44 65 66 61 75 6c 74 29 0a preventDefault).
19f0: 20 20 20 20 29 20 7b 0a 20 20 20 20 20 20 65 2e ) {. e.
1a00: 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 stopPropagation(
1a10: 29 3b 0a 20 20 20 20 20 20 65 2e 70 72 65 76 65 );. e.preve
1a20: 6e 74 44 65 66 61 75 6c 74 28 29 3b 0a 20 20 20 ntDefault();.
1a30: 20 7d 0a 0a 20 20 20 20 2f 2f 20 49 66 20 69 74 }.. // If it
1a40: 27 73 20 61 20 70 6f 70 6f 76 65 72 2c 20 61 64 's a popover, ad
1a50: 64 20 65 76 65 6e 74 20 74 6f 20 74 68 65 20 64 d event to the d
1a60: 6f 63 75 6d 65 6e 74 20 74 6f 20 68 69 64 65 20 ocument to hide
1a70: 74 68 65 20 70 69 63 6b 65 72 20 77 68 65 6e 20 the picker when
1a80: 63 6c 69 63 6b 69 6e 67 20 6f 75 74 73 69 64 65 clicking outside
1a90: 20 6f 66 20 69 74 0a 20 20 20 20 69 66 20 28 74 of it. if (t
1aa0: 68 69 73 2e 69 73 50 6f 70 6f 76 65 72 29 20 7b his.isPopover) {
1ab0: 0a 20 20 20 20 20 20 24 28 74 68 69 73 2e 72 6f . $(this.ro
1ac0: 6f 74 29 2e 6f 6e 28 27 72 65 73 69 7a 65 2e 63 ot).on('resize.c
1ad0: 6f 6c 6f 72 70 69 63 6b 65 72 27 2c 20 24 2e 70 olorpicker', $.p
1ae0: 72 6f 78 79 28 74 68 69 73 2e 72 65 70 6f 73 69 roxy(this.reposi
1af0: 74 69 6f 6e 2c 20 74 68 69 73 29 29 3b 0a 20 20 tion, this));.
1b00: 20 20 7d 0a 0a 20 20 20 20 2f 2f 20 61 64 64 20 }.. // add
1b10: 76 69 73 69 62 6c 65 20 63 6c 61 73 73 20 62 65 visible class be
1b20: 66 6f 72 65 20 70 6f 70 6f 76 65 72 20 69 73 20 fore popover is
1b30: 73 68 6f 77 6e 0a 20 20 20 20 63 70 2e 70 69 63 shown. cp.pic
1b40: 6b 65 72 2e 61 64 64 43 6c 61 73 73 28 27 63 6f ker.addClass('co
1b50: 6c 6f 72 70 69 63 6b 65 72 2d 76 69 73 69 62 6c lorpicker-visibl
1b60: 65 27 29 2e 72 65 6d 6f 76 65 43 6c 61 73 73 28 e').removeClass(
1b70: 27 63 6f 6c 6f 72 70 69 63 6b 65 72 2d 68 69 64 'colorpicker-hid
1b80: 64 65 6e 27 29 3b 0a 0a 20 20 20 20 69 66 20 28 den');.. if (
1b90: 74 68 69 73 2e 70 6f 70 6f 76 65 72 54 61 72 67 this.popoverTarg
1ba0: 65 74 29 20 7b 0a 20 20 20 20 20 20 74 68 69 73 et) {. this
1bb0: 2e 70 6f 70 6f 76 65 72 54 61 72 67 65 74 2e 70 .popoverTarget.p
1bc0: 6f 70 6f 76 65 72 28 27 73 68 6f 77 27 29 3b 0a opover('show');.
1bd0: 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 } else {.
1be0: 20 20 20 74 68 69 73 2e 66 69 72 65 53 68 6f 77 this.fireShow
1bf0: 28 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 20 ();. }. }..
1c00: 20 66 69 72 65 53 68 6f 77 28 29 20 7b 0a 20 20 fireShow() {.
1c10: 20 20 74 68 69 73 2e 68 69 64 64 69 6e 67 20 3d this.hidding =
1c20: 20 66 61 6c 73 65 3b 0a 20 20 20 20 74 68 69 73 false;. this
1c30: 2e 73 68 6f 77 69 6e 67 20 3d 20 66 61 6c 73 65 .showing = false
1c40: 3b 0a 0a 20 20 20 20 69 66 20 28 74 68 69 73 2e ;.. if (this.
1c50: 69 73 50 6f 70 6f 76 65 72 29 20 7b 0a 20 20 20 isPopover) {.
1c60: 20 20 20 2f 2f 20 41 64 64 20 65 76 65 6e 74 20 // Add event
1c70: 74 6f 20 68 69 64 65 20 6f 6e 20 6f 75 74 73 69 to hide on outsi
1c80: 64 65 20 63 6c 69 63 6b 0a 20 20 20 20 20 20 24 de click. $
1c90: 28 74 68 69 73 2e 72 6f 6f 74 2e 64 6f 63 75 6d (this.root.docum
1ca0: 65 6e 74 29 2e 6f 6e 28 27 6d 6f 75 73 65 64 6f ent).on('mousedo
1cb0: 77 6e 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 20 74 wn.colorpicker t
1cc0: 6f 75 63 68 73 74 61 72 74 2e 63 6f 6c 6f 72 70 ouchstart.colorp
1cd0: 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 79 28 icker', $.proxy(
1ce0: 74 68 69 73 2e 68 69 64 65 2c 20 74 68 69 73 29 this.hide, this)
1cf0: 29 3b 0a 20 20 20 20 20 20 24 28 74 68 69 73 2e );. $(this.
1d00: 72 6f 6f 74 2e 64 6f 63 75 6d 65 6e 74 29 2e 6f root.document).o
1d10: 6e 28 27 6d 6f 75 73 65 64 6f 77 6e 2e 63 6f 6c n('mousedown.col
1d20: 6f 72 70 69 63 6b 65 72 20 74 6f 75 63 68 73 74 orpicker touchst
1d30: 61 72 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 art.colorpicker'
1d40: 2c 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 6f , $.proxy(this.o
1d50: 6e 43 6c 69 63 6b 69 6e 67 49 6e 73 69 64 65 2c nClickingInside,
1d60: 20 74 68 69 73 29 29 3b 0a 20 20 20 20 7d 0a 0a this));. }..
1d70: 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 28 /**. * (
1d80: 43 6f 6c 6f 72 70 69 63 6b 65 72 29 20 57 68 65 Colorpicker) Whe
1d90: 6e 20 73 68 6f 77 28 29 20 69 73 20 63 61 6c 6c n show() is call
1da0: 65 64 20 61 6e 64 20 74 68 65 20 77 69 64 67 65 ed and the widge
1db0: 74 20 63 61 6e 20 62 65 20 73 68 6f 77 6e 2e 0a t can be shown..
1dc0: 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 65 *. * @e
1dd0: 76 65 6e 74 20 43 6f 6c 6f 72 70 69 63 6b 65 72 vent Colorpicker
1de0: 23 63 6f 6c 6f 72 70 69 63 6b 65 72 53 68 6f 77 #colorpickerShow
1df0: 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 74 68 69 . */. thi
1e00: 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 74 72 s.colorpicker.tr
1e10: 69 67 67 65 72 28 27 63 6f 6c 6f 72 70 69 63 6b igger('colorpick
1e20: 65 72 53 68 6f 77 27 29 3b 0a 20 20 7d 0a 0a 20 erShow');. }..
1e30: 20 2f 2a 2a 0a 20 20 20 2a 20 48 69 64 65 73 20 /**. * Hides
1e40: 74 68 65 20 63 6f 6c 6f 72 70 69 63 6b 65 72 20 the colorpicker
1e50: 77 69 64 67 65 74 2e 0a 20 20 20 2a 20 48 69 64 widget.. * Hid
1e60: 65 20 69 73 20 70 72 65 76 65 6e 74 65 64 20 77 e is prevented w
1e70: 68 65 6e 20 69 74 20 69 73 20 74 72 69 67 67 65 hen it is trigge
1e80: 72 65 64 20 62 79 20 61 6e 20 65 76 65 6e 74 20 red by an event
1e90: 77 68 6f 73 65 20 74 61 72 67 65 74 20 65 6c 65 whose target ele
1ea0: 6d 65 6e 74 20 68 61 73 20 62 65 65 6e 20 63 6c ment has been cl
1eb0: 69 63 6b 65 64 2f 74 6f 75 63 68 65 64 2e 0a 20 icked/touched..
1ec0: 20 20 2a 0a 20 20 20 2a 20 40 66 69 72 65 73 20 *. * @fires
1ed0: 43 6f 6c 6f 72 70 69 63 6b 65 72 23 63 6f 6c 6f Colorpicker#colo
1ee0: 72 70 69 63 6b 65 72 48 69 64 65 0a 20 20 20 2a rpickerHide. *
1ef0: 20 40 70 61 72 61 6d 20 7b 45 76 65 6e 74 7d 20 @param {Event}
1f00: 5b 65 5d 0a 20 20 20 2a 2f 0a 20 20 68 69 64 65 [e]. */. hide
1f10: 28 65 29 20 7b 0a 20 20 20 20 69 66 20 28 74 68 (e) {. if (th
1f20: 69 73 2e 69 73 48 69 64 64 65 6e 28 29 20 7c 7c is.isHidden() ||
1f30: 20 74 68 69 73 2e 73 68 6f 77 69 6e 67 20 7c 7c this.showing ||
1f40: 20 74 68 69 73 2e 68 69 64 64 69 6e 67 29 20 7b this.hidding) {
1f50: 0a 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 . return;.
1f60: 20 20 20 7d 0a 0a 20 20 20 20 6c 65 74 20 63 70 }.. let cp
1f70: 20 3d 20 74 68 69 73 2e 63 6f 6c 6f 72 70 69 63 = this.colorpic
1f80: 6b 65 72 2c 20 63 6c 69 63 6b 69 6e 67 20 3d 20 ker, clicking =
1f90: 28 74 68 69 73 2e 63 6c 69 63 6b 69 6e 67 20 7c (this.clicking |
1fa0: 7c 20 74 68 69 73 2e 69 73 43 6c 69 63 6b 69 6e | this.isClickin
1fb0: 67 49 6e 73 69 64 65 28 65 29 29 3b 0a 0a 20 20 gInside(e));..
1fc0: 20 20 74 68 69 73 2e 68 69 64 64 69 6e 67 20 3d this.hidding =
1fd0: 20 74 72 75 65 3b 0a 20 20 20 20 74 68 69 73 2e true;. this.
1fe0: 73 68 6f 77 69 6e 67 20 3d 20 66 61 6c 73 65 3b showing = false;
1ff0: 0a 20 20 20 20 74 68 69 73 2e 63 6c 69 63 6b 69 . this.clicki
2000: 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 20 ng = false;..
2010: 20 63 70 2e 6c 61 73 74 45 76 65 6e 74 2e 61 6c cp.lastEvent.al
2020: 69 61 73 20 3d 20 27 68 69 64 65 27 3b 0a 20 20 ias = 'hide';.
2030: 20 20 63 70 2e 6c 61 73 74 45 76 65 6e 74 2e 65 cp.lastEvent.e
2040: 20 3d 20 65 3b 0a 0a 20 20 20 20 2f 2f 20 54 4f = e;.. // TO
2050: 44 4f 3a 20 66 69 78 20 68 61 76 69 6e 67 20 74 DO: fix having t
2060: 6f 20 63 6c 69 63 6b 20 74 77 69 63 65 20 6f 75 o click twice ou
2070: 74 73 69 64 65 20 77 68 65 6e 20 6c 6f 73 69 6e tside when losin
2080: 67 20 66 6f 63 75 73 20 61 6e 64 20 6c 61 73 74 g focus and last
2090: 20 32 20 63 6c 69 63 6b 73 20 77 68 65 72 65 20 2 clicks where
20a0: 69 6e 73 69 64 65 20 74 68 65 20 63 6f 6c 6f 72 inside the color
20b0: 70 69 63 6b 65 72 0a 0a 20 20 20 20 2f 2f 20 50 picker.. // P
20c0: 72 65 76 65 6e 74 20 68 69 64 65 20 69 66 20 74 revent hide if t
20d0: 72 69 67 67 65 72 65 64 20 62 79 20 61 6e 20 65 riggered by an e
20e0: 76 65 6e 74 20 61 6e 64 20 61 6e 20 65 6c 65 6d vent and an elem
20f0: 65 6e 74 20 69 6e 73 69 64 65 20 74 68 65 20 63 ent inside the c
2100: 6f 6c 6f 72 70 69 63 6b 65 72 20 68 61 73 20 62 olorpicker has b
2110: 65 65 6e 20 63 6c 69 63 6b 65 64 2f 74 6f 75 63 een clicked/touc
2120: 68 65 64 0a 20 20 20 20 69 66 20 28 63 6c 69 63 hed. if (clic
2130: 6b 69 6e 67 29 20 7b 0a 20 20 20 20 20 20 74 68 king) {. th
2140: 69 73 2e 68 69 64 64 69 6e 67 20 3d 20 66 61 6c is.hidding = fal
2150: 73 65 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e se;. return
2160: 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 ;. }.. if
2170: 28 74 68 69 73 2e 70 6f 70 6f 76 65 72 54 61 72 (this.popoverTar
2180: 67 65 74 29 20 7b 0a 20 20 20 20 20 20 74 68 69 get) {. thi
2190: 73 2e 70 6f 70 6f 76 65 72 54 61 72 67 65 74 2e s.popoverTarget.
21a0: 70 6f 70 6f 76 65 72 28 27 68 69 64 65 27 29 3b popover('hide');
21b0: 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 . } else {.
21c0: 20 20 20 20 74 68 69 73 2e 66 69 72 65 48 69 64 this.fireHid
21d0: 65 28 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a e();. }. }..
21e0: 20 20 66 69 72 65 48 69 64 65 28 29 20 7b 0a 20 fireHide() {.
21f0: 20 20 20 74 68 69 73 2e 68 69 64 64 69 6e 67 20 this.hidding
2200: 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 74 68 69 = false;. thi
2210: 73 2e 73 68 6f 77 69 6e 67 20 3d 20 66 61 6c 73 s.showing = fals
2220: 65 3b 0a 0a 20 20 20 20 6c 65 74 20 63 70 20 3d e;.. let cp =
2230: 20 74 68 69 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 this.colorpicke
2240: 72 3b 0a 0a 20 20 20 20 2f 2f 20 61 64 64 20 68 r;.. // add h
2250: 69 64 64 65 6e 20 63 6c 61 73 73 20 61 66 74 65 idden class afte
2260: 72 20 70 6f 70 6f 76 65 72 20 69 73 20 68 69 64 r popover is hid
2270: 64 65 6e 0a 20 20 20 20 63 70 2e 70 69 63 6b 65 den. cp.picke
2280: 72 2e 61 64 64 43 6c 61 73 73 28 27 63 6f 6c 6f r.addClass('colo
2290: 72 70 69 63 6b 65 72 2d 68 69 64 64 65 6e 27 29 rpicker-hidden')
22a0: 2e 72 65 6d 6f 76 65 43 6c 61 73 73 28 27 63 6f .removeClass('co
22b0: 6c 6f 72 70 69 63 6b 65 72 2d 76 69 73 69 62 6c lorpicker-visibl
22c0: 65 27 29 3b 0a 0a 20 20 20 20 2f 2f 20 55 6e 62 e');.. // Unb
22d0: 69 6e 64 20 77 69 6e 64 6f 77 20 61 6e 64 20 64 ind window and d
22e0: 6f 63 75 6d 65 6e 74 20 65 76 65 6e 74 73 2c 20 ocument events,
22f0: 73 69 6e 63 65 20 74 68 65 72 65 20 69 73 20 6e since there is n
2300: 6f 20 6e 65 65 64 20 74 6f 20 6b 65 65 70 20 74 o need to keep t
2310: 68 65 6d 20 77 68 69 6c 65 20 74 68 65 20 70 6f hem while the po
2320: 70 75 70 20 69 73 20 68 69 64 64 65 6e 0a 20 20 pup is hidden.
2330: 20 20 24 28 74 68 69 73 2e 72 6f 6f 74 29 2e 6f $(this.root).o
2340: 66 66 28 27 72 65 73 69 7a 65 2e 63 6f 6c 6f 72 ff('resize.color
2350: 70 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 79 picker', $.proxy
2360: 28 74 68 69 73 2e 72 65 70 6f 73 69 74 69 6f 6e (this.reposition
2370: 2c 20 74 68 69 73 29 29 3b 0a 20 20 20 20 24 28 , this));. $(
2380: 74 68 69 73 2e 72 6f 6f 74 2e 64 6f 63 75 6d 65 this.root.docume
2390: 6e 74 29 2e 6f 66 66 28 27 6d 6f 75 73 65 64 6f nt).off('mousedo
23a0: 77 6e 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 20 74 wn.colorpicker t
23b0: 6f 75 63 68 73 74 61 72 74 2e 63 6f 6c 6f 72 70 ouchstart.colorp
23c0: 69 63 6b 65 72 27 2c 20 24 2e 70 72 6f 78 79 28 icker', $.proxy(
23d0: 74 68 69 73 2e 68 69 64 65 2c 20 74 68 69 73 29 this.hide, this)
23e0: 29 3b 0a 20 20 20 20 24 28 74 68 69 73 2e 72 6f );. $(this.ro
23f0: 6f 74 2e 64 6f 63 75 6d 65 6e 74 29 2e 6f 66 66 ot.document).off
2400: 28 27 6d 6f 75 73 65 64 6f 77 6e 2e 63 6f 6c 6f ('mousedown.colo
2410: 72 70 69 63 6b 65 72 20 74 6f 75 63 68 73 74 61 rpicker touchsta
2420: 72 74 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 27 2c rt.colorpicker',
2430: 20 24 2e 70 72 6f 78 79 28 74 68 69 73 2e 6f 6e $.proxy(this.on
2440: 43 6c 69 63 6b 69 6e 67 49 6e 73 69 64 65 2c 20 ClickingInside,
2450: 74 68 69 73 29 29 3b 0a 0a 20 20 20 20 2f 2a 2a this));.. /**
2460: 0a 20 20 20 20 20 2a 20 28 43 6f 6c 6f 72 70 69 . * (Colorpi
2470: 63 6b 65 72 29 20 57 68 65 6e 20 68 69 64 65 28 cker) When hide(
2480: 29 20 69 73 20 63 61 6c 6c 65 64 20 61 6e 64 20 ) is called and
2490: 74 68 65 20 77 69 64 67 65 74 20 63 61 6e 20 62 the widget can b
24a0: 65 20 68 69 64 64 65 6e 2e 0a 20 20 20 20 20 2a e hidden.. *
24b0: 0a 20 20 20 20 20 2a 20 40 65 76 65 6e 74 20 43 . * @event C
24c0: 6f 6c 6f 72 70 69 63 6b 65 72 23 63 6f 6c 6f 72 olorpicker#color
24d0: 70 69 63 6b 65 72 48 69 64 65 0a 20 20 20 20 20 pickerHide.
24e0: 2a 2f 0a 20 20 20 20 63 70 2e 74 72 69 67 67 65 */. cp.trigge
24f0: 72 28 27 63 6f 6c 6f 72 70 69 63 6b 65 72 48 69 r('colorpickerHi
2500: 64 65 27 29 3b 0a 20 20 7d 0a 0a 20 20 66 6f 63 de');. }.. foc
2510: 75 73 28 29 20 7b 0a 20 20 20 20 69 66 20 28 74 us() {. if (t
2520: 68 69 73 2e 68 61 73 41 64 64 6f 6e 29 20 7b 0a his.hasAddon) {.
2530: 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 return thi
2540: 73 2e 61 64 64 6f 6e 2e 66 6f 63 75 73 28 29 3b s.addon.focus();
2550: 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 28 74 . }. if (t
2560: 68 69 73 2e 68 61 73 49 6e 70 75 74 29 20 7b 0a his.hasInput) {.
2570: 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 return thi
2580: 73 2e 69 6e 70 75 74 2e 66 6f 63 75 73 28 29 3b s.input.focus();
2590: 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 . }. retur
25a0: 6e 20 66 61 6c 73 65 3b 0a 20 20 7d 0a 0a 20 20 n false;. }..
25b0: 2f 2a 2a 0a 20 20 20 2a 20 52 65 74 75 72 6e 73 /**. * Returns
25c0: 20 74 72 75 65 20 69 66 20 74 68 65 20 63 6f 6c true if the col
25d0: 6f 72 70 69 63 6b 65 72 20 65 6c 65 6d 65 6e 74 orpicker element
25e0: 20 68 61 73 20 74 68 65 20 63 6f 6c 6f 72 70 69 has the colorpi
25f0: 63 6b 65 72 2d 76 69 73 69 62 6c 65 20 63 6c 61 cker-visible cla
2600: 73 73 20 61 6e 64 20 6e 6f 74 20 74 68 65 20 63 ss and not the c
2610: 6f 6c 6f 72 70 69 63 6b 65 72 2d 68 69 64 64 65 olorpicker-hidde
2620: 6e 20 6f 6e 65 2e 0a 20 20 20 2a 20 46 61 6c 73 n one.. * Fals
2630: 65 20 6f 74 68 65 72 77 69 73 65 2e 0a 20 20 20 e otherwise..
2640: 2a 0a 20 20 20 2a 20 40 72 65 74 75 72 6e 73 20 *. * @returns
2650: 7b 62 6f 6f 6c 65 61 6e 7d 0a 20 20 20 2a 2f 0a {boolean}. */.
2660: 20 20 69 73 56 69 73 69 62 6c 65 28 29 20 7b 0a isVisible() {.
2670: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this.
2680: 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 70 69 63 6b colorpicker.pick
2690: 65 72 2e 68 61 73 43 6c 61 73 73 28 27 63 6f 6c er.hasClass('col
26a0: 6f 72 70 69 63 6b 65 72 2d 76 69 73 69 62 6c 65 orpicker-visible
26b0: 27 29 20 26 26 0a 20 20 20 20 20 20 21 74 68 69 ') &&. !thi
26c0: 73 2e 63 6f 6c 6f 72 70 69 63 6b 65 72 2e 70 69 s.colorpicker.pi
26d0: 63 6b 65 72 2e 68 61 73 43 6c 61 73 73 28 27 63 cker.hasClass('c
26e0: 6f 6c 6f 72 70 69 63 6b 65 72 2d 68 69 64 64 65 olorpicker-hidde
26f0: 6e 27 29 3b 0a 20 20 7d 0a 0a 20 20 2f 2a 2a 0a n');. }.. /**.
2700: 20 20 20 2a 20 52 65 74 75 72 6e 73 20 74 72 75 * Returns tru
2710: 65 20 69 66 20 74 68 65 20 63 6f 6c 6f 72 70 69 e if the colorpi
2720: 63 6b 65 72 20 65 6c 65 6d 65 6e 74 20 68 61 73 cker element has
2730: 20 74 68 65 20 63 6f 6c 6f 72 70 69 63 6b 65 72 the colorpicker
2740: 2d 68 69 64 64 65 6e 20 63 6c 61 73 73 20 61 6e -hidden class an
2750: 64 20 6e 6f 74 20 74 68 65 20 63 6f 6c 6f 72 70 d not the colorp
2760: 69 63 6b 65 72 2d 76 69 73 69 62 6c 65 20 6f 6e icker-visible on
2770: 65 2e 0a 20 20 20 2a 20 46 61 6c 73 65 20 6f 74 e.. * False ot
2780: 68 65 72 77 69 73 65 2e 0a 20 20 20 2a 0a 20 20 herwise.. *.
2790: 20 2a 20 40 72 65 74 75 72 6e 73 20 7b 62 6f 6f * @returns {boo
27a0: 6c 65 61 6e 7d 0a 20 20 20 2a 2f 0a 20 20 69 73 lean}. */. is
27b0: 48 69 64 64 65 6e 28 29 20 7b 0a 20 20 20 20 72 Hidden() {. r
27c0: 65 74 75 72 6e 20 74 68 69 73 2e 63 6f 6c 6f 72 eturn this.color
27d0: 70 69 63 6b 65 72 2e 70 69 63 6b 65 72 2e 68 61 picker.picker.ha
27e0: 73 43 6c 61 73 73 28 27 63 6f 6c 6f 72 70 69 63 sClass('colorpic
27f0: 6b 65 72 2d 68 69 64 64 65 6e 27 29 20 26 26 0a ker-hidden') &&.
2800: 20 20 20 20 20 20 21 74 68 69 73 2e 63 6f 6c 6f !this.colo
2810: 72 70 69 63 6b 65 72 2e 70 69 63 6b 65 72 2e 68 rpicker.picker.h
2820: 61 73 43 6c 61 73 73 28 27 63 6f 6c 6f 72 70 69 asClass('colorpi
2830: 63 6b 65 72 2d 76 69 73 69 62 6c 65 27 29 3b 0a cker-visible');.
2840: 20 20 7d 0a 7d 0a 0a 65 78 70 6f 72 74 20 64 65 }.}..export de
2850: 66 61 75 6c 74 20 50 6f 70 75 70 48 61 6e 64 6c fault PopupHandl
2860: 65 72 3b 0a er;.