-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathconfig.yml
591 lines (526 loc) · 35 KB
/
config.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
# Database configuration
db:
# Select here the database you want to use
# The following databases are supported:
# - sqlite - (default) stores all data in a local file
# - mariadb - allows using a remote database with JDBC
# IMPORTANT! If you change the DB type, the data is not automatically migrated between databases.
db: sqlite
# SQLite
sqlite:
# Database file name (in the plugin's folder)
# If the file does not exist, it will be created
file: bank.db
# MariaDB
mariadb:
# JDBC url
jdbc: jdbc:mariadb://localhost:3306/your_db_name
# Database user
user: root
# Database password
password: ChangeThis!
# Advanced configuration (do not touch unless you know what you are doing)
# HikariCP. Comment out any data source property to disable setting it.
cachePrepStmts: true
prepStmtCacheSize: 250
prepStmtCacheSqlLimit: 2048
useServerPrepStmts: true
useLocalSessionState: true
rewriteBatchedStatements: true
cacheResultSetMetadata: true
cacheServerConfiguration: true
elideSetAutoCommits: true
maintainTimeStats: false
integrations:
vault:
# Enable Vault integration
enabled: false
# Transaction description for all vault operations
description: Vault Transaction
currency:
# Currency symbol
symbol: $
# Currency format
# See https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/text/DecimalFormat.html#special_pattern_character
format: "#,##0.00"
# Starting balance
starting-balance: 0
# Server account
server-account:
# Display name for the server account
name: Central Bank
# Account type
# Possible values:
# 0: Personal account
# 1: Business account
type: 1
# Starting balance
# Use `Infinity` for infinite ∞ balance
starting-balance: Infinity
# Maximum number of accounts a player can have
# Account types:
# 0: Personal account
# 1: Business account
# Limits:
# 0: cannot have any accounts
# -1: unlimited accounts
#
# Players can open accounts themselves if they have `bank.account.create`. These limits also apply if someone else
# creates bank accounts for other players with the admin permission `bank.account.create.other`. You can bypass the
# limits using `bank.account.create.bypass`.
account-limits:
# Personal accounts
0: 1
# Business accounts
1: -1
# Top balance leaderboard
# Accounts with infinite balance are excluded
baltop:
# How many accounts to show per page
per-page: 10
# Transfer confirmation
transfer-confirmation:
# If enabled, players will be shown a transfer overview asking them to confirm the transfer
enabled: true
# Minimum transfer amount to show confirmation for
# Min transfer amount is > 0, so setting this to 0 will enable confirmation for all transfers amounts
min-amount: 200
# If true, confirmation will not be required for transfers between own accounts
bypass-own-accounts: true
# Transactions history
history:
# Number of transactions to return per page
# You can use `/bank transactions <account> --all` to view all transactions
per-page: 10
# Payment instruments
# These are like bank cards that can be used to make payments.
instruments:
# The in-game item to use. See https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
material: PAPER
# Require the player to have an item in their inventory of the same material in order to create a new instrument.
# The item is consumed and replaced with the instrument. This is recommended to prevent limitless generation of
# items. Payment instruments CAN be used in crafting recipes and villager trading as if they were regular items.
# You can bypass this requirement using `bank.instrument.create.bypass`. Non-players (e.g. console, command blocks,
# etc.) always bypass this requirement.
require-item: true
# The name of the item
# Placeholders:
# - <account> - Account name. Defaults to owner username or ID if not set.
# - <account-id> - Account ID
# - <account-type> - Account type (Personal or Business)
# - <account-owner> - Account owner username
# - <date> - Date card was created. You can use <date:'yyyy-MM-dd HH:mm:ss'>. Check here for patterns: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html#patterns
# NOTE: The placeholders are set only when the item is created.
# If the account is renamed or the balance changes, the text on the item will NOT be updated.
# Additionally, if you modify this, it will only be effective for new bank cards.
name: "<green><b>Bank Card</b></green> <aqua>—</aqua> <gray><account></gray>"
# Lore of the item (text below the name)
# Same placeholders as name
lore:
- "<white><account-type>, <account></white>"
- "<gray>#<account-id></gray>"
- "<gray>Issued <date:'MM/yy'></gray>"
- "<gray>Owner:</gray> <white><account-owner></white>"
# Item glint
# This makes the item shine as if enchanted
glint:
enabled: true
# The hidden enchantment to apply to the item
# Enchantments are the same as seen in the `/enchant` command. Do not include the `minecraft:` prefix.
# If you set this to something like "vanishing_curse" the item will disappear when the player dies.
# If you use a compatible enchantment with the item material, the enchantment will be fully functional.
# (e.g. if your item is a sword, and you use "sharpness", the sword will deal more damage, even though the
# enchantment is not listed in the lore. it is recommended to avoid that)
# Level 1 is always applied.
enchantment: unbreaking
# POS
# Note: you cannot use <hover> <click> etc. in GUIs
pos:
# Allow creating POS with a PERSONAL account
# If you want to require players to use a business account, set this to false.
# You can bypass this with `bank.pos.create.personal`
allow-personal: false
# The title shown at the top of the GUI when opening a POS
# Placeholders:
# <description> - POS description
# <price> - Price of the POS contents without formatting, example: 123456.78
# <price-formatted> - Price of the POS contents with formatting, example: $123,456.78
# <price-short> - Price of the POS contents with formatting, example: $123k
title: "<green><bold>Point of Sale</bold></green> <gray>— <price-formatted></gray>"
# POS info item
info:
# Available materials: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
material: PAPER
# Glint / glow (does not work on all items)
glint: true
# Item name when owner is viewing the POS.
# Same placeholders as POS title.
name-owner: "<green><bold>POS</bold></green>"
# Item name when potential buyer is viewing the POS.
# Same placeholders as POS title.
# Extra placeholders: same as `messages.balance`. The account is of the owner of the POS.
name-buyer: "<green><bold>POS</bold></green> <gray>— <account></gray>"
# Lore lines when owner is viewing the POS.
# Same placeholders as POS title.
lore-owner:
- "<gray>Price:</gray> <green><price-formatted></green>"
- "<gray>Description:</gray> <white><description></white>"
# Same placeholders as name-buyer
lore-buyer:
- "<gray>Price:</gray> <green><price-formatted></green>"
- "<gray>Description:</gray> <white><description></white>"
# POS delete item (owner only)
# No placeholders.
delete:
material: BARRIER
glint: false
name: "<red><bold>Cancel POS</bold></red>"
lore:
- "<gray>Click to cancel this POS.</gray>"
# Confirm purchase item (buyer only)
# Same placeholders as name-buyer, but this time the account is of the buyer.
confirm:
material: LIME_STAINED_GLASS_PANE
glint: false
name: "<green><bold>Confirm Purchase</bold></green>"
lore:
- "<gray>Click to confirm purchase.</gray>"
- "<gray>Price:</gray> <green><price-formatted></green>"
- "<gray>Balance:</gray> <white><balance-formatted></white>"
- "<gray>Paying from:</gray> <white><account></white> <gray>(<account-type>)</gray>"
- "<dark_gray>Account ID <account-id></dark_gray>"
# Deny purchase item (buyer only)
# No placeholders.
decline:
material: RED_STAINED_GLASS_PANE
glint: false
name: "<red><bold>Decline Purchase</bold></red>"
lore:
- "<gray>Click to decline this purchase.</gray>"
# Interest rate
# Interest is paid from/to the server account.
# If the server account has insufficient funds, interest payments will silently fail.
# NOTE: A transaction is created for each interest payment.
interest:
# Personal accounts
0:
# Percent to add to the balance. If negative, it will be subtracted. Set to 0 to disable interest.
# Acceptable range: -100–100
rate: 0
# Interval time in real-life MINUTES for how often interest is added.
# Default: 24 hours (i.e. midnight every day).
interval: 1440
# Description shown in the transaction history
# Available placeholders:
# - <rate> - Interest rate as decimal (e.g. "5")
# - <rate-formatted> - Formatted interest rate (e.g. "5%")
# - <balance> - Account balance before interest (e.g. "123456.78")
# - <balance-formatted> - Formatted balance before interest (e.g. "$123,456.78")
# - <balance-short> - Formatted balance before interest (e.g. "$123k")
description: "Interest payment (<rate-formatted>)"
# Business accounts
1:
rate: 0
interval: 1440
description: "Interest payment (<rate-formatted>)"
# Invoice
invoice:
# Number of invoices to return per page
per-page: 10
# Messages
messages:
# Command usage message
# Placeholders:
# - <command> - The command name (e.g. "bank")
# - <arguments> - The command usage arguments (e.g. "send <from> <to> <amount> [description]")
command-usage: "<yellow>(!) Usage:</yellow> <white>/<command> <arguments></white>"
# Account types
types:
# Personal account
0: Personal
# Business account
1: Business
# Vault integration account used to integrate payments with other plugins
2: Checking
# Errors
errors:
# You have no accounts
no-accounts: "<red>(!) You have no bank accounts.</red>"
# No permission
no-permission: "<red>(!) You do not have permission to use this command.</red>"
# Account not found
account-not-found: "<red>(!) Account not found.</red>"
# Command not recognised
unknown-command: "<red>(!) Unknown command. Try <click:suggest_command:/<label> help><gray>/<label> help</gray></click>.</red>"
# <type> the account type
# <limit> the account limit for that type
max-accounts: "<red>(!) You cannot open more than <limit> <type> accounts.</red>"
rename-vault-account: "<red>(!) You cannot rename this account.</red>"
# You do not own this account
not-account-owner: "<red>(!) You are not the owner of this account.</red>"
# Account frozen (placeholders same as balance)
frozen: "<gold>(!) <account-type> account <gray><account> (<account-id>)</gray> is frozen. This account cannot initiate or receive transactions.</gold>"
# Cannot transfer to same account
same-from-to: "<red>(!) The from and to accounts must be different.</red>"
# You can only make transfer between your own accounts
transfer-self-only: "<red>(!) You can only make transfers between your own accounts.</red>"
# You can only transfer to account that are not yours
transfer-other-only: "<red>(!) You cannot make a transfer between your own accounts.</red>"
# Invalid number. Placeholder <number> is the invalid number
invalid-number: "<red>(!) Invalid number: <gray><number></gray></red>"
# $0 or negative transfer
negative-transfer: "<red>(!) The amount to transfer must be greater than zero.</red>"
# Insufficient funds (placeholders same as balance)
insufficient-funds: "<red>(!) Your account has insufficient funds. You have <gray><balance-formatted></gray></red>"
# Trying to close an account that has non-zero balance
closing-balance: "<red>(!) You cannot close an account that has a non-zero balance. This account has <gray><balance-formatted></gray></red>"
# Command only for players
player-only: "<red>(!) You must be a player to use this command.</red>"
# Player not found
player-not-found: "<red>(!) Player not found.</red>"
# You must have a specific item to convert to an instrument
# Placeholders:
# <material> - the item type that is required (the item ID)
# <material-key> - item translation key, can be used together with <lang:<material-key>>
instrument-requires-item: "<red>(!) You must have <gray>x1 <lang:<material-key>></gray> in your inventory to create a bank card from.</red>"
# Target player's inventory is full
# Placeholder: <player> - the target player's name
target-inventory-full: "<red>(!) The inventory of <gray><player></gray> is full.</red>"
block-too-far: "<red>(!) The targeted block is too far away.</red>"
pos-already-exists: "<red>(!) A POS already exists at this location.</red>"
pos-not-chest: "<red>(!) The targeted block is not a chest.</red>"
pos-double-chest: "<red>(!) The POS cannot be a double chest.</red>"
pos-empty: "<red>(!) The chest is empty. POS cancelled.</red>"
pos-invalid-card: "<red>(!) You need a valid bank card to use POS.</red>"
pos-no-permission: "<red>(!) You do not have permission to use POS.</red>"
no-card: "<red>(!) You must hold your bank card to use this.</red>"
pos-items-changed: "<red>(!) The items in the chest have changed. POS cancelled.</red>"
pos-create-business-only: "<red>(!) You can only create a POS with a business account.</red>"
# Provided string includes disallowed characters
# Placeholder: <characters> - the disallowed characters
disallowed-characters: "<red>(!) The provided string contains disallowed characters: <gray><characters></gray></red>"
# Account is already frozen (placeholders same as balance)
already-frozen: "<yellow>(!) This account is already frozen.</yellow>"
# Account is not frozen (placeholders same as balance)
not-frozen: "<gold>(!) This account is not frozen.</gold>"
# Invoice negative amount
negative-invoice: "<red>(!) The amount to invoice must be greater than zero.</red>"
# Invoice not found
invoice-not-found: "<red>(!) Invoice not found.</red>"
# Invoice seller account is the same as payer
invoice-pay-self: "<red>(!) You cannot pay your own invoice with the same account. You can use a different account.</red>"
invoice-already-paid: "<red>(!) This invoice has already been paid.</red>"
# Cannot send this invoice to this player because either:
# a) the invoice has a set buy and that's not this player; OR
# b) the player does not have permission to view invoices not meant for them
invoice-cannot-send: "<red>(!) You cannot send this invoice to that player because they don't have permission to view it.</red>"
# Player has never played on this server
player-never-joined: "<red>(!) This player has never joined this server.</red>"
# Asynchronous code failed. Detailed info is outputted in the console
async-failed: "<red>(!) The request failed. See the console for details.</red>"
# Trying to delete vault integration account
delete-vault-account: "<red>(!) You cannot delete this account.</red>"
# Account balance
# Available placeholders:
# <account> - Account name. Defaults to owner username or ID if not set.
# <account-id> - Account ID
# <account-type> - Account type (Personal or Business)
# <account-owner> - Account owner username
# <balance> - Account balance without formatting, example: 123456.78
# <balance-formatted> - Account balance with formatting, example: $123,456.78
# <balance-short> - Account balance with formatting, example: $123k
balance: |-
<green><account></green> <gray>(<account-type> account)</gray>
<green>Balance:</green> <white><balance-formatted></white>
<white><i>Owned by <account-owner></i></white>
<i><gray><click:copy_to_clipboard:<account-id>><hover:show_text:'Click to copy account ID'><account-id></hover></click></gray></i>
# List accounts
list-accounts:
header: "<green>Bank accounts</green>"
# Same placeholders as balance
entry: "<dark_gray>*</dark_gray> <gray><click:run_command:/bank balance <account-id>><hover:show_text:'<white><account></white><newline><gray><account-type><dark_gray>:</dark_gray> <green><balance-formatted></green></gray><newline><gray><account-id></gray><newline><gray>Click to view'><account></hover></click><dark_gray>:</dark_gray> <white><balance-short></white></gray>"
# Plugin reload
reload: "<green>(!) Plugin configuration reloaded</green>"
# Account created (same placeholders as balance)
account-created: "<green>(!) Successfully created <account-type> account: <account></green> <click:run_command:/bank balance <account-id>><gray>Click to view</gray></click>"
# Balance set (same placeholders as balance)
balance-set: "<green>(!) Successfully set <white><account></white> <gray>(<account-type>, <account-id>)</gray> balance to <white><balance-formatted></white></green>"
# Account name set (same placeholders as balance)
name-set: "<green>(!) Successfully renamed account <white><account></white>"
# Account has been successfully frozen (same placeholders as balance)
account-frozen: "<aqua>(!) Successfully frozen account <white><account></white>"
# Account has been successfully unfrozen (same placeholders as balance)
account-unfrozen: "<green>(!) Successfully unfrozen account <white><account></white>"
# Account deleted (same placeholders as balance)
account-deleted: "<green>(!) Successfully deleted account <white><account></white>"
# Transfer confirmation
# Placeholders are the same as balance. Add prefix `from-` for account sending and `to-` for account receiving
# Example: <to-account-id>, <from-balance-formatted>
# Additional placeholders:
# <amount> - Transfer amount without formatting, example: 123456.78
# <amount-formatted> - Transfer amount with formatting, example: 123,456.78
# <amount-short> - Transfer amount with formatting, example: 123k
# <description> - Transfer description
# <confirm-command> - Command to run to confirm transfer
confirm-transfer: |-
<green><bold>CONFIRM TRANSFER</bold></green>
<green>From:</green> <white><from-account></white> <gray>(<from-account-type> account of <from-account-owner>, <from-account-id>)</gray>
<green>To:</green> <white><to-account></white> <gray>(<to-account-type> account of <to-account-owner>, <to-account-id>)</gray>
<green>Amount:</green> <white><amount-formatted></white>
<green>Description:</green> <white><description></white>
<click:run_command:<confirm-command>><hover:show_text:'<green>Click to confirm transfer</green>'><green>[I CONFIRM]</green></hover></click>
# Transfer sent (same placeholders as confirm-transfer, except confirm-command)
# Additional placeholders:
# <transaction-id> - Transaction ID
transfer-sent: <green>(!) Successfully sent <white><amount-formatted></white> from <hover:show_text:'<white><from-account></white><newline><gray><from-account-type><dark_gray>:</dark_gray> <green><from-balance-formatted></green></gray><newline><gray>Owned by <from-account-owner></gray><newline><gray><from-account-id></gray>'><white><from-account></white></hover> to <hover:show_text:'<white><to-account></white><newline><gray><to-account-type></gray><newline><gray>Owned by <to-account-owner></gray><newline><gray><to-account-id></gray>'><white><to-account></white></hover></green> <click:copy_to_clipboard:<transaction-id>><hover:show_text:'Click to copy transaction ID'><gray>#<transaction-id></gray></hover></click>
# Transfer received (same placeholders as transfer-sent)
transfer-received: <green>(!) You have received <white><amount-formatted></white> from <hover:show_text:'<white><from-account></white><newline><gray><from-account-type></gray><newline><gray>Owned by <from-account-owner></gray><newline><gray><from-account-id></gray>'><white><from-account></white></hover> in your <hover:show_text:'<white><to-account></white><newline><gray><to-account-type><dark_gray>:</dark_gray> <green><to-balance-formatted></green></gray><newline><gray>Owned by <to-account-owner></gray><newline><gray><to-account-id></gray>'><white><to-account></white></hover> account:</green> <white><description></white> <click:copy_to_clipboard:<transaction-id>><hover:show_text:'Click to copy transaction ID'><gray>(#<transaction-id>)</gray></hover></click>
# Transaction history
history:
# All placeholders of `balance` are available
# Additional placeholders:
# <page> - Current page number
# <max-page> - Maximum number of pages
# <cmd-prev> - Command to go to previous page
# <cmd-next> - Command to go to next page
header: "<green>Transaction history</green> <gray>(<hover:show_text:'<white><account></white><newline><gray><account-type><dark_gray>:</dark_gray> <green><balance-formatted></green></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><account></hover>)</gray>"
# All placeholders of `balance` and `transfer-sent` are available. Use <account> (no prefix) for your account and "other-" prefix for other account
# Additional placeholders:
# <instrument> - The way the transfer was made, e.g. "direct transfer", "pos", etc.
# <date> - Transaction date. You can use <date:'yyyy-MM-dd HH:mm:ss'>. Check here for patterns: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html#patterns
# <full_date> - Full date with time zone. Can be used in <hover>, <click> etc.
entry: "<hover:show_text:'<full_date>'><gray>#<transaction-id></gray></hover> <#4ade80><amount-formatted></#4ade80> <white><hover:show_text:'<white><other-account></white><newline><gray><other-account-type></gray><newline><gray>Owned by <other-account-owner></gray><newline><gray><other-account-id></gray>'><other-account></hover>: <description></white> <gray>(<instrument>)</gray>"
# Same placeholders as header
footer: "<click:run_command:<cmd-prev>><hover:show_text:'<white>Previous page</white>'><green>← Previous</green></hover></click> <gray>Page <page>/<max-page></gray> <click:run_command:<cmd-next>><hover:show_text:'<white>Next page</white>'><green>Next →</green></hover></click>"
# No transactions
no-transactions: "<gray>(!) No transactions to show.</gray>"
# Successfully created payment instrument (bank card)
instrument-created: "<green>(!) Successfully created payment instrument.</green>"
# Pos created
# Same placeholders as balance (account is that of the seller).
# Additional placeholders:
# <price> - Price of the POS contents without formatting, example: 123456.78
# <price-formatted> - Price of the POS contents with formatting, example: 123,456.78
# <price-short> - Price of the POS contents with formatting, example: 123k
# <description> - Bank statement description
# <x> - X coordinate of the chest
# <y> - Y coordinate of the chest
# <z> - Z coordinate of the chest
# <world> - World name of the chest
pos-created: "<green>(!) Successfully created POS with price <white><price-formatted></white> to receive in account <hover:show_text:'<white><account></white><newline><gray><account-type><dark_gray>:</dark_gray> <green><balance-formatted></green></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><white><account></white></hover>:</green> <gray><description></gray>"
# Pos removed
# (no placeholders)
pos-removed: "<gold>(!) Removed POS.</gold>"
# Pos purchase completed
# Same placeholders as transfer-sent. `from` account is buyer, `to` account is seller.
# Additional placeholders:
# <items> - Number of items purchased
# <items-formatted> - E.g. `1 item`, `5 items`, etc.
# <pos> - POS coordinates, e.g. `X: 123 Y: -12 Z: 456 in world`
pos-purchase: "<green>(!) Successfully purchased <white><items-formatted></white> from <hover:show_text:'<white><to-account></white><newline><gray><to-account-type></gray><newline><gray>Owned by <to-account-owner></gray><newline><gray><to-account-id></gray>'><white><to-account></white></hover> for <white><amount-formatted></white>. You paid from <hover:show_text:'<white><from-account></white><newline><gray><from-account-type><dark_gray>:</dark_gray> <green><from-balance-formatted></green></gray><newline><gray>Owned by <from-account-owner></gray><newline><gray><from-account-id></gray>'><white><from-account></white></hover>:</green> <gray><description></gray>"
# Someone made a purchase from your POS
# Same placeholders as pos-purchase. `from` account is buyer, `to` account is seller.
# Additional placeholders:
# <items> - Number of items purchased
# <items-formatted> - E.g. `1 item`, `5 items`, etc.
# <pos> - POS coordinates, e.g. `X: 123 Y: -12 Z: 456 in world`
pos-purchase-seller: "<green>(!) Sold <white><items-formatted></white> to <hover:show_text:'<white><from-account></white><newline><gray><from-account-type></gray><newline><gray>Owned by <from-account-owner></gray><newline><gray><from-account-id></gray>'><white><from-account></white></hover> for <white><amount-formatted></white> at POS <gray><pos></gray>. The funds are in account <hover:show_text:'<white><to-account></white><newline><gray><to-account-type><dark_gray>:</dark_gray> <green><to-balance-formatted></green></gray><newline><gray>Owned by <to-account-owner></gray><newline><gray><to-account-id></gray>'><white><to-account></white></hover>:</green> <gray><description></gray>"
# Account whois
# Same placeholders as balance
whois: |-
<green>Account</green> <white><account></white>
<gray>Owned by:</gray> <white><account-owner></white>
<gray>Type:</gray> <white><account-type></white>
<gray>ID: <click:copy_to_clipboard:<account-id>><hover:show_text:'<white>Copy to clipboard</white>'><white><account-id></white></hover></click></gray>
# Top balances
baltop:
# Baltop header
# Placeholders:
# <category> - Baltop category
# <page> - Current page number
# <cmd-prev> - Command to go to previous page
# <cmd-next> - Command to go to next page
header: "<green><bold>Baltop</bold></green> <gray>(<category>)</gray><newline><click:run_command:<cmd-prev>><hover:show_text:'<white>Click</white>'><green>← Previous</green></hover></click> <gray>Page <page></gray> <click:run_command:<cmd-next>><hover:show_text:'<white>Click</white>'><green>Next →</green></hover></click><newline><dark_gray><st> </st></dark_gray>"
# Baltop entry
# All placeholders from balance
# <position> - leaderboard rank number
entry: "<hover:show_text:'<white><account></white><newline><gray><account-type><dark_gray>:</dark_gray> <green><balance-formatted></green></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><gray>#<position></gray> <white><balance-short></white> <green><account></green></hover>"
# Baltop player entry
# Placeholders:
# <position> - leaderboard rank number
# <uuid> - Player UUID
# <username> - Player username
# <balance> - Total balance without formatting, example: 123456.78
# <balance-formatted> - Total balance with formatting, example: $123,456.78
# <balance-short> - Total balance with formatting, example: $123k
entry-player: "<click:suggest_command:/msg <username> ><hover:show_text:'<white><username></white><newline><gray><balance-formatted></gray><newline>'><gray>#<position></gray> <white><balance-short></white> <green><username></green></hover></click>"
# Invoices
invoice:
# Viewing an invoice
# Placeholders:
# <invoice-id> - Invoice ID
# <amount> - Invoice amount without formatting, example: 123456.78
# <amount-formatted> - Invoice amount with formatting, example: $123,456.78
# <amount-short> - Invoice amount with formatting, example: $123k
# <description> - Invoice description
# <date> - Date invoice was created. You can use <date:'yyyy-MM-dd HH:mm:ss'>. Check here for patterns: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html#patterns
# <buyer> - The username of the player who is requested to pay the invoice. Can be "anyone" if anyone can pay this invoice
# <transaction-id> - Invoice transaction ID (if the invoice is paid). If not paid, will be "unpaid"
# <status> - Payment status (as defined below)
# <pay-button> - Button to pay the invoice (as defined below)
# <account> - Seller account name. Defaults to owner username or ID if not set.
# <account-id> - Seller account ID
# <account-type> - Seller account type (Personal or Business)
# <account-owner> - Seller account owner username
# <balance> - Seller account balance without formatting, example: 123456.78
# <balance-formatted> - Seller account balance with formatting, example: $123,456.78
# <balance-short> - Seller account balance with formatting, example: $123k
details: |-
<bold><green>INVOICE</green></bold> <gray><hover:show_text:'<white>Click to copy</white>'><click:copy_to_clipboard:<invoice-id>>#<invoice-id></click></hover></gray>
<white>Amount: <green><amount-formatted></green></white>
<white>From: <hover:show_text:'<white><account></white><newline><gray><account-type></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><gray><account></gray></hover>
<white>To: <gray><buyer></gray></white>
<white>Date: <gray><date:'yyyy-MM-dd HH:mm'> UTC</gray></white>
<white>Status:</white> <status>
<white>Description: <gray><description></gray></white><pay-button>
# Used in the <status> placeholder
# Same placeholders as details (except <status>)
status:
paid: "<green>Paid</green> <gray>(transaction #<transaction-id>)</gray>"
unpaid: <gray>Unpaid</gray>
# Used in the <pay-button> placeholder. This placeholder is an empty string if the invoice is unpaid.
# Same placeholders as details (except <pay-button>)
pay-button: <newline><newline><hover:show_text:'<white>Click to pay</white>'><click:suggest_command:/invoice pay <invoice-id>><bold><green>[PAY]</green></bold></click></hover>
# You have received an invoice
# Same placeholders as details
received: <click:run_command:/invoice view <invoice-id>><green>(!)You have received invoice <hover:show_text:'<green>Invoice</green> <gray>#<invoice-id></gray><newline><gray>From <white><account></white></gray><newline><gray>For <white><amount-formatted></white></gray>'><gray>#<invoice-id></gray></hover> from <hover:show_text:'<white><account></white><newline><gray><account-type></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><gray><account></gray></hover>. Click to view.</green></click>
# Invoice successfully sent
# Same placeholders as details
sent: <green>(!) Invoice <gray>#<invoice-id></gray> successfully sent.</green>
# Invoice created
# Same placeholders as details
created: <click:run_command:/invoice view <invoice-id>><green>(!) Successfully created invoice <gray>#<invoice-id></gray> for <gray><amount-formatted></gray> to <gray><buyer></gray> from <hover:show_text:'<white><account></white><newline><gray><account-type><dark_gray>:</dark_gray> <green><balance-formatted></green></gray><newline><gray><account-id></gray>'><gray><account></gray></hover>. Click to view.</green></click>
# Your invoice has been paid (seller's perspective)
# Same placeholders as details
paid-seller: <click:run_command:/invoice view <invoice-id>><green>(!) Your invoice <hover:show_text:'<green>Invoice</green> <gray>#<invoice-id></gray><newline><gray>For <white><amount-formatted></white></gray>'><gray>#<invoice-id></gray></hover> <gray>(<amount-short>)</gray> has been paid. Click to view.</green></click>
# You have successfully paid an invoice (buyer's perspective)
# Same placeholders as details
paid-buyer: <click:run_command:/invoice view <invoice-id>><green>(!) You have successfully paid invoice <hover:show_text:'<green>Invoice</green> <gray>#<invoice-id></gray><newline><gray>By <white><account></white></gray><newline><gray>For <white><amount-formatted></white></gray>'><gray>#<invoice-id></gray></hover> <gray>(<amount-short>)</gray>. Click to view.</green></click>
# List invoices
list:
# Header
# Placeholders:
# <page> - current page number
# <cmd-prev> - command to go to previous page
# <cmd-next> - command to go to next page
header: "<green>Invoices</green>"
# Invoice entry
# Same placeholders as details
entry: <click:run_command:/invoice view <invoice-id>><dark_gray>#<invoice-id></dark_gray> <white><amount-formatted></white> <gray><status>,</gray> <hover:show_text:'<white><account></white><newline><gray><account-type></gray><newline><gray>Owned by <account-owner></gray><newline><gray><account-id></gray>'><gray><account></gray></hover></click>
# Footer
# Same placeholders as details
footer: "<hover:show_text:'Click to see the previous page'><click:run_command:<cmd-prev>><green>← Previous</green></click></hover> <gray>Page <page></gray> <hover:show_text:'Click to see the next page'><click:run_command:<cmd-next>><green>Next →</green></click></hover>"
# New version available
# Placeholders:
# <version> - New version
update-available: "<hover:show_text:'<white>Click to view update</white><newline><gray> - Changelog & release notes<newline> - Download links'><click:open_url:https://modrinth.com/plugin/bankaccounts/version/<version>><dark_gray>[<green>BankAccounts</green>]</dark_gray> <white>A new version <green><version></green> has been released.</white><newline><gray>Please update to get the latest bug fixes and features.</gray><newline> <green>> Click to view update<green></click></hover>"