@wix/interact 1.66.0

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 (80) hide show
  1. package/README.md +258 -0
  2. package/dist/cjs/WixInteractElement.js +103 -0
  3. package/dist/cjs/WixInteractElement.js.map +1 -0
  4. package/dist/cjs/__tests__/interact.spec.js +944 -0
  5. package/dist/cjs/__tests__/interact.spec.js.map +1 -0
  6. package/dist/cjs/external-types.d.js +2 -0
  7. package/dist/cjs/external-types.d.js.map +1 -0
  8. package/dist/cjs/handlers/animationEnd.js +33 -0
  9. package/dist/cjs/handlers/animationEnd.js.map +1 -0
  10. package/dist/cjs/handlers/click.js +82 -0
  11. package/dist/cjs/handlers/click.js.map +1 -0
  12. package/dist/cjs/handlers/hover.js +103 -0
  13. package/dist/cjs/handlers/hover.js.map +1 -0
  14. package/dist/cjs/handlers/index.js +21 -0
  15. package/dist/cjs/handlers/index.js.map +1 -0
  16. package/dist/cjs/handlers/pointerMove.js +40 -0
  17. package/dist/cjs/handlers/pointerMove.js.map +1 -0
  18. package/dist/cjs/handlers/utilities.js +51 -0
  19. package/dist/cjs/handlers/utilities.js.map +1 -0
  20. package/dist/cjs/handlers/viewEnter.js +69 -0
  21. package/dist/cjs/handlers/viewEnter.js.map +1 -0
  22. package/dist/cjs/handlers/viewProgress.js +56 -0
  23. package/dist/cjs/handlers/viewProgress.js.map +1 -0
  24. package/dist/cjs/index.js +21 -0
  25. package/dist/cjs/index.js.map +1 -0
  26. package/dist/cjs/interact.js +310 -0
  27. package/dist/cjs/interact.js.map +1 -0
  28. package/dist/cjs/test-types.d.js +2 -0
  29. package/dist/cjs/test-types.d.js.map +1 -0
  30. package/dist/cjs/types.js +2 -0
  31. package/dist/cjs/types.js.map +1 -0
  32. package/dist/cjs/utils.js +66 -0
  33. package/dist/cjs/utils.js.map +1 -0
  34. package/dist/esm/WixInteractElement.js +97 -0
  35. package/dist/esm/WixInteractElement.js.map +1 -0
  36. package/dist/esm/__tests__/interact.spec.js +952 -0
  37. package/dist/esm/__tests__/interact.spec.js.map +1 -0
  38. package/dist/esm/external-types.d.js +2 -0
  39. package/dist/esm/external-types.d.js.map +1 -0
  40. package/dist/esm/handlers/animationEnd.js +29 -0
  41. package/dist/esm/handlers/animationEnd.js.map +1 -0
  42. package/dist/esm/handlers/click.js +82 -0
  43. package/dist/esm/handlers/click.js.map +1 -0
  44. package/dist/esm/handlers/hover.js +103 -0
  45. package/dist/esm/handlers/hover.js.map +1 -0
  46. package/dist/esm/handlers/index.js +16 -0
  47. package/dist/esm/handlers/index.js.map +1 -0
  48. package/dist/esm/handlers/pointerMove.js +39 -0
  49. package/dist/esm/handlers/pointerMove.js.map +1 -0
  50. package/dist/esm/handlers/utilities.js +45 -0
  51. package/dist/esm/handlers/utilities.js.map +1 -0
  52. package/dist/esm/handlers/viewEnter.js +69 -0
  53. package/dist/esm/handlers/viewEnter.js.map +1 -0
  54. package/dist/esm/handlers/viewProgress.js +52 -0
  55. package/dist/esm/handlers/viewProgress.js.map +1 -0
  56. package/dist/esm/index.js +3 -0
  57. package/dist/esm/index.js.map +1 -0
  58. package/dist/esm/interact.js +303 -0
  59. package/dist/esm/interact.js.map +1 -0
  60. package/dist/esm/test-types.d.js +2 -0
  61. package/dist/esm/test-types.d.js.map +1 -0
  62. package/dist/esm/types.js +2 -0
  63. package/dist/esm/types.js.map +1 -0
  64. package/dist/esm/utils.js +61 -0
  65. package/dist/esm/utils.js.map +1 -0
  66. package/dist/types/WixInteractElement.d.ts +324 -0
  67. package/dist/types/__tests__/interact.spec.d.ts +1 -0
  68. package/dist/types/handlers/animationEnd.d.ts +8 -0
  69. package/dist/types/handlers/click.d.ts +8 -0
  70. package/dist/types/handlers/hover.d.ts +8 -0
  71. package/dist/types/handlers/index.d.ts +3 -0
  72. package/dist/types/handlers/pointerMove.d.ts +8 -0
  73. package/dist/types/handlers/utilities.d.ts +4 -0
  74. package/dist/types/handlers/viewEnter.d.ts +8 -0
  75. package/dist/types/handlers/viewProgress.d.ts +8 -0
  76. package/dist/types/index.d.ts +2 -0
  77. package/dist/types/interact.d.ts +25 -0
  78. package/dist/types/types.d.ts +173 -0
  79. package/dist/types/utils.d.ts +4 -0
  80. package/package.json +71 -0
@@ -0,0 +1,97 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import { add, remove } from './interact';
3
+ export const WIX_INTERACT_EFFECT_DATA_ATTR = 'wixInteractEffect';
4
+ export function getWixInteractElement() {
5
+ let checkedForLegacyStateSyntax = false;
6
+ let isLegacyStateSyntax = false;
7
+ return class WixInteractElement extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ _defineProperty(this, "_internals", void 0);
11
+ _defineProperty(this, "connected", void 0);
12
+ _defineProperty(this, "sheet", void 0);
13
+ this.connected = false;
14
+ this.sheet = null;
15
+ if (this.attachInternals) {
16
+ this._internals = this.attachInternals();
17
+ if (!checkedForLegacyStateSyntax) {
18
+ checkedForLegacyStateSyntax = true;
19
+ try {
20
+ this._internals.states.add('test');
21
+ this._internals.states.delete('test');
22
+ } catch (e) {
23
+ isLegacyStateSyntax = true;
24
+ }
25
+ }
26
+ } else {
27
+ checkedForLegacyStateSyntax = true; // custom states not supported - skip syntax check
28
+ this._internals = null;
29
+ }
30
+ }
31
+ connectedCallback() {
32
+ this.connect();
33
+ }
34
+ disconnectedCallback() {
35
+ const path = this.dataset.wixPath;
36
+ if (path) {
37
+ remove(path);
38
+ }
39
+ if (this.sheet) {
40
+ const index = document.adoptedStyleSheets.indexOf(this.sheet);
41
+ document.adoptedStyleSheets.splice(index, 1);
42
+ }
43
+ this.connected = false;
44
+ }
45
+ connect(path) {
46
+ if (this.connected) {
47
+ return;
48
+ }
49
+ path = path || this.dataset.wixPath;
50
+ if (!path) {
51
+ console.warn('WixInteractElement: No path provided');
52
+ return;
53
+ }
54
+ if (this.firstElementChild) {
55
+ this.connected = add(this, path);
56
+ } else {
57
+ console.warn('WixInteractElement: No child element found');
58
+ }
59
+ }
60
+ renderStyle(cssText) {
61
+ const sheet = new CSSStyleSheet();
62
+ this.sheet = sheet;
63
+ sheet.replace(cssText);
64
+ document.adoptedStyleSheets.push(sheet);
65
+ }
66
+ toggleEffect(effectId, method) {
67
+ if (isLegacyStateSyntax) {
68
+ effectId = `--${effectId}`;
69
+ }
70
+ if (this._internals) {
71
+ if (method === 'toggle') {
72
+ this._internals.states.has(effectId) ? this._internals.states.delete(effectId) : this._internals.states.add(effectId);
73
+ } else if (method === 'add') {
74
+ this._internals.states.add(effectId);
75
+ } else if (method === 'remove') {
76
+ this._internals.states.delete(effectId);
77
+ } else if (method === 'clear') {
78
+ this._internals.states.clear();
79
+ }
80
+ } else {
81
+ var _this$dataset$WIX_INT;
82
+ const currentEffects = new Set(((_this$dataset$WIX_INT = this.dataset[WIX_INTERACT_EFFECT_DATA_ATTR]) == null ? void 0 : _this$dataset$WIX_INT.split(' ')) || []);
83
+ if (method === 'toggle') {
84
+ currentEffects.has(effectId) ? currentEffects.delete(effectId) : currentEffects.add(effectId);
85
+ } else if (method === 'add') {
86
+ currentEffects.add(effectId);
87
+ } else if (method === 'remove') {
88
+ currentEffects.delete(effectId);
89
+ } else if (method === 'clear') {
90
+ currentEffects.clear();
91
+ }
92
+ this.dataset[WIX_INTERACT_EFFECT_DATA_ATTR] = Array.from(currentEffects).join(' ');
93
+ }
94
+ }
95
+ };
96
+ }
97
+ //# sourceMappingURL=WixInteractElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["add","remove","WIX_INTERACT_EFFECT_DATA_ATTR","getWixInteractElement","checkedForLegacyStateSyntax","isLegacyStateSyntax","WixInteractElement","HTMLElement","constructor","_defineProperty","connected","sheet","attachInternals","_internals","states","delete","e","connectedCallback","connect","disconnectedCallback","path","dataset","wixPath","index","document","adoptedStyleSheets","indexOf","splice","console","warn","firstElementChild","renderStyle","cssText","CSSStyleSheet","replace","push","toggleEffect","effectId","method","has","clear","_this$dataset$WIX_INT","currentEffects","Set","split","Array","from","join"],"sources":["../../src/WixInteractElement.ts"],"sourcesContent":["import type { StateParams } from './types';\nimport { add, remove } from './interact';\n\nexport const WIX_INTERACT_EFFECT_DATA_ATTR = 'wixInteractEffect';\n\nexport function getWixInteractElement() {\n let checkedForLegacyStateSyntax = false;\n let isLegacyStateSyntax = false;\n\n return class WixInteractElement extends HTMLElement {\n _internals: (ElementInternals & { states: Set<string> }) | null;\n connected: boolean;\n sheet: CSSStyleSheet | null;\n\n constructor() {\n super();\n\n this.connected = false;\n this.sheet = null;\n\n if (this.attachInternals) {\n this._internals = this.attachInternals() as ElementInternals & {\n states: Set<string>;\n };\n\n if (!checkedForLegacyStateSyntax) {\n checkedForLegacyStateSyntax = true;\n\n try {\n this._internals.states.add('test');\n this._internals.states.delete('test');\n } catch (e) {\n isLegacyStateSyntax = true;\n }\n }\n } else {\n checkedForLegacyStateSyntax = true; // custom states not supported - skip syntax check\n this._internals = null;\n }\n }\n connectedCallback() {\n this.connect();\n }\n\n disconnectedCallback() {\n const path = this.dataset.wixPath;\n\n if (path) {\n remove(path);\n }\n\n if (this.sheet) {\n const index = document.adoptedStyleSheets.indexOf(this.sheet);\n document.adoptedStyleSheets.splice(index, 1);\n }\n\n this.connected = false;\n }\n\n connect(path?: string) {\n if (this.connected) {\n return;\n }\n\n path = path || this.dataset.wixPath;\n\n if (!path) {\n console.warn('WixInteractElement: No path provided');\n return;\n }\n\n if (this.firstElementChild) {\n this.connected = add(this, path);\n } else {\n console.warn('WixInteractElement: No child element found');\n }\n }\n\n renderStyle(cssText: string) {\n const sheet = new CSSStyleSheet();\n this.sheet = sheet;\n\n sheet.replace(cssText);\n\n document.adoptedStyleSheets.push(sheet);\n }\n\n toggleEffect(effectId: string, method: StateParams['method']) {\n if (isLegacyStateSyntax) {\n effectId = `--${effectId}`;\n }\n\n if (this._internals) {\n if (method === 'toggle') {\n this._internals.states.has(effectId)\n ? this._internals.states.delete(effectId)\n : this._internals.states.add(effectId);\n } else if (method === 'add') {\n this._internals.states.add(effectId);\n } else if (method === 'remove') {\n this._internals.states.delete(effectId);\n } else if (method === 'clear') {\n this._internals.states.clear();\n }\n } else {\n const currentEffects = new Set(\n this.dataset[WIX_INTERACT_EFFECT_DATA_ATTR]?.split(' ') || [],\n );\n\n if (method === 'toggle') {\n currentEffects.has(effectId)\n ? currentEffects.delete(effectId)\n : currentEffects.add(effectId);\n } else if (method === 'add') {\n currentEffects.add(effectId);\n } else if (method === 'remove') {\n currentEffects.delete(effectId);\n } else if (method === 'clear') {\n currentEffects.clear();\n }\n\n this.dataset[WIX_INTERACT_EFFECT_DATA_ATTR] =\n Array.from(currentEffects).join(' ');\n }\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}