@fnndsc/brasa 0.56.2 → 0.56.3
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.
- package/dist/buildinfo.json +1 -1
- package/dist/builtins/berth/berthCube.d.ts +3 -2
- package/dist/builtins/berth/berthCube.js +5 -10
- package/dist/builtins/berth/berthCube.js.map +1 -1
- package/dist/builtins/debug.d.ts +24 -3
- package/dist/builtins/debug.js +66 -13
- package/dist/builtins/debug.js.map +1 -1
- package/dist/builtins/fs/acl.args.d.ts +5 -38
- package/dist/builtins/fs/acl.args.js +6 -72
- package/dist/builtins/fs/acl.args.js.map +1 -1
- package/dist/builtins/fs/acl.d.ts +100 -10
- package/dist/builtins/fs/acl.js +222 -68
- package/dist/builtins/fs/acl.js.map +1 -1
- package/dist/builtins/fs/cat.args.d.ts +14 -15
- package/dist/builtins/fs/cat.args.js +13 -40
- package/dist/builtins/fs/cat.args.js.map +1 -1
- package/dist/builtins/fs/cat.d.ts +40 -3
- package/dist/builtins/fs/cat.js +89 -10
- package/dist/builtins/fs/cat.js.map +1 -1
- package/dist/builtins/fs/cd.d.ts +24 -6
- package/dist/builtins/fs/cd.js +71 -18
- package/dist/builtins/fs/cd.js.map +1 -1
- package/dist/builtins/fs/configWrite.d.ts +24 -8
- package/dist/builtins/fs/configWrite.js +77 -36
- package/dist/builtins/fs/configWrite.js.map +1 -1
- package/dist/builtins/fs/cp.d.ts +39 -4
- package/dist/builtins/fs/cp.js +120 -55
- package/dist/builtins/fs/cp.js.map +1 -1
- package/dist/builtins/fs/du.d.ts +59 -33
- package/dist/builtins/fs/du.js +111 -79
- package/dist/builtins/fs/du.js.map +1 -1
- package/dist/builtins/fs/edit.d.ts +19 -4
- package/dist/builtins/fs/edit.js +77 -16
- package/dist/builtins/fs/edit.js.map +1 -1
- package/dist/builtins/fs/find.d.ts +25 -0
- package/dist/builtins/fs/find.js +76 -5
- package/dist/builtins/fs/find.js.map +1 -1
- package/dist/builtins/fs/mkdir.d.ts +28 -18
- package/dist/builtins/fs/mkdir.js +95 -66
- package/dist/builtins/fs/mkdir.js.map +1 -1
- package/dist/builtins/fs/mv.d.ts +34 -4
- package/dist/builtins/fs/mv.js +129 -64
- package/dist/builtins/fs/mv.js.map +1 -1
- package/dist/builtins/fs/pull.args.d.ts +56 -17
- package/dist/builtins/fs/pull.args.js +16 -66
- package/dist/builtins/fs/pull.args.js.map +1 -1
- package/dist/builtins/fs/pull.d.ts +62 -0
- package/dist/builtins/fs/pull.js +86 -22
- package/dist/builtins/fs/pull.js.map +1 -1
- package/dist/builtins/fs/pwd.d.ts +19 -5
- package/dist/builtins/fs/pwd.js +62 -8
- package/dist/builtins/fs/pwd.js.map +1 -1
- package/dist/builtins/fs/rm.d.ts +58 -21
- package/dist/builtins/fs/rm.js +99 -82
- package/dist/builtins/fs/rm.js.map +1 -1
- package/dist/builtins/fs/rmdir.d.ts +29 -11
- package/dist/builtins/fs/rmdir.js +87 -36
- package/dist/builtins/fs/rmdir.js.map +1 -1
- package/dist/builtins/fs/touch.d.ts +44 -9
- package/dist/builtins/fs/touch.js +91 -27
- package/dist/builtins/fs/touch.js.map +1 -1
- package/dist/builtins/fs/tree.d.ts +36 -9
- package/dist/builtins/fs/tree.js +126 -36
- package/dist/builtins/fs/tree.js.map +1 -1
- package/dist/builtins/fs/upload.d.ts +22 -3
- package/dist/builtins/fs/upload.js +82 -14
- package/dist/builtins/fs/upload.js.map +1 -1
- package/dist/builtins/fs/xattr.args.d.ts +12 -33
- package/dist/builtins/fs/xattr.args.js +17 -95
- package/dist/builtins/fs/xattr.args.js.map +1 -1
- package/dist/builtins/fs/xattr.d.ts +98 -8
- package/dist/builtins/fs/xattr.js +163 -24
- package/dist/builtins/fs/xattr.js.map +1 -1
- package/dist/builtins/games/bytes.d.ts +201 -5
- package/dist/builtins/games/bytes.js +255 -54
- package/dist/builtins/games/bytes.js.map +1 -1
- package/dist/builtins/games/chimes.d.ts +180 -3
- package/dist/builtins/games/chimes.js +203 -26
- package/dist/builtins/games/chimes.js.map +1 -1
- package/dist/builtins/games/chrislab.d.ts +101 -3
- package/dist/builtins/games/chrislab.js +117 -17
- package/dist/builtins/games/chrislab.js.map +1 -1
- package/dist/builtins/games/cowsay.d.ts +93 -2
- package/dist/builtins/games/cowsay.js +90 -31
- package/dist/builtins/games/cowsay.js.map +1 -1
- package/dist/builtins/games/figlet.d.ts +70 -2
- package/dist/builtins/games/figlet.js +83 -6
- package/dist/builtins/games/figlet.js.map +1 -1
- package/dist/builtins/games/lab.d.ts +104 -5
- package/dist/builtins/games/lab.js +144 -6
- package/dist/builtins/games/lab.js.map +1 -1
- package/dist/builtins/games/lolcat.d.ts +61 -1
- package/dist/builtins/games/lolcat.js +59 -24
- package/dist/builtins/games/lolcat.js.map +1 -1
- package/dist/builtins/games/morse.d.ts +36 -1
- package/dist/builtins/games/morse.js +50 -2
- package/dist/builtins/games/morse.js.map +1 -1
- package/dist/builtins/games/numbers.d.ts +241 -5
- package/dist/builtins/games/numbers.js +298 -23
- package/dist/builtins/games/numbers.js.map +1 -1
- package/dist/builtins/games/play.d.ts +96 -6
- package/dist/builtins/games/play.js +137 -6
- package/dist/builtins/games/play.js.map +1 -1
- package/dist/builtins/games/qr.d.ts +40 -1
- package/dist/builtins/games/qr.js +51 -2
- package/dist/builtins/games/qr.js.map +1 -1
- package/dist/builtins/games/show.d.ts +131 -6
- package/dist/builtins/games/show.js +208 -20
- package/dist/builtins/games/show.js.map +1 -1
- package/dist/builtins/games/sky.d.ts +178 -4
- package/dist/builtins/games/sky.js +228 -12
- package/dist/builtins/games/sky.js.map +1 -1
- package/dist/builtins/games/text.d.ts +258 -7
- package/dist/builtins/games/text.js +310 -29
- package/dist/builtins/games/text.js.map +1 -1
- package/dist/builtins/games/trek.d.ts +67 -3
- package/dist/builtins/games/trek.js +63 -10
- package/dist/builtins/games/trek.js.map +1 -1
- package/dist/builtins/games/wtf.d.ts +58 -1
- package/dist/builtins/games/wtf.js +67 -6
- package/dist/builtins/games/wtf.js.map +1 -1
- package/dist/builtins/help.d.ts +38 -2
- package/dist/builtins/help.js +76 -769
- package/dist/builtins/help.js.map +1 -1
- package/dist/builtins/net/connect.d.ts +36 -3
- package/dist/builtins/net/connect.js +84 -26
- package/dist/builtins/net/connect.js.map +1 -1
- package/dist/builtins/net/cubepath.d.ts +49 -5
- package/dist/builtins/net/cubepath.js +69 -27
- package/dist/builtins/net/cubepath.js.map +1 -1
- package/dist/builtins/net/logout.d.ts +13 -4
- package/dist/builtins/net/logout.js +49 -3
- package/dist/builtins/net/logout.js.map +1 -1
- package/dist/builtins/net/netstat.d.ts +29 -4
- package/dist/builtins/net/netstat.js +64 -23
- package/dist/builtins/net/netstat.js.map +1 -1
- package/dist/builtins/net/pacs.d.ts +169 -15
- package/dist/builtins/net/pacs.js +92 -33
- package/dist/builtins/net/pacs.js.map +1 -1
- package/dist/builtins/net/query.args.d.ts +95 -0
- package/dist/builtins/net/query.args.js +26 -0
- package/dist/builtins/net/query.args.js.map +1 -0
- package/dist/builtins/net/query.d.ts +98 -5
- package/dist/builtins/net/query.js +89 -83
- package/dist/builtins/net/query.js.map +1 -1
- package/dist/builtins/net/status.d.ts +5 -3
- package/dist/builtins/net/status.js +5 -12
- package/dist/builtins/net/status.js.map +1 -1
- package/dist/builtins/parametersofplugin.d.ts +82 -3
- package/dist/builtins/parametersofplugin.js +79 -23
- package/dist/builtins/parametersofplugin.js.map +1 -1
- package/dist/builtins/proc.d.ts +210 -3
- package/dist/builtins/proc.js +210 -119
- package/dist/builtins/proc.js.map +1 -1
- package/dist/builtins/res/compute.d.ts +67 -3
- package/dist/builtins/res/compute.js +121 -35
- package/dist/builtins/res/compute.js.map +1 -1
- package/dist/builtins/res/dicom.d.ts +52 -3
- package/dist/builtins/res/dicom.js +82 -34
- package/dist/builtins/res/dicom.js.map +1 -1
- package/dist/builtins/res/expect.d.ts +52 -3
- package/dist/builtins/res/expect.js +92 -29
- package/dist/builtins/res/expect.js.map +1 -1
- package/dist/builtins/res/feed.d.ts +475 -3
- package/dist/builtins/res/feed.js +253 -158
- package/dist/builtins/res/feed.js.map +1 -1
- package/dist/builtins/res/files.d.ts +517 -3
- package/dist/builtins/res/files.js +124 -44
- package/dist/builtins/res/files.js.map +1 -1
- package/dist/builtins/res/gather.d.ts +113 -3
- package/dist/builtins/res/gather.js +153 -44
- package/dist/builtins/res/gather.js.map +1 -1
- package/dist/builtins/res/gather.process.d.ts +27 -19
- package/dist/builtins/res/gather.process.js +29 -59
- package/dist/builtins/res/gather.process.js.map +1 -1
- package/dist/builtins/res/group.d.ts +284 -3
- package/dist/builtins/res/group.js +147 -76
- package/dist/builtins/res/group.js.map +1 -1
- package/dist/builtins/res/image.d.ts +30 -2
- package/dist/builtins/res/image.js +62 -10
- package/dist/builtins/res/image.js.map +1 -1
- package/dist/builtins/res/play.d.ts +71 -9
- package/dist/builtins/res/play.js +124 -82
- package/dist/builtins/res/play.js.map +1 -1
- package/dist/builtins/res/plugininstance.d.ts +307 -2
- package/dist/builtins/res/plugininstance.js +122 -50
- package/dist/builtins/res/plugininstance.js.map +1 -1
- package/dist/builtins/res/pluginmeta.d.ts +244 -2
- package/dist/builtins/res/pluginmeta.js +98 -40
- package/dist/builtins/res/pluginmeta.js.map +1 -1
- package/dist/builtins/res/record.d.ts +37 -3
- package/dist/builtins/res/record.js +127 -57
- package/dist/builtins/res/record.js.map +1 -1
- package/dist/builtins/res/resourceList.d.ts +136 -0
- package/dist/builtins/res/resourceList.js +51 -0
- package/dist/builtins/res/resourceList.js.map +1 -0
- package/dist/builtins/res/tag.d.ts +244 -3
- package/dist/builtins/res/tag.js +97 -41
- package/dist/builtins/res/tag.js.map +1 -1
- package/dist/builtins/res/user.d.ts +122 -3
- package/dist/builtins/res/user.js +83 -21
- package/dist/builtins/res/user.js.map +1 -1
- package/dist/builtins/res/workflow.d.ts +244 -2
- package/dist/builtins/res/workflow.js +97 -40
- package/dist/builtins/res/workflow.js.map +1 -1
- package/dist/builtins/store.d.ts +85 -3
- package/dist/builtins/store.js +135 -68
- package/dist/builtins/store.js.map +1 -1
- package/dist/builtins/sys/apropos.d.ts +80 -5
- package/dist/builtins/sys/apropos.js +121 -15
- package/dist/builtins/sys/apropos.js.map +1 -1
- package/dist/builtins/sys/cal.d.ts +44 -5
- package/dist/builtins/sys/cal.js +57 -10
- package/dist/builtins/sys/cal.js.map +1 -1
- package/dist/builtins/sys/command.d.ts +20 -0
- package/dist/builtins/sys/command.js +31 -0
- package/dist/builtins/sys/command.js.map +1 -1
- package/dist/builtins/sys/context.d.ts +13 -3
- package/dist/builtins/sys/context.js +51 -4
- package/dist/builtins/sys/context.js.map +1 -1
- package/dist/builtins/sys/date.d.ts +56 -5
- package/dist/builtins/sys/date.js +63 -9
- package/dist/builtins/sys/date.js.map +1 -1
- package/dist/builtins/sys/echo.d.ts +63 -2
- package/dist/builtins/sys/echo.js +87 -8
- package/dist/builtins/sys/echo.js.map +1 -1
- package/dist/builtins/sys/fortune.d.ts +27 -2
- package/dist/builtins/sys/fortune.js +44 -2
- package/dist/builtins/sys/fortune.js.map +1 -1
- package/dist/builtins/sys/grep.d.ts +245 -11
- package/dist/builtins/sys/grep.js +418 -131
- package/dist/builtins/sys/grep.js.map +1 -1
- package/dist/builtins/sys/joblets.d.ts +66 -7
- package/dist/builtins/sys/joblets.js +101 -14
- package/dist/builtins/sys/joblets.js.map +1 -1
- package/dist/builtins/sys/motd.d.ts +37 -3
- package/dist/builtins/sys/motd.js +49 -8
- package/dist/builtins/sys/motd.js.map +1 -1
- package/dist/builtins/sys/notes.d.ts +75 -3
- package/dist/builtins/sys/notes.js +90 -29
- package/dist/builtins/sys/notes.js.map +1 -1
- package/dist/builtins/sys/physicalmode.d.ts +24 -3
- package/dist/builtins/sys/physicalmode.js +68 -14
- package/dist/builtins/sys/physicalmode.js.map +1 -1
- package/dist/builtins/sys/tasks.d.ts +74 -5
- package/dist/builtins/sys/tasks.js +102 -14
- package/dist/builtins/sys/tasks.js.map +1 -1
- package/dist/builtins/sys/textFilters.d.ts +673 -41
- package/dist/builtins/sys/textFilters.js +718 -263
- package/dist/builtins/sys/textFilters.js.map +1 -1
- package/dist/builtins/sys/timing.d.ts +24 -3
- package/dist/builtins/sys/timing.js +67 -14
- package/dist/builtins/sys/timing.js.map +1 -1
- package/dist/builtins/sys/variables.d.ts +70 -4
- package/dist/builtins/sys/variables.js +103 -31
- package/dist/builtins/sys/variables.js.map +1 -1
- package/dist/builtins/sys/version.d.ts +27 -2
- package/dist/builtins/sys/version.js +48 -3
- package/dist/builtins/sys/version.js.map +1 -1
- package/dist/builtins/sys/weather.d.ts +92 -15
- package/dist/builtins/sys/weather.js +71 -45
- package/dist/builtins/sys/weather.js.map +1 -1
- package/dist/builtins/sys/whoami.d.ts +38 -18
- package/dist/builtins/sys/whoami.js +112 -8
- package/dist/builtins/sys/whoami.js.map +1 -1
- package/dist/builtins/utils.d.ts +0 -37
- package/dist/builtins/utils.js +0 -86
- package/dist/builtins/utils.js.map +1 -1
- package/dist/chris/chrisCommands.js +58 -152
- package/dist/chris/chrisCommands.js.map +1 -1
- package/dist/chris/commandFallback.d.ts +12 -0
- package/dist/chris/commandFallback.js +47 -0
- package/dist/chris/commandFallback.js.map +1 -1
- package/dist/chris/filesystem.js +7 -5
- package/dist/chris/filesystem.js.map +1 -1
- package/dist/chris/help.js +0 -1018
- package/dist/chris/help.js.map +1 -1
- package/dist/chris/kinds.d.ts +21 -0
- package/dist/chris/kinds.js +114 -2
- package/dist/chris/kinds.js.map +1 -1
- package/dist/chris/mounts.d.ts +4 -4
- package/dist/chris/mounts.js +9 -16
- package/dist/chris/mounts.js.map +1 -1
- package/dist/chris/navigation.d.ts +2 -3
- package/dist/chris/navigation.js +6 -20
- package/dist/chris/navigation.js.map +1 -1
- package/dist/chris/pacsResources.d.ts +259 -0
- package/dist/chris/pacsResources.js +168 -0
- package/dist/chris/pacsResources.js.map +1 -0
- package/dist/core/commandDeclaration.d.ts +97 -7
- package/dist/core/commandDeclaration.js +21 -0
- package/dist/core/commandDeclaration.js.map +1 -1
- package/dist/core/commandParse.js +65 -17
- package/dist/core/commandParse.js.map +1 -1
- package/dist/core/commandRegistry.d.ts +4 -3
- package/dist/core/commandRegistry.js +36 -8
- package/dist/core/commandRegistry.js.map +1 -1
- package/dist/core/commandSchema.js +5 -2
- package/dist/core/commandSchema.js.map +1 -1
- package/dist/core/commandUsage.d.ts +15 -0
- package/dist/core/commandUsage.js +59 -7
- package/dist/core/commandUsage.js.map +1 -1
- package/dist/core/coreCommands.js +63 -212
- package/dist/core/coreCommands.js.map +1 -1
- package/dist/core/paths.d.ts +29 -1
- package/dist/core/paths.js +15 -2
- package/dist/core/paths.js.map +1 -1
- package/dist/core/preprocess.d.ts +3 -4
- package/dist/core/preprocess.js +4 -5
- package/dist/core/preprocess.js.map +1 -1
- package/dist/lib/completer/declared.js +7 -4
- package/dist/lib/completer/declared.js.map +1 -1
- package/dist/lib/completer/index.js +2 -7
- package/dist/lib/completer/index.js.map +1 -1
- package/dist/lib/parser.d.ts +0 -8
- package/dist/lib/parser.js +0 -11
- package/dist/lib/parser.js.map +1 -1
- package/dist/lib/vfs/vfs.d.ts +2 -1
- package/dist/lib/vfs/vfs.js +5 -4
- package/dist/lib/vfs/vfs.js.map +1 -1
- package/dist/notes.json +1 -1
- package/package.json +3 -3
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CommandEnvelope } from '@fnndsc/menu';
|
|
2
|
+
import { type CommandDeclaration } from '../../core/commandDeclaration.js';
|
|
2
3
|
/** The programs a GAMES pane can run. */
|
|
3
4
|
export type ShowProgram = 'sl' | 'cmatrix' | 'rain' | 'aquarium' | 'tetris' | 'snake';
|
|
4
5
|
/**
|
|
@@ -13,15 +14,139 @@ export declare const STARSHIP: ReadonlyArray<string>;
|
|
|
13
14
|
export declare const MATRIX_GLYPHS: string;
|
|
14
15
|
/** A still of a show, for a console with no canvas. */
|
|
15
16
|
export declare function still_render(program: ShowProgram, random?: () => number): string[];
|
|
16
|
-
/**
|
|
17
|
+
/** What a showpiece's line may hold: the one switch that sends it to ARGUS's GAMES pane. */
|
|
18
|
+
declare const SHOW_GRAMMAR: {
|
|
19
|
+
readonly options: {
|
|
20
|
+
readonly pane: {
|
|
21
|
+
readonly long: "pane";
|
|
22
|
+
readonly summary: "Draw it in ARGUS's GAMES pane instead of the terminal";
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* `sl [--pane]`: the declaration.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* commands_register({ declarations: [slCommand] });
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare const slCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
35
|
+
/**
|
|
36
|
+
* `sl` over words already split: the declaration's parse and handler.
|
|
37
|
+
*
|
|
38
|
+
* @param args - The words after `sl`.
|
|
39
|
+
* @returns The show, or the refusal of a bad line.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* await builtin_sl(['--pane']);
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
17
46
|
export declare function builtin_sl(args: string[]): Promise<CommandEnvelope>;
|
|
18
|
-
/**
|
|
47
|
+
/**
|
|
48
|
+
* `cmatrix [--pane]`: the declaration.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* commands_register({ declarations: [cmatrixCommand] });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare const cmatrixCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
56
|
+
/**
|
|
57
|
+
* `cmatrix` over words already split: the declaration's parse and handler.
|
|
58
|
+
*
|
|
59
|
+
* @param args - The words after `cmatrix`.
|
|
60
|
+
* @returns The show, or the refusal of a bad line.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* await builtin_cmatrix(['--pane']);
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
19
67
|
export declare function builtin_cmatrix(args: string[]): Promise<CommandEnvelope>;
|
|
20
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* `rain [--pane]`: the declaration.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* commands_register({ declarations: [rainCommand] });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare const rainCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
77
|
+
/**
|
|
78
|
+
* `rain` over words already split: the declaration's parse and handler.
|
|
79
|
+
*
|
|
80
|
+
* @param args - The words after `rain`.
|
|
81
|
+
* @returns The show, or the refusal of a bad line.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```ts
|
|
85
|
+
* await builtin_rain(['--pane']);
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
21
88
|
export declare function builtin_rain(args: string[]): Promise<CommandEnvelope>;
|
|
22
|
-
/**
|
|
89
|
+
/**
|
|
90
|
+
* `asciiquarium [--pane]`: the declaration.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* commands_register({ declarations: [asciiquariumCommand] });
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
export declare const asciiquariumCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
98
|
+
/**
|
|
99
|
+
* `asciiquarium` over words already split: the declaration's parse and handler.
|
|
100
|
+
*
|
|
101
|
+
* @param args - The words after `asciiquarium`.
|
|
102
|
+
* @returns The show, or the refusal of a bad line.
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* ```ts
|
|
106
|
+
* await builtin_asciiquarium(['--pane']);
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
23
109
|
export declare function builtin_asciiquarium(args: string[]): Promise<CommandEnvelope>;
|
|
24
|
-
/**
|
|
110
|
+
/**
|
|
111
|
+
* `tetris [--pane]`: the declaration.
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```ts
|
|
115
|
+
* commands_register({ declarations: [tetrisCommand] });
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
export declare const tetrisCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
119
|
+
/**
|
|
120
|
+
* `tetris` over words already split: the declaration's parse and handler.
|
|
121
|
+
*
|
|
122
|
+
* @param args - The words after `tetris`.
|
|
123
|
+
* @returns The show, or the refusal of a bad line.
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```ts
|
|
127
|
+
* await builtin_tetris(['--pane']);
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
25
130
|
export declare function builtin_tetris(args: string[]): Promise<CommandEnvelope>;
|
|
26
|
-
/**
|
|
131
|
+
/**
|
|
132
|
+
* `snake [--pane]`: the declaration.
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* ```ts
|
|
136
|
+
* commands_register({ declarations: [snakeCommand] });
|
|
137
|
+
* ```
|
|
138
|
+
*/
|
|
139
|
+
export declare const snakeCommand: CommandDeclaration<typeof SHOW_GRAMMAR>;
|
|
140
|
+
/**
|
|
141
|
+
* `snake` over words already split: the declaration's parse and handler.
|
|
142
|
+
*
|
|
143
|
+
* @param args - The words after `snake`.
|
|
144
|
+
* @returns The show, or the refusal of a bad line.
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```ts
|
|
148
|
+
* await builtin_snake(['--pane']);
|
|
149
|
+
* ```
|
|
150
|
+
*/
|
|
27
151
|
export declare function builtin_snake(args: string[]): Promise<CommandEnvelope>;
|
|
152
|
+
export {};
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
* @module
|
|
12
12
|
*/
|
|
13
13
|
import chalk from 'chalk';
|
|
14
|
-
import { envelope_ok
|
|
14
|
+
import { envelope_ok } from '@fnndsc/menu';
|
|
15
|
+
import { command_declare } from '../../core/commandDeclaration.js';
|
|
16
|
+
import { declaredCommand_run } from '../../core/commandParse.js';
|
|
15
17
|
/**
|
|
16
18
|
* The starship `sl` sends across the screen (a typo's punishment, as the
|
|
17
19
|
* train was): the Constitution-class refit, side view, from the Star Trek
|
|
@@ -57,25 +59,211 @@ function note_render(program, arcade, pane) {
|
|
|
57
59
|
return chalk.gray(`${program}: ARGUS draws it in its GAMES pane${arcade ? ' with the keys live (arrows; Esc gives the keyboard back)' : ''}.`);
|
|
58
60
|
return chalk.gray(`${program}: a terminal plays it in place${arcade ? ' (arrows steer)' : ''}; q, Esc or Ctrl-C leaves. --pane draws it in ARGUS's GAMES pane.`);
|
|
59
61
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
62
|
+
/** What a showpiece's line may hold: the one switch that sends it to ARGUS's GAMES pane. */
|
|
63
|
+
const SHOW_GRAMMAR = {
|
|
64
|
+
options: {
|
|
65
|
+
pane: { long: 'pane', summary: "Draw it in ARGUS's GAMES pane instead of the terminal" },
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Declares a showpiece: one program on the cell grid, with the one `--pane` switch.
|
|
70
|
+
*
|
|
71
|
+
* @param name - The word that runs it.
|
|
72
|
+
* @param program - The program a GAMES pane runs.
|
|
73
|
+
* @param arcade - Whether the keys play it (an arcade game) or it only shows.
|
|
74
|
+
* @param prose - Its summary, description and examples.
|
|
75
|
+
* @returns The declaration.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```ts
|
|
79
|
+
* export const slCommand = showCommand_make('sl', 'sl', false, { summary: 'A starship crosses the screen', description: '…', examples: ['sl'] });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
function showCommand_make(name, program, arcade, prose) {
|
|
83
|
+
return command_declare({
|
|
84
|
+
name,
|
|
85
|
+
grammar: SHOW_GRAMMAR,
|
|
86
|
+
help: prose,
|
|
87
|
+
handler: async (args) => show_run(program, arcade, args.options.pane),
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Runs a showpiece: a still of it, and how the moving one is played.
|
|
92
|
+
*
|
|
93
|
+
* @param program - The program.
|
|
94
|
+
* @param arcade - Whether the keys play it.
|
|
95
|
+
* @param pane - Whether ARGUS's GAMES pane draws it.
|
|
96
|
+
* @returns The still and the note, on the `games.show` model.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```ts
|
|
100
|
+
* show_run('sl', false, true);
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
function show_run(program, arcade, pane) {
|
|
66
104
|
const still = still_render(program);
|
|
67
|
-
return envelope_ok(`${still.join('\n')}\n${note_render(program, arcade, pane)}\n`, { kind: 'games.show', data: { program, args:
|
|
105
|
+
return envelope_ok(`${still.join('\n')}\n${note_render(program, arcade, pane)}\n`, { kind: 'games.show', data: { program, args: [], arcade, pane } });
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* `sl [--pane]`: the declaration.
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```ts
|
|
112
|
+
* commands_register({ declarations: [slCommand] });
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
export const slCommand = showCommand_make('sl', 'sl', false, {
|
|
116
|
+
summary: 'A starship crosses the screen (the punishment for mistyping ls)',
|
|
117
|
+
description: "The train of old, refitted: a starship glides across the terminal. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
118
|
+
examples: ['sl', 'sl --pane'],
|
|
119
|
+
});
|
|
120
|
+
/**
|
|
121
|
+
* `sl` over words already split: the declaration's parse and handler.
|
|
122
|
+
*
|
|
123
|
+
* @param args - The words after `sl`.
|
|
124
|
+
* @returns The show, or the refusal of a bad line.
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```ts
|
|
128
|
+
* await builtin_sl(['--pane']);
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
export async function builtin_sl(args) {
|
|
132
|
+
return declaredCommand_run(slCommand, args);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* `cmatrix [--pane]`: the declaration.
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```ts
|
|
139
|
+
* commands_register({ declarations: [cmatrixCommand] });
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
export const cmatrixCommand = showCommand_make('cmatrix', 'cmatrix', false, {
|
|
143
|
+
summary: 'The glyph rain',
|
|
144
|
+
description: "Columns of glyphs falling down the terminal. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
145
|
+
examples: ['cmatrix', 'cmatrix --pane'],
|
|
146
|
+
});
|
|
147
|
+
/**
|
|
148
|
+
* `cmatrix` over words already split: the declaration's parse and handler.
|
|
149
|
+
*
|
|
150
|
+
* @param args - The words after `cmatrix`.
|
|
151
|
+
* @returns The show, or the refusal of a bad line.
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```ts
|
|
155
|
+
* await builtin_cmatrix(['--pane']);
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
export async function builtin_cmatrix(args) {
|
|
159
|
+
return declaredCommand_run(cmatrixCommand, args);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* `rain [--pane]`: the declaration.
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* ```ts
|
|
166
|
+
* commands_register({ declarations: [rainCommand] });
|
|
167
|
+
* ```
|
|
168
|
+
*/
|
|
169
|
+
export const rainCommand = showCommand_make('rain', 'rain', false, {
|
|
170
|
+
summary: 'Rain',
|
|
171
|
+
description: "Drops falling and ringing out on the floor of the terminal. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
172
|
+
examples: ['rain'],
|
|
173
|
+
});
|
|
174
|
+
/**
|
|
175
|
+
* `rain` over words already split: the declaration's parse and handler.
|
|
176
|
+
*
|
|
177
|
+
* @param args - The words after `rain`.
|
|
178
|
+
* @returns The show, or the refusal of a bad line.
|
|
179
|
+
*
|
|
180
|
+
* @example
|
|
181
|
+
* ```ts
|
|
182
|
+
* await builtin_rain(['--pane']);
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
export async function builtin_rain(args) {
|
|
186
|
+
return declaredCommand_run(rainCommand, args);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* `asciiquarium [--pane]`: the declaration.
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* ```ts
|
|
193
|
+
* commands_register({ declarations: [asciiquariumCommand] });
|
|
194
|
+
* ```
|
|
195
|
+
*/
|
|
196
|
+
export const asciiquariumCommand = showCommand_make('asciiquarium', 'aquarium', false, {
|
|
197
|
+
summary: 'An aquarium: fish, weed, bubbles',
|
|
198
|
+
description: "Fish swimming both ways, weed swaying, bubbles rising, in the terminal. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
199
|
+
examples: ['asciiquarium'],
|
|
200
|
+
});
|
|
201
|
+
/**
|
|
202
|
+
* `asciiquarium` over words already split: the declaration's parse and handler.
|
|
203
|
+
*
|
|
204
|
+
* @param args - The words after `asciiquarium`.
|
|
205
|
+
* @returns The show, or the refusal of a bad line.
|
|
206
|
+
*
|
|
207
|
+
* @example
|
|
208
|
+
* ```ts
|
|
209
|
+
* await builtin_asciiquarium(['--pane']);
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
export async function builtin_asciiquarium(args) {
|
|
213
|
+
return declaredCommand_run(asciiquariumCommand, args);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* `tetris [--pane]`: the declaration.
|
|
217
|
+
*
|
|
218
|
+
* @example
|
|
219
|
+
* ```ts
|
|
220
|
+
* commands_register({ declarations: [tetrisCommand] });
|
|
221
|
+
* ```
|
|
222
|
+
*/
|
|
223
|
+
export const tetrisCommand = showCommand_make('tetris', 'tetris', true, {
|
|
224
|
+
summary: 'Falling blocks',
|
|
225
|
+
description: "Played in the terminal: left/right move, up rotates, down drops. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
226
|
+
examples: ['tetris', 'tetris --pane'],
|
|
227
|
+
});
|
|
228
|
+
/**
|
|
229
|
+
* `tetris` over words already split: the declaration's parse and handler.
|
|
230
|
+
*
|
|
231
|
+
* @param args - The words after `tetris`.
|
|
232
|
+
* @returns The show, or the refusal of a bad line.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```ts
|
|
236
|
+
* await builtin_tetris(['--pane']);
|
|
237
|
+
* ```
|
|
238
|
+
*/
|
|
239
|
+
export async function builtin_tetris(args) {
|
|
240
|
+
return declaredCommand_run(tetrisCommand, args);
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* `snake [--pane]`: the declaration.
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```ts
|
|
247
|
+
* commands_register({ declarations: [snakeCommand] });
|
|
248
|
+
* ```
|
|
249
|
+
*/
|
|
250
|
+
export const snakeCommand = showCommand_make('snake', 'snake', true, {
|
|
251
|
+
summary: 'The snake',
|
|
252
|
+
description: "Played in the terminal: arrows (or hjkl, wasd) steer; eat the food, do not eat yourself. q, Esc or Ctrl-C gives the screen back. --pane draws it in ARGUS's GAMES pane instead (the transcript console always does).",
|
|
253
|
+
examples: ['snake'],
|
|
254
|
+
});
|
|
255
|
+
/**
|
|
256
|
+
* `snake` over words already split: the declaration's parse and handler.
|
|
257
|
+
*
|
|
258
|
+
* @param args - The words after `snake`.
|
|
259
|
+
* @returns The show, or the refusal of a bad line.
|
|
260
|
+
*
|
|
261
|
+
* @example
|
|
262
|
+
* ```ts
|
|
263
|
+
* await builtin_snake(['--pane']);
|
|
264
|
+
* ```
|
|
265
|
+
*/
|
|
266
|
+
export async function builtin_snake(args) {
|
|
267
|
+
return declaredCommand_run(snakeCommand, args);
|
|
68
268
|
}
|
|
69
|
-
/** `sl`: a starship crosses the screen. */
|
|
70
|
-
export async function builtin_sl(args) { return show_run('sl', args, false); }
|
|
71
|
-
/** `cmatrix`: the glyph rain. */
|
|
72
|
-
export async function builtin_cmatrix(args) { return show_run('cmatrix', args, false); }
|
|
73
|
-
/** `rain`: rain. */
|
|
74
|
-
export async function builtin_rain(args) { return show_run('rain', args, false); }
|
|
75
|
-
/** `asciiquarium`: fish. */
|
|
76
|
-
export async function builtin_asciiquarium(args) { return show_run('aquarium', args, false); }
|
|
77
|
-
/** `tetris`: falling blocks. */
|
|
78
|
-
export async function builtin_tetris(args) { return show_run('tetris', args, true); }
|
|
79
|
-
/** `snake`: the snake. */
|
|
80
|
-
export async function builtin_snake(args) { return show_run('snake', args, true); }
|
|
81
269
|
//# sourceMappingURL=show.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../../src/builtins/games/show.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAmB,WAAW,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../../src/builtins/games/show.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type WeatherFetch, type WeatherPlace } from '../sys/weather.js';
|
|
2
2
|
import { CommandEnvelope } from '@fnndsc/menu';
|
|
3
|
+
import { type CommandDeclaration } from '../../core/commandDeclaration.js';
|
|
3
4
|
/** A date as a Julian day. */
|
|
4
5
|
export declare function julianDay_compute(date: Date): number;
|
|
5
6
|
/** The moon's state on a date. */
|
|
@@ -18,15 +19,93 @@ export interface MoonPhase {
|
|
|
18
19
|
export declare function moon_phase(date: Date): MoonPhase;
|
|
19
20
|
/** A small moon, lit from the side the phase lights. */
|
|
20
21
|
export declare function moon_draw(phase: MoonPhase): string[];
|
|
21
|
-
/**
|
|
22
|
+
/**
|
|
23
|
+
* `pom [date]`: the declaration.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* commands_register({ declarations: [pomCommand] });
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare const pomCommand: CommandDeclaration<{
|
|
31
|
+
readonly operands: readonly [{
|
|
32
|
+
readonly name: "date";
|
|
33
|
+
readonly kind: "word";
|
|
34
|
+
readonly optional: true;
|
|
35
|
+
readonly repeat: true;
|
|
36
|
+
readonly summary: "The date to look at (default: today)";
|
|
37
|
+
}];
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* `pom` over words already split: the declaration's parse and handler.
|
|
41
|
+
*
|
|
42
|
+
* @param args - The words after `pom`.
|
|
43
|
+
* @returns The answer, or the refusal of a bad line.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* await builtin_pom(['2026-12-25']);
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
22
50
|
export declare function builtin_pom(args: string[]): Promise<CommandEnvelope>;
|
|
51
|
+
/**
|
|
52
|
+
* Runs `pom` on a date.
|
|
53
|
+
*
|
|
54
|
+
* @param words - The date's words, none for today.
|
|
55
|
+
* @returns The answer, or a refusal for words that are not a date.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts
|
|
59
|
+
* await pom_run(['2026-12-25']);
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export declare function pom_run(words: readonly string[]): Promise<CommandEnvelope>;
|
|
23
63
|
/** The stardate two ways: the Kelvin films' `YYYY.DDD`, and TNG's thousand-per-year from 2323. */
|
|
24
64
|
export declare function stardate_derive(date: Date): {
|
|
25
65
|
kelvin: string;
|
|
26
66
|
tng: string;
|
|
27
67
|
};
|
|
28
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* `stardate [date]`: the declaration.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* commands_register({ declarations: [stardateCommand] });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare const stardateCommand: CommandDeclaration<{
|
|
77
|
+
readonly operands: readonly [{
|
|
78
|
+
readonly name: "date";
|
|
79
|
+
readonly kind: "word";
|
|
80
|
+
readonly optional: true;
|
|
81
|
+
readonly repeat: true;
|
|
82
|
+
readonly summary: "The date to reckon (default: today)";
|
|
83
|
+
}];
|
|
84
|
+
}>;
|
|
85
|
+
/**
|
|
86
|
+
* `stardate` over words already split: the declaration's parse and handler.
|
|
87
|
+
*
|
|
88
|
+
* @param args - The words after `stardate`.
|
|
89
|
+
* @returns The answer, or the refusal of a bad line.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```ts
|
|
93
|
+
* await builtin_stardate(['2366-01-01']);
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
29
96
|
export declare function builtin_stardate(args: string[]): Promise<CommandEnvelope>;
|
|
97
|
+
/**
|
|
98
|
+
* Runs `stardate` on a date.
|
|
99
|
+
*
|
|
100
|
+
* @param words - The date's words, none for today.
|
|
101
|
+
* @returns The answer, or a refusal for words that are not a date.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* await stardate_run(['2366-01-01']);
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
export declare function stardate_run(words: readonly string[]): Promise<CommandEnvelope>;
|
|
30
109
|
/** The Discordian date of a Gregorian one. */
|
|
31
110
|
export interface DiscordianDate {
|
|
32
111
|
yold: number;
|
|
@@ -39,8 +118,47 @@ export interface DiscordianDate {
|
|
|
39
118
|
export declare function ddate_derive(date: Date): DiscordianDate;
|
|
40
119
|
/** 1st, 2nd, 3rd, 4th … 11th, 12th, 13th … 21st. */
|
|
41
120
|
export declare function ordinal_format(n: number): string;
|
|
42
|
-
/**
|
|
121
|
+
/**
|
|
122
|
+
* `ddate [date]`: the declaration.
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```ts
|
|
126
|
+
* commands_register({ declarations: [ddateCommand] });
|
|
127
|
+
* ```
|
|
128
|
+
*/
|
|
129
|
+
export declare const ddateCommand: CommandDeclaration<{
|
|
130
|
+
readonly operands: readonly [{
|
|
131
|
+
readonly name: "date";
|
|
132
|
+
readonly kind: "word";
|
|
133
|
+
readonly optional: true;
|
|
134
|
+
readonly repeat: true;
|
|
135
|
+
readonly summary: "The date to convert (default: today)";
|
|
136
|
+
}];
|
|
137
|
+
}>;
|
|
138
|
+
/**
|
|
139
|
+
* `ddate` over words already split: the declaration's parse and handler.
|
|
140
|
+
*
|
|
141
|
+
* @param args - The words after `ddate`.
|
|
142
|
+
* @returns The answer, or the refusal of a bad line.
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```ts
|
|
146
|
+
* await builtin_ddate(['2028-02-29']);
|
|
147
|
+
* ```
|
|
148
|
+
*/
|
|
43
149
|
export declare function builtin_ddate(args: string[]): Promise<CommandEnvelope>;
|
|
150
|
+
/**
|
|
151
|
+
* Runs `ddate` on a date.
|
|
152
|
+
*
|
|
153
|
+
* @param words - The date's words, none for today.
|
|
154
|
+
* @returns The answer, or a refusal for words that are not a date.
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```ts
|
|
158
|
+
* await ddate_run(['2028-02-29']);
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
161
|
+
export declare function ddate_run(words: readonly string[]): Promise<CommandEnvelope>;
|
|
44
162
|
/** What Open-Meteo says of one day's sun. */
|
|
45
163
|
export interface SunDay {
|
|
46
164
|
date: string;
|
|
@@ -55,5 +173,61 @@ export interface SunDay {
|
|
|
55
173
|
* @param place - Where.
|
|
56
174
|
*/
|
|
57
175
|
export declare function sun_fetch(fetchFn: WeatherFetch, place: WeatherPlace): Promise<SunDay[]>;
|
|
58
|
-
/** `sunrise
|
|
176
|
+
/** What `sunrise` takes: a place, in as many words as it is named. */
|
|
177
|
+
declare const SUNRISE_GRAMMAR: {
|
|
178
|
+
readonly operands: readonly [{
|
|
179
|
+
readonly name: "place";
|
|
180
|
+
readonly kind: "word";
|
|
181
|
+
readonly optional: true;
|
|
182
|
+
readonly repeat: true;
|
|
183
|
+
readonly summary: "The place (default: Boston)";
|
|
184
|
+
}];
|
|
185
|
+
};
|
|
186
|
+
/**
|
|
187
|
+
* Declares `sunrise` over a fetch (a test hands in its own).
|
|
188
|
+
*
|
|
189
|
+
* @param fetchFn - The fetch the command asks Open-Meteo with.
|
|
190
|
+
* @returns The declaration.
|
|
191
|
+
*
|
|
192
|
+
* @example
|
|
193
|
+
* ```ts
|
|
194
|
+
* const command = sunriseCommand_make(fakeFetch);
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
197
|
+
export declare function sunriseCommand_make(fetchFn: WeatherFetch): CommandDeclaration<typeof SUNRISE_GRAMMAR>;
|
|
198
|
+
/**
|
|
199
|
+
* `sunrise [place]`: the declaration.
|
|
200
|
+
*
|
|
201
|
+
* @example
|
|
202
|
+
* ```ts
|
|
203
|
+
* commands_register({ declarations: [sunriseCommand] });
|
|
204
|
+
* ```
|
|
205
|
+
*/
|
|
206
|
+
export declare const sunriseCommand: CommandDeclaration<typeof SUNRISE_GRAMMAR>;
|
|
207
|
+
/**
|
|
208
|
+
* `sunrise` over words already split: the declaration's parse and handler.
|
|
209
|
+
*
|
|
210
|
+
* @param args - The words after `sunrise`.
|
|
211
|
+
* @param fetchFn - The fetch to use.
|
|
212
|
+
* @returns The sun's days, or the refusal of a bad line.
|
|
213
|
+
*
|
|
214
|
+
* @example
|
|
215
|
+
* ```ts
|
|
216
|
+
* await builtin_sunrise(['Cape', 'Town']);
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
59
219
|
export declare function builtin_sunrise(args: string[], fetchFn?: WeatherFetch): Promise<CommandEnvelope>;
|
|
220
|
+
/**
|
|
221
|
+
* When the sun rises and sets at a place, today and tomorrow.
|
|
222
|
+
*
|
|
223
|
+
* @param words - The place's words, none for the default place.
|
|
224
|
+
* @param fetchFn - The fetch to use.
|
|
225
|
+
* @returns The sun's days, or a refusal.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```ts
|
|
229
|
+
* await sunrise_run(['Tromsø'], fetch);
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
export declare function sunrise_run(words: readonly string[], fetchFn: WeatherFetch): Promise<CommandEnvelope>;
|
|
233
|
+
export {};
|