31 | );
32 |
33 | export default ForList;
--------------------------------------------------------------------------------
/src/app/components/Protypo/handlers/QRCode.tsx:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import React from 'react';
24 | import QRCodeNative from 'qrcode.react';
25 |
26 | export interface IQRCodeProps {
27 | text?: string;
28 | }
29 |
30 | const QRCode: React.SFC = props => (
31 |
32 | );
33 |
34 | export default QRCode;
--------------------------------------------------------------------------------
/src/app/components/Theme/ThemeProvider.tsx:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { ThemeProvider as ThemeProviderNative, ThemeProviderComponent } from 'styled-components';
24 | import { IThemeDefinition } from 'genesis/theme';
25 |
26 | const ThemeProvider: ThemeProviderComponent = ThemeProviderNative as ThemeProviderComponent;
27 |
28 | export default ThemeProvider;
--------------------------------------------------------------------------------
/src/app/components/Theme/themed.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import styled, { ThemedStyledInterface } from 'styled-components';
24 | import { IThemeDefinition } from 'genesis/theme';
25 |
26 | const themed: ThemedStyledInterface = styled;
27 |
28 | export default themed;
--------------------------------------------------------------------------------
/src/app/images/close.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/app/images/constructor/grid.png
--------------------------------------------------------------------------------
/src/app/images/constructor/group-12.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-13.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-15.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-16.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-18.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-2.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-26.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-27.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-28.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-29.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-3.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-30.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-34.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-35.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-36.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-6.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group-7.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/group.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/stroke-75.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/tt-lower.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/constructor/tt-upper.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/images/logoPic.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/app/images/logoText.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/app/lib/constructor/idGenerator.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | class IdGenerator {
24 | private counter: number = 0;
25 | setCounter(counter: number) {
26 | this.counter = counter;
27 | }
28 | generateId() {
29 | return 'tag_' + this.counter++;
30 | }
31 | generateRandId() {
32 | return 'tag_' + (10000000 + Math.floor(Math.random() * 89999999));
33 | }
34 | }
35 |
36 | export default IdGenerator;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Div.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class Div extends Tag {
26 | protected tagName: string = 'Div';
27 | protected HTMLTag: string = 'div';
28 | protected generateTextElement = false;
29 | }
30 |
31 | export default Div;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Em.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 | import { TProtypoElement } from 'genesis/protypo';
25 |
26 | class Em extends Tag {
27 | constructor(element: TProtypoElement) {
28 | super(element);
29 | this.tagName = 'Em';
30 | this.HTMLTag = 'i';
31 | }
32 | }
33 |
34 | export default Em;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Form.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class Form extends Tag {
26 | protected tagName: string = 'Form';
27 | protected generateTextElement: boolean = false;
28 | }
29 |
30 | export default Form;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Label.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class Label extends Tag {
26 | protected tagName: string = 'Label';
27 | }
28 |
29 | export default Label;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/P.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class P extends Tag {
26 | protected tagName: string = 'P';
27 | protected HTMLTag: string = 'p';
28 | }
29 |
30 | export default P;
31 |
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Span.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class Span extends Tag {
26 | protected tagName: string = 'Span';
27 | protected HTMLTag: string = 'span';
28 | }
29 |
30 | export default Span;
--------------------------------------------------------------------------------
/src/app/lib/constructor/tags/Strong.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import Tag from './Tag';
24 |
25 | class Strong extends Tag {
26 | protected tagName: string = 'Strong';
27 | protected HTMLTag: string = 'b';
28 | }
29 |
30 | export default Strong;
--------------------------------------------------------------------------------
/src/app/lib/locales.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | export default [
24 | {
25 | name: 'en-US',
26 | title: 'English (US)'
27 | },
28 | {
29 | name: 'ru-RU',
30 | title: 'Русский (RU)'
31 | }
32 | ];
--------------------------------------------------------------------------------
/src/app/lib/tx/contract/field/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | export default interface IField {
24 | set(value: I): void;
25 | get(): O;
26 | }
--------------------------------------------------------------------------------
/src/app/lib/tx/contract/field/string.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import IField from './';
24 |
25 | class String implements IField {
26 | private _value: string = '';
27 |
28 | set(value: string) {
29 | this._value = value ? value.toString() : '';
30 | }
31 |
32 | get() {
33 | return this._value;
34 | }
35 | }
36 |
37 | export default String;
--------------------------------------------------------------------------------
/src/app/lib/tx/schema/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import IField from 'lib/tx/contract/field';
24 |
25 | export interface ISchema {
26 | header: Uint8Array;
27 | network: number;
28 | fields: {
29 | [type: string]: new () => IField;
30 | };
31 | }
--------------------------------------------------------------------------------
/src/app/modules/auth/epics/reloadWalletsEpic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { Epic } from 'modules';
24 | import { logout, loadWallets } from '../actions';
25 | import { initialize } from 'modules/engine/actions';
26 |
27 | const reloadWalletsEpic: Epic = (action$, store, { api }) => action$.ofType(logout.done.type, initialize.done.type)
28 | .map(action => loadWallets.started(null));
29 |
30 | export default reloadWalletsEpic;
--------------------------------------------------------------------------------
/src/app/modules/auth/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/authorizeHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { authorize } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const authorizeHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | privateKey: payload
30 | });
31 |
32 | export default authorizeHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/changeSeedConfirmation.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { changeSeed } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const changeSeedConfirmationHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | seedConfirm: payload
30 | });
31 |
32 | export default changeSeedConfirmationHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/changeSeedHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { changeSeed } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const changeSeedHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | seed: payload
30 | });
31 |
32 | export default changeSeedHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/createWalletHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { createWallet } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const createWalletHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isCreatingWallet: true,
30 | createWalletError: null
31 | });
32 |
33 | export default createWalletHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/deauthorizeHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { deauthorize } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const deauthorizeHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | privateKey: null
30 | });
31 |
32 | export default deauthorizeHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/generateSeedDoneHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { generateSeed } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const generateSeedDoneHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | seed: payload.result
30 | });
31 |
32 | export default generateSeedDoneHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/importSeedDoneHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { importSeed } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const importSeedDoneHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | seed: payload.result
30 | });
31 |
32 | export default importSeedDoneHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/loadWalletsDoneHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { loadWallets } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const loadWalletsDoneHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | wallets: payload.result
30 | });
31 |
32 | export default loadWalletsDoneHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/loginFailedHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { login } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const loginFailedHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isLoggingIn: false
30 | });
31 |
32 | export default loginFailedHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/loginGuestFailedHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { loginGuest } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const loginGuestFailedHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isLoggingIn: false
30 | });
31 |
32 | export default loginGuestFailedHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/loginGuestHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { loginGuest } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const loginGuestHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isLoggingIn: true
30 | });
31 |
32 | export default loginGuestHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/loginHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { login } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const loginHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isLoggingIn: true
30 | });
31 |
32 | export default loginHandler;
--------------------------------------------------------------------------------
/src/app/modules/auth/reducers/selectWalletHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { selectWallet } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const selectWalletHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | wallet: payload,
30 | role: null,
31 | roles: null
32 | });
33 |
34 | export default selectWalletHandler;
--------------------------------------------------------------------------------
/src/app/modules/content/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/content/reducers/reloadStylesheetHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { reloadStylesheet } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const reloadStylesheetHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | stylesheet: payload,
30 | });
31 |
32 | export default reloadStylesheetHandler;
--------------------------------------------------------------------------------
/src/app/modules/content/reducers/setResizingHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { setResizing } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const setResizingHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | navigationResizing: payload
30 | });
31 |
32 | export default setResizingHandler;
--------------------------------------------------------------------------------
/src/app/modules/editor/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/editor/reducers/changeEditorTabHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { changeEditorTab } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const changeEditorTabHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | tabIndex: payload
30 | });
31 |
32 | export default changeEditorTabHandler;
--------------------------------------------------------------------------------
/src/app/modules/editor/reducers/closeAllEditorTabHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { closeEditorTab } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const closeEditorTabHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | tabIndex: -1,
30 | tabs: []
31 | });
32 |
33 | export default closeEditorTabHandler;
--------------------------------------------------------------------------------
/src/app/modules/editor/reducers/findTabIndex.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 |
25 | export default function (state: State, payload: { type: string, id: string }): number {
26 | return state.tabs.findIndex(l =>
27 | l.type === payload.type &&
28 | l.id === payload.id
29 | );
30 | }
--------------------------------------------------------------------------------
/src/app/modules/engine/epic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { combineEpics } from 'redux-observable';
24 | import initializeEpic from './epics/initializeEpic';
25 | import setLocaleEpic from './epics/setLocaleEpic';
26 |
27 | export default combineEpics(
28 | initializeEpic,
29 | setLocaleEpic
30 | );
--------------------------------------------------------------------------------
/src/app/modules/engine/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/engine/reducers/initializeHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { initialize } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const initializeHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isConnecting: true
30 | });
31 |
32 | export default initializeHandler;
--------------------------------------------------------------------------------
/src/app/modules/engine/reducers/setCollapsedHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { setCollapsed } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const setCollapsedHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | isCollapsed: payload
30 | });
31 |
32 | export default setCollapsedHandler;
--------------------------------------------------------------------------------
/src/app/modules/engine/reducers/setLocaleDoneHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { setLocale } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const setLocaleDoneHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | localeMessages: payload.result
30 | });
31 |
32 | export default setLocaleDoneHandler;
--------------------------------------------------------------------------------
/src/app/modules/gui/actions.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import actionCreatorFactory from 'typescript-fsa';
24 | import { TWindowType } from 'genesis/gui';
25 |
26 | const actionCreator = actionCreatorFactory('gui');
27 | export const switchWindow = actionCreator.async('SWITCH_WINDOW');
28 | export const setBadgeCount = actionCreator('SET_BADGE_COUNT');
--------------------------------------------------------------------------------
/src/app/modules/gui/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/gui/reducers/switchWindowDoneHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { switchWindow } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const switchWindowDoneHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | window: payload.result
30 | });
31 |
32 | export default switchWindowDoneHandler;
--------------------------------------------------------------------------------
/src/app/modules/io/actions.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import actionCreatorFactory from 'typescript-fsa';
24 |
25 | const actionCreator = actionCreatorFactory('io');
26 |
27 | export const sendAttachment = actionCreator<{ name: string, data: string }>('SEND_ATTACHMENT');
--------------------------------------------------------------------------------
/src/app/modules/io/epic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { combineEpics } from 'redux-observable';
24 | import sendAttachmentEpic from './epics/sendAttachmentEpic';
25 |
26 | export default combineEpics(
27 | sendAttachmentEpic
28 | );
--------------------------------------------------------------------------------
/src/app/modules/io/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import * as actions from './actions';
24 | import epic from './epic';
25 |
26 | export type State = {};
27 | export {
28 | actions,
29 | epic
30 | };
--------------------------------------------------------------------------------
/src/app/modules/modal/epic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { combineEpics } from 'redux-observable';
24 | import modalPageEpic from './epics/modalPageEpic';
25 | import closeModalOnInteractionEpic from './epics/closeModalOnInteractionEpic';
26 |
27 | export default combineEpics(
28 | modalPageEpic,
29 | closeModalOnInteractionEpic
30 | );
--------------------------------------------------------------------------------
/src/app/modules/modal/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/modal/reducers/modalCloseHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { modalClose } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const modalCloseHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | result: payload
30 | });
31 |
32 | export default modalCloseHandler;
--------------------------------------------------------------------------------
/src/app/modules/notifications/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/sections/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/sections/reducers/resetHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { reset } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const resetHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | inited: false
30 | });
31 |
32 | export default resetHandler;
--------------------------------------------------------------------------------
/src/app/modules/socket/epics/subscribeWalletEpic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { Epic } from 'modules';
24 | import { subscribe } from '../actions';
25 | import { loadWallet } from 'modules/auth/actions';
26 |
27 | const subscribeWalletEpic: Epic = (action$, store) => action$.ofAction(loadWallet)
28 | .map(action =>
29 | subscribe.started(action.payload)
30 | );
31 |
32 | export default subscribeWalletEpic;
--------------------------------------------------------------------------------
/src/app/modules/socket/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/socket/reducers/setConnectedHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { setConnected } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const setConnectedHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | connected: payload
30 | });
31 |
32 | export default setConnectedHandler;
--------------------------------------------------------------------------------
/src/app/modules/storage/epic.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { combineEpics } from 'redux-observable';
24 | import saveWalletOnImportEpic from './epics/saveWalletOnImportEpic';
25 | import saveWalletOnCreateEpic from './epics/saveWalletOnCreateEpic';
26 |
27 | export default combineEpics(
28 | saveWalletOnCreateEpic,
29 | saveWalletOnImportEpic
30 | );
--------------------------------------------------------------------------------
/src/app/modules/storage/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/storage/reducers/saveLocaleHandler.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { State } from '../reducer';
24 | import { saveLocale } from '../actions';
25 | import { Reducer } from 'modules';
26 |
27 | const saveLocaleHandler: Reducer = (state, payload) => ({
28 | ...state,
29 | locale: payload
30 | });
31 |
32 | export default saveLocaleHandler;
--------------------------------------------------------------------------------
/src/app/modules/tx/index.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import reducer, { State } from './reducer';
24 | import epic from './epic';
25 | import * as actions from './actions';
26 |
27 | export type State = State;
28 | export {
29 | actions,
30 | reducer,
31 | epic
32 | };
--------------------------------------------------------------------------------
/src/app/modules/tx/util/TxDissect.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | const TxDissect = (forsign: string) => {
24 | const matches = /([a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}),[0-9]+,([0-9]+),(.*)/i.exec(forsign);
25 | return {
26 | requestID: matches[1],
27 | timestamp: parseInt(matches[2], 10),
28 | body: matches[3]
29 | };
30 | };
31 |
32 | export default TxDissect;
--------------------------------------------------------------------------------
/src/app/styles/scss/app/breadcrumbs.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: breadcrumbs
3 | ========================================================================== */
4 |
5 | .breadcrumb {
6 | font-weight: normal;
7 | border-radius: 0;
8 | color: $text-muted;
9 | padding: 10px 20px;
10 | }
11 |
12 | h3,
13 | .content-heading {
14 | // Breadcrumb next to view title
15 | + .breadcrumb {
16 | margin: -25px -25px 20px -20px;
17 | background-color: $content-heading-bg;
18 | border-top: 1px solid $content-heading-border;
19 | border-bottom: 1px solid $content-heading-border;
20 | }
21 | // Breadcrumb below title
22 | > .breadcrumb {
23 | background: transparent;
24 | font-size: 13px;
25 | border: 0;
26 | padding: 10px 10px 0 0;
27 | margin-bottom: 0;
28 | // Breadcrumb right aligned
29 | &.pull-right {
30 | margin: -2px 0 0;
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/chart-easypie.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: chart-easypie
3 | ========================================================================== */
4 |
5 | // Makes possible to show the percetage
6 | // centered in the middle of the pie
7 | .easypie-chart {
8 | display: inline-block;
9 | position: relative;
10 | padding: 0 6px;
11 |
12 | span {
13 | display: block;
14 | position: absolute;
15 | left: 50%;
16 | top: 50%;
17 | width: 100%;
18 | margin-left: -50%;
19 | height: 30px;
20 | margin-top: -15px;
21 | font-size: 20px;
22 | }
23 | canvas {
24 | max-width: 100%;
25 | }
26 |
27 | &.easypie-chart-lg {
28 | span {
29 | font-size: 40px;
30 | margin-top: -25px;
31 | line-height: 40px;
32 | }
33 | }
34 |
35 | &.easypie-chart-md {
36 | span {
37 | font-size: 30px;
38 | margin-top: -25px;
39 | line-height: 40px;
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/dropdown-extra.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: dropdown-extras
3 | ========================================================================== */
4 |
5 | //
6 | // Dropdopwn extras
7 | //
8 | // ------------------------------
9 |
10 |
11 | // place components with more space
12 | .dropdown-lg > .dropdown-menu {
13 | min-width: 200px;
14 | }
15 |
16 | // Allows to mix list group inside dropdowns
17 | .dropdown-list {
18 |
19 | > .dropdown-menu {
20 | padding: 0;
21 | min-width: 220px;
22 | }
23 |
24 | .list-group {
25 | margin: 0;
26 | }
27 |
28 | .list-group-item {
29 | border-radius: 0;
30 | border-left: 0;
31 | border-right: 0;
32 | &:first-child {
33 | border-top: 0;
34 | }
35 | &:last-child {
36 | border-bottom: 0;
37 | }
38 | }
39 | }
40 |
41 | // Labels inside dropdowns
42 | .dropdown {
43 | > a {
44 | position: relative;
45 | > span .label,
46 | > .label {
47 | position: absolute;
48 | top: 0;
49 | right: 0;
50 | padding: 2px 5px;
51 | @media only screen and (min-width: $mq-tablet) {
52 | top: 10px;
53 | }
54 | }
55 | }
56 | }
57 |
58 | // Dropdown header
59 | .dropdown-menu-header {
60 | padding: 10px 15px;
61 | background-color: #fafafa;
62 | border-bottom: 1px solid $dropdown-border;
63 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/form-imgcrop.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: form-imgcrop
3 | ========================================================================== */
4 |
5 | .img-container,
6 | .img-preview {
7 | background-color: #f7f7f7;
8 | overflow: hidden;
9 | width: 100%;
10 | text-align: center;
11 | }
12 | .img-container {
13 | min-height: 200px;
14 | max-height: 340px;
15 | margin-bottom: 20px;
16 | }
17 |
18 | .docs-preview {
19 | margin-right: -15px;
20 | margin-bottom: 10px
21 | }
22 |
23 | .img-preview {
24 | float: left;
25 | margin-right: 10px;
26 | margin-bottom: 10px
27 | }
28 |
29 | .img-preview>img {
30 | max-width: 100%
31 | }
32 |
33 | .preview-lg {
34 | width: 263px;
35 | height: 148px
36 | }
37 |
38 | .preview-md {
39 | width: 139px;
40 | height: 78px
41 | }
42 |
43 | .preview-sm {
44 | width: 69px;
45 | height: 39px
46 | }
47 |
48 | .preview-xs {
49 | width: 35px;
50 | height: 20px;
51 | margin-right: 0
52 | }
53 |
54 |
55 | .cropper-container img {
56 | display: block;
57 | width: 100%;
58 | min-width: 0 !important;
59 | max-width: none !important;
60 | height: 100%;
61 | min-height: 0 !important;
62 | max-height: none !important;
63 | image-orientation: 0deg !important;
64 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/form-tags.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: form-tags
3 | ========================================================================== */
4 |
5 | // Define tag input with the same
6 | // style like standard from controls
7 | body {
8 | .bootstrap-tagsinput {
9 | @extend .form-control;
10 | // Allows to auto expand height
11 | height: auto;
12 | min-height: $input-height-base;
13 | margin-bottom: 0;
14 | }
15 |
16 | .bootstrap-tagsinput .tag {
17 | color: #fff;
18 | }
19 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/form-validation.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: form-validation
3 | ========================================================================== */
4 |
5 | //
6 | // Styles for validation results from Parsley
7 | //
8 |
9 | $label-error-color: $brand-danger;
10 |
11 | .parsley-error {
12 | border-color: $label-error-color!important;
13 | }
14 |
15 | .parsley-errors-list {
16 | display: none;
17 | margin: 0;
18 | padding: 0;
19 |
20 | &.filled {
21 | display: block;
22 | }
23 |
24 | > li {
25 | font-size: 12px;
26 | list-style: none;
27 | color: $label-error-color;
28 | }
29 |
30 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/gmap.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: gmap
3 | ========================================================================== */
4 |
5 | .gmap {
6 | // Sets an arbitrary height for the map element
7 | // Google Map requires it
8 | height: 300px;
9 |
10 | &.gmap-sm {
11 | height: 150px;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/half-float.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: half-float
3 | ========================================================================== */
4 |
5 | //
6 | // Float an absolute positioned element
7 | // and align it with a half top and bottom offset
8 | // relative to its parent
9 | //
10 | // .half-float
11 | // > .half-float-[top|bottom]
12 | //
13 | // ----------------------------------------------
14 |
15 | $half-aligned-size: 120px;
16 | $half-aligned-gutter: 5px;
17 |
18 | .half-float {
19 | position: relative;
20 | margin-bottom: ($half-aligned-size/2) + $half-aligned-gutter;
21 |
22 | .half-float-bottom,
23 | .half-float-top {
24 | position: absolute;
25 | left: 50%;
26 | bottom: -($half-aligned-size/2);
27 | width: $half-aligned-size;
28 | height: $half-aligned-size;
29 | margin-left: -($half-aligned-size/2);
30 | z-index: 2;
31 | }
32 |
33 | .half-float-top {
34 | bottom: auto;
35 | top: -($half-aligned-size/2);
36 | }
37 |
38 | // The next sibling elements gets a negative margin
39 | // and padding to collapse the space between
40 | & + * {
41 | margin-top: -($half-aligned-size/2) + $half-aligned-gutter;
42 | padding-top: ($half-aligned-size/2) + $half-aligned-gutter;
43 | }
44 |
45 | }
46 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/layout-animation.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: layout-animation.less
3 | ========================================================================== */
4 |
5 | .wrapper > .aside {
6 | @include transition(#{"width .2s cubic-bezier(0.35, 0, 0.25, 1), translate .2s cubic-bezier(0.35, 0, 0.25, 1)"});
7 | }
8 | .aside-inner,
9 | .navbar-header,
10 | .sidebar > .nav > li {
11 | @include transition(width .2s cubic-bezier(0.35, 0, 0.25, 1));
12 | }
13 | .wrapper > section {
14 | @include transition(margin-left .2s cubic-bezier(0.35, 0, 0.25, 1));
15 | }
16 | .sidebar > .nav .label {
17 | @include animation(fadeInRight 1s);
18 | @include animation-fill-mode(both);
19 | }
20 | .aside-collapsed .sidebar > .nav .label,
21 | .aside-collapsed-text .sidebar > .nav .label {
22 | @include animation(fadeIn 1s);
23 | }
24 | .sidebar .nav > li > a {
25 | @include animation(fadeInLeft .5s);
26 | }
27 |
28 | .sidebar > .nav > .nav-heading,
29 | .sidebar > .nav > li > a > span,
30 | .navbar-brand .brand-logo {
31 | @include animation(fadeIn 1s);
32 | }
33 |
34 | .sidebar li > a, .sidebar li > .nav-item,
35 | .sidebar > .nav > .nav-heading {
36 | white-space: nowrap;
37 | }
38 |
39 | .aside-collapsed,
40 | .aside-collapsed-text {
41 | .user-block-picture {
42 | @include transition(width .2s cubic-bezier(0.35, 0, 0.25, 1));
43 | }
44 | .user-block {
45 | @include transition(padding .2s cubic-bezier(0.35, 0, 0.25, 1));
46 | }
47 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/media-queries.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: media-queries
3 | ========================================================================== */
4 |
5 | // Taken from bootstrap variables
6 | // to match all components media queries
7 |
8 | $mq-desktop-lg: $screen-lg-desktop; // Usually 1200px
9 | $mq-desktop: $screen-desktop; // Usually 992px
10 | $mq-tablet: $screen-sm-min; // Usually 768px
11 | $mq-mobile: $screen-phone; // Usually 480px
12 |
13 | // Inverse version media queries (for use with max-width)
14 | // Some components needs to be strictly defined only for mobile
15 |
16 | $mq-up-to-desktop-lg: ($screen-lg-desktop - 1); // Usually 1199px
17 | $mq-up-to-desktop: ($screen-desktop - 1); // Usually 991px
18 | $mq-up-to-tablet: ($screen-sm-min - 1); // Usually 767px
19 | $mq-up-to-mobile: ($screen-phone - 1); // Usually 479px
20 |
21 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/placeholder.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: placeholder
3 | ========================================================================== */
4 |
5 | // Defines styles for placeholder boxes
6 | // Create a placeholder space that can be used for uploading files via drag and drop.
7 | // Based on uikit placeholder addon
8 | // ==========================================================================
9 |
10 |
11 | // Variables
12 | // ==========================================================================
13 |
14 | $placeholder-margin-vertical: 15px;
15 | $placeholder-padding: 20px;
16 | $placeholder-border: #ddd;
17 | $placeholder-background: #fafafa;
18 | $placeholder-color: #444;
19 |
20 | $placeholder-large-padding-vertical: 80px;
21 |
22 |
23 | // Placeholder container
24 | .box-placeholder {
25 | margin-bottom: $placeholder-margin-vertical;
26 | padding: $placeholder-padding;
27 | border: 1px dashed $placeholder-border;
28 | background: $placeholder-background;
29 | color: $placeholder-color;
30 | }
31 |
32 |
33 | // Remove margin from the last-child
34 |
35 | .box-placeholder > :last-child { margin-bottom: 0; }
36 |
37 | // Variant
38 |
39 | .box-placeholder-lg {
40 | padding-top: $placeholder-large-padding-vertical;
41 | padding-bottom: $placeholder-large-padding-vertical;
42 | }
43 |
44 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/portlets.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: portlets
3 | ========================================================================== */
4 |
5 |
6 | // A minimum height is necessary
7 | // to allow empty cols accept portlets
8 |
9 | [data-toggle="portlet"] {
10 |
11 | min-height: 30px;
12 |
13 | // Manually choose which element
14 | // shows a pointer to indicate drag
15 | &.portlet-handler,
16 | .portlet-handler {
17 | cursor: move;
18 | }
19 | }
20 |
21 | .portlets-wrapper {
22 | margin-right: auto;
23 | margin-left: auto;
24 | padding-left: 15px;
25 | padding-right: 15px;
26 | overflow: auto;
27 | }
28 |
29 | // jqueryUI controls the height, so we reuse
30 | // the placeholder component with zero padding
31 | // .portlet is just to detect the portlet instance
32 |
33 | .portlet.box-placeholder {
34 |
35 | padding: 0;
36 |
37 | }
38 |
39 | // Sometimes some element shouldn't trigger a drag
40 | // add this class to any element to cancel drag
41 | .portlet-cancel {}
--------------------------------------------------------------------------------
/src/app/styles/scss/app/print.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: print
3 | ========================================================================== */
4 |
5 | //
6 | // Put here all rules required to style the print view
7 | //
8 |
9 | @media print {
10 |
11 | .sidebar,
12 | .topnavbar,
13 | .offsidebar,
14 | .btn {
15 | display: none !important;
16 | width: 0 !important;
17 | height: 0 !important;
18 | }
19 |
20 | .wrapper,
21 | .wrapper > section,
22 | .content-wrapper {
23 | margin: 0 !important; /* remove margin used for sidebar and expand the content */
24 | padding: 0 !important;
25 | width: 100% !important;
26 | }
27 |
28 |
29 | .content-wrapper {
30 | overflow: hidden !important;
31 | }
32 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/progress-extra.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: progress-extra
3 | ========================================================================== */
4 |
5 | // Different size of Progress bars
6 |
7 | $progress-height-sm: 15px;
8 | $progress-height-xs: 8px;
9 |
10 | .progress-sm {
11 | height: $progress-height-sm;
12 | }
13 |
14 | .progress-xs {
15 | height: $progress-height-xs;
16 | }
17 |
18 | // Progress color variants
19 |
20 | .progress-bar-purple {
21 | @include progress-bar-variant($brand-purple);
22 | }
23 | .progress-bar-inverse {
24 | @include progress-bar-variant($brand-inverse);
25 | }
26 | .progress-bar-green {
27 | @include progress-bar-variant($brand-green);
28 | }
29 | .progress-bar-pink {
30 | @include progress-bar-variant($brand-pink);
31 | }
32 | .progress-bar-yellow {
33 | @include progress-bar-variant($brand-yellow);
34 | }
35 |
36 | // progress-% classes for simple usage
37 |
38 | @for $i from 1 through 100 {
39 | .progress-#{$i} {
40 | width: percentage($i/100);
41 | }
42 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/row-extra.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: row-extra
3 | ========================================================================== */
4 |
5 |
6 | // Different container size to wrap content
7 |
8 | .container-sm {
9 | max-width: $container-sm;
10 | width: auto;
11 | }
12 | .container-md {
13 | max-width: $container-md;
14 | width: auto;
15 | }
16 | .container-lg {
17 | max-width: $container-lg;
18 | width: auto;
19 | }
20 | //
21 | // Utilities to manage bootstrap rows and cols
22 | // with more flexibility
23 | // Use in conjunction with .row
24 | // ---------------------------------------------
25 |
26 | // Display a row using table layout
27 | // allows to have vertically aligned elements
28 |
29 | .row-table {
30 | display: table;
31 | table-layout: fixed;
32 | height: 100%;
33 | width: 100%;
34 | margin: 0;
35 |
36 | > [class*="col-"] {
37 | display: table-cell;
38 | float: none;
39 | table-layout: fixed;
40 | vertical-align: middle;
41 | }
42 | }
43 |
44 | // Remove padding and collapse columns
45 | .row-flush {
46 | > [class*="col-"] {
47 | padding-left: 0;
48 | padding-right: 0;
49 | }
50 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/settings.scss:
--------------------------------------------------------------------------------
1 | .setting-color {
2 | padding: 0 5px;
3 |
4 | > label {
5 | display: block;
6 | position: relative;
7 | margin: 0 10px;
8 | border-radius: 3px;
9 | overflow: hidden;
10 | border: 1px solid rgba(0,0,0,.1);
11 | cursor: pointer;
12 |
13 | &:first-child { margin-left: 0}
14 | &:last-child { margin-right: 0}
15 |
16 | $baseHg: 15px;
17 | > .color {
18 | display: block;
19 | height: $baseHg * 1.2;
20 | }
21 |
22 | > .split {
23 | @include clearfix();
24 | display: block;
25 | > .color {
26 | display: block;
27 | height: $baseHg * 2.5;
28 | &:first-child {
29 | float: left;
30 | width: 70%;
31 | }
32 | &:last-child {
33 | float: right;
34 | width: 30%;
35 | }
36 | }
37 | }
38 |
39 | // icon checked
40 | > .icon-check {
41 | position: absolute;
42 | display: block;
43 | left: 50%;
44 | top: 50%;
45 | width: 20px;
46 | height: 20px;
47 | margin-top: -20px;
48 | margin-left: -10px;
49 | text-align: center;
50 | font-size: 1.33333333em;
51 | vertical-align: -15%;
52 | color: #fff;
53 | opacity: 0;
54 | }
55 |
56 | > input[type="radio"] {
57 | position: absolute;
58 | opacity: 0;
59 | visibility: hidden;
60 | &:checked + .icon-check {
61 | opacity: 1 !important;
62 | }
63 | }
64 | }
65 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/slim-scroll.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: slim-scroll
3 | ========================================================================== */
4 |
5 | $slim-scroll-bar-bg: fade-out(#000, 0.65);
6 | $slim-scroll-rail-bg: fade-out(#000, 0.85);
7 |
8 | // New scrollable element
9 | [data-scrollable] {
10 | display: block;
11 | }
12 |
13 | // Important to override js inline styles
14 | .slimScrollBar {
15 | opacity: 1 !important;
16 | background-color: $slim-scroll-bar-bg !important;
17 | border: 0 !important;
18 | border-radius: 1px !important;
19 | }
20 |
21 | .slimScrollRail {
22 | opacity: 1 !important;
23 | background-color: $slim-scroll-rail-bg !important;
24 | border: 0 !important;
25 | border-radius: 0 !important;
26 | bottom: 0;
27 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/table-extras.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: table-extras
3 | ========================================================================== */
4 |
5 | //
6 | // Add support to components inside tables
7 | //
8 |
9 | .table {
10 | > thead > tr > th {
11 | padding: 14px 8px;
12 | color: #888;
13 | }
14 | > tbody > tr > td {
15 | vertical-align: middle;
16 | > .media {
17 | img {
18 | width: 36px;
19 | height: 36px;
20 | margin: 0 auto;
21 | }
22 | }
23 | }
24 |
25 | .checkbox {
26 | margin: 0 auto;
27 | width: 20px;
28 | }
29 |
30 | .progress {
31 | margin-bottom: 0
32 | }
33 |
34 | .radial-bar {
35 | margin-bottom: 0;
36 | margin: 0 auto;
37 | }
38 | }
39 |
40 | .jqstooltip { box-sizing: content-box;}
41 |
42 | // Extended table demos
43 |
44 | #table-ext-1 {
45 | th {
46 | &:nth-child(1) {
47 | width: 3%;
48 | }
49 | &:nth-child(2) {
50 | width: 5%;
51 | }
52 | &:nth-child(7) {
53 | width: 5%;
54 | }
55 | &:nth-child(9) {
56 | width: 5%;
57 | }
58 | }
59 | }
60 |
61 | #table-ext-2 {
62 | th {
63 | &:nth-child(1) {
64 | width: 5%;
65 | }
66 | &:nth-child(3) {
67 | width: 10%;
68 | }
69 | }
70 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/todo.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: todo
3 | ========================================================================== */
4 | .todo {
5 |
6 | .todo-item-list {
7 | position: relative;
8 | }
9 |
10 | .todo-item {
11 |
12 | .todo-edit {
13 | display: none;
14 | cursor: pointer;
15 | }
16 | &:hover .todo-edit {
17 | display: inline;
18 | }
19 | &.todo-complete .todo-edit {
20 | display: none;
21 | }
22 |
23 | }
24 |
25 | textarea {
26 | resize: none;
27 | max-width: 100%;
28 | min-width: 100%;
29 | }
30 | .todo-complete {
31 | background: $gray-lighter;
32 | opacity: .6;
33 | color: $gray-darker;
34 |
35 | .todo-title {
36 | text-decoration: line-through;
37 | }
38 | }
39 |
40 | .panel-group {
41 | > .panel {
42 | border: 1px;
43 | margin: 0;
44 | .panel-body {
45 | border-bottom: 1px solid $gray-lighter;
46 | }
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/src/app/styles/scss/app/typo.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: typo
3 | ========================================================================== */
4 |
5 | body {
6 | font-family: "Source Sans Pro", sans-serif;
7 | color: #656565;
8 | }
9 |
10 | h1, h2, h3, h4 {
11 | font-weight: bold;
12 | }
13 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/vector-map.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: vector-map
3 | ========================================================================== */
4 |
5 | $vmap-label-bg: #313232;
6 | $vmap-zoom-ctrl-bg: #515253;
7 |
8 | body { // adds priority
9 |
10 | .jvectormap-label {
11 | position: absolute;
12 | display: none;
13 | border: solid 1px $vmap-label-bg;
14 | border-radius: 2px;
15 | background: $vmap-label-bg;
16 | color: white;
17 | padding: 3px 6px;
18 | opacity: 0.9;
19 | z-index: 1100;
20 | }
21 |
22 | .jvectormap-zoomin,
23 | .jvectormap-zoomout {
24 | position: absolute;
25 | left: 10px;
26 | width: 22px;
27 | height: 22px;
28 | border-radius: 2px;
29 | background: $vmap-zoom-ctrl-bg;
30 | padding: 5px;
31 | color: white;
32 | cursor: pointer;
33 | line-height: 10px;
34 | text-align: center;
35 | }
36 | .jvectormap-zoomin {top: 10px;}
37 | .jvectormap-zoomout {top: 30px;}
38 | }
39 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/weather-icons.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: Weather icons
3 | ========================================================================== */
4 |
5 | @font-face {
6 | font-family: 'weathericons';
7 | src: url('/fonts/weathericons-regular-webfont.eot');
8 | src: url('/fonts/weathericons-regular-webfont.eot?#iefix') format('embedded-opentype'), url('/fonts/weathericons-regular-webfont.woff2') format('woff2'), url('/fonts/weathericons-regular-webfont.woff') format('woff'), url('/fonts/weathericons-regular-webfont.ttf') format('truetype'), url('/fonts/weathericons-regular-webfont.svg#weather_iconsregular') format('svg');
9 | font-weight: normal;
10 | font-style: normal;
11 | }
12 |
13 | @font-face {
14 | font-family: 'weathericons';
15 | src: url('/fonts/weathericons-regular-webfont.eot');
16 | src: url('/fonts/weathericons-regular-webfont.eot?#iefix') format('embedded-opentype'), url('/fonts/weathericons-regular-webfont.woff2') format('woff2'), url('/fonts/weathericons-regular-webfont.woff') format('woff'), url('/fonts/weathericons-regular-webfont.ttf') format('truetype'), url('/fonts/weathericons-regular-webfont.svg#weather_iconsregular') format('svg');
17 | font-weight: normal;
18 | font-style: normal;
19 | }
20 |
--------------------------------------------------------------------------------
/src/app/styles/scss/app/widget.scss:
--------------------------------------------------------------------------------
1 | /* ========================================================================
2 | Component: widget
3 | ========================================================================== */
4 |
5 | //
6 | // Extras styles to use panel as widgets
7 | // -------------------------------------
8 |
9 | $widget-margin: 20px;
10 |
11 | .widget {
12 |
13 | margin-bottom: $widget-margin;
14 | border: 0;
15 |
16 | &.panel,
17 | & .panel {
18 | overflow: hidden;
19 | }
20 |
21 |
22 | .lateral-picture {
23 | position: relative;
24 | display: block;
25 | height: 240px;
26 | width: auto;
27 | overflow: hidden;
28 | > img {
29 | position: absolute;
30 | top: 0; left: 0;
31 | max-height: 100%;
32 | width: auto;
33 | }
34 | }
35 | }
36 |
37 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap.scss:
--------------------------------------------------------------------------------
1 | //
2 | // This file compiles to a custom bootstrap stylesheet for Angle
3 | //
4 |
5 | // Override bootstrap variables
6 | @import "app/variables";
7 | // Bootstrap
8 | @import "bootstrap/bootstrap";
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/_bootstrap-compass.scss:
--------------------------------------------------------------------------------
1 | @function twbs-font-path($path) {
2 | @return font-url($path, true);
3 | }
4 |
5 | @function twbs-image-path($path) {
6 | @return image-url($path, true);
7 | }
8 |
9 | $bootstrap-sass-asset-helper: true;
10 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/_bootstrap-mincer.scss:
--------------------------------------------------------------------------------
1 | // Mincer asset helper functions
2 | //
3 | // This must be imported into a .css.ejs.scss file.
4 | // Then, <% %>-interpolations will be parsed as strings by Sass, and evaluated by EJS after Sass compilation.
5 |
6 |
7 | @function twbs-font-path($path) {
8 | // do something like following
9 | // from "path/to/font.ext#suffix" to "<%- asset_path(path/to/font.ext)) + #suffix %>"
10 | // from "path/to/font.ext?#suffix" to "<%- asset_path(path/to/font.ext)) + ?#suffix %>"
11 | // or from "path/to/font.ext" just "<%- asset_path(path/to/font.ext)) %>"
12 | @return "<%- asset_path("#{$path}".replace(/[#?].*$/, '')) + "#{$path}".replace(/(^[^#?]*)([#?]?.*$)/, '$2') %>";
13 | }
14 |
15 | @function twbs-image-path($file) {
16 | @return "<%- asset_path("#{$file}") %>";
17 | }
18 |
19 | $bootstrap-sass-asset-helper: true;
20 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/_bootstrap-sprockets.scss:
--------------------------------------------------------------------------------
1 | @function twbs-font-path($path) {
2 | @return font-path($path);
3 | }
4 |
5 | @function twbs-image-path($path) {
6 | @return image-path($path);
7 | }
8 |
9 | $bootstrap-sass-asset-helper: true;
10 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_breadcrumbs.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Breadcrumbs
3 | // --------------------------------------------------
4 |
5 |
6 | .breadcrumb {
7 | padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal;
8 | margin-bottom: $line-height-computed;
9 | list-style: none;
10 | background-color: $breadcrumb-bg;
11 | border-radius: $border-radius-base;
12 |
13 | > li {
14 | display: inline-block;
15 |
16 | + li:before {
17 | // [converter] Workaround for https://github.com/sass/libsass/issues/1115
18 | $nbsp: "\00a0";
19 | content: "#{$breadcrumb-separator}#{$nbsp}"; // Unicode space added since inline-block means non-collapsing white-space
20 | padding: 0 5px;
21 | color: $breadcrumb-color;
22 | }
23 | }
24 |
25 | > .active {
26 | color: $breadcrumb-active-color;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_close.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Close icons
3 | // --------------------------------------------------
4 |
5 |
6 | .close {
7 | float: right;
8 | font-size: ($font-size-base * 1.5);
9 | font-weight: $close-font-weight;
10 | line-height: 1;
11 | color: $close-color;
12 | text-shadow: $close-text-shadow;
13 | @include opacity(.2);
14 |
15 | &:hover,
16 | &:focus {
17 | color: $close-color;
18 | text-decoration: none;
19 | cursor: pointer;
20 | @include opacity(.5);
21 | }
22 |
23 | // [converter] extracted button& to button.close
24 | }
25 |
26 | // Additional properties for button version
27 | // iOS requires the button element instead of an anchor tag.
28 | // If you want the anchor version, it requires `href="#"`.
29 | // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
30 | button.close {
31 | padding: 0;
32 | cursor: pointer;
33 | background: transparent;
34 | border: 0;
35 | -webkit-appearance: none;
36 | }
37 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_component-animations.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Component animations
3 | // --------------------------------------------------
4 |
5 | // Heads up!
6 | //
7 | // We don't use the `.opacity()` mixin here since it causes a bug with text
8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.
9 |
10 | .fade {
11 | opacity: 0;
12 | @include transition(opacity .15s linear);
13 | &.in {
14 | opacity: 1;
15 | }
16 | }
17 |
18 | .collapse {
19 | display: none;
20 |
21 | &.in { display: block; }
22 | // [converter] extracted tr&.in to tr.collapse.in
23 | // [converter] extracted tbody&.in to tbody.collapse.in
24 | }
25 |
26 | tr.collapse.in { display: table-row; }
27 |
28 | tbody.collapse.in { display: table-row-group; }
29 |
30 | .collapsing {
31 | position: relative;
32 | height: 0;
33 | overflow: hidden;
34 | @include transition-property(height, visibility);
35 | @include transition-duration(.35s);
36 | @include transition-timing-function(ease);
37 | }
38 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_jumbotron.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Jumbotron
3 | // --------------------------------------------------
4 |
5 |
6 | .jumbotron {
7 | padding-top: $jumbotron-padding;
8 | padding-bottom: $jumbotron-padding;
9 | margin-bottom: $jumbotron-padding;
10 | color: $jumbotron-color;
11 | background-color: $jumbotron-bg;
12 |
13 | h1,
14 | .h1 {
15 | color: $jumbotron-heading-color;
16 | }
17 |
18 | p {
19 | margin-bottom: ($jumbotron-padding / 2);
20 | font-size: $jumbotron-font-size;
21 | font-weight: 200;
22 | }
23 |
24 | > hr {
25 | border-top-color: darken($jumbotron-bg, 10%);
26 | }
27 |
28 | .container &,
29 | .container-fluid & {
30 | border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
31 | padding-left: ($grid-gutter-width / 2);
32 | padding-right: ($grid-gutter-width / 2);
33 | }
34 |
35 | .container {
36 | max-width: 100%;
37 | }
38 |
39 | @media screen and (min-width: $screen-sm-min) {
40 | padding-top: ($jumbotron-padding * 1.6);
41 | padding-bottom: ($jumbotron-padding * 1.6);
42 |
43 | .container &,
44 | .container-fluid & {
45 | padding-left: ($jumbotron-padding * 2);
46 | padding-right: ($jumbotron-padding * 2);
47 | }
48 |
49 | h1,
50 | .h1 {
51 | font-size: $jumbotron-heading-font-size;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_labels.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Labels
3 | // --------------------------------------------------
4 |
5 | .label {
6 | display: inline;
7 | padding: .2em .6em .3em;
8 | font-size: 75%;
9 | font-weight: bold;
10 | line-height: 1;
11 | color: $label-color;
12 | text-align: center;
13 | white-space: nowrap;
14 | vertical-align: baseline;
15 | border-radius: .25em;
16 |
17 | // [converter] extracted a& to a.label
18 |
19 | // Empty labels collapse automatically (not available in IE8)
20 | &:empty {
21 | display: none;
22 | }
23 |
24 | // Quick fix for labels in buttons
25 | .btn & {
26 | position: relative;
27 | top: -1px;
28 | }
29 | }
30 |
31 | // Add hover effects, but only for links
32 | a.label {
33 | &:hover,
34 | &:focus {
35 | color: $label-link-hover-color;
36 | text-decoration: none;
37 | cursor: pointer;
38 | }
39 | }
40 |
41 | // Colors
42 | // Contextual variations (linked labels get darker on :hover)
43 |
44 | .label-default {
45 | @include label-variant($label-default-bg);
46 | }
47 |
48 | .label-primary {
49 | @include label-variant($label-primary-bg);
50 | }
51 |
52 | .label-success {
53 | @include label-variant($label-success-bg);
54 | }
55 |
56 | .label-info {
57 | @include label-variant($label-info-bg);
58 | }
59 |
60 | .label-warning {
61 | @include label-variant($label-warning-bg);
62 | }
63 |
64 | .label-danger {
65 | @include label-variant($label-danger-bg);
66 | }
67 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_media.scss:
--------------------------------------------------------------------------------
1 | .media {
2 | // Proper spacing between instances of .media
3 | margin-top: 15px;
4 |
5 | &:first-child {
6 | margin-top: 0;
7 | }
8 | }
9 |
10 | .media,
11 | .media-body {
12 | zoom: 1;
13 | overflow: hidden;
14 | }
15 |
16 | .media-body {
17 | width: 10000px;
18 | }
19 |
20 | .media-object {
21 | display: block;
22 |
23 | // Fix collapse in webkit from max-width: 100% and display: table-cell.
24 | &.img-thumbnail {
25 | max-width: none;
26 | }
27 | }
28 |
29 | .media-right,
30 | .media > .pull-right {
31 | padding-left: 10px;
32 | }
33 |
34 | .media-left,
35 | .media > .pull-left {
36 | padding-right: 10px;
37 | }
38 |
39 | .media-left,
40 | .media-right,
41 | .media-body {
42 | display: table-cell;
43 | vertical-align: top;
44 | }
45 |
46 | .media-middle {
47 | vertical-align: middle;
48 | }
49 |
50 | .media-bottom {
51 | vertical-align: bottom;
52 | }
53 |
54 | // Reset margins on headings for tighter default spacing
55 | .media-heading {
56 | margin-top: 0;
57 | margin-bottom: 5px;
58 | }
59 |
60 | // Media list variation
61 | //
62 | // Undo default ul/ol styles
63 | .media-list {
64 | padding-left: 0;
65 | list-style: none;
66 | }
67 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_mixins.scss:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------------------------------
3 |
4 | // Utilities
5 | @import "mixins/hide-text";
6 | @import "mixins/opacity";
7 | @import "mixins/image";
8 | @import "mixins/labels";
9 | @import "mixins/reset-filter";
10 | @import "mixins/resize";
11 | @import "mixins/responsive-visibility";
12 | @import "mixins/size";
13 | @import "mixins/tab-focus";
14 | @import "mixins/reset-text";
15 | @import "mixins/text-emphasis";
16 | @import "mixins/text-overflow";
17 | @import "mixins/vendor-prefixes";
18 |
19 | // Components
20 | @import "mixins/alerts";
21 | @import "mixins/buttons";
22 | @import "mixins/panels";
23 | @import "mixins/pagination";
24 | @import "mixins/list-group";
25 | @import "mixins/nav-divider";
26 | @import "mixins/forms";
27 | @import "mixins/progress-bar";
28 | @import "mixins/table-row";
29 |
30 | // Skins
31 | @import "mixins/background-variant";
32 | @import "mixins/border-radius";
33 | @import "mixins/gradients";
34 |
35 | // Layout
36 | @import "mixins/clearfix";
37 | @import "mixins/center-block";
38 | @import "mixins/nav-vertical-align";
39 | @import "mixins/grid-framework";
40 | @import "mixins/grid";
41 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_pager.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Pager pagination
3 | // --------------------------------------------------
4 |
5 |
6 | .pager {
7 | padding-left: 0;
8 | margin: $line-height-computed 0;
9 | list-style: none;
10 | text-align: center;
11 | @include clearfix;
12 | li {
13 | display: inline;
14 | > a,
15 | > span {
16 | display: inline-block;
17 | padding: 5px 14px;
18 | background-color: $pager-bg;
19 | border: 1px solid $pager-border;
20 | border-radius: $pager-border-radius;
21 | }
22 |
23 | > a:hover,
24 | > a:focus {
25 | text-decoration: none;
26 | background-color: $pager-hover-bg;
27 | }
28 | }
29 |
30 | .next {
31 | > a,
32 | > span {
33 | float: right;
34 | }
35 | }
36 |
37 | .previous {
38 | > a,
39 | > span {
40 | float: left;
41 | }
42 | }
43 |
44 | .disabled {
45 | > a,
46 | > a:hover,
47 | > a:focus,
48 | > span {
49 | color: $pager-disabled-color;
50 | background-color: $pager-bg;
51 | cursor: $cursor-disabled;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_responsive-embed.scss:
--------------------------------------------------------------------------------
1 | // Embeds responsive
2 | //
3 | // Credit: Nicolas Gallagher and SUIT CSS.
4 |
5 | .embed-responsive {
6 | position: relative;
7 | display: block;
8 | height: 0;
9 | padding: 0;
10 | overflow: hidden;
11 |
12 | .embed-responsive-item,
13 | iframe,
14 | embed,
15 | object,
16 | video {
17 | position: absolute;
18 | top: 0;
19 | left: 0;
20 | bottom: 0;
21 | height: 100%;
22 | width: 100%;
23 | border: 0;
24 | }
25 | }
26 |
27 | // Modifier class for 16:9 aspect ratio
28 | .embed-responsive-16by9 {
29 | padding-bottom: 56.25%;
30 | }
31 |
32 | // Modifier class for 4:3 aspect ratio
33 | .embed-responsive-4by3 {
34 | padding-bottom: 75%;
35 | }
36 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_thumbnails.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Thumbnails
3 | // --------------------------------------------------
4 |
5 |
6 | // Mixin and adjust the regular image class
7 | .thumbnail {
8 | display: block;
9 | padding: $thumbnail-padding;
10 | margin-bottom: $line-height-computed;
11 | line-height: $line-height-base;
12 | background-color: $thumbnail-bg;
13 | border: 1px solid $thumbnail-border;
14 | border-radius: $thumbnail-border-radius;
15 | @include transition(border .2s ease-in-out);
16 |
17 | > img,
18 | a > img {
19 | @include img-responsive;
20 | margin-left: auto;
21 | margin-right: auto;
22 | }
23 |
24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active
25 |
26 | // Image captions
27 | .caption {
28 | padding: $thumbnail-caption-padding;
29 | color: $thumbnail-caption-color;
30 | }
31 | }
32 |
33 | // Add a hover state for linked versions only
34 | a.thumbnail:hover,
35 | a.thumbnail:focus,
36 | a.thumbnail.active {
37 | border-color: $link-color;
38 | }
39 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_utilities.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Utility classes
3 | // --------------------------------------------------
4 |
5 |
6 | // Floats
7 | // -------------------------
8 |
9 | .clearfix {
10 | @include clearfix;
11 | }
12 | .center-block {
13 | @include center-block;
14 | }
15 | .pull-right {
16 | float: right !important;
17 | }
18 | .pull-left {
19 | float: left !important;
20 | }
21 |
22 |
23 | // Toggling content
24 | // -------------------------
25 |
26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
27 | .hide {
28 | display: none !important;
29 | }
30 | .show {
31 | display: block !important;
32 | }
33 | .invisible {
34 | visibility: hidden;
35 | }
36 | .text-hide {
37 | @include text-hide;
38 | }
39 |
40 |
41 | // Hide from screenreaders and browsers
42 | //
43 | // Credit: HTML5 Boilerplate
44 |
45 | .hidden {
46 | display: none !important;
47 | }
48 |
49 |
50 | // For Affix plugin
51 | // -------------------------
52 |
53 | .affix {
54 | position: fixed;
55 | }
56 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/_wells.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Wells
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .well {
8 | min-height: 20px;
9 | padding: 19px;
10 | margin-bottom: 20px;
11 | background-color: $well-bg;
12 | border: 1px solid $well-border;
13 | border-radius: $border-radius-base;
14 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
15 | blockquote {
16 | border-color: #ddd;
17 | border-color: rgba(0,0,0,.15);
18 | }
19 | }
20 |
21 | // Sizes
22 | .well-lg {
23 | padding: 24px;
24 | border-radius: $border-radius-large;
25 | }
26 | .well-sm {
27 | padding: 9px;
28 | border-radius: $border-radius-small;
29 | }
30 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_alerts.scss:
--------------------------------------------------------------------------------
1 | // Alerts
2 |
3 | @mixin alert-variant($background, $border, $text-color) {
4 | background-color: $background;
5 | border-color: $border;
6 | color: $text-color;
7 |
8 | hr {
9 | border-top-color: darken($border, 5%);
10 | }
11 | .alert-link {
12 | color: darken($text-color, 10%);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_background-variant.scss:
--------------------------------------------------------------------------------
1 | // Contextual backgrounds
2 |
3 | // [converter] $parent hack
4 | @mixin bg-variant($parent, $color) {
5 | #{$parent} {
6 | background-color: $color;
7 | }
8 | a#{$parent}:hover,
9 | a#{$parent}:focus {
10 | background-color: darken($color, 10%);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_border-radius.scss:
--------------------------------------------------------------------------------
1 | // Single side border-radius
2 |
3 | @mixin border-top-radius($radius) {
4 | border-top-right-radius: $radius;
5 | border-top-left-radius: $radius;
6 | }
7 | @mixin border-right-radius($radius) {
8 | border-bottom-right-radius: $radius;
9 | border-top-right-radius: $radius;
10 | }
11 | @mixin border-bottom-radius($radius) {
12 | border-bottom-right-radius: $radius;
13 | border-bottom-left-radius: $radius;
14 | }
15 | @mixin border-left-radius($radius) {
16 | border-bottom-left-radius: $radius;
17 | border-top-left-radius: $radius;
18 | }
19 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_center-block.scss:
--------------------------------------------------------------------------------
1 | // Center-align a block level element
2 |
3 | @mixin center-block() {
4 | display: block;
5 | margin-left: auto;
6 | margin-right: auto;
7 | }
8 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_clearfix.scss:
--------------------------------------------------------------------------------
1 | // Clearfix
2 | //
3 | // For modern browsers
4 | // 1. The space content is one way to avoid an Opera bug when the
5 | // contenteditable attribute is included anywhere else in the document.
6 | // Otherwise it causes space to appear at the top and bottom of elements
7 | // that are clearfixed.
8 | // 2. The use of `table` rather than `block` is only necessary if using
9 | // `:before` to contain the top-margins of child elements.
10 | //
11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/
12 |
13 | @mixin clearfix() {
14 | &:before,
15 | &:after {
16 | content: " "; // 1
17 | display: table; // 2
18 | }
19 | &:after {
20 | clear: both;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_hide-text.scss:
--------------------------------------------------------------------------------
1 | // CSS image replacement
2 | //
3 | // Heads up! v3 launched with only `.hide-text()`, but per our pattern for
4 | // mixins being reused as classes with the same name, this doesn't hold up. As
5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
6 | //
7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
8 |
9 | // Deprecated as of v3.0.1 (has been removed in v4)
10 | @mixin hide-text() {
11 | font: 0/0 a;
12 | color: transparent;
13 | text-shadow: none;
14 | background-color: transparent;
15 | border: 0;
16 | }
17 |
18 | // New mixin to use as of v3.0.1
19 | @mixin text-hide() {
20 | @include hide-text;
21 | }
22 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_image.scss:
--------------------------------------------------------------------------------
1 | // Image Mixins
2 | // - Responsive image
3 | // - Retina image
4 |
5 |
6 | // Responsive image
7 | //
8 | // Keep images from scaling beyond the width of their parents.
9 | @mixin img-responsive($display: block) {
10 | display: $display;
11 | max-width: 100%; // Part 1: Set a maximum relative to the parent
12 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
13 | }
14 |
15 |
16 | // Retina image
17 | //
18 | // Short retina mixin for setting background-image and -size. Note that the
19 | // spelling of `min--moz-device-pixel-ratio` is intentional.
20 | @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
21 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-1x}"), "#{$file-1x}"));
22 |
23 | @media
24 | only screen and (-webkit-min-device-pixel-ratio: 2),
25 | only screen and ( min--moz-device-pixel-ratio: 2),
26 | only screen and ( -o-min-device-pixel-ratio: 2/1),
27 | only screen and ( min-device-pixel-ratio: 2),
28 | only screen and ( min-resolution: 192dpi),
29 | only screen and ( min-resolution: 2dppx) {
30 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-2x}"), "#{$file-2x}"));
31 | background-size: $width-1x $height-1x;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_labels.scss:
--------------------------------------------------------------------------------
1 | // Labels
2 |
3 | @mixin label-variant($color) {
4 | background-color: $color;
5 |
6 | &[href] {
7 | &:hover,
8 | &:focus {
9 | background-color: darken($color, 10%);
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_list-group.scss:
--------------------------------------------------------------------------------
1 | // List Groups
2 |
3 | @mixin list-group-item-variant($state, $background, $color) {
4 | .list-group-item-#{$state} {
5 | color: $color;
6 | background-color: $background;
7 |
8 | // [converter] extracted a&, button& to a.list-group-item-#{$state}, button.list-group-item-#{$state}
9 | }
10 |
11 | a.list-group-item-#{$state},
12 | button.list-group-item-#{$state} {
13 | color: $color;
14 |
15 | .list-group-item-heading {
16 | color: inherit;
17 | }
18 |
19 | &:hover,
20 | &:focus {
21 | color: $color;
22 | background-color: darken($background, 5%);
23 | }
24 | &.active,
25 | &.active:hover,
26 | &.active:focus {
27 | color: #fff;
28 | background-color: $color;
29 | border-color: $color;
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_nav-divider.scss:
--------------------------------------------------------------------------------
1 | // Horizontal dividers
2 | //
3 | // Dividers (basically an hr) within dropdowns and nav lists
4 |
5 | @mixin nav-divider($color: #e5e5e5) {
6 | height: 1px;
7 | margin: (($line-height-computed / 2) - 1) 0;
8 | overflow: hidden;
9 | background-color: $color;
10 | }
11 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_nav-vertical-align.scss:
--------------------------------------------------------------------------------
1 | // Navbar vertical align
2 | //
3 | // Vertically center elements in the navbar.
4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
5 |
6 | @mixin navbar-vertical-align($element-height) {
7 | margin-top: (($navbar-height - $element-height) / 2);
8 | margin-bottom: (($navbar-height - $element-height) / 2);
9 | }
10 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_opacity.scss:
--------------------------------------------------------------------------------
1 | // Opacity
2 |
3 | @mixin opacity($opacity) {
4 | opacity: $opacity;
5 | // IE8 filter
6 | $opacity-ie: ($opacity * 100);
7 | filter: alpha(opacity=$opacity-ie);
8 | }
9 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_pagination.scss:
--------------------------------------------------------------------------------
1 | // Pagination
2 |
3 | @mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
4 | > li {
5 | > a,
6 | > span {
7 | padding: $padding-vertical $padding-horizontal;
8 | font-size: $font-size;
9 | line-height: $line-height;
10 | }
11 | &:first-child {
12 | > a,
13 | > span {
14 | @include border-left-radius($border-radius);
15 | }
16 | }
17 | &:last-child {
18 | > a,
19 | > span {
20 | @include border-right-radius($border-radius);
21 | }
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_panels.scss:
--------------------------------------------------------------------------------
1 | // Panels
2 |
3 | @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
4 | border-color: $border;
5 |
6 | & > .panel-heading,
7 | > span > span > .panel-heading{
8 | color: $heading-text-color;
9 | background-color: $heading-bg-color;
10 | border-color: $heading-border;
11 |
12 | + .panel-collapse > .panel-body {
13 | border-top-color: $border;
14 | }
15 | .badge {
16 | color: $heading-bg-color;
17 | background-color: $heading-text-color;
18 | }
19 | }
20 | & > .panel-footer,
21 | & > span > span > .panel-footer {
22 | + .panel-collapse > .panel-body {
23 | border-bottom-color: $border;
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_progress-bar.scss:
--------------------------------------------------------------------------------
1 | // Progress bars
2 |
3 | @mixin progress-bar-variant($color) {
4 | background-color: $color;
5 |
6 | // Deprecated parent class requirement as of v3.2.0
7 | .progress-striped & {
8 | @include gradient-striped;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_reset-filter.scss:
--------------------------------------------------------------------------------
1 | // Reset filters for IE
2 | //
3 | // When you need to remove a gradient background, do not forget to use this to reset
4 | // the IE filter for IE9 and below.
5 |
6 | @mixin reset-filter() {
7 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
8 | }
9 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_reset-text.scss:
--------------------------------------------------------------------------------
1 | @mixin reset-text() {
2 | font-family: $font-family-base;
3 | // We deliberately do NOT reset font-size.
4 | font-style: normal;
5 | font-weight: normal;
6 | letter-spacing: normal;
7 | line-break: auto;
8 | line-height: $line-height-base;
9 | text-align: left; // Fallback for where `start` is not supported
10 | text-align: start;
11 | text-decoration: none;
12 | text-shadow: none;
13 | text-transform: none;
14 | white-space: normal;
15 | word-break: normal;
16 | word-spacing: normal;
17 | word-wrap: normal;
18 | }
19 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_resize.scss:
--------------------------------------------------------------------------------
1 | // Resize anything
2 |
3 | @mixin resizable($direction) {
4 | resize: $direction; // Options: horizontal, vertical, both
5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
6 | }
7 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_responsive-visibility.scss:
--------------------------------------------------------------------------------
1 | // Responsive utilities
2 |
3 | //
4 | // More easily include all the states for responsive-utilities.less.
5 | // [converter] $parent hack
6 | @mixin responsive-visibility($parent) {
7 | #{$parent} {
8 | display: block !important;
9 | }
10 | table#{$parent} { display: table !important; }
11 | tr#{$parent} { display: table-row !important; }
12 | th#{$parent},
13 | td#{$parent} { display: table-cell !important; }
14 | }
15 |
16 | // [converter] $parent hack
17 | @mixin responsive-invisibility($parent) {
18 | #{$parent} {
19 | display: none !important;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_size.scss:
--------------------------------------------------------------------------------
1 | // Sizing shortcuts
2 |
3 | @mixin size($width, $height) {
4 | width: $width;
5 | height: $height;
6 | }
7 |
8 | @mixin square($size) {
9 | @include size($size, $size);
10 | }
11 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_tab-focus.scss:
--------------------------------------------------------------------------------
1 | // WebKit-style focus
2 |
3 | @mixin tab-focus() {
4 | // WebKit-specific. Other browsers will keep their default outline style.
5 | // (Initially tried to also force default via `outline: initial`,
6 | // but that seems to erroneously remove the outline in Firefox altogether.)
7 | outline: 5px auto -webkit-focus-ring-color;
8 | outline-offset: -2px;
9 | }
10 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_table-row.scss:
--------------------------------------------------------------------------------
1 | // Tables
2 |
3 | @mixin table-row-variant($state, $background) {
4 | // Exact selectors below required to override `.table-striped` and prevent
5 | // inheritance to nested tables.
6 | .table > thead > tr,
7 | .table > tbody > tr,
8 | .table > tfoot > tr {
9 | > td.#{$state},
10 | > th.#{$state},
11 | &.#{$state} > td,
12 | &.#{$state} > th {
13 | background-color: $background;
14 | }
15 | }
16 |
17 | // Hover states for `.table-hover`
18 | // Note: this is not available for cells or rows within `thead` or `tfoot`.
19 | .table-hover > tbody > tr {
20 | > td.#{$state}:hover,
21 | > th.#{$state}:hover,
22 | &.#{$state}:hover > td,
23 | &:hover > .#{$state},
24 | &.#{$state}:hover > th {
25 | background-color: darken($background, 5%);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_text-emphasis.scss:
--------------------------------------------------------------------------------
1 | // Typography
2 |
3 | // [converter] $parent hack
4 | @mixin text-emphasis-variant($parent, $color) {
5 | #{$parent} {
6 | color: $color;
7 | }
8 | a#{$parent}:hover,
9 | a#{$parent}:focus {
10 | color: darken($color, 10%);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/app/styles/scss/bootstrap/bootstrap/mixins/_text-overflow.scss:
--------------------------------------------------------------------------------
1 | // Text overflow
2 | // Requires inline-block or block for proper styling
3 |
4 | @mixin text-overflow() {
5 | overflow: hidden;
6 | text-overflow: ellipsis;
7 | white-space: nowrap;
8 | }
9 |
--------------------------------------------------------------------------------
/src/app/styles/scss/sass.scss:
--------------------------------------------------------------------------------
1 | /* MIT License
2 |
3 | Copyright (c) 2016-2018 GenesisKernel
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE. */
22 |
23 | @import "bootstrap.scss";
24 | @import "app.scss";
25 | @import "fluent.scss";
--------------------------------------------------------------------------------
/src/defs/genesis.d.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | declare module 'genesis' {
24 | interface IWebSettings {
25 | fullNodes?: string[];
26 | socketUrl?: string;
27 | activationEmail?: string;
28 | disableFullNodesSync?: boolean;
29 | }
30 | }
--------------------------------------------------------------------------------
/src/electron/config.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import ElectronStore from 'electron-store';
24 | const Store: typeof ElectronStore = require('electron-store');
25 |
26 | export default new Store({
27 | cwd: process.platform === 'win32' ? process.cwd() : null
28 | });
--------------------------------------------------------------------------------
/src/electron/windows/general.ts:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | import { BrowserWindow } from 'electron';
24 | import calcScreenOffset from '../util/calcScreenOffset';
25 |
26 | export default () => {
27 | return new BrowserWindow({
28 | frame: false,
29 | backgroundColor: '#17437b',
30 | resizable: false,
31 | show: false,
32 | ...calcScreenOffset({ width: 640, height: 470 })
33 | });
34 | };
--------------------------------------------------------------------------------
/src/index.tsx:
--------------------------------------------------------------------------------
1 | // MIT License
2 | //
3 | // Copyright (c) 2016-2018 GenesisKernel
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in all
13 | // copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | // SOFTWARE.
22 |
23 | // /!\ WARNING - DO NOT REMOVE THIS FILE /!\
24 | // This file can't be moved or deleted for compatibility reasons
25 | // doing so screws the build process when used in web environment
26 | import './app/index.tsx';
--------------------------------------------------------------------------------
/src/resources/icon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icon.icns
--------------------------------------------------------------------------------
/src/resources/icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icon.ico
--------------------------------------------------------------------------------
/src/resources/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icon.png
--------------------------------------------------------------------------------
/src/resources/icons/1024x1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/1024x1024.png
--------------------------------------------------------------------------------
/src/resources/icons/128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/128x128.png
--------------------------------------------------------------------------------
/src/resources/icons/16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/16x16.png
--------------------------------------------------------------------------------
/src/resources/icons/24x24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/24x24.png
--------------------------------------------------------------------------------
/src/resources/icons/256x256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/256x256.png
--------------------------------------------------------------------------------
/src/resources/icons/32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/32x32.png
--------------------------------------------------------------------------------
/src/resources/icons/48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/48x48.png
--------------------------------------------------------------------------------
/src/resources/icons/512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/512x512.png
--------------------------------------------------------------------------------
/src/resources/icons/64x64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/64x64.png
--------------------------------------------------------------------------------
/src/resources/icons/96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/GenesisKernel/genesis-front/5b670741c5bfff43fc0ad91f16426742ded7fd32/src/resources/icons/96x96.png
--------------------------------------------------------------------------------
/tsconfig.electron.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "build/electron",
5 | "module": "commonjs",
6 | "rootDir": "src/electron"
7 | },
8 | "exclude": [
9 | "node_modules",
10 | "build",
11 | "scripts",
12 | "public/vs",
13 | "util",
14 | "acceptance-tests",
15 | "webpack",
16 | "jest",
17 | "tests",
18 | "releases",
19 | "src/app/setupTests.ts",
20 | "src/index.tsx",
21 | "src/app"
22 | ]
23 | }
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "esnext",
4 | "target": "es5",
5 | "lib": [
6 | "dom",
7 | "es6",
8 | "es2016",
9 | "es2017.object"
10 | ],
11 | "sourceMap": true,
12 | "allowJs": true,
13 | "jsx": "react",
14 | "moduleResolution": "node",
15 | "rootDir": "src/app",
16 | "baseUrl": "src/app",
17 | "forceConsistentCasingInFileNames": true,
18 | "noImplicitReturns": true,
19 | "noImplicitThis": true,
20 | "noImplicitAny": true,
21 | "strictNullChecks": false,
22 | "suppressImplicitAnyIndexErrors": true,
23 | "noUnusedLocals": true,
24 | "allowSyntheticDefaultImports": true
25 | },
26 | "exclude": [
27 | "node_modules",
28 | "build",
29 | "scripts",
30 | "acceptance-tests",
31 | "webpack",
32 | "jest",
33 | "src/app/setupTests.ts",
34 | "tests",
35 | "**/*.test.ts",
36 | "**/test"
37 | ]
38 | }
--------------------------------------------------------------------------------
/tsconfig.react.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "exclude": [
4 | "node_modules",
5 | "build",
6 | "scripts",
7 | "acceptance-tests",
8 | "webpack",
9 | "jest",
10 | "src/app/setupTests.ts",
11 | "src/electron"
12 | ]
13 | }
--------------------------------------------------------------------------------
/tsconfig.test.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "module": "commonjs"
5 | }
6 | }
--------------------------------------------------------------------------------