Browse Source

added direct-chat.ts

Daniel 3 years ago
parent
commit
3ef559ba08
4 changed files with 61 additions and 6 deletions
  1. 4 4
      src/index.html
  2. 3 1
      src/ts/adminlte.ts
  3. 53 0
      src/ts/direct-chat.ts
  4. 1 1
      src/ts/push-menu.ts

+ 4 - 4
src/index.html

@@ -237,7 +237,7 @@
                         <!-- End Contact Item -->
                         <li>
                           <a href="#">
-                            <img class="contacts-list-img" src="dist/img/user7-128x128.jpg" alt="User Avatar">
+                            <img class="contacts-list-img" src="./assets/img/AdminLTELogo.png" alt="User Avatar">
 
                             <div class="contacts-list-info">
                               <span class="contacts-list-name">
@@ -267,7 +267,7 @@
                         <!-- End Contact Item -->
                         <li>
                           <a href="#">
-                            <img class="contacts-list-img" src="dist/img/user5-128x128.jpg" alt="User Avatar">
+                            <img class="contacts-list-img" src="./assets/img/AdminLTELogo.png" alt="User Avatar">
 
                             <div class="contacts-list-info">
                               <span class="contacts-list-name">
@@ -282,7 +282,7 @@
                         <!-- End Contact Item -->
                         <li>
                           <a href="#">
-                            <img class="contacts-list-img" src="dist/img/user6-128x128.jpg" alt="User Avatar">
+                            <img class="contacts-list-img" src="./assets/img/AdminLTELogo.png" alt="User Avatar">
 
                             <div class="contacts-list-info">
                               <span class="contacts-list-name">
@@ -297,7 +297,7 @@
                         <!-- End Contact Item -->
                         <li>
                           <a href="#">
-                            <img class="contacts-list-img" src="dist/img/user8-128x128.jpg" alt="User Avatar">
+                            <img class="contacts-list-img" src="./assets/img/AdminLTELogo.png" alt="User Avatar">
 
                             <div class="contacts-list-info">
                               <span class="contacts-list-name">

+ 3 - 1
src/ts/adminlte.ts

@@ -3,13 +3,15 @@ import PushMenu from './push-menu'
 import SidebarHover from './sidebar-hover'
 import SidebarOverlay from './sidebar-overlay'
 import Treeview from './treeview'
+import DirectChat from './direct-chat'
 
 export {
   Layout,
   PushMenu,
   SidebarHover,
   SidebarOverlay,
-  Treeview
+  Treeview,
+  DirectChat
 }
 
 //

+ 53 - 0
src/ts/direct-chat.ts

@@ -0,0 +1,53 @@
+/**
+ * --------------------------------------------
+ * AdminLTE direct-chat.ts
+ * License MIT
+ * --------------------------------------------
+ */
+
+import {
+  domReady
+} from './util/index'
+
+/**
+ * Constants
+ * ====================================================
+ */
+
+const SELECTOR_DATA_TOGGLE = '[data-widget="chat-pane-toggle"]'
+const SELECTOR_DIRECT_CHAT = '.direct-chat'
+
+const CLASS_NAME_DIRECT_CHAT_OPEN = 'direct-chat-contacts-open'
+
+/**
+ * Class Definition
+ * ====================================================
+ */
+
+class DirectChat {
+  toggle(chatPane: Element): void {
+    // chatPane
+    chatPane.closest(SELECTOR_DIRECT_CHAT)?.classList.toggle(CLASS_NAME_DIRECT_CHAT_OPEN)
+  }
+}
+
+/**
+ *
+ * Data Api implementation
+ * ====================================================
+ */
+
+domReady(() => {
+  const button = document.querySelectorAll(SELECTOR_DATA_TOGGLE)
+
+  for (const btn of button) {
+    btn.addEventListener('click', event => {
+      event.preventDefault()
+      const chatPane = event.target as Element
+      const data = new DirectChat()
+      data.toggle(chatPane)
+    })
+  }
+})
+
+export default DirectChat

+ 1 - 1
src/ts/push-menu.ts

@@ -1,6 +1,6 @@
 /**
  * --------------------------------------------
- * AdminLTE pushmenu.ts
+ * AdminLTE push-menu.ts
  * License MIT
  * --------------------------------------------
  */