Subversion Repositories oidplus

Rev

Rev 637 | Rev 759 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 637 Rev 679
Line 2... Line 2...
2
 * Copyright (c) Tiny Technologies, Inc. All rights reserved.
2
 * Copyright (c) Tiny Technologies, Inc. All rights reserved.
3
 * Licensed under the LGPL or a commercial license.
3
 * Licensed under the LGPL or a commercial license.
4
 * For LGPL see License.txt in the project root for license information.
4
 * For LGPL see License.txt in the project root for license information.
5
 * For commercial licenses see https://www.tiny.cloud/
5
 * For commercial licenses see https://www.tiny.cloud/
6
 *
6
 *
7
 * Version: 5.9.2 (2021-09-08)
7
 * Version: 5.10.2 (2021-11-17)
8
 */
8
 */
9
(function () {
9
(function () {
10
    'use strict';
10
    'use strict';
11
 
11
 
12
    var __assign = function () {
12
    var __assign = function () {
Line 1923... Line 1923...
1923
      return field$2(key, key, required$2(), anyValue());
1923
      return field$2(key, key, required$2(), anyValue());
1924
    };
1924
    };
1925
    var requiredOf = function (key, schema) {
1925
    var requiredOf = function (key, schema) {
1926
      return field$2(key, key, required$2(), schema);
1926
      return field$2(key, key, required$2(), schema);
1927
    };
1927
    };
1928
    var requiredFunction = function (key) {
-
 
1929
      return requiredOf(key, functionProcessor);
-
 
1930
    };
-
 
1931
    var forbid = function (key, message) {
1928
    var forbid = function (key, message) {
1932
      return field$2(key, key, asOption(), value$1(function (_v) {
1929
      return field$2(key, key, asOption(), value$1(function (_v) {
1933
        return SimpleResult.serror('The field: ' + key + ' is forbidden. ' + message);
1930
        return SimpleResult.serror('The field: ' + key + ' is forbidden. ' + message);
1934
      }));
1931
      }));
1935
    };
1932
    };
Line 4515... Line 4512...
4515
    };
4512
    };
4516
    var get$6 = function (data) {
4513
    var get$6 = function (data) {
4517
      return data.dump;
4514
      return data.dump;
4518
    };
4515
    };
4519
    var augment = function (data, original) {
4516
    var augment = function (data, original) {
4520
      return __assign(__assign({}, data.dump), derive$2(original));
4517
      return __assign(__assign({}, derive$2(original)), data.dump);
4521
    };
4518
    };
4522
    var SketchBehaviours = {
4519
    var SketchBehaviours = {
4523
      field: field$1,
4520
      field: field$1,
4524
      augment: augment,
4521
      augment: augment,
4525
      get: get$6
4522
      get: get$6
Line 4830... Line 4827...
4830
          rest[_i - 1] = arguments[_i];
4827
          rest[_i - 1] = arguments[_i];
4831
        }
4828
        }
4832
        return f.apply(void 0, __spreadArray([
4829
        return f.apply(void 0, __spreadArray([
4833
          component.getApis(),
4830
          component.getApis(),
4834
          component
4831
          component
4835
        ], rest));
4832
        ], rest, false));
4836
      }, f);
4833
      }, f);
4837
    };
4834
    };
4838
 
4835
 
4839
    var prefix$1 = constant$1('alloy-id-');
4836
    var prefix$1 = constant$1('alloy-id-');
4840
    var idAttr$1 = constant$1('data-alloy-id');
4837
    var idAttr$1 = constant$1('data-alloy-id');
Line 6515... Line 6512...
6515
        getOpt: getOpt,
6512
        getOpt: getOpt,
6516
        asSpec: asSpec
6513
        asSpec: asSpec
6517
      };
6514
      };
6518
    };
6515
    };
6519
 
6516
 
-
 
6517
    var exports$1 = {}, module = { exports: exports$1 };
-
 
6518
    (function (define, exports, module, require) {
-
 
6519
      (function (global, factory) {
6520
    var promise = function () {
6520
        typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.EphoxContactWrapper = factory());
6521
      var Promise = function (fn) {
6521
      }(this, function () {
-
 
6522
        var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
-
 
6523
        var promise = { exports: {} };
-
 
6524
        (function (module) {
6522
        if (typeof this !== 'object') {
6525
          (function (root) {
6523
          throw new TypeError('Promises must be constructed via new');
6526
            var setTimeoutFunc = setTimeout;
-
 
6527
            function noop() {
6524
        }
6528
            }
-
 
6529
            function bind(fn, thisArg) {
6525
        if (typeof fn !== 'function') {
6530
              return function () {
6526
          throw new TypeError('not a function');
6531
                fn.apply(thisArg, arguments);
-
 
6532
              };
6527
        }
6533
            }
-
 
6534
            function Promise(fn) {
-
 
6535
              if (typeof this !== 'object')
-
 
6536
                throw new TypeError('Promises must be constructed via new');
-
 
6537
              if (typeof fn !== 'function')
-
 
6538
                throw new TypeError('not a function');
6528
        this._state = null;
6539
              this._state = 0;
-
 
6540
              this._handled = false;
6529
        this._value = null;
6541
              this._value = undefined;
6530
        this._deferreds = [];
6542
              this._deferreds = [];
6531
        doResolve(fn, bind(resolve, this), bind(reject, this));
-
 
6532
      };
-
 
6533
      var anyWindow = window;
-
 
6534
      var asap = Promise.immediateFn || typeof anyWindow.setImmediate === 'function' && anyWindow.setImmediate || function (fn) {
-
 
6535
        return setTimeout(fn, 1);
-
 
6536
      };
-
 
6537
      var bind = function (fn, thisArg) {
6543
              doResolve(fn, this);
6538
        return function () {
-
 
6539
          var args = [];
-
 
6540
          for (var _i = 0; _i < arguments.length; _i++) {
-
 
6541
            args[_i] = arguments[_i];
-
 
6542
          }
6544
            }
6543
          return fn.apply(thisArg, args);
6545
            function handle(self, deferred) {
6544
        };
-
 
6545
      };
-
 
6546
      var isArray = Array.isArray || function (value) {
6546
              while (self._state === 3) {
6547
        return Object.prototype.toString.call(value) === '[object Array]';
-
 
6548
      };
-
 
6549
      function handle(deferred) {
6547
                self = self._value;
6550
        var me = this;
6548
              }
6551
        if (this._state === null) {
6549
              if (self._state === 0) {
6552
          this._deferreds.push(deferred);
6550
                self._deferreds.push(deferred);
6553
          return;
6551
                return;
6554
        }
6552
              }
-
 
6553
              self._handled = true;
6555
        asap(function () {
6554
              Promise._immediateFn(function () {
6556
          var cb = me._state ? deferred.onFulfilled : deferred.onRejected;
6555
                var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;
6557
          if (cb === null) {
6556
                if (cb === null) {
6558
            (me._state ? deferred.resolve : deferred.reject)(me._value);
6557
                  (self._state === 1 ? resolve : reject)(deferred.promise, self._value);
6559
            return;
6558
                  return;
6560
          }
6559
                }
6561
          var ret;
6560
                var ret;
6562
          try {
6561
                try {
6563
            ret = cb(me._value);
6562
                  ret = cb(self._value);
6564
          } catch (e) {
6563
                } catch (e) {
6565
            deferred.reject(e);
6564
                  reject(deferred.promise, e);
6566
            return;
6565
                  return;
6567
          }
6566
                }
6568
          deferred.resolve(ret);
6567
                resolve(deferred.promise, ret);
6569
        });
6568
              });
6570
      }
6569
            }
6571
      function resolve(newValue) {
6570
            function resolve(self, newValue) {
6572
        try {
6571
              try {
6573
          if (newValue === this) {
6572
                if (newValue === self)
6574
            throw new TypeError('A promise cannot be resolved with itself.');
6573
                  throw new TypeError('A promise cannot be resolved with itself.');
6575
          }
-
 
6576
          if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
6574
                if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
6577
            var then = newValue.then;
6575
                  var then = newValue.then;
-
 
6576
                  if (newValue instanceof Promise) {
-
 
6577
                    self._state = 3;
-
 
6578
                    self._value = newValue;
-
 
6579
                    finale(self);
-
 
6580
                    return;
6578
            if (typeof then === 'function') {
6581
                  } else if (typeof then === 'function') {
6579
              doResolve(bind(then, newValue), bind(resolve, this), bind(reject, this));
6582
                    doResolve(bind(then, newValue), self);
6580
              return;
6583
                    return;
6581
            }
6584
                  }
6582
          }
6585
                }
6583
          this._state = true;
6586
                self._state = 1;
6584
          this._value = newValue;
6587
                self._value = newValue;
6585
          finale.call(this);
6588
                finale(self);
6586
        } catch (e) {
6589
              } catch (e) {
6587
          reject.call(this, e);
6590
                reject(self, e);
6588
        }
6591
              }
6589
      }
6592
            }
6590
      function reject(newValue) {
6593
            function reject(self, newValue) {
6591
        this._state = false;
6594
              self._state = 2;
6592
        this._value = newValue;
6595
              self._value = newValue;
6593
        finale.call(this);
6596
              finale(self);
6594
      }
-
 
6595
      function finale() {
-
 
6596
        for (var _i = 0, _a = this._deferreds; _i < _a.length; _i++) {
-
 
6597
          var deferred = _a[_i];
-
 
6598
          handle.call(this, deferred);
-
 
6599
        }
6597
            }
-
 
6598
            function finale(self) {
-
 
6599
              if (self._state === 2 && self._deferreds.length === 0) {
-
 
6600
                Promise._immediateFn(function () {
-
 
6601
                  if (!self._handled) {
-
 
6602
                    Promise._unhandledRejectionFn(self._value);
-
 
6603
                  }
-
 
6604
                });
-
 
6605
              }
-
 
6606
              for (var i = 0, len = self._deferreds.length; i < len; i++) {
6600
        this._deferreds = [];
6607
                handle(self, self._deferreds[i]);
6601
      }
6608
              }
-
 
6609
              self._deferreds = null;
-
 
6610
            }
6602
      function Handler(onFulfilled, onRejected, resolve, reject) {
6611
            function Handler(onFulfilled, onRejected, promise) {
6603
        this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
6612
              this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
6604
        this.onRejected = typeof onRejected === 'function' ? onRejected : null;
6613
              this.onRejected = typeof onRejected === 'function' ? onRejected : null;
6605
        this.resolve = resolve;
6614
              this.promise = promise;
6606
        this.reject = reject;
-
 
6607
      }
6615
            }
6608
      var doResolve = function (fn, onFulfilled, onRejected) {
6616
            function doResolve(fn, self) {
6609
        var done = false;
6617
              var done = false;
6610
        try {
6618
              try {
6611
          fn(function (value) {
6619
                fn(function (value) {
6612
            if (done) {
6620
                  if (done)
6613
              return;
6621
                    return;
6614
            }
-
 
6615
            done = true;
6622
                  done = true;
6616
            onFulfilled(value);
6623
                  resolve(self, value);
6617
          }, function (reason) {
6624
                }, function (reason) {
6618
            if (done) {
6625
                  if (done)
6619
              return;
6626
                    return;
6620
            }
-
 
6621
            done = true;
6627
                  done = true;
6622
            onRejected(reason);
6628
                  reject(self, reason);
6623
          });
6629
                });
6624
        } catch (ex) {
6630
              } catch (ex) {
6625
          if (done) {
6631
                if (done)
6626
            return;
6632
                  return;
6627
          }
-
 
6628
          done = true;
6633
                done = true;
6629
          onRejected(ex);
6634
                reject(self, ex);
6630
        }
6635
              }
6631
      };
6636
            }
6632
      Promise.prototype.catch = function (onRejected) {
6637
            Promise.prototype['catch'] = function (onRejected) {
6633
        return this.then(null, onRejected);
6638
              return this.then(null, onRejected);
6634
      };
6639
            };
6635
      Promise.prototype.then = function (onFulfilled, onRejected) {
6640
            Promise.prototype.then = function (onFulfilled, onRejected) {
6636
        var me = this;
-
 
6637
        return new Promise(function (resolve, reject) {
6641
              var prom = new this.constructor(noop);
6638
          handle.call(me, new Handler(onFulfilled, onRejected, resolve, reject));
6642
              handle(this, new Handler(onFulfilled, onRejected, prom));
6639
        });
6643
              return prom;
6640
      };
6644
            };
6641
      Promise.all = function () {
6645
            Promise.all = function (arr) {
6642
        var values = [];
-
 
6643
        for (var _i = 0; _i < arguments.length; _i++) {
6646
              var args = Array.prototype.slice.call(arr);
6644
          values[_i] = arguments[_i];
-
 
6645
        }
-
 
6646
        var args = Array.prototype.slice.call(values.length === 1 && isArray(values[0]) ? values[0] : values);
-
 
6647
        return new Promise(function (resolve, reject) {
6647
              return new Promise(function (resolve, reject) {
6648
          if (args.length === 0) {
6648
                if (args.length === 0)
6649
            return resolve([]);
6649
                  return resolve([]);
6650
          }
-
 
6651
          var remaining = args.length;
6650
                var remaining = args.length;
6652
          var res = function (i, val) {
6651
                function res(i, val) {
6653
            try {
6652
                  try {
6654
              if (val && (typeof val === 'object' || typeof val === 'function')) {
6653
                    if (val && (typeof val === 'object' || typeof val === 'function')) {
6655
                var then = val.then;
6654
                      var then = val.then;
6656
                if (typeof then === 'function') {
6655
                      if (typeof then === 'function') {
6657
                  then.call(val, function (val) {
6656
                        then.call(val, function (val) {
Line 6665... Line 6664...
6665
                resolve(args);
6664
                      resolve(args);
6666
              }
6665
                    }
6667
            } catch (ex) {
6666
                  } catch (ex) {
6668
              reject(ex);
6667
                    reject(ex);
6669
            }
6668
                  }
6670
          };
6669
                }
6671
          for (var i = 0; i < args.length; i++) {
6670
                for (var i = 0; i < args.length; i++) {
6672
            res(i, args[i]);
6671
                  res(i, args[i]);
6673
          }
6672
                }
6674
        });
6673
              });
6675
      };
6674
            };
Line 6679... Line 6678...
6679
        }
6678
              }
6680
        return new Promise(function (resolve) {
6679
              return new Promise(function (resolve) {
6681
          resolve(value);
6680
                resolve(value);
6682
        });
6681
              });
6683
      };
6682
            };
6684
      Promise.reject = function (reason) {
6683
            Promise.reject = function (value) {
6685
        return new Promise(function (resolve, reject) {
6684
              return new Promise(function (resolve, reject) {
6686
          reject(reason);
6685
                reject(value);
6687
        });
6686
              });
6688
      };
6687
            };
6689
      Promise.race = function (values) {
6688
            Promise.race = function (values) {
6690
        return new Promise(function (resolve, reject) {
6689
              return new Promise(function (resolve, reject) {
6691
          for (var _i = 0, values_1 = values; _i < values_1.length; _i++) {
6690
                for (var i = 0, len = values.length; i < len; i++) {
6692
            var value = values_1[_i];
-
 
6693
            value.then(resolve, reject);
6691
                  values[i].then(resolve, reject);
6694
          }
6692
                }
6695
        });
6693
              });
6696
      };
6694
            };
-
 
6695
            Promise._immediateFn = typeof setImmediate === 'function' ? function (fn) {
-
 
6696
              setImmediate(fn);
-
 
6697
            } : function (fn) {
-
 
6698
              setTimeoutFunc(fn, 0);
6697
      return Promise;
6699
            };
-
 
6700
            Promise._unhandledRejectionFn = function _unhandledRejectionFn(err) {
-
 
6701
              if (typeof console !== 'undefined' && console) {
-
 
6702
                console.warn('Possible Unhandled Promise Rejection:', err);
-
 
6703
              }
-
 
6704
            };
-
 
6705
            Promise._setImmediateFn = function _setImmediateFn(fn) {
-
 
6706
              Promise._immediateFn = fn;
6698
    };
6707
            };
-
 
6708
            Promise._setUnhandledRejectionFn = function _setUnhandledRejectionFn(fn) {
-
 
6709
              Promise._unhandledRejectionFn = fn;
-
 
6710
            };
-
 
6711
            if (module.exports) {
-
 
6712
              module.exports = Promise;
-
 
6713
            } else if (!root.Promise) {
-
 
6714
              root.Promise = Promise;
-
 
6715
            }
-
 
6716
          }(commonjsGlobal));
-
 
6717
        }(promise));
-
 
6718
        var promisePolyfill = promise.exports;
-
 
6719
        var Global = function () {
-
 
6720
          if (typeof window !== 'undefined') {
-
 
6721
            return window;
-
 
6722
          } else {
-
 
6723
            return Function('return this;')();
-
 
6724
          }
-
 
6725
        }();
6699
    var Promise$2 = window.Promise ? window.Promise : promise();
6726
        var promisePolyfill_1 = { boltExport: Global.Promise || promisePolyfill };
-
 
6727
        return promisePolyfill_1;
-
 
6728
      }));
-
 
6729
    }(undefined, exports$1, module));
-
 
6730
    var Promise$1 = module.exports.boltExport;
6700
 
6731
 
6701
    var blobToDataUri = function (blob) {
6732
    var blobToDataUri = function (blob) {
6702
      return new Promise$2(function (resolve) {
6733
      return new Promise$1(function (resolve) {
6703
        var reader = new FileReader();
6734
        var reader = new FileReader();
6704
        reader.onloadend = function () {
6735
        reader.onloadend = function () {
6705
          resolve(reader.result);
6736
          resolve(reader.result);
6706
        };
6737
        };
6707
        reader.readAsDataURL(blob);
6738
        reader.readAsDataURL(blob);
Line 7907... Line 7938...
7907
      return subject;
7938
      return subject;
7908
    };
7939
    };
7909
 
7940
 
7910
    var getBehaviours = function (spec) {
7941
    var getBehaviours = function (spec) {
7911
      var behaviours = get$c(spec, 'behaviours').getOr({});
7942
      var behaviours = get$c(spec, 'behaviours').getOr({});
7912
      var keys$1 = filter$2(keys(behaviours), function (k) {
7943
      return bind$3(keys(behaviours), function (name) {
7913
        return behaviours[k] !== undefined;
7944
        var behaviour = behaviours[name];
7914
      });
-
 
7915
      return map$2(keys$1, function (k) {
-
 
7916
        return behaviours[k].me;
7945
        return isNonNullable(behaviour) ? [behaviour.me] : [];
7917
      });
7946
      });
7918
    };
7947
    };
7919
    var generateFrom = function (spec, all) {
7948
    var generateFrom = function (spec, all) {
7920
      return generateFrom$1(spec, all);
7949
      return generateFrom$1(spec, all);
7921
    };
7950
    };
Line 8101... Line 8130...
8101
            store: {
8130
            store: {
8102
              mode: 'memory',
8131
              mode: 'memory',
8103
              initialValue: detail.data
8132
              initialValue: detail.data
8104
            }
8133
            }
8105
          }),
8134
          }),
8106
          config('item-type-events', __spreadArray(__spreadArray([], pointerEvents()), [
8135
          config('item-type-events', __spreadArray(__spreadArray([], pointerEvents(), true), [
8107
            run(mouseover(), onHover),
8136
            run(mouseover(), onHover),
8108
            run(focusItem(), Focusing.focus)
8137
            run(focusItem(), Focusing.focus)
8109
          ]))
8138
          ], false))
8110
        ]),
8139
        ]),
8111
        components: detail.components,
8140
        components: detail.components,
8112
        eventOrder: detail.eventOrder
8141
        eventOrder: detail.eventOrder
8113
      };
8142
      };
8114
    };
8143
    };
Line 11247... Line 11276...
11247
      ], name$1(event.target)) && !closest(event.target, '[contenteditable="true"]');
11276
      ], name$1(event.target)) && !closest(event.target, '[contenteditable="true"]');
11248
    };
11277
    };
11249
    var isFirefox = function () {
11278
    var isFirefox = function () {
11250
      return detect$1().browser.isFirefox();
11279
      return detect$1().browser.isFirefox();
11251
    };
11280
    };
11252
    var settingsSchema = objOfOnly([
-
 
11253
      requiredFunction('triggerEvent'),
-
 
11254
      defaulted('stopBackspace', true)
-
 
11255
    ]);
-
 
11256
    var bindFocus = function (container, handler) {
11281
    var bindFocus = function (container, handler) {
11257
      if (isFirefox()) {
11282
      if (isFirefox()) {
11258
        return capture(container, 'focus', handler);
11283
        return capture(container, 'focus', handler);
11259
      } else {
11284
      } else {
11260
        return bind(container, 'focusin', handler);
11285
        return bind(container, 'focusin', handler);
Line 11266... Line 11291...
11266
      } else {
11291
      } else {
11267
        return bind(container, 'focusout', handler);
11292
        return bind(container, 'focusout', handler);
11268
      }
11293
      }
11269
    };
11294
    };
11270
    var setup$1 = function (container, rawSettings) {
11295
    var setup$1 = function (container, rawSettings) {
11271
      var settings = asRawOrDie$1('Getting GUI events settings', settingsSchema, rawSettings);
11296
      var settings = __assign({ stopBackspace: true }, rawSettings);
11272
      var pointerEvents = [
11297
      var pointerEvents = [
11273
        'touchstart',
11298
        'touchstart',
11274
        'touchmove',
11299
        'touchmove',
11275
        'touchend',
11300
        'touchend',
11276
        'touchcancel',
11301
        'touchcancel',
Line 11328... Line 11353...
11328
      });
11353
      });
11329
      var onKeydown = bind(container, 'keydown', function (event) {
11354
      var onKeydown = bind(container, 'keydown', function (event) {
11330
        var stopped = settings.triggerEvent('keydown', event);
11355
        var stopped = settings.triggerEvent('keydown', event);
11331
        if (stopped) {
11356
        if (stopped) {
11332
          event.kill();
11357
          event.kill();
11333
        } else if (settings.stopBackspace === true && isDangerous(event)) {
11358
        } else if (settings.stopBackspace && isDangerous(event)) {
11334
          event.prevent();
11359
          event.prevent();
11335
        }
11360
        }
11336
      });
11361
      });
11337
      var onFocusIn = bindFocus(container, function (event) {
11362
      var onFocusIn = bindFocus(container, function (event) {
11338
        var stopped = settings.triggerEvent('focusin', event);
11363
        var stopped = settings.triggerEvent('focusin', event);
Line 11482... Line 11507...
11482
          handlers[id] = curryArgs(v, extraArgs);
11507
          handlers[id] = curryArgs(v, extraArgs);
11483
          registry[k] = handlers;
11508
          registry[k] = handlers;
11484
        });
11509
        });
11485
      };
11510
      };
11486
      var findHandler = function (handlers, elem) {
11511
      var findHandler = function (handlers, elem) {
11487
        return read(elem).fold(function () {
11512
        return read(elem).bind(function (id) {
11488
          return Optional.none();
-
 
11489
        }, function (id) {
-
 
11490
          return handlers.bind(function (h) {
-
 
11491
            return get$c(h, id);
11513
          return get$c(handlers, id);
11492
          }).map(function (descHandler) {
11514
        }).map(function (descHandler) {
11493
            return eventHandler(elem, descHandler);
11515
          return eventHandler(elem, descHandler);
11494
          });
11516
        });
11495
        });
-
 
11496
      };
11517
      };
11497
      var filterByType = function (type) {
11518
      var filterByType = function (type) {
11498
        return get$c(registry, type).map(function (handlers) {
11519
        return get$c(registry, type).map(function (handlers) {
11499
          return mapToArray(handlers, function (f, id) {
11520
          return mapToArray(handlers, function (f, id) {
11500
            return broadcastHandler(id, f);
11521
            return broadcastHandler(id, f);
11501
          });
11522
          });
11502
        }).getOr([]);
11523
        }).getOr([]);
11503
      };
11524
      };
11504
      var find = function (isAboveRoot, type, target) {
11525
      var find = function (isAboveRoot, type, target) {
11505
        var handlers = get$c(registry, type);
11526
        return get$c(registry, type).bind(function (handlers) {
11506
        return closest$3(target, function (elem) {
11527
          return closest$3(target, function (elem) {
11507
          return findHandler(handlers, elem);
11528
            return findHandler(handlers, elem);
11508
        }, isAboveRoot);
11529
          }, isAboveRoot);
-
 
11530
        });
11509
      };
11531
      };
11510
      var unregisterId = function (id) {
11532
      var unregisterId = function (id) {
11511
        each(registry, function (handlersById, _eventName) {
11533
        each(registry, function (handlersById, _eventName) {
11512
          if (has$2(handlersById, id)) {
11534
          if (has$2(handlersById, id)) {
11513
            delete handlersById[id];
11535
            delete handlersById[id];
Line 12008... Line 12030...
12008
        destroy: destroy,
12030
        destroy: destroy,
12009
        clear: clear
12031
        clear: clear
12010
      };
12032
      };
12011
    }
12033
    }
12012
 
12034
 
12013
    var exports$1 = {}, module = { exports: exports$1 };
-
 
12014
    (function (define, exports, module, require) {
-
 
12015
      (function (f) {
-
 
12016
        if (typeof exports === 'object' && typeof module !== 'undefined') {
-
 
12017
          module.exports = f();
-
 
12018
        } else if (typeof define === 'function' && define.amd) {
-
 
12019
          define([], f);
-
 
12020
        } else {
-
 
12021
          var g;
-
 
12022
          if (typeof window !== 'undefined') {
-
 
12023
            g = window;
-
 
12024
          } else if (typeof global !== 'undefined') {
-
 
12025
            g = global;
-
 
12026
          } else if (typeof self !== 'undefined') {
-
 
12027
            g = self;
-
 
12028
          } else {
-
 
12029
            g = this;
-
 
12030
          }
-
 
12031
          g.EphoxContactWrapper = f();
-
 
12032
        }
-
 
12033
      }(function () {
-
 
12034
        return function () {
-
 
12035
          function r(e, n, t) {
-
 
12036
            function o(i, f) {
-
 
12037
              if (!n[i]) {
-
 
12038
                if (!e[i]) {
-
 
12039
                  var c = 'function' == typeof require && require;
-
 
12040
                  if (!f && c)
-
 
12041
                    return c(i, !0);
-
 
12042
                  if (u)
-
 
12043
                    return u(i, !0);
-
 
12044
                  var a = new Error('Cannot find module \'' + i + '\'');
-
 
12045
                  throw a.code = 'MODULE_NOT_FOUND', a;
-
 
12046
                }
-
 
12047
                var p = n[i] = { exports: {} };
-
 
12048
                e[i][0].call(p.exports, function (r) {
-
 
12049
                  var n = e[i][1][r];
-
 
12050
                  return o(n || r);
-
 
12051
                }, p, p.exports, r, e, n, t);
-
 
12052
              }
-
 
12053
              return n[i].exports;
-
 
12054
            }
-
 
12055
            for (var u = 'function' == typeof require && require, i = 0; i < t.length; i++)
-
 
12056
              o(t[i]);
-
 
12057
            return o;
-
 
12058
          }
-
 
12059
          return r;
-
 
12060
        }()({
-
 
12061
          1: [
-
 
12062
            function (require, module, exports) {
-
 
12063
              var process = module.exports = {};
-
 
12064
              var cachedSetTimeout;
-
 
12065
              var cachedClearTimeout;
-
 
12066
              function defaultSetTimout() {
-
 
12067
                throw new Error('setTimeout has not been defined');
-
 
12068
              }
-
 
12069
              function defaultClearTimeout() {
-
 
12070
                throw new Error('clearTimeout has not been defined');
-
 
12071
              }
-
 
12072
              (function () {
-
 
12073
                try {
-
 
12074
                  if (typeof setTimeout === 'function') {
-
 
12075
                    cachedSetTimeout = setTimeout;
-
 
12076
                  } else {
-
 
12077
                    cachedSetTimeout = defaultSetTimout;
-
 
12078
                  }
-
 
12079
                } catch (e) {
-
 
12080
                  cachedSetTimeout = defaultSetTimout;
-
 
12081
                }
-
 
12082
                try {
-
 
12083
                  if (typeof clearTimeout === 'function') {
-
 
12084
                    cachedClearTimeout = clearTimeout;
-
 
12085
                  } else {
-
 
12086
                    cachedClearTimeout = defaultClearTimeout;
-
 
12087
                  }
-
 
12088
                } catch (e) {
-
 
12089
                  cachedClearTimeout = defaultClearTimeout;
-
 
12090
                }
-
 
12091
              }());
-
 
12092
              function runTimeout(fun) {
-
 
12093
                if (cachedSetTimeout === setTimeout) {
-
 
12094
                  return setTimeout(fun, 0);
-
 
12095
                }
-
 
12096
                if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
-
 
12097
                  cachedSetTimeout = setTimeout;
-
 
12098
                  return setTimeout(fun, 0);
-
 
12099
                }
-
 
12100
                try {
-
 
12101
                  return cachedSetTimeout(fun, 0);
-
 
12102
                } catch (e) {
-
 
12103
                  try {
-
 
12104
                    return cachedSetTimeout.call(null, fun, 0);
-
 
12105
                  } catch (e) {
-
 
12106
                    return cachedSetTimeout.call(this, fun, 0);
-
 
12107
                  }
-
 
12108
                }
-
 
12109
              }
-
 
12110
              function runClearTimeout(marker) {
-
 
12111
                if (cachedClearTimeout === clearTimeout) {
-
 
12112
                  return clearTimeout(marker);
-
 
12113
                }
-
 
12114
                if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
-
 
12115
                  cachedClearTimeout = clearTimeout;
-
 
12116
                  return clearTimeout(marker);
-
 
12117
                }
-
 
12118
                try {
-
 
12119
                  return cachedClearTimeout(marker);
-
 
12120
                } catch (e) {
-
 
12121
                  try {
-
 
12122
                    return cachedClearTimeout.call(null, marker);
-
 
12123
                  } catch (e) {
-
 
12124
                    return cachedClearTimeout.call(this, marker);
-
 
12125
                  }
-
 
12126
                }
-
 
12127
              }
-
 
12128
              var queue = [];
-
 
12129
              var draining = false;
-
 
12130
              var currentQueue;
-
 
12131
              var queueIndex = -1;
-
 
12132
              function cleanUpNextTick() {
-
 
12133
                if (!draining || !currentQueue) {
-
 
12134
                  return;
-
 
12135
                }
-
 
12136
                draining = false;
-
 
12137
                if (currentQueue.length) {
-
 
12138
                  queue = currentQueue.concat(queue);
-
 
12139
                } else {
-
 
12140
                  queueIndex = -1;
-
 
12141
                }
-
 
12142
                if (queue.length) {
-
 
12143
                  drainQueue();
-
 
12144
                }
-
 
12145
              }
-
 
12146
              function drainQueue() {
-
 
12147
                if (draining) {
-
 
12148
                  return;
-
 
12149
                }
-
 
12150
                var timeout = runTimeout(cleanUpNextTick);
-
 
12151
                draining = true;
-
 
12152
                var len = queue.length;
-
 
12153
                while (len) {
-
 
12154
                  currentQueue = queue;
-
 
12155
                  queue = [];
-
 
12156
                  while (++queueIndex < len) {
-
 
12157
                    if (currentQueue) {
-
 
12158
                      currentQueue[queueIndex].run();
-
 
12159
                    }
-
 
12160
                  }
-
 
12161
                  queueIndex = -1;
-
 
12162
                  len = queue.length;
-
 
12163
                }
-
 
12164
                currentQueue = null;
-
 
12165
                draining = false;
-
 
12166
                runClearTimeout(timeout);
-
 
12167
              }
-
 
12168
              process.nextTick = function (fun) {
-
 
12169
                var args = new Array(arguments.length - 1);
-
 
12170
                if (arguments.length > 1) {
-
 
12171
                  for (var i = 1; i < arguments.length; i++) {
-
 
12172
                    args[i - 1] = arguments[i];
-
 
12173
                  }
-
 
12174
                }
-
 
12175
                queue.push(new Item(fun, args));
-
 
12176
                if (queue.length === 1 && !draining) {
-
 
12177
                  runTimeout(drainQueue);
-
 
12178
                }
-
 
12179
              };
-
 
12180
              function Item(fun, array) {
-
 
12181
                this.fun = fun;
-
 
12182
                this.array = array;
-
 
12183
              }
-
 
12184
              Item.prototype.run = function () {
-
 
12185
                this.fun.apply(null, this.array);
-
 
12186
              };
-
 
12187
              process.title = 'browser';
-
 
12188
              process.browser = true;
-
 
12189
              process.env = {};
-
 
12190
              process.argv = [];
-
 
12191
              process.version = '';
-
 
12192
              process.versions = {};
-
 
12193
              function noop() {
-
 
12194
              }
-
 
12195
              process.on = noop;
-
 
12196
              process.addListener = noop;
-
 
12197
              process.once = noop;
-
 
12198
              process.off = noop;
-
 
12199
              process.removeListener = noop;
-
 
12200
              process.removeAllListeners = noop;
-
 
12201
              process.emit = noop;
-
 
12202
              process.prependListener = noop;
-
 
12203
              process.prependOnceListener = noop;
-
 
12204
              process.listeners = function (name) {
-
 
12205
                return [];
-
 
12206
              };
-
 
12207
              process.binding = function (name) {
-
 
12208
                throw new Error('process.binding is not supported');
-
 
12209
              };
-
 
12210
              process.cwd = function () {
-
 
12211
                return '/';
-
 
12212
              };
-
 
12213
              process.chdir = function (dir) {
-
 
12214
                throw new Error('process.chdir is not supported');
-
 
12215
              };
-
 
12216
              process.umask = function () {
-
 
12217
                return 0;
-
 
12218
              };
-
 
12219
            },
-
 
12220
            {}
-
 
12221
          ],
-
 
12222
          2: [
-
 
12223
            function (require, module, exports) {
-
 
12224
              (function (setImmediate) {
-
 
12225
                (function (root) {
-
 
12226
                  var setTimeoutFunc = setTimeout;
-
 
12227
                  function noop() {
-
 
12228
                  }
-
 
12229
                  function bind(fn, thisArg) {
-
 
12230
                    return function () {
-
 
12231
                      fn.apply(thisArg, arguments);
-
 
12232
                    };
-
 
12233
                  }
-
 
12234
                  function Promise(fn) {
-
 
12235
                    if (typeof this !== 'object')
-
 
12236
                      throw new TypeError('Promises must be constructed via new');
-
 
12237
                    if (typeof fn !== 'function')
-
 
12238
                      throw new TypeError('not a function');
-
 
12239
                    this._state = 0;
-
 
12240
                    this._handled = false;
-
 
12241
                    this._value = undefined;
-
 
12242
                    this._deferreds = [];
-
 
12243
                    doResolve(fn, this);
-
 
12244
                  }
-
 
12245
                  function handle(self, deferred) {
-
 
12246
                    while (self._state === 3) {
-
 
12247
                      self = self._value;
-
 
12248
                    }
-
 
12249
                    if (self._state === 0) {
-
 
12250
                      self._deferreds.push(deferred);
-
 
12251
                      return;
-
 
12252
                    }
-
 
12253
                    self._handled = true;
-
 
12254
                    Promise._immediateFn(function () {
-
 
12255
                      var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;
-
 
12256
                      if (cb === null) {
-
 
12257
                        (self._state === 1 ? resolve : reject)(deferred.promise, self._value);
-
 
12258
                        return;
-
 
12259
                      }
-
 
12260
                      var ret;
-
 
12261
                      try {
-
 
12262
                        ret = cb(self._value);
-
 
12263
                      } catch (e) {
-
 
12264
                        reject(deferred.promise, e);
-
 
12265
                        return;
-
 
12266
                      }
-
 
12267
                      resolve(deferred.promise, ret);
-
 
12268
                    });
-
 
12269
                  }
-
 
12270
                  function resolve(self, newValue) {
-
 
12271
                    try {
-
 
12272
                      if (newValue === self)
-
 
12273
                        throw new TypeError('A promise cannot be resolved with itself.');
-
 
12274
                      if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
-
 
12275
                        var then = newValue.then;
-
 
12276
                        if (newValue instanceof Promise) {
-
 
12277
                          self._state = 3;
-
 
12278
                          self._value = newValue;
-
 
12279
                          finale(self);
-
 
12280
                          return;
-
 
12281
                        } else if (typeof then === 'function') {
-
 
12282
                          doResolve(bind(then, newValue), self);
-
 
12283
                          return;
-
 
12284
                        }
-
 
12285
                      }
-
 
12286
                      self._state = 1;
-
 
12287
                      self._value = newValue;
-
 
12288
                      finale(self);
-
 
12289
                    } catch (e) {
-
 
12290
                      reject(self, e);
-
 
12291
                    }
-
 
12292
                  }
-
 
12293
                  function reject(self, newValue) {
-
 
12294
                    self._state = 2;
-
 
12295
                    self._value = newValue;
-
 
12296
                    finale(self);
-
 
12297
                  }
-
 
12298
                  function finale(self) {
-
 
12299
                    if (self._state === 2 && self._deferreds.length === 0) {
-
 
12300
                      Promise._immediateFn(function () {
-
 
12301
                        if (!self._handled) {
-
 
12302
                          Promise._unhandledRejectionFn(self._value);
-
 
12303
                        }
-
 
12304
                      });
-
 
12305
                    }
-
 
12306
                    for (var i = 0, len = self._deferreds.length; i < len; i++) {
-
 
12307
                      handle(self, self._deferreds[i]);
-
 
12308
                    }
-
 
12309
                    self._deferreds = null;
-
 
12310
                  }
-
 
12311
                  function Handler(onFulfilled, onRejected, promise) {
-
 
12312
                    this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
-
 
12313
                    this.onRejected = typeof onRejected === 'function' ? onRejected : null;
-
 
12314
                    this.promise = promise;
-
 
12315
                  }
-
 
12316
                  function doResolve(fn, self) {
-
 
12317
                    var done = false;
-
 
12318
                    try {
-
 
12319
                      fn(function (value) {
-
 
12320
                        if (done)
-
 
12321
                          return;
-
 
12322
                        done = true;
-
 
12323
                        resolve(self, value);
-
 
12324
                      }, function (reason) {
-
 
12325
                        if (done)
-
 
12326
                          return;
-
 
12327
                        done = true;
-
 
12328
                        reject(self, reason);
-
 
12329
                      });
-
 
12330
                    } catch (ex) {
-
 
12331
                      if (done)
-
 
12332
                        return;
-
 
12333
                      done = true;
-
 
12334
                      reject(self, ex);
-
 
12335
                    }
-
 
12336
                  }
-
 
12337
                  Promise.prototype['catch'] = function (onRejected) {
-
 
12338
                    return this.then(null, onRejected);
-
 
12339
                  };
-
 
12340
                  Promise.prototype.then = function (onFulfilled, onRejected) {
-
 
12341
                    var prom = new this.constructor(noop);
-
 
12342
                    handle(this, new Handler(onFulfilled, onRejected, prom));
-
 
12343
                    return prom;
-
 
12344
                  };
-
 
12345
                  Promise.all = function (arr) {
-
 
12346
                    var args = Array.prototype.slice.call(arr);
-
 
12347
                    return new Promise(function (resolve, reject) {
-
 
12348
                      if (args.length === 0)
-
 
12349
                        return resolve([]);
-
 
12350
                      var remaining = args.length;
-
 
12351
                      function res(i, val) {
-
 
12352
                        try {
-
 
12353
                          if (val && (typeof val === 'object' || typeof val === 'function')) {
-
 
12354
                            var then = val.then;
-
 
12355
                            if (typeof then === 'function') {
-
 
12356
                              then.call(val, function (val) {
-
 
12357
                                res(i, val);
-
 
12358
                              }, reject);
-
 
12359
                              return;
-
 
12360
                            }
-
 
12361
                          }
-
 
12362
                          args[i] = val;
-
 
12363
                          if (--remaining === 0) {
-
 
12364
                            resolve(args);
-
 
12365
                          }
-
 
12366
                        } catch (ex) {
-
 
12367
                          reject(ex);
-
 
12368
                        }
-
 
12369
                      }
-
 
12370
                      for (var i = 0; i < args.length; i++) {
-
 
12371
                        res(i, args[i]);
-
 
12372
                      }
-
 
12373
                    });
-
 
12374
                  };
-
 
12375
                  Promise.resolve = function (value) {
-
 
12376
                    if (value && typeof value === 'object' && value.constructor === Promise) {
-
 
12377
                      return value;
-
 
12378
                    }
-
 
12379
                    return new Promise(function (resolve) {
-
 
12380
                      resolve(value);
-
 
12381
                    });
-
 
12382
                  };
-
 
12383
                  Promise.reject = function (value) {
-
 
12384
                    return new Promise(function (resolve, reject) {
-
 
12385
                      reject(value);
-
 
12386
                    });
-
 
12387
                  };
-
 
12388
                  Promise.race = function (values) {
-
 
12389
                    return new Promise(function (resolve, reject) {
-
 
12390
                      for (var i = 0, len = values.length; i < len; i++) {
-
 
12391
                        values[i].then(resolve, reject);
-
 
12392
                      }
-
 
12393
                    });
-
 
12394
                  };
-
 
12395
                  Promise._immediateFn = typeof setImmediate === 'function' ? function (fn) {
-
 
12396
                    setImmediate(fn);
-
 
12397
                  } : function (fn) {
-
 
12398
                    setTimeoutFunc(fn, 0);
-
 
12399
                  };
-
 
12400
                  Promise._unhandledRejectionFn = function _unhandledRejectionFn(err) {
-
 
12401
                    if (typeof console !== 'undefined' && console) {
-
 
12402
                      console.warn('Possible Unhandled Promise Rejection:', err);
-
 
12403
                    }
-
 
12404
                  };
-
 
12405
                  Promise._setImmediateFn = function _setImmediateFn(fn) {
-
 
12406
                    Promise._immediateFn = fn;
-
 
12407
                  };
-
 
12408
                  Promise._setUnhandledRejectionFn = function _setUnhandledRejectionFn(fn) {
-
 
12409
                    Promise._unhandledRejectionFn = fn;
-
 
12410
                  };
-
 
12411
                  if (typeof module !== 'undefined' && module.exports) {
-
 
12412
                    module.exports = Promise;
-
 
12413
                  } else if (!root.Promise) {
-
 
12414
                    root.Promise = Promise;
-
 
12415
                  }
-
 
12416
                }(this));
-
 
12417
              }.call(this, require('timers').setImmediate));
-
 
12418
            },
-
 
12419
            { 'timers': 3 }
-
 
12420
          ],
-
 
12421
          3: [
-
 
12422
            function (require, module, exports) {
-
 
12423
              (function (setImmediate, clearImmediate) {
-
 
12424
                var nextTick = require('process/browser.js').nextTick;
-
 
12425
                var apply = Function.prototype.apply;
-
 
12426
                var slice = Array.prototype.slice;
-
 
12427
                var immediateIds = {};
-
 
12428
                var nextImmediateId = 0;
-
 
12429
                exports.setTimeout = function () {
-
 
12430
                  return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);
-
 
12431
                };
-
 
12432
                exports.setInterval = function () {
-
 
12433
                  return new Timeout(apply.call(setInterval, window, arguments), clearInterval);
-
 
12434
                };
-
 
12435
                exports.clearTimeout = exports.clearInterval = function (timeout) {
-
 
12436
                  timeout.close();
-
 
12437
                };
-
 
12438
                function Timeout(id, clearFn) {
-
 
12439
                  this._id = id;
-
 
12440
                  this._clearFn = clearFn;
-
 
12441
                }
-
 
12442
                Timeout.prototype.unref = Timeout.prototype.ref = function () {
-
 
12443
                };
-
 
12444
                Timeout.prototype.close = function () {
-
 
12445
                  this._clearFn.call(window, this._id);
-
 
12446
                };
-
 
12447
                exports.enroll = function (item, msecs) {
-
 
12448
                  clearTimeout(item._idleTimeoutId);
-
 
12449
                  item._idleTimeout = msecs;
-
 
12450
                };
-
 
12451
                exports.unenroll = function (item) {
-
 
12452
                  clearTimeout(item._idleTimeoutId);
-
 
12453
                  item._idleTimeout = -1;
-
 
12454
                };
-
 
12455
                exports._unrefActive = exports.active = function (item) {
-
 
12456
                  clearTimeout(item._idleTimeoutId);
-
 
12457
                  var msecs = item._idleTimeout;
-
 
12458
                  if (msecs >= 0) {
-
 
12459
                    item._idleTimeoutId = setTimeout(function onTimeout() {
-
 
12460
                      if (item._onTimeout)
-
 
12461
                        item._onTimeout();
-
 
12462
                    }, msecs);
-
 
12463
                  }
-
 
12464
                };
-
 
12465
                exports.setImmediate = typeof setImmediate === 'function' ? setImmediate : function (fn) {
-
 
12466
                  var id = nextImmediateId++;
-
 
12467
                  var args = arguments.length < 2 ? false : slice.call(arguments, 1);
-
 
12468
                  immediateIds[id] = true;
-
 
12469
                  nextTick(function onNextTick() {
-
 
12470
                    if (immediateIds[id]) {
-
 
12471
                      if (args) {
-
 
12472
                        fn.apply(null, args);
-
 
12473
                      } else {
-
 
12474
                        fn.call(null);
-
 
12475
                      }
-
 
12476
                      exports.clearImmediate(id);
-
 
12477
                    }
-
 
12478
                  });
-
 
12479
                  return id;
-
 
12480
                };
-
 
12481
                exports.clearImmediate = typeof clearImmediate === 'function' ? clearImmediate : function (id) {
-
 
12482
                  delete immediateIds[id];
-
 
12483
                };
-
 
12484
              }.call(this, require('timers').setImmediate, require('timers').clearImmediate));
-
 
12485
            },
-
 
12486
            {
-
 
12487
              'process/browser.js': 1,
-
 
12488
              'timers': 3
-
 
12489
            }
-
 
12490
          ],
-
 
12491
          4: [
-
 
12492
            function (require, module, exports) {
-
 
12493
              var promisePolyfill = require('promise-polyfill');
-
 
12494
              var Global = function () {
-
 
12495
                if (typeof window !== 'undefined') {
-
 
12496
                  return window;
-
 
12497
                } else {
-
 
12498
                  return Function('return this;')();
-
 
12499
                }
-
 
12500
              }();
-
 
12501
              module.exports = { boltExport: Global.Promise || promisePolyfill };
-
 
12502
            },
-
 
12503
            { 'promise-polyfill': 2 }
-
 
12504
          ]
-
 
12505
        }, {}, [4])(4);
-
 
12506
      }));
-
 
12507
    }(undefined, exports$1, module, undefined));
-
 
12508
    var Promise$1 = module.exports.boltExport;
-
 
12509
 
-
 
12510
    var nu$1 = function (baseFn) {
12035
    var nu$1 = function (baseFn) {
12511
      var data = Optional.none();
12036
      var data = Optional.none();
12512
      var callbacks = [];
12037
      var callbacks = [];
12513
      var map = function (f) {
12038
      var map = function (f) {
12514
        return nu$1(function (nCallback) {
12039
        return nu$1(function (nCallback) {