@blackbyte/sugar 1.0.0-beta.6 → 1.0.0-beta.7

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.
@@ -20,20 +20,20 @@ export default function viewportEvents($elm, settings) {
20
20
  const distanceToTop = distanceFromElementTopToViewportTop($elm);
21
21
  if (distanceToTop < window.innerHeight * 0.5) {
22
22
  $elm.dispatchEvent(new CustomEvent('viewport.enter.above', {
23
- bubbles: true,
23
+ bubbles: true
24
24
  }));
25
25
  }
26
26
  else {
27
27
  $elm.dispatchEvent(new CustomEvent('viewport.enter.below', {
28
- bubbles: true,
28
+ bubbles: true
29
29
  }));
30
30
  }
31
31
  status = 'in';
32
32
  $elm.dispatchEvent(new CustomEvent('viewport.enter', {
33
- bubbles: true,
33
+ bubbles: true
34
34
  }));
35
35
  $elm.dispatchEvent(new CustomEvent('viewport.in', {
36
- bubbles: true,
36
+ bubbles: true
37
37
  }));
38
38
  if (finalSettings === null || finalSettings === void 0 ? void 0 : finalSettings.once) {
39
39
  observer.disconnect();
@@ -46,20 +46,20 @@ export default function viewportEvents($elm, settings) {
46
46
  const distanceToTop = distanceFromElementTopToViewportTop($elm);
47
47
  if (distanceToTop < window.innerHeight * 0.5) {
48
48
  $elm.dispatchEvent(new CustomEvent('viewport.leave.above', {
49
- bubbles: true,
49
+ bubbles: true
50
50
  }));
51
51
  }
52
52
  else {
53
53
  $elm.dispatchEvent(new CustomEvent('viewport.leave.below', {
54
- bubbles: true,
54
+ bubbles: true
55
55
  }));
56
56
  }
57
57
  status = 'out';
58
58
  $elm.dispatchEvent(new CustomEvent('viewport.leave', {
59
- bubbles: true,
59
+ bubbles: true
60
60
  }));
61
61
  $elm.dispatchEvent(new CustomEvent('viewport.out', {
62
- bubbles: true,
62
+ bubbles: true
63
63
  }));
64
64
  }
65
65
  }, {
@@ -67,7 +67,7 @@ export default function viewportEvents($elm, settings) {
67
67
  rootMargin: typeof finalSettings.offset === 'string'
68
68
  ? finalSettings.offset
69
69
  : `${finalSettings.offset}px`,
70
- threshold: [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1],
70
+ threshold: [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1]
71
71
  });
72
72
  observer.observe($elm);
73
73
  return $elm;
@@ -1 +1 @@
1
- {"version":3,"file":"viewportEvents.js","sourceRoot":"","sources":["../../../../src/js/dom/event/viewportEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viewportEvents.js","sourceRoot":"","sources":["../../../../src/js/dom/event/viewportEvents.ts"],"names":[],"mappings":"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"}
@@ -12,41 +12,47 @@ import type { TWhenTrigger } from '../when/when.js';
12
12
  * when you don't have the chance to use the custom elements API instead
13
13
  *
14
14
  * @feature Specify what you want to select and get notified each time a node like this appears in the dom
15
+ * @feature Promise based API
16
+ * @feature Callback support
15
17
  * @feature Monitor added nodes and existing nodes that have class and id attributes updated
16
18
  *
17
- * @param {String} selector The css selector that we are interested in
18
- * @param {Function} cb The function to call with the newly added node
19
- * @param {TQuerySelectorLiveSettings} [settings={}] An optional settings object to specify things like the rootNode to monitor, etc...
20
- * @return {TQuerySelectorLiveApi} An object with a cancel method to stop the query listening
19
+ * @param {String} selector The css selector that we are interested in
20
+ * @param {Function} cb The function to call with the newly added node
21
+ * @param {TQuerySelectorLiveSettings} [settings={}] An optional settings object to specify things like the rootNode to monitor, etc...
22
+ * @return {SPromise<HTMLElement>} An SPromise instance on which to listen for nodes using the "node" event
21
23
  *
22
- * @setting {HTMLElement} [$rootNode=document] The root node from where to observe childs
23
- * @setting {Function} [afterFirst=undefined] A function to call after the first node has been found
24
- * @setting {Boolean} [firstOnly=false] If true, the query will stop after the first node has been found
25
- * @setting {TWhenTrigger} [when=undefined] A when trigger to wait for before executing the callback. Can be direct, inViewport, nearViewport, enterViewport, outOfViewport, interact, visible, domReady, stylesheetsReady or animationEnd
26
- * @setting {Function} [disconnectedCallback=undefined] A function to call when a node is disconnected from the dom
24
+ * @setting {HTMLElement} [rootNode=document] The root node from where to observe childs
25
+ * @setting {Boolean} [once=true] If true, each observed nodes will be handled only once even if they are removed and reinjected in the dom
26
+ * @setting {Function} [afterFirst=null] A function that will be called once the first scan is done
27
+ * @setting {Boolean} [scopes=true] If true, the selector will be searched inside elements with the "s-query-selector-live-scope" attribute as scopes
28
+ * @setting {Boolean} [firstOnly=false] If true, the query will stop after the first matching node is found
29
+ * @setting {TWhenTrigger|string} [when=null] An optional when trigger or array of triggers to wait for before calling the callback with the detected node
30
+ * @setting {Function} [disconnectedCallback=null] An optional callback function that will be called when a previously detected node is removed from the dom
31
+ * @setting {String[]} [attributes=[]] An optional array of attributes to monitor for changes (in addition to class and id)
27
32
  *
28
33
  * @snippet querySelectorLive($1, $2)
29
34
  * querySelectorLive($1, \$elm => {
30
- * $2
35
+ * $2
31
36
  * });
32
37
  *
33
38
  * @example js
34
- * import { querySelectorLive } from '@blackbyte/sugar/dom'
39
+ * import { querySelectorLive } from '@lotsof/sugar/dom'
35
40
  * const query = querySelectorLive('.my-cool-item', (node, api) => {
36
- * // do something here with the detected node
37
- * // call api.cancel if you want to stop listening for this selector
38
- * api.cancel();
41
+ * // do something here with the detected node
42
+ * // call api.cancel if you want to stop listening for this selector
43
+ * api.cancel();
39
44
  * });
40
45
  * // cancel the query manually when needed
41
46
  * query.cancel();
42
47
  *
43
48
  * @since 1.0.0
44
- * @author Olivier Bossel <olivier.bossel@gmail.com> (https://blackbyte.space)
49
+ * @author Olivier Bossel <olivier.bossel@gmail.com> (https://lotsof.dev)
45
50
  */
46
51
  export type TQuerySelectorLiveSettings = {
47
- $rootNode: HTMLElement | Document;
52
+ rootNode: HTMLElement | Document;
48
53
  once: boolean;
49
54
  afterFirst?: Function;
55
+ scopes: boolean;
50
56
  firstOnly: boolean;
51
57
  when?: TWhenTrigger<string>;
52
58
  disconnectedCallback?: ($elm: HTMLElement) => void;
@@ -7,22 +7,26 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import uniqid from '../../string/uniqid.js';
10
11
  import when from '../when/when.js';
11
12
  export default function querySelectorLive(selector, cb, settings, _isFirstLevel = true) {
12
- var _a, _b, _c;
13
- let observer, canceled = false;
14
- const matchedNodes = new WeakMap();
13
+ var _a, _b, _c, _d, _e, _f;
14
+ let noScopeSelector, observer, canceled = false;
15
+ const selectedNodes = [];
15
16
  // extend settings
16
- const finalSettings = Object.assign({ $rootNode: document, once: true, afterFirst: undefined, firstOnly: false, attributes: [], disconnectedCallback: undefined, when: undefined }, (settings !== null && settings !== void 0 ? settings : {}));
17
- // compatibility only
18
- // @ts-ignore
19
- if (finalSettings.rootNode) {
20
- // @ts-ignore
21
- finalSettings.$rootNode = finalSettings.rootNode;
22
- }
17
+ const finalSettings = Object.assign({ rootNode: document, once: true, afterFirst: undefined, scopes: true, firstOnly: false, attributes: [], disconnectedCallback: undefined, when: undefined }, (settings !== null && settings !== void 0 ? settings : {}));
23
18
  const innerQuerySelectorLive = [];
19
+ // process selectors when scopes are true
20
+ if (finalSettings.scopes) {
21
+ noScopeSelector = selector
22
+ .split(',')
23
+ .map((sel) => {
24
+ return `${sel.trim()}:not([s-query-selector-live-scope] ${sel.trim()})`;
25
+ })
26
+ .join(',');
27
+ }
24
28
  function isCanceled() {
25
- return canceled && _isFirstLevel;
29
+ return selectedNodes.length && canceled && _isFirstLevel;
26
30
  }
27
31
  function cancel() {
28
32
  canceled = true;
@@ -31,59 +35,69 @@ export default function querySelectorLive(selector, cb, settings, _isFirstLevel
31
35
  });
32
36
  observer === null || observer === void 0 ? void 0 : observer.disconnect();
33
37
  }
38
+ function handleNode($node) {
39
+ if (isCanceled()) {
40
+ return;
41
+ }
42
+ // reset the "isDisconnected" flag
43
+ if ($node._isDisconnected) {
44
+ delete $node._isDisconnected;
45
+ }
46
+ // callback with our node
47
+ cb === null || cb === void 0 ? void 0 : cb($node, {
48
+ cancel,
49
+ });
50
+ // handle firstOnly setting
51
+ if (finalSettings.firstOnly) {
52
+ cancel();
53
+ }
54
+ // mark our node as selected at least 1 time
55
+ if (!selectedNodes.includes($node)) {
56
+ selectedNodes.push($node);
57
+ }
58
+ // mark our node as selected at least 1 time
59
+ if (!selectedNodes.includes($node)) {
60
+ selectedNodes.push($node);
61
+ }
62
+ // disconnected callback
63
+ if (finalSettings.disconnectedCallback) {
64
+ let mutationTimeout;
65
+ if ($node.parentNode) {
66
+ const disconnectObserver = new MutationObserver((mutations) => {
67
+ clearTimeout(mutationTimeout);
68
+ mutationTimeout = setTimeout(() => {
69
+ var _a;
70
+ if (!$node.parentNode && !$node._isDisconnected) {
71
+ $node._isDisconnected = true;
72
+ (_a = finalSettings.disconnectedCallback) === null || _a === void 0 ? void 0 : _a.call(finalSettings, $node);
73
+ disconnectObserver.disconnect();
74
+ }
75
+ });
76
+ });
77
+ disconnectObserver.observe($node.parentNode, {
78
+ childList: true,
79
+ });
80
+ }
81
+ }
82
+ }
34
83
  function processNode($node, sel) {
35
84
  return __awaiter(this, void 0, void 0, function* () {
36
- // if is canceled
37
- if (isCanceled()) {
38
- return;
39
- }
40
- // if the process has been canceled or the node is not an element
41
85
  if (!$node.matches || isCanceled()) {
42
86
  return;
43
87
  }
44
- // if already matched and "once" setting is true
45
- if (finalSettings.once && matchedNodes.has($node)) {
46
- return;
47
- }
48
- // if not match
49
- if (!$node.matches(selector)) {
50
- return;
51
- }
52
- // track matched nodes
53
- matchedNodes.set($node, true);
54
- // when
55
- if (finalSettings.when) {
56
- yield when($node, [finalSettings.when]);
57
- if (isCanceled()) {
58
- return;
88
+ // if the node match and has not already been emitted
89
+ if ($node.matches(selector) &&
90
+ (!finalSettings.once || !selectedNodes.includes($node))) {
91
+ // handle the "when" setting
92
+ if (finalSettings.when) {
93
+ yield when($node, [finalSettings.when]);
94
+ if (isCanceled()) {
95
+ return;
96
+ }
97
+ handleNode($node);
59
98
  }
60
- }
61
- // handle node
62
- // callback with our node
63
- cb === null || cb === void 0 ? void 0 : cb($node, {
64
- cancel,
65
- });
66
- // handle firstOnly setting
67
- if (finalSettings.firstOnly) {
68
- cancel();
69
- }
70
- // disconnected callback
71
- if (finalSettings.disconnectedCallback) {
72
- let mutationTimeout;
73
- if ($node.parentNode) {
74
- const disconnectObserver = new MutationObserver((mutations) => {
75
- clearTimeout(mutationTimeout);
76
- mutationTimeout = setTimeout(() => {
77
- var _a;
78
- if (!$node.parentNode) {
79
- (_a = finalSettings.disconnectedCallback) === null || _a === void 0 ? void 0 : _a.call(finalSettings, $node);
80
- disconnectObserver.disconnect();
81
- }
82
- });
83
- });
84
- disconnectObserver.observe($node.parentNode, {
85
- childList: true,
86
- });
99
+ else {
100
+ handleNode($node);
87
101
  }
88
102
  }
89
103
  // search inside our node
@@ -99,50 +113,103 @@ export default function querySelectorLive(selector, cb, settings, _isFirstLevel
99
113
  processNode($node, sel);
100
114
  });
101
115
  }
102
- observer = new MutationObserver((mutations, obs) => {
103
- mutations.forEach((mutation) => {
104
- if (mutation.attributeName) {
105
- processNode(mutation.target, selector);
116
+ if (finalSettings.scopes &&
117
+ (finalSettings.rootNode === document ||
118
+ // @ts-ignore
119
+ !((_b = (_a = finalSettings.rootNode) === null || _a === void 0 ? void 0 : _a.hasAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, 's-query-selector-live-scope')))) {
120
+ let isAfterCalledByScopeId = {};
121
+ // search for scopes and handle nested nodes
122
+ innerQuerySelectorLive.push(querySelectorLive('[s-query-selector-live-scope]', ($scope) => __awaiter(this, void 0, void 0, function* () {
123
+ // get or generate a new id
124
+ const scopeId = $scope.id || `s-query-selector-live-scope-${uniqid()}`;
125
+ if ($scope.id !== scopeId) {
126
+ $scope.setAttribute('id', scopeId);
106
127
  }
107
- if (mutation.addedNodes) {
108
- mutation.addedNodes.forEach(($node) => {
109
- processNode($node, selector);
110
- });
128
+ if (isCanceled()) {
129
+ return;
111
130
  }
112
- });
113
- });
114
- let observeSettings = {
115
- childList: true,
116
- subtree: true,
117
- };
118
- selector
119
- .split(',')
120
- .map((l) => l.trim())
121
- .forEach((sel) => {
122
- const attrMatches = sel.match(/\[[^\]]+\]/gm);
123
- if (attrMatches === null || attrMatches === void 0 ? void 0 : attrMatches.length) {
124
- attrMatches.forEach((attrStr) => {
125
- var _a, _b;
126
- const attrName = attrStr
127
- .split('=')[0]
128
- .replace(/^\[/, '')
129
- .replace(/\]$/, '');
130
- if (!((_a = finalSettings.attributes) === null || _a === void 0 ? void 0 : _a.includes(attrName))) {
131
- (_b = finalSettings.attributes) === null || _b === void 0 ? void 0 : _b.push(attrName);
131
+ yield when($scope, ['nearViewport']);
132
+ if (isCanceled()) {
133
+ return;
134
+ }
135
+ innerQuerySelectorLive.push(querySelectorLive(selector, ($elm) => {
136
+ processNode($elm, selector);
137
+ }, Object.assign({}, settings, {
138
+ rootNode: $scope,
139
+ scopes: false,
140
+ afterFirst() {
141
+ if (isAfterCalledByScopeId[scopeId] &&
142
+ // @ts-ignore
143
+ $scope._sQuerySelectorLiveScopeDirty) {
144
+ return;
145
+ }
146
+ // @ts-ignore
147
+ $scope._sQuerySelectorLiveScopeDirty = true;
148
+ isAfterCalledByScopeId[scopeId] = true;
149
+ $scope.classList.add('ready');
150
+ $scope.setAttribute('ready', 'true');
151
+ },
152
+ }), true));
153
+ }), Object.assign({}, settings, {
154
+ firstOnly: false,
155
+ scopes: false,
156
+ }), false));
157
+ // handle things not in a scope
158
+ innerQuerySelectorLive.push(querySelectorLive(noScopeSelector, ($elm) => {
159
+ // findAndProcess($scope, selector);
160
+ processNode($elm, selector);
161
+ }, Object.assign({}, settings, {
162
+ scopes: false,
163
+ }), false));
164
+ // after first callback
165
+ (_c = finalSettings.afterFirst) === null || _c === void 0 ? void 0 : _c.call(finalSettings);
166
+ }
167
+ else {
168
+ observer = new MutationObserver((mutations, obs) => {
169
+ mutations.forEach((mutation) => {
170
+ if (mutation.attributeName) {
171
+ processNode(mutation.target, selector);
172
+ }
173
+ if (mutation.addedNodes) {
174
+ mutation.addedNodes.forEach(($node) => {
175
+ processNode($node, selector);
176
+ });
132
177
  }
133
178
  });
179
+ });
180
+ let observeSettings = {
181
+ childList: true,
182
+ subtree: true,
183
+ };
184
+ selector
185
+ .split(',')
186
+ .map((l) => l.trim())
187
+ .forEach((sel) => {
188
+ const attrMatches = sel.match(/\[[^\]]+\]/gm);
189
+ if (attrMatches === null || attrMatches === void 0 ? void 0 : attrMatches.length) {
190
+ attrMatches.forEach((attrStr) => {
191
+ var _a, _b;
192
+ const attrName = attrStr
193
+ .split('=')[0]
194
+ .replace(/^\[/, '')
195
+ .replace(/\]$/, '');
196
+ if (!((_a = finalSettings.attributes) === null || _a === void 0 ? void 0 : _a.includes(attrName))) {
197
+ (_b = finalSettings.attributes) === null || _b === void 0 ? void 0 : _b.push(attrName);
198
+ }
199
+ });
200
+ }
201
+ });
202
+ if ((_d = finalSettings.attributes) === null || _d === void 0 ? void 0 : _d.length) {
203
+ observeSettings = Object.assign(Object.assign({}, observeSettings), { attributes: ((_e = finalSettings.attributes) === null || _e === void 0 ? void 0 : _e.length) ? true : false, attributeFilter: finalSettings.attributes.length
204
+ ? finalSettings.attributes
205
+ : undefined });
134
206
  }
135
- });
136
- if ((_a = finalSettings.attributes) === null || _a === void 0 ? void 0 : _a.length) {
137
- observeSettings = Object.assign(Object.assign({}, observeSettings), { attributes: ((_b = finalSettings.attributes) === null || _b === void 0 ? void 0 : _b.length) ? true : false, attributeFilter: finalSettings.attributes.length
138
- ? finalSettings.attributes
139
- : undefined });
207
+ observer.observe(finalSettings.rootNode, observeSettings);
208
+ // first query
209
+ findAndProcess(finalSettings.rootNode, selector);
210
+ // after first callback
211
+ (_f = finalSettings.afterFirst) === null || _f === void 0 ? void 0 : _f.call(finalSettings);
140
212
  }
141
- observer.observe(finalSettings.$rootNode, observeSettings);
142
- // first query
143
- findAndProcess(finalSettings.$rootNode, selector);
144
- // after first callback
145
- (_c = finalSettings.afterFirst) === null || _c === void 0 ? void 0 : _c.call(finalSettings);
146
213
  return {
147
214
  cancel,
148
215
  };
@@ -1 +1 @@
1
- {"version":3,"file":"querySelectorLive.js","sourceRoot":"","sources":["../../../../src/js/dom/query/querySelectorLive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"querySelectorLive.js","sourceRoot":"","sources":["../../../../src/js/dom/query/querySelectorLive.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAE5C,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAwEnC,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,QAAgB,EAChB,EAA8B,EAC9B,QAA8C,EAC9C,aAAa,GAAG,IAAI;;IAEpB,IAAI,eAAe,EACjB,QAAQ,EACR,QAAQ,GAAG,KAAK,CAAC;IAEnB,MAAM,aAAa,GAAkB,EAAE,CAAC;IAExC,kBAAkB;IAClB,MAAM,aAAa,mBACjB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,SAAS,EACrB,MAAM,EAAE,IAAI,EACZ,SAAS,EAAE,KAAK,EAChB,UAAU,EAAE,EAAE,EACd,oBAAoB,EAAE,SAAS,EAC/B,IAAI,EAAE,SAAS,IACZ,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CACpB,CAAC;IAEF,MAAM,sBAAsB,GAA4B,EAAE,CAAC;IAE3D,yCAAyC;IACzC,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;QACzB,eAAe,GAAG,QAAQ;aACvB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,sCAAsC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC;QAC1E,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAED,SAAS,UAAU;QACjB,OAAO,aAAa,CAAC,MAAM,IAAI,QAAQ,IAAI,aAAa,CAAC;IAC3D,CAAC;IAED,SAAS,MAAM;QACb,QAAQ,GAAG,IAAI,CAAC;QAEhB,sBAAsB,CAAC,OAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE;YACtD,oBAAoB,CAAC,MAAM,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,EAAE,CAAC;IACzB,CAAC;IAED,SAAS,UAAU,CAAC,KAAkB;QACpC,IAAI,UAAU,EAAE,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,IAAU,KAAM,CAAC,eAAe,EAAE,CAAC;YACjC,OAAa,KAAM,CAAC,eAAe,CAAC;QACtC,CAAC;QAED,yBAAyB;QACzB,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAG,KAAK,EAAE;YACV,MAAM;SACP,CAAC,CAAC;QAEH,2BAA2B;QAC3B,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YAC5B,MAAM,EAAE,CAAC;QACX,CAAC;QAED,4CAA4C;QAC5C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QAED,4CAA4C;QAC5C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QAED,wBAAwB;QACxB,IAAI,aAAa,CAAC,oBAAoB,EAAE,CAAC;YACvC,IAAI,eAAe,CAAC;YACpB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACrB,MAAM,kBAAkB,GAAG,IAAI,gBAAgB,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC5D,YAAY,CAAC,eAAe,CAAC,CAAC;oBAC9B,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE;;wBAChC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAO,KAAM,CAAC,eAAe,EAAE,CAAC;4BACjD,KAAM,CAAC,eAAe,GAAG,IAAI,CAAC;4BACpC,MAAA,aAAa,CAAC,oBAAoB,8DAAG,KAAK,CAAC,CAAC;4BAC5C,kBAAkB,CAAC,UAAU,EAAE,CAAC;wBAClC,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE;oBAC3C,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAe,WAAW,CAAC,KAAkB,EAAE,GAAW;;YACxD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,UAAU,EAAE,EAAE,CAAC;gBACnC,OAAO;YACT,CAAC;YAED,qDAAqD;YACrD,IACE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACvB,CAAC,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EACvD,CAAC;gBACD,4BAA4B;gBAC5B,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;oBACxC,IAAI,UAAU,EAAE,EAAE,CAAC;wBACjB,OAAO;oBACT,CAAC;oBACD,UAAU,CAAC,KAAK,CAAC,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,KAAK,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;YAED,yBAAyB;YACzB,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;KAAA;IAED,SAAS,cAAc,CAAC,KAAkB,EAAE,GAAW;QACrD,IAAI,CAAC,KAAK,CAAC,gBAAgB,IAAI,UAAU,EAAE,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACtB,WAAW,CAAC,KAAoB,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IACE,aAAa,CAAC,MAAM;QACpB,CAAC,aAAa,CAAC,QAAQ,KAAK,QAAQ;YAClC,aAAa;YACb,CAAC,CAAA,MAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,YAAY,mDAAG,6BAA6B,CAAC,CAAA,CAAC,EACzE,CAAC;QACD,IAAI,sBAAsB,GAAG,EAAE,CAAC;QAEhC,4CAA4C;QAC5C,sBAAsB,CAAC,IAAI,CACzB,iBAAiB,CACf,+BAA+B,EAC/B,CAAO,MAAM,EAAE,EAAE;YACf,2BAA2B;YAC3B,MAAM,OAAO,GACX,MAAM,CAAC,EAAE,IAAI,+BAA+B,MAAM,EAAE,EAAE,CAAC;YACzD,IAAI,MAAM,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;gBAC1B,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACrC,CAAC;YAED,IAAI,UAAU,EAAE,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;YAErC,IAAI,UAAU,EAAE,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,sBAAsB,CAAC,IAAI,CACzB,iBAAiB,CACf,QAAQ,EACR,CAAC,IAAI,EAAE,EAAE;gBACP,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC9B,CAAC,EACD,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;gBAC1B,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,KAAK;gBACb,UAAU;oBACR,IACE,sBAAsB,CAAC,OAAO,CAAC;wBAC/B,aAAa;wBACb,MAAM,CAAC,6BAA6B,EACpC,CAAC;wBACD,OAAO;oBACT,CAAC;oBACD,aAAa;oBACb,MAAM,CAAC,6BAA6B,GAAG,IAAI,CAAC;oBAC5C,sBAAsB,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;oBACvC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACvC,CAAC;aACF,CAAC,EACF,IAAI,CACL,CACF,CAAC;QACJ,CAAC,CAAA,EACD,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;YAC1B,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,KAAK;SACd,CAAC,EACF,KAAK,CACN,CACF,CAAC;QACF,+BAA+B;QAC/B,sBAAsB,CAAC,IAAI,CACzB,iBAAiB,CACf,eAAe,EACf,CAAC,IAAI,EAAE,EAAE;YACP,oCAAoC;YACpC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC9B,CAAC,EACD,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;YAC1B,MAAM,EAAE,KAAK;SACd,CAAC,EACF,KAAK,CACN,CACF,CAAC;QACF,uBAAuB;QACvB,MAAA,aAAa,CAAC,UAAU,6DAAI,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;YACjD,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC7B,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;oBAC3B,WAAW,CAAC,QAAQ,CAAC,MAAqB,EAAE,QAAQ,CAAC,CAAC;gBACxD,CAAC;gBACD,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;oBACxB,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBACpC,WAAW,CAAC,KAAoB,EAAE,QAAQ,CAAC,CAAC;oBAC9C,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,eAAe,GAAyB;YAC1C,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,QAAQ;aACL,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC9C,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,EAAE,CAAC;gBACxB,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;;oBAC9B,MAAM,QAAQ,GAAG,OAAO;yBACrB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;yBACb,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;yBAClB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACtB,IAAI,CAAC,CAAA,MAAA,aAAa,CAAC,UAAU,0CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA,EAAE,CAAC;wBAClD,MAAA,aAAa,CAAC,UAAU,0CAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,IAAI,MAAA,aAAa,CAAC,UAAU,0CAAE,MAAM,EAAE,CAAC;YACrC,eAAe,mCACV,eAAe,KAClB,UAAU,EAAE,CAAA,MAAA,aAAa,CAAC,UAAU,0CAAE,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAC3D,eAAe,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM;oBAC9C,CAAC,CAAC,aAAa,CAAC,UAAU;oBAC1B,CAAC,CAAC,SAAS,GACd,CAAC;QACJ,CAAC;QAED,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAE1D,cAAc;QACd,cAAc,CAAC,aAAa,CAAC,QAAuB,EAAE,QAAQ,CAAC,CAAC;QAChE,uBAAuB;QACvB,MAAA,aAAa,CAAC,UAAU,6DAAI,CAAC;IAC/B,CAAC;IAED,OAAO;QACL,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -1,4 +1,5 @@
1
+ import disableTitleTooltips from './disableTitleTooltips.js';
2
+ import features from './features.js';
1
3
  import scrollClasses from './scrollClasses.js';
2
4
  import sectionClasses from './sectionClasses.js';
3
- import scrollProperties from './scrollProperties.js';
4
- export { scrollProperties as __scrollProperties, scrollClasses as __scrolledClasses, sectionClasses as __sectionClasses, scrollProperties, scrollClasses, sectionClasses, };
5
+ export { disableTitleTooltips as __disableTitleTooltips, features as __features, scrollClasses as __scrolledClasses, sectionClasses as __sectionClasses, disableTitleTooltips, features, scrollClasses, sectionClasses, };
@@ -1,5 +1,6 @@
1
+ import disableTitleTooltips from './disableTitleTooltips.js';
2
+ import features from './features.js';
1
3
  import scrollClasses from './scrollClasses.js';
2
4
  import sectionClasses from './sectionClasses.js';
3
- import scrollProperties from './scrollProperties.js';
4
- export { scrollProperties as __scrollProperties, scrollClasses as __scrolledClasses, sectionClasses as __sectionClasses, scrollProperties, scrollClasses, sectionClasses, };
5
+ export { disableTitleTooltips as __disableTitleTooltips, features as __features, scrollClasses as __scrolledClasses, sectionClasses as __sectionClasses, disableTitleTooltips, features, scrollClasses, sectionClasses, };
5
6
  //# sourceMappingURL=_exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_exports.js","sourceRoot":"","sources":["../../../src/js/feature/_exports.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,OAAO,EACL,gBAAgB,IAAI,kBAAkB,EACtC,aAAa,IAAI,iBAAiB,EAClC,cAAc,IAAI,gBAAgB,EAClC,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,CAAC"}
1
+ {"version":3,"file":"_exports.js","sourceRoot":"","sources":["../../../src/js/feature/_exports.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EACL,oBAAoB,IAAI,sBAAsB,EAC9C,QAAQ,IAAI,UAAU,EACtB,aAAa,IAAI,iBAAiB,EAClC,cAAc,IAAI,gBAAgB,EAClC,oBAAoB,EACpB,QAAQ,EACR,aAAa,EACb,cAAc,GACf,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @name disableTitleTooltips
3
+ * @namespace js.dom.feature
4
+ * @type Function
5
+ * @platform js
6
+ * @status stable
7
+ *
8
+ * This function allows you to disable the ugly tooltips that displays when hover a link/image/etc... with a "title" attribute.
9
+ * If you want to support accessibility, make use of the "aria-label" attribute instead
10
+ *
11
+ * @snippet disableTitleTooltips();
12
+ *
13
+ * @example js
14
+ * import { disableTitleTooltips } from '@blackbyte/sugar/features';
15
+ * disableTitleTooltips();
16
+ *
17
+ * @since 1.0.0
18
+ * @author Olivier Bossel <olivier.bossel@gmail.com> (https://blackbyte.space)
19
+ */
20
+ export default function disableTitleTooltips(): void;
@@ -0,0 +1,26 @@
1
+ import { querySelectorLive } from '@blackbyte/sugar/dom';
2
+ /**
3
+ * @name disableTitleTooltips
4
+ * @namespace js.dom.feature
5
+ * @type Function
6
+ * @platform js
7
+ * @status stable
8
+ *
9
+ * This function allows you to disable the ugly tooltips that displays when hover a link/image/etc... with a "title" attribute.
10
+ * If you want to support accessibility, make use of the "aria-label" attribute instead
11
+ *
12
+ * @snippet disableTitleTooltips();
13
+ *
14
+ * @example js
15
+ * import { disableTitleTooltips } from '@blackbyte/sugar/features';
16
+ * disableTitleTooltips();
17
+ *
18
+ * @since 1.0.0
19
+ * @author Olivier Bossel <olivier.bossel@gmail.com> (https://blackbyte.space)
20
+ */
21
+ export default function disableTitleTooltips() {
22
+ querySelectorLive('[title]:is(a,img)', ($elm) => {
23
+ $elm.removeAttribute('title');
24
+ });
25
+ }
26
+ //# sourceMappingURL=disableTitleTooltips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disableTitleTooltips.js","sourceRoot":"","sources":["../../../src/js/feature/disableTitleTooltips.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB;IAC1C,iBAAiB,CAAC,mBAAmB,EAAE,CAAC,IAAiB,EAAE,EAAE;QAC3D,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { TScrollClassesSettings } from './scrollClasses.js';
2
+ import { TSectionClassesSettings } from './sectionClasses.js';
3
+ /**
4
+ * @name features
5
+ * @namespace js.dom.feature
6
+ * @type Function
7
+ * @platform js
8
+ * @status stable
9
+ *
10
+ * This function allows you to activate some features like the `disableTitleTooltip`,`sectionClasses`, etc...
11
+ * Available features are:
12
+ * - `disableTitleTooltip`
13
+ * - `scrollClasses`
14
+ * - `sectionClasses`
15
+ *
16
+ * @param {'all' | TFeaturesSettings} [settings={}] The features you want to activate with some settings associated if needed
17
+ *
18
+ * @snippet features($1);
19
+ *
20
+ * @example js
21
+ * import { features } from '@blackbyte/sugar/features';
22
+ * features('all');
23
+ *
24
+ * @since 1.0.0
25
+ * @author Olivier Bossel <olivier.bossel@gmail.com> (https://blackbyte.space)
26
+ */
27
+ export type TFeaturesSettings = {
28
+ disableTitleTooltips?: boolean;
29
+ scrollClasses?: boolean | TScrollClassesSettings;
30
+ sectionClasses?: boolean | TSectionClassesSettings;
31
+ };
32
+ export default function features(features: 'all' | TFeaturesSettings): void;
@@ -0,0 +1,19 @@
1
+ import disableTitleTooltips from './disableTitleTooltips.js';
2
+ import scrollClasses from './scrollClasses.js';
3
+ import sectionClasses from './sectionClasses.js';
4
+ export default function features(features) {
5
+ if (features === 'all' || features.disableTitleTooltips) {
6
+ disableTitleTooltips();
7
+ }
8
+ if (features === 'all' || features.scrollClasses) {
9
+ scrollClasses(features === 'all'
10
+ ? undefined
11
+ : features.scrollClasses);
12
+ }
13
+ if (features === 'all' || features.sectionClasses) {
14
+ sectionClasses(features === 'all'
15
+ ? undefined
16
+ : features.sectionClasses);
17
+ }
18
+ }
19
+ //# sourceMappingURL=features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.js","sourceRoot":"","sources":["../../../src/js/feature/features.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,aAAyC,MAAM,oBAAoB,CAAC;AAC3E,OAAO,cAA2C,MAAM,qBAAqB,CAAC;AAiC9E,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,QAAmC;IAClE,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QACxD,oBAAoB,EAAE,CAAC;IACzB,CAAC;IACD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QACjD,aAAa,CACX,QAAQ,KAAK,KAAK;YAChB,CAAC,CAAC,SAAS;YACX,CAAC,CAAE,QAAQ,CAAC,aAAwC,CACvD,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;QAClD,cAAc,CACZ,QAAQ,KAAK,KAAK;YAChB,CAAC,CAAC,SAAS;YACX,CAAC,CAAE,QAAQ,CAAC,cAA0C,CACzD,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -34,12 +34,12 @@
34
34
  */
35
35
  import { querySelectorLive, viewportEvents } from '@blackbyte/sugar/dom';
36
36
  export default function sectionClasses(settings) {
37
- const finalSettings = Object.assign({ inClass: '-in-viewport', keepInClassWhenAbove: false, fromAboveClass: '-from-above', fromBelowClass: '-from-below', aboveClass: '-above-viewport', belowClass: '-below-viewport', offset: 25 }, settings);
37
+ const finalSettings = Object.assign({ inClass: '-in-viewport', keepInClassWhenAbove: false, fromAboveClass: '-from-above', fromBelowClass: '-from-below', aboveClass: '-above-viewport', belowClass: '-below-viewport', offset: 25, once: false }, settings);
38
38
  querySelectorLive('section', ($section) => {
39
39
  // listen for enter/leave viewport
40
40
  viewportEvents($section, {
41
41
  offset: finalSettings.offset,
42
- once: finalSettings.once,
42
+ once: finalSettings.once
43
43
  });
44
44
  const enterHandler = () => {
45
45
  // add the inClass on the section
@@ -1 +1 @@
1
- {"version":3,"file":"sectionClasses.js","sourceRoot":"","sources":["../../../src/js/feature/sectionClasses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sectionClasses.js","sourceRoot":"","sources":["../../../src/js/feature/sectionClasses.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAaxE,MAAM,CAAC,OAAO,UAAU,cAAc,CACpC,QAA2C;IAE3C,MAAM,aAAa,mBACjB,OAAO,EAAE,cAAc,EACvB,oBAAoB,EAAE,KAAK,EAC3B,cAAc,EAAE,aAAa,EAC7B,cAAc,EAAE,aAAa,EAC7B,UAAU,EAAE,iBAAiB,EAC7B,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,KAAK,IACR,QAAQ,CACZ,CAAA;IAED,iBAAiB,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;QACxC,kCAAkC;QAClC,cAAc,CAAC,QAAQ,EAAE;YACvB,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,IAAI,EAAE,aAAa,CAAC,IAAI;SACzB,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,iCAAiC;YACjC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAE7C,6BAA6B;YAC7B,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;YACnD,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;YAEnD,oCAAoC;YACpC,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;gBACvB,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;gBAC5D,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;gBAC5D,QAAQ,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;gBACvE,QAAQ,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;YACzE,CAAC;QACH,CAAC,CAAA;QAED,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,oCAAoC;YACpC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;YACvD,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;QACzD,CAAC,CAAA;QAED,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;QACtD,CAAC,CAAA;QAED,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,iCAAiC;YACjC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;QACtD,CAAC,CAAA;QAED,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,4CAA4C;YAC5C,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;gBACxC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAClD,CAAC;YAED,oCAAoC;YACpC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClD,CAAC,CAAA;QAED,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,qBAAqB;YACrB,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YAEhD,0BAA0B;YAC1B,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAClD,CAAC,CAAA;QAED,QAAQ,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;QACpE,QAAQ,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;QACpE,QAAQ,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;QACpE,QAAQ,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,CAAA;QACpE,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;QACzD,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@blackbyte/sugar",
3
3
  "description": "The toolkit that you missed... like a sugar in your coffee!",
4
- "version": "1.0.0-beta.6",
4
+ "version": "1.0.0-beta.7",
5
5
  "keywords": [
6
6
  "javascript",
7
7
  "typescript",