jssm 5.35.4 → 5.42.0
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/.codeclimate.yml +22 -22
- package/.editorconfig +12 -12
- package/.eslintrc +20 -20
- package/.nycrc +6 -6
- package/.travis.yml +8 -8
- package/LICENSE.md +21 -21
- package/README.md +997 -993
- package/dist/es6/jssm-dot.d.ts +6 -6
- package/dist/es6/jssm-dot.js +1 -1
- package/dist/es6/jssm.d.ts +100 -100
- package/dist/es6/jssm.js +792 -792
- package/dist/es6/jssm_types.d.ts +151 -151
- package/dist/es6/jssm_types.js +1 -1
- package/dist/es6/jssm_util.d.ts +8 -8
- package/dist/es6/jssm_util.js +34 -34
- package/dist/es6/version.d.ts +2 -2
- package/dist/es6/version.js +2 -2
- package/dist/jssm.es5.cjs.js +1 -1
- package/dist/jssm.es5.iife.js +1 -0
- package/jest-spec.config.js +27 -27
- package/jest-stoch.config.js +27 -27
- package/jssm-dot.d.ts +6 -6
- package/jssm.d.ts +100 -100
- package/jssm_types.d.ts +151 -151
- package/jssm_util.d.ts +8 -8
- package/package.json +125 -122
- package/rollup.config.iife.js +44 -44
- package/rollup.config.js +44 -44
- package/src/demo/index.html +38 -38
- package/src/demo/style.css +1 -1
- package/src/ts/jssm-dot.peg +928 -874
- package/src/ts/jssm.ts +1120 -1120
- package/src/ts/jssm_types.ts +346 -346
- package/src/ts/jssm_util.ts +100 -100
- package/src/ts/tests/actions.spec.ts +167 -167
- package/src/ts/tests/arrange.spec.ts +72 -72
- package/src/ts/tests/arrange.stoch.ts +4 -4
- package/src/ts/tests/array_box_if_string.spec.ts +30 -31
- package/src/ts/tests/array_transitions.spec.ts +129 -129
- package/src/ts/tests/arrow unicode.spec.ts +88 -88
- package/src/ts/tests/arrow.spec.ts +124 -124
- package/src/ts/tests/colors.spec.ts +58 -58
- package/src/ts/tests/comment.spec.ts +134 -134
- package/src/ts/tests/compile.spec.ts +79 -79
- package/src/ts/tests/constants.spec.ts +98 -98
- package/src/ts/tests/cycles.spec.ts +153 -153
- package/src/ts/tests/dot_preamble.spec.ts +16 -16
- package/src/ts/tests/embedded_sm.spec.ts +36 -36
- package/src/ts/tests/flow.spec.ts +22 -22
- package/src/ts/tests/forced transitions.spec.ts +26 -26
- package/src/ts/tests/general.spec.ts +933 -933
- package/src/ts/tests/graph node lists.spec.ts +21 -21
- package/src/ts/tests/histo.spec.ts +24 -24
- package/src/ts/tests/hooks.spec.ts +28 -0
- package/src/ts/tests/language.spec.ts +37 -37
- package/src/ts/tests/language_data/belarussian.json +13 -13
- package/src/ts/tests/language_data/bengali.json +15 -15
- package/src/ts/tests/language_data/emoji.json +21 -21
- package/src/ts/tests/language_data/english.json +16 -16
- package/src/ts/tests/language_data/french.json +16 -16
- package/src/ts/tests/language_data/german.json +16 -16
- package/src/ts/tests/language_data/hebrew.json +16 -16
- package/src/ts/tests/language_data/portuguese.json +12 -12
- package/src/ts/tests/language_data/russian.json +12 -12
- package/src/ts/tests/language_data/spanish.json +17 -17
- package/src/ts/tests/language_data/ukrainian.json +18 -18
- package/src/ts/tests/layout.spec.ts +29 -29
- package/src/ts/tests/machine_attributes.spec.ts +398 -398
- package/src/ts/tests/machine_name.spec.ts +14 -14
- package/src/ts/tests/named lists.spec.ts +24 -19
- package/src/ts/tests/nominated states.spec.ts +133 -133
- package/src/ts/tests/parse actions.spec.ts +32 -32
- package/src/ts/tests/parse.spec.ts +94 -94
- package/src/ts/tests/probability.spec.ts +146 -146
- package/src/ts/tests/r639.spec.ts +27 -27
- package/src/ts/tests/sample_select.spec.ts +173 -173
- package/src/ts/tests/seq.spec.ts +14 -16
- package/src/ts/tests/seq.stoch.ts +83 -0
- package/src/ts/tests/shapes.spec.ts +63 -63
- package/src/ts/tests/sm_tag.spec.ts +37 -37
- package/src/ts/tests/special characters.spec.ts +39 -39
- package/src/ts/tests/state_declaration.spec.ts +214 -200
- package/src/ts/tests/state_style.spec.ts +82 -39
- package/src/ts/tests/stop light.spec.ts +157 -157
- package/src/ts/tests/stripes.spec.ts +52 -52
- package/src/ts/tests/theme.spec.ts +45 -45
- package/src/ts/tests/weighted_histo_key.spec.ts +22 -22
- package/src/ts/tests/weighted_rand_select.spec.ts +27 -27
- package/src/ts/tests/weighted_sample_select.spec.ts +24 -26
- package/src/ts/version.ts +1 -1
- package/tree.txt +1794 -1794
- package/tsconfig.json +27 -27
- package/version.d.ts +2 -2
package/dist/es6/jssm.d.ts
CHANGED
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
declare type StateType = string;
|
|
2
|
-
import { JssmGenericState, JssmGenericConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule,
|
|
3
|
-
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, FslDirection, FslTheme } from './jssm_types';
|
|
4
|
-
import { seq, weighted_rand_select, weighted_sample_select, histograph, weighted_histo_key } from './jssm_util';
|
|
5
|
-
import { version } from './version';
|
|
6
|
-
declare function arrow_direction(arrow: JssmArrow): JssmArrowDirection;
|
|
7
|
-
declare function arrow_left_kind(arrow: JssmArrow): JssmArrowKind;
|
|
8
|
-
declare function arrow_right_kind(arrow: JssmArrow): JssmArrowKind;
|
|
9
|
-
declare function wrap_parse(input: string, options?: Object): any;
|
|
10
|
-
declare function compile<mDT>(tree: JssmParseTree): JssmGenericConfig<mDT>;
|
|
11
|
-
declare function make<mDT>(plan: string): JssmGenericConfig<mDT>;
|
|
12
|
-
declare function transfer_state_properties(state_decl: JssmStateDeclaration): JssmStateDeclaration;
|
|
13
|
-
declare class Machine<mDT> {
|
|
14
|
-
_state: StateType;
|
|
15
|
-
_states: Map<StateType, JssmGenericState>;
|
|
16
|
-
_edges: Array<JssmTransition<mDT>>;
|
|
17
|
-
_edge_map: Map<StateType, Map<StateType, number>>;
|
|
18
|
-
_named_transitions: Map<StateType, number>;
|
|
19
|
-
_actions: Map<StateType, Map<StateType, number>>;
|
|
20
|
-
_reverse_actions: Map<StateType, Map<StateType, number>>;
|
|
21
|
-
_reverse_action_targets: Map<StateType, Map<StateType, number>>;
|
|
22
|
-
_machine_author?: Array<string>;
|
|
23
|
-
_machine_comment?: string;
|
|
24
|
-
_machine_contributor?: Array<string>;
|
|
25
|
-
_machine_definition?: string;
|
|
26
|
-
_machine_language?: string;
|
|
27
|
-
_machine_license?: string;
|
|
28
|
-
_machine_name?: string;
|
|
29
|
-
_machine_version?: string;
|
|
30
|
-
_fsl_version?: string;
|
|
31
|
-
_raw_state_declaration?: Array<Object>;
|
|
32
|
-
_state_declarations: Map<StateType, JssmStateDeclaration>;
|
|
33
|
-
_graph_layout: JssmLayout;
|
|
34
|
-
_dot_preamble: string;
|
|
35
|
-
_arrange_declaration: Array<Array<StateType>>;
|
|
36
|
-
_arrange_start_declaration: Array<Array<StateType>>;
|
|
37
|
-
_arrange_end_declaration: Array<Array<StateType>>;
|
|
38
|
-
_theme: FslTheme;
|
|
39
|
-
_flow: FslDirection;
|
|
40
|
-
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout }: JssmGenericConfig<mDT>);
|
|
41
|
-
_new_state(state_config: JssmGenericState): StateType;
|
|
42
|
-
state(): StateType;
|
|
43
|
-
state_is_final(whichState: StateType): boolean;
|
|
44
|
-
is_final(): boolean;
|
|
45
|
-
graph_layout(): string;
|
|
46
|
-
dot_preamble(): string;
|
|
47
|
-
machine_author(): Array<string>;
|
|
48
|
-
machine_comment(): string;
|
|
49
|
-
machine_contributor(): Array<string>;
|
|
50
|
-
machine_definition(): string;
|
|
51
|
-
machine_language(): string;
|
|
52
|
-
machine_license(): string;
|
|
53
|
-
machine_name(): string;
|
|
54
|
-
machine_version(): string;
|
|
55
|
-
raw_state_declarations(): Array<Object>;
|
|
56
|
-
state_declaration(which: StateType): JssmStateDeclaration;
|
|
57
|
-
state_declarations(): Map<StateType, JssmStateDeclaration>;
|
|
58
|
-
fsl_version(): string;
|
|
59
|
-
machine_state(): JssmMachineInternalState<mDT>;
|
|
60
|
-
states(): Array<StateType>;
|
|
61
|
-
state_for(whichState: StateType): JssmGenericState;
|
|
62
|
-
has_state(whichState: StateType): boolean;
|
|
63
|
-
list_edges(): Array<JssmTransition<mDT>>;
|
|
64
|
-
list_named_transitions(): Map<StateType, number>;
|
|
65
|
-
list_actions(): Array<StateType>;
|
|
66
|
-
theme(): FslTheme;
|
|
67
|
-
flow(): FslDirection;
|
|
68
|
-
get_transition_by_state_names(from: StateType, to: StateType): number;
|
|
69
|
-
lookup_transition_for(from: StateType, to: StateType): JssmTransition<mDT>;
|
|
70
|
-
list_transitions(whichState?: StateType): JssmTransitionList;
|
|
71
|
-
list_entrances(whichState?: StateType): Array<StateType>;
|
|
72
|
-
list_exits(whichState?: StateType): Array<StateType>;
|
|
73
|
-
probable_exits_for(whichState: StateType): Array<JssmTransition<mDT>>;
|
|
74
|
-
probabilistic_transition(): boolean;
|
|
75
|
-
probabilistic_walk(n: number): Array<StateType>;
|
|
76
|
-
probabilistic_histo_walk(n: number): Map<StateType, number>;
|
|
77
|
-
actions(whichState?: StateType): Array<StateType>;
|
|
78
|
-
list_states_having_action(whichState: StateType): Array<StateType>;
|
|
79
|
-
list_exit_actions(whichState?: StateType): Array<StateType>;
|
|
80
|
-
probable_action_exits(whichState?: StateType): Array<any>;
|
|
81
|
-
is_unenterable(whichState: StateType): boolean;
|
|
82
|
-
has_unenterables(): boolean;
|
|
83
|
-
is_terminal(): boolean;
|
|
84
|
-
state_is_terminal(whichState: StateType): boolean;
|
|
85
|
-
has_terminals(): boolean;
|
|
86
|
-
is_complete(): boolean;
|
|
87
|
-
state_is_complete(whichState: StateType): boolean;
|
|
88
|
-
has_completes(): boolean;
|
|
89
|
-
action(name: StateType, newData?: mDT): boolean;
|
|
90
|
-
transition(newState: StateType, newData?: mDT): boolean;
|
|
91
|
-
force_transition(newState: StateType, newData?: mDT): boolean;
|
|
92
|
-
current_action_for(action: StateType): number;
|
|
93
|
-
current_action_edge_for(action: StateType): JssmTransition<mDT>;
|
|
94
|
-
valid_action(action: StateType, _newData?: mDT): boolean;
|
|
95
|
-
valid_transition(newState: StateType, _newData?: mDT): boolean;
|
|
96
|
-
valid_force_transition(newState: StateType, _newData?: mDT): boolean;
|
|
97
|
-
sm(template_strings: TemplateStringsArray, ...remainder: any[]): Machine<mDT>;
|
|
98
|
-
}
|
|
99
|
-
declare function sm<mDT>(template_strings: TemplateStringsArray, ...remainder: any[]): Machine<mDT>;
|
|
100
|
-
export { version, transfer_state_properties, Machine, make, wrap_parse as parse, compile, sm, arrow_direction, arrow_left_kind, arrow_right_kind, seq, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key };
|
|
1
|
+
declare type StateType = string;
|
|
2
|
+
import { JssmGenericState, JssmGenericConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule,
|
|
3
|
+
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, FslDirection, FslTheme } from './jssm_types';
|
|
4
|
+
import { seq, weighted_rand_select, weighted_sample_select, histograph, weighted_histo_key } from './jssm_util';
|
|
5
|
+
import { version } from './version';
|
|
6
|
+
declare function arrow_direction(arrow: JssmArrow): JssmArrowDirection;
|
|
7
|
+
declare function arrow_left_kind(arrow: JssmArrow): JssmArrowKind;
|
|
8
|
+
declare function arrow_right_kind(arrow: JssmArrow): JssmArrowKind;
|
|
9
|
+
declare function wrap_parse(input: string, options?: Object): any;
|
|
10
|
+
declare function compile<mDT>(tree: JssmParseTree): JssmGenericConfig<mDT>;
|
|
11
|
+
declare function make<mDT>(plan: string): JssmGenericConfig<mDT>;
|
|
12
|
+
declare function transfer_state_properties(state_decl: JssmStateDeclaration): JssmStateDeclaration;
|
|
13
|
+
declare class Machine<mDT> {
|
|
14
|
+
_state: StateType;
|
|
15
|
+
_states: Map<StateType, JssmGenericState>;
|
|
16
|
+
_edges: Array<JssmTransition<mDT>>;
|
|
17
|
+
_edge_map: Map<StateType, Map<StateType, number>>;
|
|
18
|
+
_named_transitions: Map<StateType, number>;
|
|
19
|
+
_actions: Map<StateType, Map<StateType, number>>;
|
|
20
|
+
_reverse_actions: Map<StateType, Map<StateType, number>>;
|
|
21
|
+
_reverse_action_targets: Map<StateType, Map<StateType, number>>;
|
|
22
|
+
_machine_author?: Array<string>;
|
|
23
|
+
_machine_comment?: string;
|
|
24
|
+
_machine_contributor?: Array<string>;
|
|
25
|
+
_machine_definition?: string;
|
|
26
|
+
_machine_language?: string;
|
|
27
|
+
_machine_license?: string;
|
|
28
|
+
_machine_name?: string;
|
|
29
|
+
_machine_version?: string;
|
|
30
|
+
_fsl_version?: string;
|
|
31
|
+
_raw_state_declaration?: Array<Object>;
|
|
32
|
+
_state_declarations: Map<StateType, JssmStateDeclaration>;
|
|
33
|
+
_graph_layout: JssmLayout;
|
|
34
|
+
_dot_preamble: string;
|
|
35
|
+
_arrange_declaration: Array<Array<StateType>>;
|
|
36
|
+
_arrange_start_declaration: Array<Array<StateType>>;
|
|
37
|
+
_arrange_end_declaration: Array<Array<StateType>>;
|
|
38
|
+
_theme: FslTheme;
|
|
39
|
+
_flow: FslDirection;
|
|
40
|
+
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout }: JssmGenericConfig<mDT>);
|
|
41
|
+
_new_state(state_config: JssmGenericState): StateType;
|
|
42
|
+
state(): StateType;
|
|
43
|
+
state_is_final(whichState: StateType): boolean;
|
|
44
|
+
is_final(): boolean;
|
|
45
|
+
graph_layout(): string;
|
|
46
|
+
dot_preamble(): string;
|
|
47
|
+
machine_author(): Array<string>;
|
|
48
|
+
machine_comment(): string;
|
|
49
|
+
machine_contributor(): Array<string>;
|
|
50
|
+
machine_definition(): string;
|
|
51
|
+
machine_language(): string;
|
|
52
|
+
machine_license(): string;
|
|
53
|
+
machine_name(): string;
|
|
54
|
+
machine_version(): string;
|
|
55
|
+
raw_state_declarations(): Array<Object>;
|
|
56
|
+
state_declaration(which: StateType): JssmStateDeclaration;
|
|
57
|
+
state_declarations(): Map<StateType, JssmStateDeclaration>;
|
|
58
|
+
fsl_version(): string;
|
|
59
|
+
machine_state(): JssmMachineInternalState<mDT>;
|
|
60
|
+
states(): Array<StateType>;
|
|
61
|
+
state_for(whichState: StateType): JssmGenericState;
|
|
62
|
+
has_state(whichState: StateType): boolean;
|
|
63
|
+
list_edges(): Array<JssmTransition<mDT>>;
|
|
64
|
+
list_named_transitions(): Map<StateType, number>;
|
|
65
|
+
list_actions(): Array<StateType>;
|
|
66
|
+
theme(): FslTheme;
|
|
67
|
+
flow(): FslDirection;
|
|
68
|
+
get_transition_by_state_names(from: StateType, to: StateType): number;
|
|
69
|
+
lookup_transition_for(from: StateType, to: StateType): JssmTransition<mDT>;
|
|
70
|
+
list_transitions(whichState?: StateType): JssmTransitionList;
|
|
71
|
+
list_entrances(whichState?: StateType): Array<StateType>;
|
|
72
|
+
list_exits(whichState?: StateType): Array<StateType>;
|
|
73
|
+
probable_exits_for(whichState: StateType): Array<JssmTransition<mDT>>;
|
|
74
|
+
probabilistic_transition(): boolean;
|
|
75
|
+
probabilistic_walk(n: number): Array<StateType>;
|
|
76
|
+
probabilistic_histo_walk(n: number): Map<StateType, number>;
|
|
77
|
+
actions(whichState?: StateType): Array<StateType>;
|
|
78
|
+
list_states_having_action(whichState: StateType): Array<StateType>;
|
|
79
|
+
list_exit_actions(whichState?: StateType): Array<StateType>;
|
|
80
|
+
probable_action_exits(whichState?: StateType): Array<any>;
|
|
81
|
+
is_unenterable(whichState: StateType): boolean;
|
|
82
|
+
has_unenterables(): boolean;
|
|
83
|
+
is_terminal(): boolean;
|
|
84
|
+
state_is_terminal(whichState: StateType): boolean;
|
|
85
|
+
has_terminals(): boolean;
|
|
86
|
+
is_complete(): boolean;
|
|
87
|
+
state_is_complete(whichState: StateType): boolean;
|
|
88
|
+
has_completes(): boolean;
|
|
89
|
+
action(name: StateType, newData?: mDT): boolean;
|
|
90
|
+
transition(newState: StateType, newData?: mDT): boolean;
|
|
91
|
+
force_transition(newState: StateType, newData?: mDT): boolean;
|
|
92
|
+
current_action_for(action: StateType): number;
|
|
93
|
+
current_action_edge_for(action: StateType): JssmTransition<mDT>;
|
|
94
|
+
valid_action(action: StateType, _newData?: mDT): boolean;
|
|
95
|
+
valid_transition(newState: StateType, _newData?: mDT): boolean;
|
|
96
|
+
valid_force_transition(newState: StateType, _newData?: mDT): boolean;
|
|
97
|
+
sm(template_strings: TemplateStringsArray, ...remainder: any[]): Machine<mDT>;
|
|
98
|
+
}
|
|
99
|
+
declare function sm<mDT>(template_strings: TemplateStringsArray, ...remainder: any[]): Machine<mDT>;
|
|
100
|
+
export { version, transfer_state_properties, Machine, make, wrap_parse as parse, compile, sm, arrow_direction, arrow_left_kind, arrow_right_kind, seq, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key };
|