@fc3/mmcadi 0.1.57 → 0.1.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,10 +7,21 @@ const time_1 = require("@fc3/time");
7
7
  const errors_1 = require("@fc3/errors");
8
8
  const action_type_1 = __importDefault(require("./../../enum/action-type.js"));
9
9
  const get_index_path_for_element_1 = __importDefault(require("./../utility/get-index-path-for-element.js"));
10
+ var ScrollDirection;
11
+ (function (ScrollDirection) {
12
+ ScrollDirection["UP"] = "up";
13
+ ScrollDirection["DOWN"] = "down";
14
+ })(ScrollDirection || (ScrollDirection = {}));
10
15
  class InteractionHelper {
11
16
  constructor() {
12
17
  this.drag_start_coordinate = null;
18
+ this.drag_current_coordinate = null;
13
19
  this.drag_delay_timer = null;
20
+ this.scroll_timer = null;
21
+ this.scroll_direction = null;
22
+ this.last_scroll_time = null;
23
+ this.current_scroll_y = null;
24
+ this.swiping = false;
14
25
  }
15
26
  attach() {
16
27
  if (!this.isTouchDevice()) {
@@ -84,7 +95,8 @@ class InteractionHelper {
84
95
  if (coordinate === null) {
85
96
  return;
86
97
  }
87
- this.drag_start_coordinate = coordinate;
98
+ this.setDragStartCoordinate(coordinate);
99
+ this.setDragCurrentCoordinate(coordinate);
88
100
  block.classList.add('drag-candidate');
89
101
  this.scheduleDelayedDrag();
90
102
  event.preventDefault();
@@ -164,22 +176,120 @@ class InteractionHelper {
164
176
  }
165
177
  handleTouchMove(event) {
166
178
  const current_coordinate = this.getEventCoordinate(event);
167
- const start_coordinate = this.getDragStartCoordinate();
168
- if (start_coordinate === null || current_coordinate === null) {
169
- return;
170
- }
179
+ this.setDragCurrentCoordinate(current_coordinate);
180
+ this.cancelDelayedDrag();
171
181
  this.demoteAllDragCandidates();
182
+ if (this.isSwiping()) {
183
+ return this.handleSwipe();
184
+ }
185
+ if (this.shouldBeSwiping()) {
186
+ return this.activateSwiping();
187
+ }
172
188
  this.scheduleDelayedDrag();
189
+ this.updateDragTargets();
190
+ if (this.isDragging()) {
191
+ event.preventDefault();
192
+ }
193
+ }
194
+ getCurrentAndStartCoordinates() {
195
+ const start_coordinate = this.getDragStartCoordinate();
196
+ const current_coordinate = this.getDragCurrentCoordinate();
197
+ if (start_coordinate === null) {
198
+ throw new errors_1.InvariantViolation(`
199
+ Tried to read start coordinate during touch event,
200
+ but it was not set
201
+ `);
202
+ }
203
+ if (current_coordinate === null) {
204
+ throw new errors_1.InvariantViolation(`
205
+ Tried to read current coordinate during touch event,
206
+ but it was not set
207
+ `);
208
+ }
209
+ return [current_coordinate, start_coordinate];
210
+ }
211
+ handleSwipe() {
212
+ const [current_coordinate, start_coordinate] = this.getCurrentAndStartCoordinates();
213
+ const x_delta = current_coordinate.x - start_coordinate.x;
214
+ const raw_elements = document.querySelectorAll('section.swiping');
215
+ const elements = Array.from(raw_elements);
216
+ elements.forEach((element) => {
217
+ const normalized_delta = Math.min(0, x_delta);
218
+ element.style.transform = `translateX(${normalized_delta}px)`;
219
+ });
220
+ }
221
+ activateSwiping() {
222
+ this.swiping = true;
223
+ const blocks = this.getCurrentTouchedBlocks();
224
+ blocks.forEach((block) => {
225
+ block.style.width = `${block.clientWidth}px`;
226
+ block.classList.add('swiping');
227
+ });
228
+ }
229
+ deactivateSwiping() {
230
+ this.swiping = false;
231
+ const [current_coordinate, start_coordinate] = this.getCurrentAndStartCoordinates();
232
+ const delta = current_coordinate.x - start_coordinate.x;
233
+ const raw_blocks = document.querySelectorAll('section.swiping');
234
+ const blocks = Array.from(raw_blocks);
235
+ blocks.forEach((block) => {
236
+ block.style.transform = '';
237
+ block.classList.remove('swiping');
238
+ const swipe_open = delta < (block.clientWidth / 2) * -1;
239
+ if (swipe_open) {
240
+ const raw_open_blocks = document.querySelectorAll('.swipe-open');
241
+ const open_blocks = Array.from(raw_open_blocks);
242
+ open_blocks.forEach((block) => {
243
+ block.classList.remove('swipe-open');
244
+ });
245
+ }
246
+ block.classList.toggle('swipe-open', swipe_open);
247
+ });
248
+ }
249
+ getCurrentTouchedBlocks() {
250
+ const [current_coordinate, _] = this.getCurrentAndStartCoordinates();
251
+ const { x, y } = current_coordinate;
252
+ const raw_blocks = document.querySelectorAll('section.block');
253
+ const blocks = Array.from(raw_blocks);
254
+ return blocks.filter((block) => {
255
+ const rect = block.getBoundingClientRect();
256
+ if (x > rect.left && x < rect.right && y > rect.top && y < rect.bottom) {
257
+ return true;
258
+ }
259
+ return false;
260
+ });
261
+ }
262
+ shouldBeSwiping() {
263
+ const blocks = this.getCurrentTouchedBlocks();
264
+ const open_block = blocks.find((block) => {
265
+ return block.classList.contains('swipe-open');
266
+ });
267
+ if (open_block) {
268
+ return true;
269
+ }
270
+ const current_coordinate = this.getDragCurrentCoordinate();
271
+ const start_coordinate = this.getDragStartCoordinate();
272
+ if (start_coordinate === null || current_coordinate === null) {
273
+ return false;
274
+ }
275
+ const x_delta = current_coordinate.x - start_coordinate.x;
276
+ const y_delta = current_coordinate.y - start_coordinate.y;
277
+ // pixels that the user is required to scroll in order to activate swiping:
278
+ const x_threshold = -1 * 48;
279
+ const y_threshold = 48;
280
+ // We specifically are checking whether the X delta is happening to the left
281
+ // (that is, the user is swiping left). For the Y delta we don't care as
282
+ // long as the magnitude of the direction is below the threshold.
283
+ return x_delta < x_threshold && Math.abs(y_delta) < y_threshold;
284
+ }
285
+ updateDragTargets() {
173
286
  const raw_targets = document.querySelectorAll('.dragging');
174
287
  const drag_target_blocks = Array.from(raw_targets);
175
288
  drag_target_blocks.forEach((target_block) => {
176
- this.translateDragTargetBlock(target_block, current_coordinate);
289
+ this.updateDragTarget(target_block);
177
290
  });
178
- if (drag_target_blocks.length > 0) {
179
- event.preventDefault();
180
- }
181
291
  }
182
- translateDragTargetBlock(block, current_coordinate) {
292
+ updateDragTarget(block) {
183
293
  const x_attribute = block.getAttribute('data-drag-start-x');
184
294
  const y_attribute = block.getAttribute('data-drag-start-y');
185
295
  if (x_attribute === null || y_attribute === null) {
@@ -198,18 +308,20 @@ class InteractionHelper {
198
308
  y: ${y_attribute}
199
309
  `);
200
310
  }
201
- const start_coordinate = this.getDragStartCoordinate();
202
- if (start_coordinate === null) {
203
- throw new errors_1.InvariantViolation(`
204
- Tried to translate drag target, but drag start coordinate was null
205
- `);
206
- }
311
+ const [current_coordinate, start_coordinate] = this.getCurrentAndStartCoordinates();
207
312
  const { x: start_x, y: start_y } = start_coordinate;
208
313
  const { x: current_x, y: current_y } = current_coordinate;
209
314
  const x_delta = current_x - start_x;
210
315
  const y_delta = current_y - start_y;
316
+ const container = document.querySelector('main');
317
+ if (container === null) {
318
+ throw new errors_1.InvariantViolation(`
319
+ Unable to find <main> container element in the DOM
320
+ `);
321
+ }
322
+ const container_rect = container.getBoundingClientRect();
211
323
  const new_x = parsed_x + x_delta;
212
- const new_y = parsed_y + y_delta;
324
+ const new_y = Math.max(container_rect.top, Math.min(parsed_y + y_delta, container_rect.bottom));
213
325
  block.style.left = `${new_x}px`;
214
326
  block.style.top = `${new_y}px`;
215
327
  const block_rect = block.getBoundingClientRect();
@@ -240,6 +352,88 @@ class InteractionHelper {
240
352
  }
241
353
  }
242
354
  }
355
+ if (block_rect.top < 0) {
356
+ this.startScrollingUp();
357
+ }
358
+ else if (block_rect.bottom > window.innerHeight) {
359
+ this.startScrollingDown();
360
+ }
361
+ else {
362
+ this.stopScrolling();
363
+ }
364
+ }
365
+ stopScrolling() {
366
+ this.setScrollDirection(null);
367
+ }
368
+ startScrollingUp() {
369
+ this.setScrollDirection(ScrollDirection.UP);
370
+ }
371
+ startScrollingDown() {
372
+ this.setScrollDirection(ScrollDirection.DOWN);
373
+ }
374
+ setScrollDirection(scroll_direction) {
375
+ if (this.scroll_direction === scroll_direction) {
376
+ return;
377
+ }
378
+ this.scroll_direction = scroll_direction;
379
+ if (scroll_direction === null) {
380
+ this.last_scroll_time = null;
381
+ this.current_scroll_y = null;
382
+ }
383
+ else {
384
+ this.last_scroll_time = Date.now();
385
+ this.current_scroll_y = window.scrollY;
386
+ this.scheduleScroll();
387
+ }
388
+ }
389
+ getScrollDirection() {
390
+ return this.scroll_direction;
391
+ }
392
+ setLastScrollTime(time) {
393
+ this.last_scroll_time = time;
394
+ }
395
+ getLastScrollTime() {
396
+ if (this.last_scroll_time === null) {
397
+ throw new errors_1.InvariantViolation(`
398
+ Tried to read last scroll time, but it was not set
399
+ `);
400
+ }
401
+ return this.last_scroll_time;
402
+ }
403
+ scheduleScroll() {
404
+ if (this.scroll_timer) {
405
+ window.cancelAnimationFrame(this.scroll_timer);
406
+ this.scroll_timer = null;
407
+ }
408
+ this.scroll_timer = window.requestAnimationFrame(() => {
409
+ this.scroll();
410
+ });
411
+ }
412
+ scroll() {
413
+ if (!this.isDragging()) {
414
+ return;
415
+ }
416
+ const scroll_direction = this.getScrollDirection();
417
+ if (scroll_direction === null) {
418
+ return;
419
+ }
420
+ const last_scroll_time = this.getLastScrollTime();
421
+ const now = Date.now();
422
+ const elapsed_time = now - last_scroll_time;
423
+ const scroll_speed_per_second = window.innerHeight / 2;
424
+ const time_ratio = elapsed_time / time_1.TimeInterval.ONE_SECOND;
425
+ const scroll_amount = scroll_speed_per_second * time_ratio;
426
+ const scroll_y = this.getCurrentScrollY();
427
+ const sign = scroll_direction === ScrollDirection.UP ? -1 : 1;
428
+ const new_scroll_y = Math.max(0, Math.min(document.documentElement.scrollHeight, scroll_y + (scroll_amount * sign)));
429
+ this.setCurrentScrollY(new_scroll_y);
430
+ this.setLastScrollTime(now);
431
+ const window_moved = new_scroll_y !== scroll_y;
432
+ if (window_moved) {
433
+ window.scrollTo(0, new_scroll_y);
434
+ this.updateDragTargets();
435
+ }
436
+ this.scheduleScroll();
243
437
  }
244
438
  getGhostForBlock(block) {
245
439
  const index_path = (0, get_index_path_for_element_1.default)(block);
@@ -283,12 +477,17 @@ class InteractionHelper {
283
477
  if (index === -1) {
284
478
  throw new errors_1.InvariantViolation('Unable to locate ghost within siblings');
285
479
  }
480
+ // Advance to the next sibling.
481
+ index++;
286
482
  while (index < siblings.length) {
287
- index++;
288
- const sibling = siblings[index];
483
+ const sibling = siblings[index++];
289
484
  if (sibling === block) {
290
485
  continue;
291
486
  }
487
+ if (sibling === undefined) {
488
+ console.log(sibling);
489
+ console.log(siblings);
490
+ }
292
491
  const { classList } = sibling;
293
492
  if (!classList.contains('block')) {
294
493
  continue;
@@ -301,7 +500,12 @@ class InteractionHelper {
301
500
  return null;
302
501
  }
303
502
  handleTouchEnd(event) {
304
- this.stopDragging();
503
+ if (this.isSwiping()) {
504
+ this.deactivateSwiping();
505
+ }
506
+ if (this.isDragging()) {
507
+ this.stopDragging();
508
+ }
305
509
  }
306
510
  handleGenericClick(event) {
307
511
  const { target } = event;
@@ -433,6 +637,29 @@ class InteractionHelper {
433
637
  getDragStartCoordinate() {
434
638
  return this.drag_start_coordinate;
435
639
  }
640
+ setDragStartCoordinate(coordinate) {
641
+ this.drag_start_coordinate = coordinate;
642
+ }
643
+ getDragCurrentCoordinate() {
644
+ return this.drag_current_coordinate;
645
+ }
646
+ setDragCurrentCoordinate(coordinate) {
647
+ this.drag_current_coordinate = coordinate;
648
+ }
649
+ getCurrentScrollY() {
650
+ if (this.current_scroll_y === null) {
651
+ throw new errors_1.InvariantViolation(`
652
+ Tried to read current scroll y, but it was not set
653
+ `);
654
+ }
655
+ return this.current_scroll_y;
656
+ }
657
+ setCurrentScrollY(scroll_y) {
658
+ this.current_scroll_y = scroll_y;
659
+ }
660
+ isSwiping() {
661
+ return this.swiping;
662
+ }
436
663
  }
437
664
  exports.default = InteractionHelper;
438
665
  //# sourceMappingURL=interaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../../../src/client/helper/interaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interaction.js","sourceRoot":"","sources":["../../../../src/client/helper/interaction.ts"],"names":[],"mappings":"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"}
@@ -511,6 +511,14 @@ class BaseResultSerializer extends server_1.HtmlResultSerializer {
511
511
  box-shadow: 8px 8px 0px rgba(0, 0, 0, 0.5);
512
512
  }
513
513
 
514
+ section.swiping nav, section.swipe-open nav {
515
+ display: block;
516
+ }
517
+
518
+ section.swipe-open {
519
+ transform: translateX(-284px);
520
+ }
521
+
514
522
  .drag-mask {
515
523
  position: fixed;
516
524
  z-index: 1000;
@@ -566,22 +574,14 @@ class BaseResultSerializer extends server_1.HtmlResultSerializer {
566
574
  section nav {
567
575
  display: none;
568
576
  position: absolute;
569
- left: 0px;
570
577
  right: 0px;
571
578
  top: 0px;
572
- bottom: 0px;
579
+ width: 284px;
573
580
  }
574
581
 
575
- section nav .biglink {
576
- width: 48px;
577
- height: 48px;
578
- color: #FFF;
579
- line-height: 43px;
580
- font-size: 32px;
581
- text-align: center;
582
- box-sizing: border-box;
583
- padding: 0;
584
- border-color: transparent;
582
+ section nav .squarelink {
583
+ transform: translateX(284px);
584
+ float: left;
585
585
  }
586
586
 
587
587
  section.editing nav {
@@ -144,7 +144,7 @@ class BlockResultSerializer extends server_1.HtmlResultSerializer {
144
144
  return '';
145
145
  }
146
146
  return `
147
- <a id="${section_id}-add-to-playlist" class="biglink" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.ADD_BLOCK_TO_PLAYLIST}&index_path=${index_path}">
147
+ <a id="${section_id}-add-to-playlist" class="squarelink hidden" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.ADD_BLOCK_TO_PLAYLIST}&index_path=${index_path}">
148
148
  ${emoji_1.default.MUSIC_NOTES}
149
149
  </a>
150
150
  `;
@@ -156,7 +156,7 @@ class BlockResultSerializer extends server_1.HtmlResultSerializer {
156
156
  ${cursor}
157
157
  ${section_contents}
158
158
 
159
- <nav class="right">
159
+ <nav>
160
160
  <form id="${section_id}-promote" class="hidden" method="post" action="/actions?editing=${editing}">
161
161
  <input type="hidden" name="path" value="${page_path}" />
162
162
  <input type="hidden" name="action_type" value="${action_type_1.default.PROMOTE_BLOCK}" />
@@ -169,21 +169,25 @@ class BlockResultSerializer extends server_1.HtmlResultSerializer {
169
169
  <input type="hidden" name="index_path" value="${index_path}" />
170
170
  </form>
171
171
 
172
- <a id="${section_id}-move" class="biglink hidden" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.MOVE_BLOCK}&index_path=${index_path}">
172
+ <a id="${section_id}-move" class="squarelink hidden" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.MOVE_BLOCK}&index_path=${index_path}">
173
173
  ${emoji_1.default.REPEAT}
174
174
  </a>
175
175
 
176
- <a id="${section_id}-hide" class="biglink hidden" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.HIDE_BLOCK}&index_path=${index_path}">
176
+ <a id="${section_id}-hide" class="squarelink hidden" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.HIDE_BLOCK}&index_path=${index_path}">
177
177
  ${emoji_1.default.INVISIBLE_FACE}
178
178
  </a>
179
179
 
180
180
  ${playlist_button}
181
181
 
182
- <a id="${section_id}-delete" class="biglink red" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.DELETE_BLOCK}&index_path=${index_path}">
182
+ <a id="${section_id}-add" class="squarelink green" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.ADD_BLOCK}&index_path=${index_path}">
183
+ ${emoji_1.default.PLUS_SIGN}
184
+ </a>
185
+
186
+ <a id="${section_id}-delete" class="squarelink red" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.DELETE_BLOCK}&index_path=${index_path}">
183
187
  ${emoji_1.default.RED_X}
184
188
  </a>
185
189
 
186
- <a id="${section_id}-edit" class="biglink" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.EDIT_BLOCK}&index_path=${index_path}">
190
+ <a id="${section_id}-edit" class="squarelink" href="/actions?editing=${editing}&path=${page_path}&action_type=${action_type_1.default.EDIT_BLOCK}&index_path=${index_path}">
187
191
  ${emoji_1.default.GEAR}
188
192
  </a>
189
193
  </nav>
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../src/server/serializer/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../src/server/serializer/block.ts"],"names":[],"mappings":"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"}