@e280/sly 0.2.0-4 → 0.2.0-6

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.
Files changed (58) hide show
  1. package/README.md +181 -36
  2. package/package.json +1 -1
  3. package/s/demo/views/incredi.ts +2 -2
  4. package/s/dom/dom.ts +10 -1
  5. package/s/dom/register.ts +4 -1
  6. package/s/index.ts +2 -2
  7. package/s/loot/drag-and-drops.ts +82 -0
  8. package/s/loot/{drop.ts → drops.ts} +8 -17
  9. package/s/loot/helpers.ts +3 -3
  10. package/s/loot/index.ts +2 -2
  11. package/s/views/base-element.ts +1 -1
  12. package/s/views/use.ts +3 -2
  13. package/x/demo/demo.bundle.min.js +13 -13
  14. package/x/demo/demo.bundle.min.js.map +4 -4
  15. package/x/demo/views/incredi.d.ts +1 -1
  16. package/x/demo/views/incredi.js +2 -2
  17. package/x/demo/views/incredi.js.map +1 -1
  18. package/x/dom/attributes.js.map +1 -0
  19. package/x/dom/dom.d.ts +5 -1
  20. package/x/dom/dom.js +5 -0
  21. package/x/dom/dom.js.map +1 -1
  22. package/x/dom/register.d.ts +5 -1
  23. package/x/dom/register.js.map +1 -1
  24. package/x/index.d.ts +2 -2
  25. package/x/index.html +2 -2
  26. package/x/index.js +2 -2
  27. package/x/index.js.map +1 -1
  28. package/x/loot/drag-and-drops.d.ts +30 -0
  29. package/x/loot/drag-and-drops.js +63 -0
  30. package/x/loot/drag-and-drops.js.map +1 -0
  31. package/x/loot/{drop.d.ts → drops.d.ts} +3 -5
  32. package/x/loot/drops.js +25 -0
  33. package/x/loot/drops.js.map +1 -0
  34. package/x/loot/helpers.d.ts +3 -3
  35. package/x/loot/helpers.js +3 -3
  36. package/x/loot/helpers.js.map +1 -1
  37. package/x/loot/index.d.ts +2 -2
  38. package/x/loot/index.js +2 -2
  39. package/x/loot/index.js.map +1 -1
  40. package/x/views/base-element.js +1 -1
  41. package/x/views/base-element.js.map +1 -1
  42. package/x/views/use.d.ts +2 -2
  43. package/x/views/use.js +3 -2
  44. package/x/views/use.js.map +1 -1
  45. package/s/dom/types.ts +0 -8
  46. package/s/loot/drag-drop.ts +0 -76
  47. package/x/dom/types.d.ts +0 -7
  48. package/x/dom/types.js +0 -2
  49. package/x/dom/types.js.map +0 -1
  50. package/x/loot/drag-drop.d.ts +0 -29
  51. package/x/loot/drag-drop.js +0 -54
  52. package/x/loot/drag-drop.js.map +0 -1
  53. package/x/loot/drop.js +0 -32
  54. package/x/loot/drop.js.map +0 -1
  55. package/x/views/attributes.js.map +0 -1
  56. /package/s/{views → dom}/attributes.ts +0 -0
  57. /package/x/{views → dom}/attributes.d.ts +0 -0
  58. /package/x/{views → dom}/attributes.js +0 -0
@@ -1,54 +0,0 @@
1
- import { signal } from "@e280/strata";
2
- import { dragIsOutsideCurrentTarget } from "./helpers.js";
3
- /** system for dragging-and-dropping things around on a webpage */
4
- export class DragDrop {
5
- params;
6
- #$grabbed = signal(undefined);
7
- #$hovering = signal(undefined);
8
- constructor(params) {
9
- this.params = params;
10
- }
11
- /** make event listeners to attach to your dragzone(s) */
12
- dragzone = {
13
- draggable: () => "true",
14
- dragstart: (grabbed) => (_) => {
15
- this.#$grabbed.value = grabbed;
16
- },
17
- dragend: () => (_) => {
18
- this.#$grabbed.value = undefined;
19
- this.#$hovering.value = undefined;
20
- },
21
- };
22
- /** make event listeners to attach to your dropzones(s) */
23
- dropzone = {
24
- dragenter: () => (_) => { },
25
- dragleave: () => (event) => {
26
- if (dragIsOutsideCurrentTarget(event))
27
- this.#$hovering.value = undefined;
28
- },
29
- dragover: (hovering) => (event) => {
30
- event.preventDefault();
31
- const { fromOutside } = this.params;
32
- if (this.#$grabbed() || (fromOutside && fromOutside.predicate(event, hovering)))
33
- this.#$hovering.value = hovering;
34
- },
35
- drop: (hovering) => (event) => {
36
- event.preventDefault();
37
- const { acceptDrop, fromOutside } = this.params;
38
- const grabbed = this.#$grabbed();
39
- this.#$grabbed.value = undefined;
40
- this.#$hovering.value = undefined;
41
- if (grabbed)
42
- acceptDrop(event, grabbed, hovering);
43
- else if (fromOutside && fromOutside.predicate(event, hovering))
44
- fromOutside.acceptDrop(event, hovering);
45
- },
46
- };
47
- get grabbed() {
48
- return this.#$grabbed();
49
- }
50
- get hovering() {
51
- return this.#$hovering();
52
- }
53
- }
54
- //# sourceMappingURL=drag-drop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drag-drop.js","sourceRoot":"","sources":["../../s/loot/drag-drop.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAA;AACnC,OAAO,EAAC,0BAA0B,EAAC,MAAM,cAAc,CAAA;AAEvD,kEAAkE;AAClE,MAAM,OAAO,QAAQ;IAIA;IAHpB,SAAS,GAAG,MAAM,CAAsB,SAAS,CAAC,CAAA;IAClD,UAAU,GAAG,MAAM,CAAuB,SAAS,CAAC,CAAA;IAEpD,YAAoB,MAUnB;QAVmB,WAAM,GAAN,MAAM,CAUzB;IAAG,CAAC;IAEL,yDAAyD;IAChD,QAAQ,GAAG;QACnB,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM;QAEvB,SAAS,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,CAAC,CAAY,EAAE,EAAE;YACjD,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,OAAO,CAAA;QAC/B,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAY,EAAE,EAAE;YAC/B,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,SAAS,CAAA;YAChC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,SAAS,CAAA;QAClC,CAAC;KACD,CAAA;IAED,0DAA0D;IACjD,QAAQ,GAAG;QACnB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,CAAY,EAAE,EAAE,GAAE,CAAC;QAErC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,KAAgB,EAAE,EAAE;YACrC,IAAI,0BAA0B,CAAC,KAAK,CAAC;gBACpC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,SAAS,CAAA;QACnC,CAAC;QAED,QAAQ,EAAE,CAAC,QAAkB,EAAE,EAAE,CAAC,CAAC,KAAgB,EAAE,EAAE;YACtD,KAAK,CAAC,cAAc,EAAE,CAAA;YACtB,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI,CAAC,MAAM,CAAA;YAEjC,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC9E,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAA;QAClC,CAAC;QAED,IAAI,EAAE,CAAC,QAAkB,EAAE,EAAE,CAAC,CAAC,KAAgB,EAAE,EAAE;YAClD,KAAK,CAAC,cAAc,EAAE,CAAA;YACtB,MAAM,EAAC,UAAU,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC,MAAM,CAAA;YAE7C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;YAChC,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,SAAS,CAAA;YAChC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,SAAS,CAAA;YAEjC,IAAI,OAAO;gBACV,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;iBAChC,IAAI,WAAW,IAAI,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAC7D,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACzC,CAAC;KACD,CAAA;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;IACxB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;IACzB,CAAC;CACD"}
package/x/loot/drop.js DELETED
@@ -1,32 +0,0 @@
1
- import { signal } from "@e280/strata";
2
- import { dragIsOutsideCurrentTarget } from "./helpers.js";
3
- /** dropzone that accepts dropped stuff like files */
4
- export class Drop {
5
- params;
6
- #$indicator = signal(false);
7
- constructor(params) {
8
- this.params = params;
9
- }
10
- get indicator() {
11
- return this.#$indicator.value;
12
- }
13
- resetIndicator = () => {
14
- this.#$indicator.value = false;
15
- };
16
- dragover = (event) => {
17
- event.preventDefault();
18
- if (this.params.predicate(event))
19
- this.#$indicator.value = true;
20
- };
21
- dragleave = (event) => {
22
- if (dragIsOutsideCurrentTarget(event))
23
- this.#$indicator.value = false;
24
- };
25
- drop = (event) => {
26
- event.preventDefault();
27
- this.#$indicator.value = false;
28
- if (this.params.predicate(event))
29
- this.params.acceptDrop(event);
30
- };
31
- }
32
- //# sourceMappingURL=drop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drop.js","sourceRoot":"","sources":["../../s/loot/drop.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAA;AACnC,OAAO,EAAC,0BAA0B,EAAC,MAAM,cAAc,CAAA;AAEvD,qDAAqD;AACrD,MAAM,OAAO,IAAI;IAGI;IAFpB,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAE3B,YAAoB,MAOnB;QAPmB,WAAM,GAAN,MAAM,CAOzB;IAAG,CAAC;IAEL,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAA;IAC9B,CAAC;IAED,cAAc,GAAG,GAAG,EAAE;QACrB,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IAC/B,CAAC,CAAA;IAED,QAAQ,GAAG,CAAC,KAAgB,EAAE,EAAE;QAC/B,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAA;IAC/B,CAAC,CAAA;IAED,SAAS,GAAG,CAAC,KAAgB,EAAE,EAAE;QAChC,IAAI,0BAA0B,CAAC,KAAK,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IAChC,CAAC,CAAA;IAED,IAAI,GAAG,CAAC,KAAgB,EAAE,EAAE;QAC3B,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;QAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAA;CACD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../s/views/attributes.ts"],"names":[],"mappings":"AA4BA,MAAM,UAAU,YAAY,CAAC,OAAoB,EAAE,EAAc;IAChE,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAA;IACzC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC,CAAA;IAC7C,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;AACnC,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,OAAoB,EACpB,IAAO,EACN,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE;IAErB,GAAG,EAAE,CAAC,OAAO,EAAE,IAAY,EAAE,EAAE;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAEtC,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,MAAM;gBACV,OAAO,GAAG,IAAI,SAAS,CAAA;YAExB,KAAK,MAAM;gBACV,OAAO,GAAG,KAAK,IAAI;oBAClB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACb,CAAC,CAAC,SAAS,CAAA;YAEb,KAAK,OAAO;gBACX,OAAO,GAAG,KAAK,IAAI,CAAA;YAEpB;gBACC,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,GAAG,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;IAED,GAAG,EAAE,CAAC,OAAO,EAAE,IAAY,EAAE,KAAU,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QAEvB,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,CAAC,CAAC;gBACb,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;gBACjC,OAAO,IAAI,CAAA;YACZ,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,CAAC;gBACb,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC5C,OAAO,IAAI,CAAA;YACZ,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,IAAI,KAAK;oBACR,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;;oBAE9B,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;gBAC9B,OAAO,IAAI,CAAA;YACZ,CAAC;YAED;gBACC,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,GAAG,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;CAED,CAAwB,CAAA"}
File without changes
File without changes
File without changes