Userscript template aktualisiert
This commit is contained in:
0
src/js/decs.d.ts → src/decs.d.ts
vendored
0
src/js/decs.d.ts → src/decs.d.ts
vendored
@ -3,6 +3,7 @@ import * as chrono from 'chrono-node'
|
||||
import { CallHistory } from './call-history'
|
||||
import { CallNotification } from './call-notification'
|
||||
import { Search } from './search'
|
||||
import { Status } from './status'
|
||||
|
||||
console.log('script start')
|
||||
|
@ -1,33 +0,0 @@
|
||||
/**
|
||||
* @typedef {Object} AxiosResponse
|
||||
* @property {Object} data
|
||||
* @property {Object} headers
|
||||
* @property {Object} config
|
||||
* @property {Object} request
|
||||
* @property {number} code
|
||||
* @property {string} statusText
|
||||
*/
|
||||
/**
|
||||
* @typedef {Object} AxiosError
|
||||
* @property {AxiosResponse} response
|
||||
*/
|
||||
import axios from 'axios'
|
||||
import adapter from 'axios-userscript-adapter'
|
||||
|
||||
axios.defaults.adapter = adapter
|
||||
|
||||
export { axios }
|
||||
|
||||
export function extractNumber (s: string) {
|
||||
var match = /(\+?[0-9]{4,})/.exec(s)
|
||||
if (!match) {
|
||||
return undefined
|
||||
}
|
||||
|
||||
var number = match[1]
|
||||
if (number.startsWith('+')) {
|
||||
number = number.replace('+', '00')
|
||||
}
|
||||
|
||||
return number
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
import { TapiContact } from './tapi-contact'
|
||||
import { debounce } from './debounce'
|
||||
import { axios } from './utils'
|
||||
import { axios, fireChangeEvents } from './utils'
|
||||
|
||||
export class Search {
|
||||
private currentSearchText = ''
|
||||
@ -175,23 +175,7 @@ export class Search {
|
||||
(<HTMLInputElement>searchInput[0]).value = number
|
||||
searchInput[0].focus()
|
||||
|
||||
this.fireChangeEvents(searchInput[0])
|
||||
fireChangeEvents(searchInput[0])
|
||||
}
|
||||
}
|
||||
|
||||
private fireChangeEvents (element: Element) {
|
||||
var changeEvent = null
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('input', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('input event dispatched for element: ' + element.id)
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('keyup', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('keyup event dispatched for element: ' + element.id)
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('change', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('change event dispatched for element: ' + element.id)
|
||||
}
|
||||
}
|
18
src/status.css
Normal file
18
src/status.css
Normal file
@ -0,0 +1,18 @@
|
||||
.tapi-dropdown {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.tapi-dropdown-content {
|
||||
display: none;
|
||||
position: absolute;
|
||||
min-width: 200px;
|
||||
overflow: auto;
|
||||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
||||
z-index: 1;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.show {
|
||||
display: block;
|
||||
}
|
49
src/utils.ts
Normal file
49
src/utils.ts
Normal file
@ -0,0 +1,49 @@
|
||||
/**
|
||||
* @typedef {Object} AxiosResponse
|
||||
* @property {Object} data
|
||||
* @property {Object} headers
|
||||
* @property {Object} config
|
||||
* @property {Object} request
|
||||
* @property {number} code
|
||||
* @property {string} statusText
|
||||
*/
|
||||
/**
|
||||
* @typedef {Object} AxiosError
|
||||
* @property {AxiosResponse} response
|
||||
*/
|
||||
import axios from 'axios'
|
||||
import adapter from 'axios-userscript-adapter'
|
||||
|
||||
axios.defaults.adapter = adapter
|
||||
|
||||
export { axios }
|
||||
|
||||
export function extractNumber (s: string) {
|
||||
var match = /(\+?[0-9]{4,})/.exec(s)
|
||||
if (!match) {
|
||||
return undefined
|
||||
}
|
||||
|
||||
var number = match[1]
|
||||
if (number.startsWith('+')) {
|
||||
number = number.replace('+', '00')
|
||||
}
|
||||
|
||||
return number
|
||||
}
|
||||
|
||||
export function fireChangeEvents (element: Element) {
|
||||
var changeEvent = null
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('input', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('input event dispatched for element: ' + element.id)
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('keyup', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('keyup event dispatched for element: ' + element.id)
|
||||
changeEvent = document.createEvent('HTMLEvents')
|
||||
changeEvent.initEvent('change', true, true)
|
||||
element.dispatchEvent(changeEvent)
|
||||
console.debug('change event dispatched for element: ' + element.id)
|
||||
}
|
Reference in New Issue
Block a user