summaryrefslogtreecommitdiff
path: root/src/tg/keyboard-button.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'src/tg/keyboard-button.lisp')
-rw-r--r--src/tg/keyboard-button.lisp32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/tg/keyboard-button.lisp b/src/tg/keyboard-button.lisp
new file mode 100644
index 0000000..79c87d6
--- /dev/null
+++ b/src/tg/keyboard-button.lisp
@@ -0,0 +1,32 @@
1;; SPDX-License-Identifier: EUPL-1.2
2;; SPDX-FileCopyrightText: 2025 Uko Kokņevičs <perkontevs@gmail.com>
3(defpackage :ukkoclot/tg/keyboard-button
4 (:use
5 :c2cl
6 :ukkoclot/tg/keyboard-button-poll-type
7 :ukkoclot/tg/keyboard-button-request-chat
8 :ukkoclot/tg/keyboard-button-request-users
9 :ukkoclot/tg/macros
10 :ukkoclot/tg/web-app-info)
11 (:export
12 #:keyboard-button
13 #:make-keyboard-button
14 #:keyboard-button-p
15 #:copy-keyboard-button
16 #:keyboard-button-text
17 #:keyboard-button-request-users
18 #:keyboard-button-request-chat
19 #:keyboard-button-request-contact
20 #:keyboard-button-request-location
21 #:keyboard-button-request-poll
22 #:keyboard-button-web-app))
23(in-package :ukkoclot/tg/keyboard-button)
24
25(define-tg-type keyboard-button
26 (text string)
27 (request-users (or keyboard-button-request-users null) nil)
28 (request-chat (or keyboard-button-request-chat null) nil)
29 (request-contact boolean nil)
30 (request-location boolean nil)
31 (request-poll (or keyboard-button-poll-type null) nil)
32 (web-app (or web-app-info null) nil))