@soyfri/template 1.0.10-beta.1 → 1.0.10-beta.2

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.
@@ -10,7 +10,11 @@ export declare class EventHandlerUtil {
10
10
  [handlerId: string]: EventMeta;
11
11
  };
12
12
  };
13
+ private static setEventMetasByName;
14
+ private static getEventMetaByName;
13
15
  private static setEventMetaByNameAndHandlerId;
16
+ private static getEventMetaByHandlerId;
17
+ private static setFiredByNameAndHandlerId;
14
18
  private static addEvent;
15
19
  private static removeEvent;
16
20
  static trigger(element: HTMLElement, name: string, target?: any, _e?: Event): boolean;
@@ -2,6 +2,12 @@ import { DataUtil } from './_DataUtil';
2
2
  import { getUniqueIdWithPrefix } from './_TypesHelpers';
3
3
  export class EventHandlerUtil {
4
4
  static store = {};
5
+ static setEventMetasByName(name, handlers) {
6
+ EventHandlerUtil.store[name] = handlers;
7
+ }
8
+ static getEventMetaByName(name) {
9
+ return EventHandlerUtil.store[name];
10
+ }
5
11
  static setEventMetaByNameAndHandlerId(name, handlerId, meta) {
6
12
  if (EventHandlerUtil.store[name]) {
7
13
  EventHandlerUtil.store[name][handlerId] = meta;
@@ -10,6 +16,23 @@ export class EventHandlerUtil {
10
16
  EventHandlerUtil.store[name] = {};
11
17
  EventHandlerUtil.store[name][handlerId] = meta;
12
18
  }
19
+ //@ts-ignore
20
+ static getEventMetaByHandlerId(name, handlerId) {
21
+ const handlersIds = EventHandlerUtil.store[name];
22
+ if (!handlersIds) {
23
+ return;
24
+ }
25
+ return handlersIds[handlerId];
26
+ }
27
+ //@ts-ignore
28
+ static setFiredByNameAndHandlerId(name, handerId, fired) {
29
+ const meta = EventHandlerUtil.getEventMetaByHandlerId(name, handerId);
30
+ if (!meta) {
31
+ return;
32
+ }
33
+ meta.fired = fired;
34
+ EventHandlerUtil.setEventMetaByNameAndHandlerId(name, handerId, meta);
35
+ }
13
36
  static addEvent(element, name, callback, one = false) {
14
37
  const handlerId = getUniqueIdWithPrefix('event');
15
38
  const data = DataUtil.get(element, name);
@@ -1,5 +1,5 @@
1
- import {DataUtil} from './_DataUtil'
2
- import {getUniqueIdWithPrefix} from './_TypesHelpers'
1
+ import { DataUtil } from './_DataUtil'
2
+ import { getUniqueIdWithPrefix } from './_TypesHelpers'
3
3
 
4
4
  export interface EventMeta {
5
5
  name: string
@@ -15,6 +15,24 @@ export class EventHandlerUtil {
15
15
  }
16
16
  } = {}
17
17
 
18
+ private static setEventMetasByName(
19
+ name: string,
20
+ handlers: {
21
+ [handlerId: string]: EventMeta
22
+ }
23
+ ): void {
24
+ EventHandlerUtil.store[name] = handlers
25
+ }
26
+
27
+ private static getEventMetaByName(name: string):
28
+ | {
29
+ [handlerId: string]: EventMeta
30
+ }
31
+ | undefined {
32
+ return EventHandlerUtil.store[name]
33
+ }
34
+
35
+
18
36
  private static setEventMetaByNameAndHandlerId(
19
37
  name: string,
20
38
  handlerId: string,
@@ -28,6 +46,25 @@ export class EventHandlerUtil {
28
46
  EventHandlerUtil.store[name][handlerId] = meta
29
47
  }
30
48
 
49
+ //@ts-ignore
50
+ private static getEventMetaByHandlerId(name: string, handlerId: string): EventMeta | undefined {
51
+ const handlersIds = EventHandlerUtil.store[name]
52
+ if (!handlersIds) {
53
+ return
54
+ }
55
+ return handlersIds[handlerId]
56
+ }
57
+
58
+ //@ts-ignore
59
+ private static setFiredByNameAndHandlerId(name: string, handerId: string, fired: boolean): void {
60
+ const meta = EventHandlerUtil.getEventMetaByHandlerId(name, handerId)
61
+ if (!meta) {
62
+ return
63
+ }
64
+
65
+ meta.fired = fired
66
+ EventHandlerUtil.setEventMetaByNameAndHandlerId(name, handerId, meta)
67
+ }
31
68
 
32
69
  private static addEvent(
33
70
  element: HTMLElement,
@@ -30,6 +30,7 @@ declare class MenuComponent {
30
30
  private _isItemSubShown;
31
31
  private _isItemDropdownPermanent;
32
32
  private _isItemParentShown;
33
+ private _isItemSubElement;
33
34
  private _hasItemSub;
34
35
  private _getItemLinkElement;
35
36
  private _getItemToggleElement;
@@ -41,6 +42,7 @@ declare class MenuComponent {
41
42
  private _hideAccordion;
42
43
  private _hideAccordions;
43
44
  private _reset;
45
+ private _destroy;
44
46
  private _update;
45
47
  private _hide;
46
48
  private _show;
@@ -262,6 +262,10 @@ class MenuComponent {
262
262
  _isItemParentShown = (item) => {
263
263
  return getElementParents(item, '.menu-item.show').length > 0;
264
264
  };
265
+ //@ts-ignore
266
+ _isItemSubElement = (item) => {
267
+ return item.classList.contains('menu-sub');
268
+ };
265
269
  // Test if item has sub
266
270
  _hasItemSub = (item) => {
267
271
  return item.classList.contains('menu-item') && item.hasAttribute('data-kt-menu-trigger');
@@ -466,6 +470,8 @@ class MenuComponent {
466
470
  }
467
471
  } // updated
468
472
  };
473
+ //@ts-ignore
474
+ _destroy = () => { };
469
475
  // Update all item state classes if item sub type changed
470
476
  _update = () => {
471
477
  const items = this.element.querySelectorAll('.menu-item[data-kt-menu-trigger]');
@@ -759,6 +765,8 @@ class MenuComponent {
759
765
  const item = menuItems[i];
760
766
  const menuObj = MenuComponent.getInstance(item);
761
767
  if (menuObj && menuObj.getItemSubType(item) === 'dropdown') {
768
+ //@ts-ignore
769
+ const menu = menuObj.getElement();
762
770
  const sub = menuObj.getItemSubElement(item);
763
771
  if (item === e.target || item.contains(e.target)) {
764
772
  continue;
@@ -1,4 +1,4 @@
1
- import {createPopper, VirtualElement} from '@popperjs/core'
1
+ import { createPopper, VirtualElement } from '@popperjs/core'
2
2
  import {
3
3
  getElementChild,
4
4
  getElementParents,
@@ -352,7 +352,10 @@ class MenuComponent {
352
352
  private _isItemParentShown = (item: HTMLElement) => {
353
353
  return getElementParents(item, '.menu-item.show').length > 0
354
354
  }
355
-
355
+ //@ts-ignore
356
+ private _isItemSubElement = (item: HTMLElement) => {
357
+ return item.classList.contains('menu-sub')
358
+ }
356
359
  // Test if item has sub
357
360
  private _hasItemSub = (item: HTMLElement) => {
358
361
  return item.classList.contains('menu-item') && item.hasAttribute('data-kt-menu-trigger')
@@ -599,7 +602,8 @@ class MenuComponent {
599
602
  } // updated
600
603
  }
601
604
 
602
-
605
+ //@ts-ignore
606
+ private _destroy = () => { }
603
607
  // Update all item state classes if item sub type changed
604
608
  private _update = () => {
605
609
  const items = this.element.querySelectorAll('.menu-item[data-kt-menu-trigger]')
@@ -952,6 +956,8 @@ class MenuComponent {
952
956
  const item = menuItems[i] as HTMLElement
953
957
  const menuObj = MenuComponent.getInstance(item) as MenuComponent
954
958
  if (menuObj && menuObj.getItemSubType(item) === 'dropdown') {
959
+ //@ts-ignore
960
+ const menu = menuObj.getElement()
955
961
  const sub = menuObj.getItemSubElement(item) as HTMLElement
956
962
  if (item === e.target || item.contains(e.target as HTMLElement)) {
957
963
  continue
@@ -1078,4 +1084,4 @@ class MenuComponent {
1078
1084
  }
1079
1085
  }
1080
1086
 
1081
- export {MenuComponent, defaultMenuOptions}
1087
+ export { MenuComponent, defaultMenuOptions }
@@ -32,6 +32,8 @@ declare class DrawerComponent {
32
32
  private _show;
33
33
  private _createOverlay;
34
34
  private _deleteOverlay;
35
+ private _getDirection;
36
+ private _getWidth;
35
37
  toggle: () => void;
36
38
  show: () => void;
37
39
  hide: () => void;
@@ -192,6 +192,18 @@ class DrawerComponent {
192
192
  this.overlayElement.parentNode.removeChild(this.overlayElement);
193
193
  }
194
194
  };
195
+ //@ts-ignore
196
+ _getDirection = () => {
197
+ return String(this._getOption('direction')) === 'left' ? 'left' : 'right';
198
+ };
199
+ //@ts-ignore
200
+ _getWidth = () => {
201
+ let width = this._getOption('width');
202
+ if (width && width === 'auto') {
203
+ width = getCSS(this.element, 'width');
204
+ }
205
+ return width;
206
+ };
195
207
  ///////////////////////
196
208
  // ** Public API ** //
197
209
  ///////////////////////
@@ -237,8 +237,19 @@ class DrawerComponent {
237
237
  this.overlayElement.parentNode.removeChild(this.overlayElement)
238
238
  }
239
239
  }
240
+ //@ts-ignore
241
+ private _getDirection = () => {
242
+ return String(this._getOption('direction')) === 'left' ? 'left' : 'right'
243
+ }
244
+ //@ts-ignore
245
+ private _getWidth = () => {
246
+ let width = this._getOption('width')
247
+ if (width && width === 'auto') {
248
+ width = getCSS(this.element, 'width')
249
+ }
240
250
 
241
-
251
+ return width
252
+ }
242
253
  ///////////////////////
243
254
  // ** Public API ** //
244
255
  ///////////////////////
@@ -27,6 +27,7 @@ declare class ImageInputComponent {
27
27
  private handlers;
28
28
  private _change;
29
29
  private _cancel;
30
+ private _remove;
30
31
  getInputElement(): HTMLInputElement | null;
31
32
  getElement(): HTMLElement;
32
33
  on: (name: string, handler: Function) => void;
@@ -88,6 +88,27 @@ class ImageInputComponent {
88
88
  // Fire canceled event
89
89
  EventHandlerUtil.trigger(this.element, 'kt.imageinput.canceled', e);
90
90
  };
91
+ //@ts-ignore
92
+ _remove = (e) => {
93
+ e.preventDefault();
94
+ // Fire remove event
95
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.remove', e) === false) {
96
+ return;
97
+ }
98
+ this.element.classList.remove('image-input-changed');
99
+ this.element.classList.add('image-input-empty');
100
+ if (this.wrapperElement) {
101
+ this.wrapperElement.style.setProperty('background-image', 'none');
102
+ }
103
+ if (this.inputElement) {
104
+ this.inputElement.value = '';
105
+ }
106
+ if (this.hiddenElement !== null) {
107
+ this.hiddenElement.value = '1';
108
+ }
109
+ // Fire removed event
110
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.removed', e);
111
+ };
91
112
  ///////////////////////
92
113
  // ** Public API ** //
93
114
  ///////////////////////
@@ -120,8 +120,33 @@ class ImageInputComponent {
120
120
  // Fire canceled event
121
121
  EventHandlerUtil.trigger(this.element, 'kt.imageinput.canceled', e)
122
122
  }
123
+
124
+ //@ts-ignore
125
+ private _remove = (e: Event) => {
126
+ e.preventDefault()
127
+
128
+ // Fire remove event
129
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.remove', e) === false) {
130
+ return
131
+ }
123
132
 
133
+ this.element.classList.remove('image-input-changed')
134
+ this.element.classList.add('image-input-empty')
135
+ if (this.wrapperElement) {
136
+ this.wrapperElement.style.setProperty('background-image', 'none')
137
+ }
124
138
 
139
+ if (this.inputElement) {
140
+ this.inputElement.value = ''
141
+ }
142
+
143
+ if (this.hiddenElement !== null) {
144
+ this.hiddenElement.value = '1'
145
+ }
146
+
147
+ // Fire removed event
148
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.removed', e)
149
+ }
125
150
  ///////////////////////
126
151
  // ** Public API ** //
127
152
  ///////////////////////
@@ -34,6 +34,7 @@ declare class PasswordMeterComponent {
34
34
  constructor(_element: HTMLElement, _options: IPasswordMeterOptions, _queries: IPasswordMeterQueries);
35
35
  private handlers;
36
36
  private visitbility;
37
+ private checkScore;
37
38
  private checkLength;
38
39
  private checkLowerCase;
39
40
  private checkUppercase;
@@ -66,6 +66,10 @@ class PasswordMeterComponent {
66
66
  this.inputElement.focus();
67
67
  }
68
68
  }
69
+ //@ts-ignore
70
+ checkScore() {
71
+ return 0;
72
+ }
69
73
  checkLength() {
70
74
  if (this.inputElement) {
71
75
  return this.inputElement.value.length >= this.options.minLength; // 20 score
@@ -102,8 +102,10 @@ class PasswordMeterComponent {
102
102
  this.inputElement.focus()
103
103
  }
104
104
  }
105
-
106
-
105
+ //@ts-ignore
106
+ private checkScore(): number {
107
+ return 0
108
+ }
107
109
 
108
110
  private checkLength(): boolean {
109
111
  if (this.inputElement) {
@@ -21,10 +21,13 @@ declare class StepperComponent {
21
21
  private _goTo;
22
22
  private initHandlers;
23
23
  private _getStepDirection;
24
+ private getStepContent;
24
25
  private getLastStepIndex;
26
+ private getTotalStepsNumber;
25
27
  private refreshUI;
26
28
  private isLastStep;
27
29
  private isFirstStep;
30
+ private isBetweenStep;
28
31
  goto: (index: number) => void;
29
32
  goNext: () => void;
30
33
  goPrev: () => void;
@@ -80,9 +80,24 @@ class StepperComponent {
80
80
  _getStepDirection = (index) => {
81
81
  return index > this.currentStepIndex ? 'next' : 'previous';
82
82
  };
83
+ //@ts-ignore
84
+ getStepContent = (index) => {
85
+ const content = this.element.querySelectorAll('[data-kt-stepper-element="content"]');
86
+ if (!content) {
87
+ return false;
88
+ }
89
+ if (content[index - 1]) {
90
+ return content[index - 1];
91
+ }
92
+ return false;
93
+ };
83
94
  getLastStepIndex = () => {
84
95
  return this.totalStepsNumber;
85
96
  };
97
+ //@ts-ignore
98
+ getTotalStepsNumber = () => {
99
+ return this.totalStepsNumber;
100
+ };
86
101
  refreshUI = () => {
87
102
  let state = '';
88
103
  if (this.isLastStep()) {
@@ -137,6 +152,10 @@ class StepperComponent {
137
152
  isFirstStep = () => {
138
153
  return this.currentStepIndex === 1;
139
154
  };
155
+ //@ts-ignore
156
+ isBetweenStep = () => {
157
+ return this.isLastStep() === false && this.isFirstStep() === false;
158
+ };
140
159
  // ///////////////////////
141
160
  // // ** Public API ** //
142
161
  // ///////////////////////
@@ -117,12 +117,27 @@ class StepperComponent {
117
117
  return index > this.currentStepIndex ? 'next' : 'previous'
118
118
  }
119
119
 
120
+ //@ts-ignore
121
+ private getStepContent = (index: number) => {
122
+ const content = this.element.querySelectorAll('[data-kt-stepper-element="content"]')
123
+ if (!content) {
124
+ return false
125
+ }
126
+
127
+ if (content[index - 1]) {
128
+ return content[index - 1]
129
+ }
120
130
 
131
+ return false
132
+ }
121
133
  private getLastStepIndex = () => {
122
134
  return this.totalStepsNumber
123
135
  }
124
136
 
125
-
137
+ //@ts-ignore
138
+ private getTotalStepsNumber = () => {
139
+ return this.totalStepsNumber
140
+ }
126
141
  private refreshUI = () => {
127
142
  let state = ''
128
143
 
@@ -190,7 +205,11 @@ class StepperComponent {
190
205
  private isFirstStep = () => {
191
206
  return this.currentStepIndex === 1
192
207
  }
193
-
208
+
209
+ //@ts-ignore
210
+ private isBetweenStep = () => {
211
+ return this.isLastStep() === false && this.isFirstStep() === false
212
+ }
194
213
 
195
214
  // ///////////////////////
196
215
  // // ** Public API ** //
@@ -311,4 +330,4 @@ class StepperComponent {
311
330
  }
312
331
  }
313
332
 
314
- export {StepperComponent, defaultStepperOptions}
333
+ export { StepperComponent, defaultStepperOptions }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soyfri/template",
3
- "version": "1.0.10-beta.1",
3
+ "version": "1.0.10-beta.2",
4
4
  "description": "Metronic template components and utilities for Fri projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",