unpoly-rails 3.7.0.1 → 3.7.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e78bb387b4d678644e4597f7cac513bf19ace64c617ed8f9d22ee878740f85a2
4
- data.tar.gz: 332069933d83231665d3402a340cf38deadea1aa74240c84598f3e301a0be194
3
+ metadata.gz: 97f7900161912597e3c72a6bbc352e9b2029787a30598d695aafd7aa0087386a
4
+ data.tar.gz: 94f3822ae12651165ce9b17eb2b2831c54f72514603ca29ca2a34395c7b68170
5
5
  SHA512:
6
- metadata.gz: 4a501540a1e8cdbc1ae15b9126ffd1e12d8e933282152858ded7a64940fc836fdcba04d08257b8c279698de5befd9d6f96a43f23102fe3b1f9ad2b9280a45523
7
- data.tar.gz: 5e97ecf104214fcac0982d17f5a8966f45337d5f8cf17341219bec9a996ce86da0e45bec1470a2d8fa5b950c9cd813c58433e613389a67cd571615565c1200d5
6
+ metadata.gz: 5b171287414f24deb0e0b9b8f4f7704f4c548efe351893e4cb433bd449abc366cf341a4b006b3db0d4258f5aabdc6313c8adeccad38a768708ca1619d70c3861
7
+ data.tar.gz: 9e7e704439f679ffc6a35cb46408f1dbd7c34bf55cc915cfa2033233c006c6c0fc075c715be83378cd8409728269913918903cf35124638bb9d558fac42a82f9
@@ -5,7 +5,7 @@
5
5
  /***/ (() => {
6
6
 
7
7
  window.up = {
8
- version: '3.7.0'
8
+ version: '3.7.2'
9
9
  };
10
10
 
11
11
 
@@ -2003,9 +2003,6 @@ up.RenderJob = (_a = class RenderJob {
2003
2003
  this._rendered = this._executePromise();
2004
2004
  return this;
2005
2005
  }
2006
- getPreflightFragments() {
2007
- return this._getChange().getPreflightProps().fragments;
2008
- }
2009
2006
  _executePromise() {
2010
2007
  return __awaiter(this, void 0, void 0, function* () {
2011
2008
  try {
@@ -3704,9 +3701,7 @@ up.FieldWatcher = class FieldWatcher {
3704
3701
  if (target !== this._root)
3705
3702
  this._watchFieldsWithin(target);
3706
3703
  });
3707
- for (let abortableElement of this._abortableElements()) {
3708
- this._unbindFns.push(up.fragment.onAborted(abortableElement, () => this._abort()));
3709
- }
3704
+ this._unbindFns.push(up.fragment.onAborted(this._scope, () => this._abort()));
3710
3705
  this._unbindFns.push(up.on(this._scope, 'reset', () => this._onFormReset()));
3711
3706
  }
3712
3707
  stop() {
@@ -3718,15 +3713,6 @@ up.FieldWatcher = class FieldWatcher {
3718
3713
  let rootOptions = u.copy(this._options);
3719
3714
  return up.form.watchOptions(field, rootOptions, { defaults: { event: 'input' } });
3720
3715
  }
3721
- _abortableElements() {
3722
- var _a;
3723
- if (this._abortable === false) {
3724
- return [];
3725
- }
3726
- else {
3727
- return u.wrapList((_a = this._abortable) !== null && _a !== void 0 ? _a : this._scope);
3728
- }
3729
- }
3730
3716
  _watchFieldsWithin(container) {
3731
3717
  for (let field of up.form.fields(container)) {
3732
3718
  this._watchField(field);
@@ -3740,11 +3726,12 @@ up.FieldWatcher = class FieldWatcher {
3740
3726
  this._scheduledValues = null;
3741
3727
  }
3742
3728
  _scheduleValues(values, fieldOptions) {
3743
- clearTimeout(this._currentTimer);
3744
3729
  this._scheduledValues = values;
3730
+ this._scheduledFieldOptions = fieldOptions;
3745
3731
  let delay = fieldOptions.delay || 0;
3732
+ clearTimeout(this._currentTimer);
3746
3733
  this._currentTimer = u.timer(delay, () => {
3747
- this._scheduledFieldOptions = fieldOptions;
3734
+ this._currentTimer = null;
3748
3735
  this._requestCallback();
3749
3736
  });
3750
3737
  }
@@ -3757,6 +3744,8 @@ up.FieldWatcher = class FieldWatcher {
3757
3744
  return;
3758
3745
  if (this._callbackRunning)
3759
3746
  return;
3747
+ if (this._currentTimer)
3748
+ return;
3760
3749
  if (!this._scope.isConnected)
3761
3750
  return;
3762
3751
  let fieldOptions = this._scheduledFieldOptions;
@@ -3852,10 +3841,14 @@ up.FormValidator = class FormValidator {
3852
3841
  this._honorAbort();
3853
3842
  }
3854
3843
  _honorAbort() {
3855
- up.fragment.onAborted(this._form, { around: true }, ({ target }) => this._unscheduleSolutionsWithin(target));
3844
+ up.fragment.onAborted(this._form, (event) => this._onAborted(event));
3856
3845
  }
3857
- _unscheduleSolutionsWithin(container) {
3858
- this._dirtySolutions = u.reject(this._dirtySolutions, ({ element }) => container.contains(element));
3846
+ _onAborted(event) {
3847
+ if (this._dirtySolutions.length) {
3848
+ this._dirtySolutions = [];
3849
+ this._nextRenderPromise.reject(new up.Aborted(event.reason));
3850
+ this._resetNextRenderPromise();
3851
+ }
3859
3852
  }
3860
3853
  _resetNextRenderPromise() {
3861
3854
  this._nextRenderPromise = u.newDeferred();
@@ -3937,11 +3930,11 @@ up.FormValidator = class FormValidator {
3937
3930
  _scheduleNextRender() {
3938
3931
  let solutionDelays = this._dirtySolutions.map((solution) => solution.renderOptions.delay);
3939
3932
  let shortestDelay = Math.min(...solutionDelays) || 0;
3940
- this._unscheduleNextRender();
3941
- this._nextRenderTimer = u.timer(shortestDelay, () => this._renderDirtySolutions());
3942
- }
3943
- _unscheduleNextRender() {
3944
3933
  clearTimeout(this._nextRenderTimer);
3934
+ this._nextRenderTimer = u.timer(shortestDelay, () => {
3935
+ this._nextRenderTimer = null;
3936
+ this._renderDirtySolutions();
3937
+ });
3945
3938
  }
3946
3939
  _renderDirtySolutions() {
3947
3940
  up.error.muteUncriticalRejection(this._doRenderDirtySolutions());
@@ -3949,10 +3942,12 @@ up.FormValidator = class FormValidator {
3949
3942
  _doRenderDirtySolutions() {
3950
3943
  var _a;
3951
3944
  return __awaiter(this, void 0, void 0, function* () {
3952
- this._dirtySolutions = u.filter(this._dirtySolutions, ({ element, origin }) => up.fragment.isAlive(element) && up.fragment.isAlive(origin));
3953
- if (!this._dirtySolutions.length || this._rendering) {
3945
+ if (!this._dirtySolutions.length)
3946
+ return;
3947
+ if (this._rendering)
3948
+ return;
3949
+ if (this._nextRenderTimer)
3954
3950
  return;
3955
- }
3956
3951
  let dirtySolutions = this._dirtySolutions;
3957
3952
  this._dirtySolutions = [];
3958
3953
  let dirtyOrigins = u.map(dirtySolutions, 'origin');
@@ -3966,6 +3961,7 @@ up.FormValidator = class FormValidator {
3966
3961
  options.origin = this._form;
3967
3962
  (_a = options.focus) !== null && _a !== void 0 ? _a : (options.focus = 'keep');
3968
3963
  options.failOptions = false;
3964
+ options.defaultMaybe = true;
3969
3965
  options.params = up.Params.merge(options.params, ...u.map(dirtyRenderOptionsList, 'params'));
3970
3966
  options.headers = u.merge(...u.map(dirtyRenderOptionsList, 'headers'));
3971
3967
  this._addValidateHeader(options.headers, dirtyNames);
@@ -8678,14 +8674,16 @@ up.fragment = (function () {
8678
8674
  return u.parseTokens(target, { separator: 'comma' });
8679
8675
  }
8680
8676
  function parseTargetSteps(target, options = {}) {
8677
+ var _a;
8681
8678
  let defaultPlacement = options.defaultPlacement || 'swap';
8679
+ let defaultMaybe = (_a = options.defaultMaybe) !== null && _a !== void 0 ? _a : false;
8682
8680
  let steps = [];
8683
8681
  let simpleSelectors = splitTarget(target);
8684
8682
  for (let selector of simpleSelectors) {
8685
8683
  if (selector === ':none')
8686
8684
  continue;
8687
8685
  let placement = defaultPlacement;
8688
- let maybe = false;
8686
+ let maybe = defaultMaybe;
8689
8687
  selector = selector.replace(/\b::?(before|after)\b/, (_match, customPlacement) => {
8690
8688
  placement = customPlacement;
8691
8689
  return '';
@@ -8725,8 +8723,8 @@ up.fragment = (function () {
8725
8723
  return request.fromCache && u.evalAutoOption(options.revalidate, config.autoRevalidate, response);
8726
8724
  }
8727
8725
  function targetForSteps(steps) {
8728
- let requiredSteps = u.reject(steps, 'maybe');
8729
- let selectors = u.map(requiredSteps, 'selector');
8726
+ let bestSteps = steps.filter((step) => { var _a; return !step.maybe || ((_a = step.oldElement) === null || _a === void 0 ? void 0 : _a.isConnected); });
8727
+ let selectors = u.map(bestSteps, 'selector');
8730
8728
  return selectors.join(', ') || ':none';
8731
8729
  }
8732
8730
  function isContainedByRivalStep(steps, candidateStep) {
@@ -8762,13 +8760,11 @@ up.fragment = (function () {
8762
8760
  let testFnWithAbortable = (request) => request.abortable && testFn(request);
8763
8761
  up.network.abort(testFnWithAbortable, Object.assign(Object.assign({}, options), { reason }));
8764
8762
  for (let element of elements) {
8765
- up.emit(element, 'up:fragment:aborted', { newLayer, log: false });
8763
+ up.emit(element, 'up:fragment:aborted', { reason, newLayer, log: false });
8766
8764
  }
8767
8765
  }
8768
- function onAborted(fragment, ...args) {
8769
- let callback = u.extractCallback(args);
8770
- let options = u.extractOptions(args);
8771
- let guard = (event) => event.target.contains(fragment) || (options.around && fragment.contains(event.target));
8766
+ function onAborted(fragment, callback) {
8767
+ let guard = (event) => event.target.contains(fragment);
8772
8768
  let unsubscribe = up.on('up:fragment:aborted', { guard }, callback);
8773
8769
  up.destructor(fragment, unsubscribe);
8774
8770
  return unsubscribe;
@@ -10182,11 +10178,8 @@ up.form = (function () {
10182
10178
  return config.selector('submitButtonSelectors');
10183
10179
  }
10184
10180
  const submit = up.mockable((form, options) => {
10185
- return buildSubmitJob(form, options).execute();
10181
+ return up.render(submitOptions(form, options));
10186
10182
  });
10187
- function buildSubmitJob(form, options) {
10188
- return new up.RenderJob(submitOptions(form, options));
10189
- }
10190
10183
  function submitOptions(form, options, parserOptions) {
10191
10184
  form = getForm(form);
10192
10185
  options = u.options(options);
@@ -10203,9 +10196,6 @@ up.form = (function () {
10203
10196
  parser.include(up.link.followOptions);
10204
10197
  return options;
10205
10198
  }
10206
- function getPreflightFragments(form) {
10207
- return buildSubmitJob(form).getPreflightFragments();
10208
- }
10209
10199
  function watchOptions(field, options, parserOptions = {}) {
10210
10200
  var _a;
10211
10201
  options = u.options(options);
@@ -10330,11 +10320,8 @@ up.form = (function () {
10330
10320
  }
10331
10321
  }
10332
10322
  function autosubmit(target, options = {}) {
10333
- var _a;
10334
- const form = getForm(target);
10335
- (_a = options.abortable) !== null && _a !== void 0 ? _a : (options.abortable = [form, ...getPreflightFragments(form)]);
10336
- const onChange = (_value, _name, renderOptions) => submit(target, renderOptions);
10337
- return watch(target, options, onChange);
10323
+ const onChange = (_diff, renderOptions) => submit(target, renderOptions);
10324
+ return watch(target, { options, batch: true }, onChange);
10338
10325
  }
10339
10326
  function getGroupSelectors() {
10340
10327
  var _a, _b;