Compare commits
No commits in common. "master" and "master" have entirely different histories.
1
.gitignore
vendored
|
@ -1,5 +1,6 @@
|
|||
# Node modules
|
||||
node_modules
|
||||
package-lock.json
|
||||
|
||||
# Adonis directory for storing tmp files
|
||||
tmp
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
FROM node:12.16.3
|
||||
FROM node:latest
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
|
|
661
LICENSE
|
@ -1,661 +0,0 @@
|
|||
GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
Version 3, 19 November 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU Affero General Public License is a free, copyleft license for
|
||||
software and other kinds of works, specifically designed to ensure
|
||||
cooperation with the community in the case of network server software.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
our General Public Licenses are intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
Developers that use our General Public Licenses protect your rights
|
||||
with two steps: (1) assert copyright on the software, and (2) offer
|
||||
you this License which gives you legal permission to copy, distribute
|
||||
and/or modify the software.
|
||||
|
||||
A secondary benefit of defending all users' freedom is that
|
||||
improvements made in alternate versions of the program, if they
|
||||
receive widespread use, become available for other developers to
|
||||
incorporate. Many developers of free software are heartened and
|
||||
encouraged by the resulting cooperation. However, in the case of
|
||||
software used on network servers, this result may fail to come about.
|
||||
The GNU General Public License permits making a modified version and
|
||||
letting the public access it on a server without ever releasing its
|
||||
source code to the public.
|
||||
|
||||
The GNU Affero General Public License is designed specifically to
|
||||
ensure that, in such cases, the modified source code becomes available
|
||||
to the community. It requires the operator of a network server to
|
||||
provide the source code of the modified version running there to the
|
||||
users of that server. Therefore, public use of a modified version, on
|
||||
a publicly accessible server, gives the public access to the source
|
||||
code of the modified version.
|
||||
|
||||
An older license, called the Affero General Public License and
|
||||
published by Affero, was designed to accomplish similar goals. This is
|
||||
a different license, not a version of the Affero GPL, but Affero has
|
||||
released a new version of the Affero GPL which permits relicensing under
|
||||
this license.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU Affero General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Remote Network Interaction; Use with the GNU General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, if you modify the
|
||||
Program, your modified version must prominently offer all users
|
||||
interacting with it remotely through a computer network (if your version
|
||||
supports such interaction) an opportunity to receive the Corresponding
|
||||
Source of your version by providing access to the Corresponding Source
|
||||
from a network server at no charge, through some standard or customary
|
||||
means of facilitating copying of software. This Corresponding Source
|
||||
shall include the Corresponding Source for any work covered by version 3
|
||||
of the GNU General Public License that is incorporated pursuant to the
|
||||
following paragraph.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the work with which it is combined will remain governed by version
|
||||
3 of the GNU General Public License.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU Affero General Public License from time to time. Such new versions
|
||||
will be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU Affero General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU Affero General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU Affero General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published
|
||||
by the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If your software can interact with users remotely through a computer
|
||||
network, you should also make sure that it provides a way for users to
|
||||
get its source. For example, if your program is a web application, its
|
||||
interface could display a "Source" link that leads users to an archive
|
||||
of the code. There are many ways you could offer source, and different
|
||||
solutions will be better for different programs; see section 13 for the
|
||||
specific requirements.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU AGPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
49
README.md
|
@ -1,48 +1,7 @@
|
|||
# Seepur - PoC
|
||||
# Seepur
|
||||
|
||||
> note: was written in a rush, and not polished. Needed something that worked for me. So soorry about the mess :)
|
||||
|
||||
Created for my mom and my daughter :) - open sourced, Though rough to setup (Admin is not really a thing yet)
|
||||
|
||||
Special thanks to:
|
||||
- My daughter. for just being so darn cute
|
||||
- [Lior Vinter](https://liorvinter.wixsite.com/lior). All the iilustrations in the landing page and a lot more!
|
||||
- [Guy (Diego) Gvili](https://www.guygvili.com/). Thanks for some design tips
|
||||
|
||||
### A shared story time experience
|
||||
Make video calls with a synced book view!
|
||||
Best for babies/toddlers and grandparents
|
||||
|
||||
|
||||
|
||||
|
||||
![Landing Page](https://i.imgur.com/Q9vvZOq.png)
|
||||
|
||||
|
||||
![Book view](https://i.imgur.com/YdXk3G4.png)
|
||||
|
||||
PoC:
|
||||
- You can add a child
|
||||
- Add a connection to the child (i.e grandparent)
|
||||
- You can start a video/audio/book call (p2p)
|
||||
- STUN/TURN configured in DB
|
||||
- User management
|
||||
- Upload books
|
||||
- basic child profile page.
|
||||
|
||||
#### A shared story time experience
|
||||
|
||||
#### For Development
|
||||
- `yarn install`
|
||||
- To create or run the DB migrations: `npx adonis migration:run`
|
||||
|
||||
##### Running dev server
|
||||
- `npx adonis serve --dev`
|
||||
|
||||
##### Build vue js apps
|
||||
- `yarn build:applications`
|
||||
|
||||
##### Build css
|
||||
- `yarn build:css`
|
||||
|
||||
#### Build application
|
||||
- `yarn build`
|
||||
- `adonis serve --dev`
|
||||
- `npm run css-watch`
|
|
@ -3,10 +3,9 @@ const User = use('App/Models/User');
|
|||
const Child = use('App/Models/Child');
|
||||
const Link = use('App/Models/Link');
|
||||
const IceServer = use('App/Models/IceServer');
|
||||
|
||||
const EmailUtils = use('App/Utils/EmailUtils');
|
||||
class AdminApiController {
|
||||
async getUsers({response}) {
|
||||
console.log('API');
|
||||
const users = await User.all();
|
||||
// console.log(typeof users);
|
||||
// return users.rows.map(u => {
|
||||
|
@ -16,25 +15,6 @@ class AdminApiController {
|
|||
}
|
||||
async addStunServer({request, response}) {}
|
||||
async addTurnServer({request, response}) {}
|
||||
|
||||
async testEmailSettings({auth, response}) {
|
||||
try {
|
||||
if (EmailUtils.sendTestEmail(auth.user)) {
|
||||
return {
|
||||
code: 0, data: {}
|
||||
}
|
||||
}
|
||||
return {
|
||||
code: 500, message: 'Something went wrong'
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
response.code(500);
|
||||
return {
|
||||
code: 500, message: e.message
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = AdminApiController
|
||||
|
|
|
@ -1,21 +1,11 @@
|
|||
'use strict'
|
||||
const User = use('App/Models/User');
|
||||
const EmailUtils = use('App/Utils/EmailUtils');
|
||||
const RedisUtils = use('App/Utils/RedisUtils');
|
||||
const User = use('App/Models/User')
|
||||
class AuthController {
|
||||
async registerIndex({view, auth, response}) {
|
||||
if (auth.user) {
|
||||
response.redirect('/');
|
||||
return;
|
||||
}
|
||||
async registerIndex({view}) {
|
||||
return view.render('register')
|
||||
}
|
||||
|
||||
async loginIndex({view, auth, response}) {
|
||||
if (auth.user) {
|
||||
response.redirect('/');
|
||||
return;
|
||||
}
|
||||
async loginIndex({view}) {
|
||||
return view.render('login')
|
||||
}
|
||||
|
||||
|
@ -24,20 +14,21 @@ class AuthController {
|
|||
email: request.input('email'),
|
||||
name: request.input('name'),
|
||||
password: request.input('password'),
|
||||
avatar: `/images/default-user-avatar.png`
|
||||
avatar:
|
||||
`https://api.adorable.io/avatars/285/${request.input('email')}.png`
|
||||
});
|
||||
if (user.id == 1) {
|
||||
user.is_admin = true;
|
||||
}
|
||||
await user.save();
|
||||
await auth.login(user);
|
||||
await EmailUtils.sendWelcomeEmail(user);
|
||||
await auth.login(user)
|
||||
response.redirect('/');
|
||||
}
|
||||
|
||||
async login({request, response, auth, session}) {
|
||||
console.log('login');
|
||||
const {email, password} = request.all()
|
||||
console.log({email, password})
|
||||
try {
|
||||
const token = await auth.attempt(email, password);
|
||||
const user = auth.user;
|
||||
|
@ -54,73 +45,6 @@ class AuthController {
|
|||
response.redirect('/');
|
||||
}
|
||||
|
||||
async resetPasswordRequest({request, response, session}) {
|
||||
const email = request.body.email;
|
||||
// check if user exists
|
||||
const queryResp = (await User.query().where({email}).fetch()).rows;
|
||||
if (!queryResp.length) {
|
||||
session.withErrors({userNotFound: 'No User with that email'}).flashAll();
|
||||
return response.redirect('back');
|
||||
}
|
||||
const user = queryResp[0];
|
||||
//
|
||||
const tokenPayload = {id: user.id, email: user.email};
|
||||
const token =
|
||||
await RedisUtils.ExpiredToken.generateResetPasswordToken(tokenPayload);
|
||||
const sent =
|
||||
await EmailUtils.sendResetPassword({name: user.name, email}, token);
|
||||
if (sent) {
|
||||
session.flash({notification: `Email sent to ${email} !`});
|
||||
response.redirect('/');
|
||||
return;
|
||||
}
|
||||
session.withErrors({message: 'Email provider error'}).flashAll();
|
||||
return response.redirect('back')
|
||||
}
|
||||
async resetPasswordRequestIndex({request, auth, response, view}) {
|
||||
if (auth.user) {
|
||||
response.redirect('/');
|
||||
return;
|
||||
}
|
||||
return view.render('reset-password-request');
|
||||
}
|
||||
async resetPasswordIndex({request, response, session, view}) {
|
||||
const token = request.params.token;
|
||||
const tokenPayload = await RedisUtils.ExpiredToken.getTokenPayload(token);
|
||||
if (!tokenPayload) {
|
||||
session.withErrors({InvalidToken: 'Token Expired or Invalid...'})
|
||||
.flashAll();
|
||||
response.redirect('/');
|
||||
return;
|
||||
} else {
|
||||
return view.render('reset-password', {token});
|
||||
}
|
||||
}
|
||||
|
||||
async resetPassword({request, view, session, response}) {
|
||||
console.log('In function...');
|
||||
const {token, password, confirm} = request.all();
|
||||
if (password != confirm) {
|
||||
session.withErrors({confirm: 'Please make sure passwords match'})
|
||||
.flashAll();
|
||||
return response.redirect('back');
|
||||
}
|
||||
const tokenPayload = await RedisUtils.ExpiredToken.getTokenPayload(token);
|
||||
if (!tokenPayload) {
|
||||
session.withErrors({InvalidToken: 'Token Expired or Invalid...'})
|
||||
.flashAll();
|
||||
response.redirect('/');
|
||||
return;
|
||||
}
|
||||
const user = await User.find(tokenPayload.id);
|
||||
user.password = password;
|
||||
await user.save();
|
||||
/// TODO: send an email to notify user about the change;
|
||||
await RedisUtils.ExpiredToken.remove(token);
|
||||
session.flash({notification: `Password changed successfully`});
|
||||
return response.redirect('/');
|
||||
}
|
||||
|
||||
async logout({auth, response}) {
|
||||
await auth.logout();
|
||||
response.redirect('/');
|
||||
|
|
|
@ -8,7 +8,8 @@ const Book = use('App/Models/Book');
|
|||
|
||||
const FileUtils = use('App/Utils/FileUtils');
|
||||
const UserChildUtils = use('App/Utils/UserChildUtils');
|
||||
const {v4: uuidv4} = require('uuid');
|
||||
const uuidv4 = require('uuid').v4;
|
||||
|
||||
class ClientApiController {
|
||||
async getUser({auth}) {
|
||||
const user = auth.user.toJSON();
|
||||
|
@ -33,21 +34,22 @@ class ClientApiController {
|
|||
const validation = await validate(request.all(), rules);
|
||||
if (validation.fails()) {
|
||||
response.status(400);
|
||||
response.send({code: 400, message: validation.messages()});
|
||||
response.send(validation.messages());
|
||||
return false;
|
||||
}
|
||||
const body = request.body;
|
||||
if (body.avatar) {
|
||||
const file = await FileUtils.saveBase64File(body.avatar);
|
||||
console.log(file);
|
||||
body.avatar = `/u/images/${file.fileName}`;
|
||||
} else {
|
||||
body.avatar = `/images/default-child-avatar.png`;
|
||||
body.avatar =
|
||||
`https://api.adorable.io/avatars/285/${body.name.trim()}.png`;
|
||||
}
|
||||
const child = await Child.create(body);
|
||||
const link = await Link.create(
|
||||
{user_id: auth.user.id, child_id: child.id, is_parent: true});
|
||||
response.status(201);
|
||||
return {code: 201, child};
|
||||
return child;
|
||||
}
|
||||
|
||||
async getBooks() {}
|
||||
|
@ -159,50 +161,6 @@ class ClientApiController {
|
|||
//
|
||||
}
|
||||
|
||||
async updateUser({request, auth, response}) {
|
||||
const user = auth.user;
|
||||
const {name, email, profile_cover, avatar} = request.body;
|
||||
// TODO: Validation
|
||||
user.name = name || user.name;
|
||||
user.email = email || user.email;
|
||||
if (profile_cover) {
|
||||
const file = await FileUtils.saveBase64File(profile_cover);
|
||||
user.profile_cover = `/u/images/${file.fileName}`;
|
||||
}
|
||||
if (avatar) {
|
||||
const file = await FileUtils.saveBase64File(avatar);
|
||||
user.avatar = `/u/images/${file.fileName}`;
|
||||
}
|
||||
await user.save();
|
||||
return {code: 0, data: {user}};
|
||||
};
|
||||
|
||||
async updateChild({request, auth, response}) {
|
||||
const childId = request.params.id;
|
||||
const userId = auth.user.id;
|
||||
const {name, dob, profile_cover, avatar} = request.body;
|
||||
const isParent = await UserChildUtils.isParentOf(userId, childId);
|
||||
if (!isParent) {
|
||||
response.status(403);
|
||||
response.send(
|
||||
{code: 403, message: `You have no permission to edit this child`});
|
||||
return false;
|
||||
}
|
||||
// TODO: Add validation;
|
||||
const child = await Child.find(childId);
|
||||
child.dob = dob || child.dob;
|
||||
if (profile_cover) {
|
||||
const file = await FileUtils.saveBase64File(profile_cover);
|
||||
child.profile_cover = `/u/images/${file.fileName}`;
|
||||
}
|
||||
if (avatar) {
|
||||
const file = await FileUtils.saveBase64File(avatar);
|
||||
child.avatar = `/u/images/${file.fileName}`;
|
||||
}
|
||||
await child.save();
|
||||
return {code: 0, data: {child}};
|
||||
}
|
||||
|
||||
async setChildProfileCover({request, auth, response}) {
|
||||
try {
|
||||
const rules = {
|
||||
|
@ -236,31 +194,6 @@ class ClientApiController {
|
|||
return error;
|
||||
}
|
||||
}
|
||||
|
||||
async createBook({request, response, auth}) {
|
||||
// TODO: Validate input!
|
||||
const user = auth.user;
|
||||
const bookPayload = request.body;
|
||||
// console.log('BookPages')
|
||||
const bookHash = uuidv4();
|
||||
const bookDrivePromises = [];
|
||||
const bookRelativePath = `uploads/${bookHash}`;
|
||||
const bookAbsolutePath = `books/${bookRelativePath}`;
|
||||
for (let i = 0; i < bookPayload.pages.length; i++) {
|
||||
const filePayload = bookPayload.pages[i];
|
||||
bookDrivePromises.push(FileUtils.saveBase64File(
|
||||
filePayload, `${bookAbsolutePath}/${i + 1}.jpg`));
|
||||
};
|
||||
await Promise.all(bookDrivePromises);
|
||||
const book = await Book.create({
|
||||
user_id: user.id,
|
||||
title: bookPayload.title,
|
||||
pages: bookPayload.pages.length,
|
||||
book_folder: bookRelativePath,
|
||||
ltr: bookPayload.ltr
|
||||
});
|
||||
return {code: 0, data: book};
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ClientApiController
|
||||
|
|
|
@ -49,7 +49,7 @@ class CallSession {
|
|||
this.callId = callModel.id;
|
||||
this.callModel = callModel;
|
||||
this.callBooks = null;
|
||||
this.hostId = callModel.guest_id;
|
||||
this.hostId = 2;
|
||||
this.state = callModel.state;
|
||||
this.sessionState = {page: 'lobby', activity: {type: null, model: null}};
|
||||
this.parent = {
|
||||
|
@ -197,14 +197,12 @@ class CallSession {
|
|||
return !!this.parent.socket && !!this.guest.socket;
|
||||
}
|
||||
async onIceCandidate(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, ice} = payload;
|
||||
this.userMap.get(peerId).socket.emit('wrtc:ice', {ice});
|
||||
console.log(`[Signal] [onIceCandidate] ${userId} -> ${peerId}`);
|
||||
return true;
|
||||
}
|
||||
async onSdpOffer(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, sdp} = payload;
|
||||
this.userMap.get(peerId).socket.emit('wrtc:sdp:offer', {sdp});
|
||||
console.log(`[Signal] [onSdpOffer] ${userId} -> ${peerId}`);
|
||||
|
@ -212,7 +210,6 @@ class CallSession {
|
|||
}
|
||||
|
||||
async onSdpAnswer(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, sdp} = payload;
|
||||
this.userMap.get(peerId).socket.emit('wrtc:sdp:answer', {sdp});
|
||||
console.log(`[Signal] [onSdpAnswer] ${userId} -> ${peerId}`);
|
||||
|
@ -220,7 +217,6 @@ class CallSession {
|
|||
}
|
||||
|
||||
onActionBookFlip(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, direction} = payload;
|
||||
this.userMap.get(peerId).socket.emit('book:action:flip-page', {direction});
|
||||
console.log(`[Signal] [book] [action] [flip] [${direction}] ${userId} -> ${
|
||||
|
@ -228,7 +224,6 @@ class CallSession {
|
|||
return true;
|
||||
}
|
||||
onCallViewLobby(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, direction} = payload;
|
||||
this.userMap.get(peerId).socket.emit('call:view:lobby', {});
|
||||
console.log(
|
||||
|
@ -237,7 +232,6 @@ class CallSession {
|
|||
}
|
||||
|
||||
onCallViewBook(payload) {
|
||||
if (!this.areAllPartnersConnected()) return true;
|
||||
const {peerId, userId, direction, bookId} = payload;
|
||||
this.userMap.get(peerId).socket.emit('call:view:book', {bookId});
|
||||
console.log(
|
||||
|
@ -251,9 +245,11 @@ class CallSession {
|
|||
console.log('Host: ', this.hostId);
|
||||
this.userMap.get(userId).socket.emit(
|
||||
'call:host:changed', {hostId: this.hostId});
|
||||
if (this.userMap.get(peerId) && this.userMap.get(peerId).socket)
|
||||
try {
|
||||
this.userMap.get(peerId).socket.emit(
|
||||
'call:host:changed', {hostId: this.hostId});
|
||||
} catch (e) {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,33 +0,0 @@
|
|||
'use strict'
|
||||
/** @typedef {import('@adonisjs/framework/src/Request')} Request */
|
||||
/** @typedef {import('@adonisjs/framework/src/Response')} Response */
|
||||
/** @typedef {import('@adonisjs/framework/src/View')} View */
|
||||
|
||||
class BookCallPageAuth {
|
||||
/**
|
||||
* @param {object} ctx
|
||||
* @param {Request} ctx.request
|
||||
* @param {Function} next
|
||||
*/
|
||||
async handle(ctx, next) {
|
||||
const {request, auth, response, book, call} = ctx;
|
||||
// call next to advance the request
|
||||
const user = auth.user;
|
||||
if (book.user_id) {
|
||||
// Belongs to a user. Check if the book user has a connection with this
|
||||
// user
|
||||
if (book.user_id === user.id) {
|
||||
await next();
|
||||
} else if (call.parent_id === user.id || call.guest_id === user.id) {
|
||||
await next();
|
||||
} else {
|
||||
response.status(403);
|
||||
response.send({code: 403, message: 'Book is private'});
|
||||
}
|
||||
} else {
|
||||
await next();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = BookCallPageAuth
|
|
@ -2,7 +2,8 @@
|
|||
/** @typedef {import('@adonisjs/framework/src/Request')} Request */
|
||||
/** @typedef {import('@adonisjs/framework/src/Response')} Response */
|
||||
/** @typedef {import('@adonisjs/framework/src/View')} View */
|
||||
|
||||
const Book = use('App/Models/Book');
|
||||
const UserChildUtils = use('App/Utils/UserChildUtils');
|
||||
class BookPageAuth {
|
||||
/**
|
||||
* @param {object} ctx
|
||||
|
@ -10,7 +11,7 @@ class BookPageAuth {
|
|||
* @param {Function} next
|
||||
*/
|
||||
async handle(ctx, next) {
|
||||
const {request, auth, response, book} = ctx;
|
||||
const {request, auth, response, book, call} = ctx;
|
||||
// call next to advance the request
|
||||
const user = auth.user;
|
||||
if (book.user_id) {
|
||||
|
@ -18,6 +19,8 @@ class BookPageAuth {
|
|||
// user
|
||||
if (book.user_id === user.id) {
|
||||
await next();
|
||||
} else if (call.parent_id === user.id || call.guest_id === user.id) {
|
||||
await next();
|
||||
} else {
|
||||
response.status(403);
|
||||
response.send({code: 403, message: 'Book is private'});
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
/** @type {typeof import('@adonisjs/lucid/src/Lucid/Model')} */
|
||||
const Model = use('Model')
|
||||
const {v4: uuidv4} = require('uuid');
|
||||
const uuidv4 = require('uuid').v4;
|
||||
const crypto = require('crypto')
|
||||
|
||||
class IceServer extends Model {
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
const Mail = use('Mail');
|
||||
const Env = use('Env');
|
||||
const Logger = use('Logger')
|
||||
|
||||
const from = Env.get('MAIL_FROM', 'admin@localhost.com');
|
||||
const baseUrl = Env.get('APP_URL', 'http://localhost:3333');
|
||||
|
||||
const emailEnabled = !!Env.get('MAIL_CONNECTION', false);
|
||||
|
||||
class EmailUtils {
|
||||
static async sendTestEmail(user) {
|
||||
const to = user.email;
|
||||
try {
|
||||
await Mail.send(
|
||||
['emails.test-settings', 'emails.test-settings-text'],
|
||||
{user, baseUrl}, (message) => {
|
||||
message.from(from).to(to).subject('Seepur | Email Settings Test');
|
||||
});
|
||||
return true;
|
||||
} catch (e) {
|
||||
Logger.error(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
static async sendResetPassword(
|
||||
user, code) { // TODO: Make a text version of this email
|
||||
if (!emailEnabled) return true;
|
||||
const to = user.email;
|
||||
const link = {
|
||||
href: `${baseUrl}/password/reset/${code}`,
|
||||
text: 'Reset your password'
|
||||
};
|
||||
Logger.info(`Sending test email to ${user.email}`);
|
||||
try {
|
||||
await Mail.send(
|
||||
['emails.reset-password', 'emails.reset-password-text'],
|
||||
{user, code, link, baseUrl}, (message) => {
|
||||
message.from(from).to(to).subject('Reset Password');
|
||||
});
|
||||
return true;
|
||||
} catch (e) {
|
||||
Logger.error(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
static async sendWelcomeEmail(user) {
|
||||
if (!emailEnabled) return true;
|
||||
const to = user.email;
|
||||
Logger.info(`Sending welcome email to:${to} from:${from}`);
|
||||
try {
|
||||
await Mail.send(
|
||||
['emails.welcome', 'emails.welcome-text'], {user, baseUrl},
|
||||
(message) => {
|
||||
message.from(from).to(to).subject('Welcome to your Seepur');
|
||||
});
|
||||
return true;
|
||||
} catch (e) {
|
||||
Logger.error(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = EmailUtils;
|
|
@ -2,12 +2,11 @@ const Drive = use('Drive');
|
|||
|
||||
|
||||
class FileUtils {
|
||||
static async saveBase64File(base64Str, _fileName = null) {
|
||||
static async saveBase64File(base64Str) {
|
||||
console.log(base64Str.length);
|
||||
const parsed = parseBase64(base64Str);
|
||||
const fileName = _fileName ||
|
||||
const fileName =
|
||||
`${Date.now()}-${Math.random() * 1000}.${parsed.extension}`;
|
||||
console.log(fileName);
|
||||
const file = await Drive.put(fileName, parsed.data);
|
||||
return {fileName, file};
|
||||
}
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
|
||||
const Redis = use('Redis');
|
||||
const Logger = use('Logger');
|
||||
const {v4: uuidv4} = require('uuid');
|
||||
|
||||
|
||||
const TOKEN_NAMESPACE = 'expired_token';
|
||||
const TokenTypes = {
|
||||
RP: 'rp',
|
||||
};
|
||||
class ExpiredToken {
|
||||
/**
|
||||
*
|
||||
* @param {{id:number; email:string}} payload
|
||||
* @param {number} ttl in seconds default 86400 (24 hours)
|
||||
*/
|
||||
static async generateResetPasswordToken(payload, ttl = 86400) {
|
||||
try {
|
||||
Logger.debug(`Generating RP token`);
|
||||
const token = `${TokenTypes.RP}_${uuidv4()}`;
|
||||
const rdKey = `${TOKEN_NAMESPACE}:${token}`;
|
||||
await Redis.set(rdKey, JSON.stringify(payload));
|
||||
await Redis.expire(rdKey, ttl);
|
||||
return token;
|
||||
} catch (e) {
|
||||
Logger.error(`Failed to generate RP token. Error: ${e.message}`);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {string} token
|
||||
*/
|
||||
static async getTokenPayload(token) {
|
||||
try {
|
||||
const response = await Redis.get(`${TOKEN_NAMESPACE}:${token}`);
|
||||
if (response) return JSON.parse(response);
|
||||
return null;
|
||||
} catch (e) {
|
||||
Logger.error(`Failed to generate RP token. Error: ${e.message}`);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
static async remove(token) {
|
||||
try {
|
||||
await Redis.del(`${TOKEN_NAMESPACE}:${token}`);
|
||||
return true;
|
||||
} catch (e) {
|
||||
Logger.error(`Failed to generate RP token. Error: ${e.message}`);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ExpiredToken;
|
|
@ -1,2 +0,0 @@
|
|||
const ExpiredToken = require('./Redis/ExpiredToken');
|
||||
module.exports = {ExpiredToken};
|
|
@ -1,17 +0,0 @@
|
|||
'use strict'
|
||||
|
||||
class ResetPassword {
|
||||
get rules() {
|
||||
return {
|
||||
password: 'required|string|min:6', 'confirm': 'required|string|min:6',
|
||||
}
|
||||
}
|
||||
get messages() {
|
||||
return {
|
||||
'required': 'This is required',
|
||||
'min': 'Password must be at least 6 chars long',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ResetPassword
|
|
@ -1,16 +0,0 @@
|
|||
'use strict'
|
||||
|
||||
class ResetPasswordRequest {
|
||||
get rules() {
|
||||
return {
|
||||
email: 'required|email'
|
||||
}
|
||||
}
|
||||
get messages() {
|
||||
return {
|
||||
'exists': 'User does not exists', 'required': 'This is required',
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ResetPasswordRequest
|
|
@ -1,2 +0,0 @@
|
|||
find . -name '*.hot-update.*' -delete
|
||||
echo "Cleaned!"
|
|
@ -199,7 +199,11 @@ module.exports = {
|
|||
| and `stderr`
|
||||
|
|
||||
*/
|
||||
console: {driver: 'console', name: 'Seepur', level: 'info'},
|
||||
console: {
|
||||
driver: 'console',
|
||||
name: 'adonis-app',
|
||||
level: 'info'
|
||||
},
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -212,8 +216,12 @@ module.exports = {
|
|||
| For a different directory, set an absolute path for the filename.
|
||||
|
|
||||
*/
|
||||
file:
|
||||
{driver: 'file', name: 'Seepur', filename: 'adonis.log', level: 'info'}
|
||||
file: {
|
||||
driver: 'file',
|
||||
name: 'adonis-app',
|
||||
filename: 'adonis.log',
|
||||
level: 'info'
|
||||
}
|
||||
},
|
||||
|
||||
/*
|
||||
|
|
|
@ -1,95 +0,0 @@
|
|||
'use strict'
|
||||
|
||||
const Env = use('Env')
|
||||
|
||||
module.exports = {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Connection
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Connection to be used for sending emails. Each connection needs to
|
||||
| define a driver too.
|
||||
|
|
||||
*/
|
||||
connection: Env.get('MAIL_CONNECTION', 'smtp'),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| SMTP
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Here we define configuration for sending emails via SMTP.
|
||||
|
|
||||
*/
|
||||
smtp: {
|
||||
driver: 'smtp',
|
||||
pool: true,
|
||||
port: Env.get('SMTP_PORT', 2525),
|
||||
host: Env.get('SMTP_HOST'),
|
||||
secure: Env.get('SMTP_SECURE', 'true') === 'true',
|
||||
auth: {user: Env.get('MAIL_USERNAME'), pass: Env.get('MAIL_PASSWORD')},
|
||||
maxConnections: 5,
|
||||
maxMessages: 100,
|
||||
rateLimit: 10
|
||||
},
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| SparkPost
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Here we define configuration for spark post. Extra options can be defined
|
||||
| inside the `extra` object.
|
||||
|
|
||||
|
|
||||
https://developer.sparkpost.com/api/transmissions.html#header-options-attributes
|
||||
|
|
||||
| extras: {
|
||||
| campaign_id: 'sparkpost campaign id',
|
||||
| options: { // sparkpost options }
|
||||
| }
|
||||
|
|
||||
*/
|
||||
sparkpost:
|
||||
{driver: 'sparkpost', apiKey: Env.get('SPARKPOST_API_KEY'), extras: {}},
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Mailgun
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Here we define configuration for mailgun. Extra options can be defined
|
||||
| inside the `extra` object.
|
||||
|
|
||||
|
|
||||
https://mailgun-documentation.readthedocs.io/en/latest/api-sending.html#sending
|
||||
|
|
||||
| extras: {
|
||||
| 'o:tag': '',
|
||||
| 'o:campaign': '',,
|
||||
| . . .
|
||||
| }
|
||||
|
|
||||
*/
|
||||
mailgun: {
|
||||
driver: 'mailgun',
|
||||
domain: Env.get('MAILGUN_DOMAIN'),
|
||||
region: Env.get('MAILGUN_API_REGION'),
|
||||
apiKey: Env.get('MAILGUN_API_KEY'),
|
||||
extras: {}
|
||||
},
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Ethereal
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Ethereal driver to quickly test emails in your browser. A disposable
|
||||
| account is created automatically for you.
|
||||
|
|
||||
| https://ethereal.email
|
||||
|
|
||||
*/
|
||||
ethereal: {driver: 'ethereal'}
|
||||
}
|
|
@ -1,56 +0,0 @@
|
|||
'use strict'
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Redis Configuaration
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Here we define the configuration for redis server. A single application
|
||||
| can make use of multiple redis connections using the redis provider.
|
||||
|
|
||||
*/
|
||||
|
||||
const Env = use('Env')
|
||||
|
||||
module.exports = {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| connection
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Redis connection to be used by default.
|
||||
|
|
||||
*/
|
||||
connection: Env.get('REDIS_CONNECTION', 'local'),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| local connection config
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Configuration for a named connection.
|
||||
|
|
||||
*/
|
||||
local: {
|
||||
host: Env.get('REDIS_HOST', '127.0.0.1'),
|
||||
port: Number(Env.get('REDIS_PORT', 6379)),
|
||||
password: Env.get('REDIS_PASSWORD', null),
|
||||
db: Number(Env.get('REDIS_DB', 0)),
|
||||
keyPrefix: ''
|
||||
},
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| cluster config
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Below is the configuration for the redis cluster.
|
||||
|
|
||||
*/
|
||||
cluster: {
|
||||
clusters: [
|
||||
{host: '127.0.0.1', port: 6379, password: null, db: 0},
|
||||
{host: '127.0.0.1', port: 6380, password: null, db: 0}
|
||||
]
|
||||
}
|
||||
}
|
10089
package-lock.json
generated
14
package.json
|
@ -12,7 +12,6 @@
|
|||
"migrate": "npx adonis migration:run -f",
|
||||
"build": "npm run migrate && npm run build:css && npm run build:applications",
|
||||
"start": "npm run migrate && node server.js",
|
||||
"clean": "bash clean-hot-update.sh",
|
||||
"test": "node ace test"
|
||||
},
|
||||
"keywords": [
|
||||
|
@ -32,25 +31,22 @@
|
|||
"@adonisjs/framework": "^5.0.9",
|
||||
"@adonisjs/ignitor": "^2.0.8",
|
||||
"@adonisjs/lucid": "^6.1.3",
|
||||
"@adonisjs/mail": "^3.0.10",
|
||||
"@adonisjs/redis": "^2.0.7",
|
||||
"@adonisjs/session": "^1.0.27",
|
||||
"@adonisjs/shield": "^1.0.8",
|
||||
"@adonisjs/validator": "^5.0.6",
|
||||
"@adonisjs/websocket": "^1.0.12",
|
||||
"@adonisjs/websocket-client": "^1.0.9",
|
||||
"adonis-vue-websocket": "^2.0.2",
|
||||
"animate.css": "^4.1.0",
|
||||
"animate.css": "^3.7.2",
|
||||
"bulma": "^0.8.0",
|
||||
"fork-awesome": "^1.1.7",
|
||||
"moment": "^2.24.0",
|
||||
"regenerator-runtime": "^0.13.5",
|
||||
"rematrix": "^0.7.0",
|
||||
"rematrix": "^0.5.0",
|
||||
"sqlite3": "^4.1.1",
|
||||
"typescript": "^3.7.5",
|
||||
"uuid": "^8.0.0",
|
||||
"uuid": "^7.0.3",
|
||||
"vue": "^2.6.11",
|
||||
"vue-croppa": "^1.3.8",
|
||||
"vue-router": "^3.1.5",
|
||||
"vuex": "^3.1.2"
|
||||
},
|
||||
|
@ -58,13 +54,13 @@
|
|||
"@babel/core": "^7.8.3",
|
||||
"@babel/plugin-transform-regenerator": "^7.8.7",
|
||||
"@babel/plugin-transform-runtime": "^7.9.0",
|
||||
"@types/node": "^14.0.1",
|
||||
"@types/node": "^13.11.0",
|
||||
"babel-loader": "^8.0.6",
|
||||
"babel-preset-env": "^1.7.0",
|
||||
"babel-preset-stage-2": "^6.24.1",
|
||||
"css-loader": "^3.4.2",
|
||||
"node-sass": "^4.13.0",
|
||||
"ts-loader": "^7.0.4",
|
||||
"ts-loader": "^6.2.1",
|
||||
"vue-loader": "^15.8.3",
|
||||
"vue-style-loader": "^4.1.2",
|
||||
"vue-template-compiler": "^2.6.11",
|
||||
|
|
|
@ -1,60 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="363.463px" height="430.464px" viewBox="0 0 363.463 430.464" enable-background="new 0 0 363.463 430.464"
|
||||
xml:space="preserve">
|
||||
<path fill="#EADB92" d="M186.201,42.361c-9.985,21.587-41.01,39.28-37.344,65.833c8.989,1.438,17.238-0.25,26.312-2.357
|
||||
c8.072-1.874,14.767-8.156,22.983-5.242c19.875,24.72,10.617,72.651,9.257,103.62c-1.594,36.245-7.923,71.565-11.283,106.723
|
||||
c-1.868,19.542-3.801,38.809-6.611,58.04c-2.062,14.107-13.104,46.153,5.291,47.687c5.12-15.648,1.916-35.013,5.797-51.04
|
||||
c3.989-16.467,8.262-34.476,16.279-49.025c8.516-15.448,25.159-19.376,42.077-19.372c16.544,0.002,37.801-4.289,54.172,0.054
|
||||
c41.949,11.123,15.855,84.95,26.613,115.906c2.562,0.672,7.314,1.194,9.547,1.163c2.072-36.722,6.218-71.551,7.915-106.828
|
||||
c0.901-18.771-2.215-36.536-1.351-54.88c0.757-16.019-1.618-35.228-15.202-44.125c-13.8-9.037-36.104-8.456-51.849-10.246
|
||||
c-15.589-1.771-37.751,1.317-44.128-15.959c-5.654-15.316-7.166-33.043-11.008-48.91c-4.16-17.17-9.729-32.768-14.428-48.876
|
||||
c-4.462-15.31-8.228-30.503-14.285-45.58c-6.651-16.551-13.036-20.954-25.51-32.545c7.676,10.25,4.63,23.513,16.236,31.52
|
||||
c-5.912-3.407-5.222-9.182-9.211-14.049c-3.568-4.354-9.405-7.64-14.447-10.924c1.904,11.014,5.743,22.273,17.103,26.883
|
||||
c-2.467,0.568-3.485,2.756-5.135,3.667"/>
|
||||
<ellipse fill="#2408F2" cx="187.385" cy="68.728" rx="2.034" ry="1.544"/>
|
||||
<path fill="#E2C0D0" d="M240.485,183.422c-8.163,2.673-7.586,10.538-3.068,16c2.853,3.452,6.46,1.875,9.693,4.915
|
||||
c3.629,3.41,1.94,7.064,6.638,9.504c11.404,5.923,31.148-6.271,38.222-14.092c-14.875-10.1-37.766,4.098-43.938-16.141
|
||||
c-2.086-1.11-4-1.392-6.44-1.272"/>
|
||||
<path fill="#E2C0D0" d="M220.598,126.924c-9.906,12.5,1.557,30.401,14.082,36.776c2.801-6.345-2.354-38.699-12.977-33.518"/>
|
||||
<path fill="#E2C0D0" d="M311.197,216.018c-2.562-0.976-9.464-7.54-9.089-14.042c-4.103,4.446,7.932,13.63,13.477,15.16
|
||||
c7.969,2.197,14.903-3.952,23.042-5.653c3.024-12.863-30.839-14.555-37.373-9.589"/>
|
||||
<path fill="#E2C0D0" d="M297.743,225.608c3.718-1.491-8.926-18.918-14-8.212C280.786,223.633,293.582,227.277,297.743,225.608z"/>
|
||||
<path fill="#E2C0D0" d="M222.809,168.211c-3.846,7.303,10.538,10.833,10.877,2.337c-3.261-0.74-6.271-1.404-9.773-1.25"/>
|
||||
<path fill="#E2C0D0" d="M213.969,98.674c-0.998,1.577-1.681,3.745-0.913,6.33c0.698,0.753,3.442,3.083,4.228,3.611
|
||||
c3.047-3.742,1.088-12.497-4.419-9.941"/>
|
||||
<path fill="#140F0F" d="M149.886,94.328c-1.639,4.51-3.619,8.798-3.122,13.935c6.54,4.284,17.573,1.917,12.877-7.23
|
||||
c-2.535-2.293-7.623-4.408-8.649-4.532"/>
|
||||
<path fill="#B8C8CC" d="M273.298,286.858c5.833-8.274,13.608-23.883,26.974-17.789c12.78,5.829,7.918,20.818,4.46,30.416
|
||||
c-5.217,14.48,1.028,19.353,5.347,32.775c6.523,20.277-15.798,11.838-26.584,10.537c0.062,0.289,0.08,2.494,0.025,2.77
|
||||
c13.237,4.509,12.628,15.843,14.276,27.041c1.464,9.934,12.853,23.209,4.734,32.276c-14.608,16.321-53.528,10.384-73.589,9.896
|
||||
c-1.953-4.365-3.022-9.137-2.228-14.104c7.835-2.823,14.928-3.803,16.513-12.576c1.433-7.928-2.563-13.113,1.362-21.694
|
||||
c2.641-5.776,9.486-11.914,8.657-18.591c-0.938-7.563-8.885-9.573-14.476-13.434c-12.737-8.801-14.78-23.833-12.308-38.278
|
||||
c1.242-7.262,4.688-16.739,12.25-15.159c11.505,2.404,3.126,10.055,2.286,17.278c-0.493,4.249-2.318,7.304,2.232,10.434
|
||||
c11.373-4.526,12.024-21.136,27.892-19.167c0.719-1.417,1.816-1.186,3.288-1.596"/>
|
||||
<path fill="none" d="M-66.537,574c1.286,2.191,2.268,4.482,3,7"/>
|
||||
<path fill="#0C0CE8" d="M276.639,234.172c-4.016,0.889-10.088,3.751-8.936,9.321c1.235,5.971,7.67,4.104,11.465,7.961
|
||||
c6.764,6.875,4.583,22.624,21.752,17.636c7.596-2.207,15.834-14.288,21.658-19.167c6.518-5.46,15.487-13.393,21.857-16.052
|
||||
c-10.403,5.685-26.13,6.486-37.668,8.593c-8.934,1.632-11.744,0.243-18.126-2.898c-4.703-2.315-8.16-6.248-13.116-4.363"/>
|
||||
<path fill="none" d="M-167.537,529c2.164,0.854,3.121,3.116,3,6"/>
|
||||
<path fill="#F70B54" d="M266.616,239.337c0.651,3.683-1.296,5.763,2.921,7.202c-8.357,3.348-17.877,2.077-27.034,4.208
|
||||
c6.094-5.231,17.145-9.536,24.113-12.442"/>
|
||||
<path fill="#EDABE4" d="M70.447,316.381c2.337,3.156,4.774,9.055-0.105,12.472c-5.231,3.664-8.659-1.724-14.261-1.219
|
||||
c-9.987,0.897-19.75,13.939-28.886-0.437c-4.042-6.361-1.426-20.447-2.223-27.689c-0.89-8.103-1.815-19.567-4.62-25.504
|
||||
c3.612,10.689,14.704,21.062,21.744,29.799c5.451,6.766,8.54,7.482,15.545,9.119c5.163,1.206,10.571,0.438,12.886,4.917"/>
|
||||
<path fill="#F4E806" d="M74.153,326.446c-3.145,2.327-3.203,5.081-7.373,3.528c3.783,7.68,11.767,12.655,17.021,19.931
|
||||
c-0.741-7.672-5.833-17.736-8.902-24.225"/>
|
||||
<path fill="none" d="M198.677,200.08c0.996,2.48-0.691-0.377-1.113-1.033"/>
|
||||
<path fill="#2D4F33" d="M214.244,411.879c-2.441-11.727-13.99-19.523-30.071-18.597c-14.764,0.851-22.911,12.057-35.247,18.649
|
||||
c11.189,0.437,21.67,4.064,34.133,4.079c7.187,0.008,28.877-4.718,30.071-3.1"/>
|
||||
<path fill="none" d="M-208.537,612c2.512,2.171,4.505,4.861,6,8"/>
|
||||
<path fill="#E5DFE4" d="M152.462,400.934c-1.621,2.071-7.15,15.783,4.703,12.97c11.196-2.656,3.206-14.687-4.703-10.903"/>
|
||||
<path opacity="0.4" fill="#706F6F" d="M40.523,331.88c0.012,26.16-5.698,50.683,0.189,76.269c13.771,8.346,31.526,5.96,46.34,6.146
|
||||
c15.186,0.192,32.769-2.9,47.853,0.077c0.406-0.388,0.817-0.769,1.236-1.146c-0.033-10.151-29.312-4.299-37.678-3.896
|
||||
c-12.342,0.591-31.866,2.269-43.461-1.003c-12.113-3.418-10.516-22.771-11.134-34.095c-0.712-13.036,4.193-27.684,2.059-41.161
|
||||
c-1.946,0.14-3.67-0.492-5.403-0.159"/>
|
||||
<ellipse fill="#2408F2" cx="262.463" cy="313" rx="2.488" ry="1.92"/>
|
||||
<path fill="#E2C0D0" d="M345.14,219.111c-10.007,5.452-2.073,19.87,3.997,24.571c6.942-6.781,3.131-16.763-2.646-23.22"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 5.8 KiB |
|
@ -1,63 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="656px" height="259px" viewBox="0 0 656 259" enable-background="new 0 0 656 259" xml:space="preserve">
|
||||
<path fill="none" stroke="#EDEAD9" stroke-miterlimit="10" d="M-90,207c0.076,3.197,0.762,6.204,2,9"/>
|
||||
<path fill="none" stroke="#EDEAD9" stroke-miterlimit="10" d="M-71,204c-0.405,2.49-0.078,4.92,1,7"/>
|
||||
<path fill="none" stroke="#EDEAD9" stroke-miterlimit="10" d="M-118,154c3.932,1.843,0.275,7.766-1,12"/>
|
||||
<path fill="none" stroke="#EDEAD9" stroke-miterlimit="10" d="M-105,210c1.35,2.242,2.993,5.543,4,8"/>
|
||||
<path fill="none" stroke="#EDEAD9" stroke-miterlimit="10" d="M-100,180c0,3.667,0,7.333,0,11"/>
|
||||
<path fill="none" d="M794,12c0.204,3.472-0.864,6.881-3,9"/>
|
||||
<path fill="#BCB7B7" d="M473.137,86.327c-2.038-6.357-13.371-11.394-17.24-17.325c-6.154-9.428-4.968-19.474,0.264-28.928
|
||||
c12.434-22.468,35.329-16.068,45.834,3.666c10.508,1.437,14.212,6.488,18.753,15.808c3.894,7.987,4.602,20.415,15.514,20.995
|
||||
c21.849,1.162,18.638-33.339,0.117-38.781c2.584-3.735,7.064-7.608,11.117-10.242c16.552,15.614,25.73,53.028,4.116,67.341
|
||||
c-13.728,9.09-19.946,10.04-21.091,28.922c-0.95,15.69,0.735,29.94,2.127,45.099c0.729,7.971-7.113,30.174,8.445,28.223
|
||||
c5.235-0.657,11.707-4.465,17.069-6.029c-2.043-3.496-4.773-5.561-6.788-9.301c-8.032,0.813-27.773,4.538-18.7,16.006
|
||||
c5.056,6.391,18.52,8.571,26.394,8.098c1.892,5.339-0.375,10.365,0,16.098c-28.93-2.573-54.474,21.511-83.109,12.725
|
||||
c-11.436-3.508-24.393-11.19-26.944-22.969c-2.686-12.406,8.462-24.986,13.599-36.639c3.47-7.866,8.656-20.672,7.678-30.075
|
||||
c-1.347-12.955-14.418-6.768-20.876-16.602c-5.948-9.059-0.894-20.733,3.903-28.466c4.12-6.639,16.605-12.758,17.907-16.658"/>
|
||||
<path fill="#E0DA8C" d="M387.396,17.029c-4.53,2.323-12.286,4.562-15.248,10.184c-4.288,8.133-0.157,13.196-1.667,21.722
|
||||
c-0.221,1.247-3.783,4.68-4.22,7.68c-0.683,4.691,2.4,6.404,3.166,10.275c1.513,7.65-1.189,9.745,7.138,15.567
|
||||
c2.145-1.227,3.971-0.274,6.193-0.84c1.295,11.752,11.63,5.945,18.801,8.761c9.815,3.852,8.255,6.206,20.025,2.656
|
||||
c9.139,12.573,22.877,0.819,22.639-12.683c12.47,1.558,9.026-18.951,7.883-25.256c-0.635-3.501-0.653-14.2-1.64-16.746
|
||||
c-1.55-3.989-7.479-5.788-10.607-9.188c-4.848-5.266-3.683-7.505-10.188-10.929c-4.62-2.432-11.462-4.949-16.719-3.641
|
||||
c-5.541,1.378-8.564,6.191-14.225,7.142c-3.33,0.561-6.915-5.002-11.331-0.991"/>
|
||||
<path fill="#DDABAB" d="M430.723,113.586c-12.017,10.358-27.356-10.182-34.439,12.379c-4.987,15.884-5.259,33.705-10.028,49.482
|
||||
c-10.226,33.818-56.071,2.906-77.548,8.909c-0.604,1.118-1.401,2.383-1.968,3.476c1.786,2.613,8.76,7.58,11.469,9.038
|
||||
c2.169,1.167,1.911,3.691,4.752,4.603c3.091,0.992,5.073-2.464,6.887-2.224c10.332,1.36,21.778,5.094,31.857,8.629
|
||||
c-3.685,7.103-28.906,9.615-36.771,10.654c-5.358,0.709-14.866,2.883-18.943,0.579c-6.112-3.459-4.316-13.473-13.945-11.229
|
||||
c-3.647,8.253,6.747,14.134,3.273,23.305c1.021,1.642,1.532,1.661,2.273,3.501c8.234,3.358,14.994-1.377,23.173-2.292
|
||||
c7.45-0.836,16.677,1.157,24.419,1.261c17.254,0.233,34.602-3.401,51.073-2.441c13.453,0.784,38.436,3.748,48.903-6.223
|
||||
c14.975-14.261,1.854-29.812-3.385-45.798c-3.502-10.687-5.779-22.833-5.251-34.66c0.373-8.369,5.655-31.125-8.022-29.711"/>
|
||||
<path opacity="0.9" fill="#E5DCDC" d="M377.396,83.876c3.509,6.987,3.872,14.828,11.114,19.802
|
||||
c6.698,4.601,15.429,4.345,23.133,5.172c0.527,2.427,2.084,3.329,2.608,5.758c3.797,0.524,7.331,0.12,10.752-1.206
|
||||
c3.28-16.652-9.672-14.067-18.444-17.458c-8.096-3.131-17.624-7.825-25.83-12.069"/>
|
||||
<path fill="#DD7F7F" d="M199.287,112.053c3.831-0.781,4.431-12.747,10.882-8.406c5.265,3.544,4.523,12.781,1.378,17.321
|
||||
c-1.352,1.952-4.669,2.384-6.301,3.934c-2.572,2.444-3.997,6.397-6.809,8.432c-4.272,3.096-9.054,5.343-13.974,4.281
|
||||
c-6.573-1.421-15.606-12.231-20.661-19.907c-3.643-5.531-6.322-12.033-9.868-17.561c-2.716-4.236-7.538-8.746-9.151-14.758
|
||||
C144.42,84.031,143.44,82.311,143,81c3.051,0.527,5.76,4.118,7.501,8.243c9.395,2.406,14.299,18.666,23.129,23.647
|
||||
c8.12,4.582,22.343-14.101,27.015,1.317"/>
|
||||
<path fill="#DBC07F" d="M213.55,105.587c4.106-0.811,10.039-8.354,14.819-10.642c-1.896,8.275-6.879,17.493-12.116,20.959
|
||||
c-0.419-3.139-0.935-7.094-1.344-10.317"/>
|
||||
<path opacity="0.4" fill="#706F6F" d="M185.479,138.345c0.014,31.346-5.684,60.731,0.189,91.392
|
||||
c13.736,10,31.448,7.143,46.225,7.365c15.147,0.229,32.687-3.478,47.731,0.092c0.406-0.465,0.816-0.922,1.232-1.373
|
||||
c-0.032-12.165-29.236-5.15-37.582-4.669c-12.312,0.708-31.786,2.718-43.354-1.202c-12.082-4.096-10.488-27.284-11.105-40.855
|
||||
c-0.711-15.619,4.183-33.172,2.054-49.32c-1.94,0.167-3.66-0.59-5.391-0.19"/>
|
||||
<path opacity="0.3" fill="#A5D6DF" d="M92.596,220.808c10.314,1.536,35.295-10.621,46.41-16.401
|
||||
c15.87-8.257,24.058-26.644,35.883-38.837c-0.564,25.718,6.554,56.037-18.727,67.952c-16.662,7.855-48.003-4.005-63.566-11.475"/>
|
||||
<path fill="#EAD1D1" d="M128.816,192.337c-12.282,1.235-27.349-18.856-18.996-34.134c-15.021,2.443-17.111,18.405-21.835,31.962
|
||||
c-4.75,13.63-12.258,25.788-17.88,38.842c9.74-8.493,14.277-17.996,25.601-22.812c10.29-4.376,24.165-6.384,32-11.383"/>
|
||||
<path opacity="0.8" fill="none" stroke="#957E7E" stroke-width="1.1727" stroke-miterlimit="10" d="M107.708,157.676
|
||||
c11.438,14.919,20.252,32.545,28.884,49.516"/>
|
||||
<path fill="#DBDF0F" d="M16.774,233.432c-3.734-16.681-8.835-42.913,15.576-40.739c9.123,0.813,16.763,5.672,18.592-8.803
|
||||
c1.252-9.916-6.138-19.93-3.492-31.069c7.024-3.481,14.369-6.327,22.054-2.002c-1.74,7.749-8.665,6.854-11.541,12.75
|
||||
c-3.314,6.794,0.04,17.967,0.518,24.605c1.154,16.029,1.587,32.199,1.366,48.303c-1.417,0.021-2.696-0.188-4.071-0.335
|
||||
c-3.62-10.486-0.757-9.302-9.457-11.595c-7.802-2.058-15.615,0.295-23.277-0.355c1.347,3.622,1.772,7.768,1.161,12.062
|
||||
c-1.289,0.794-4.191,1.698-5.474,1.73c-2.285-0.584-1.409-1.638-2.029-3.315"/>
|
||||
<path fill="#DADF7F" d="M578.576,232.245c20.296-0.89,42.308-11.279,60.397-18.048c0.383,0.374,0.364,0.401-0.056,0.085
|
||||
c-6.352-21.445,0.164-48.392-0.564-71.008c-10.379,1.169-20.526,3.747-31.476,4.776c-9.051,0.85-24.441,5.562-32.677,2.959
|
||||
c-0.204,26.175,11.566,56.894,1.407,82.547c3.011-1.133,5.916-1.622,9.085-1.985"/>
|
||||
<path opacity="0.5" fill="#DADF7F" d="M634.923,141.205c-16.478,1.404-37.527-6.961-55.729-6.012
|
||||
c1.405,5.23,0.719,11.578,2.078,17.375c15.371-2.928,35.861-3.037,49.659-9.661c1.091,0.382-0.33,0.571-1.084,0.95"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 214 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 109 KiB |
|
@ -1,45 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="581px" height="386px" viewBox="307.775 135.445 581 386" enable-background="new 307.775 135.445 581 386"
|
||||
xml:space="preserve">
|
||||
<path opacity="0.7" fill="#C9DFDD" enable-background="new " d="M402.822,322.297c2.559-4.816,1.677-20.716,3.814-28.743
|
||||
c4.632-17.382,8.754-5.034,22.406-9.954c9.634-3.473,15.799-13.507,27.479-13.471c10.732,0.033,17.921,9.024,30.016,6.619
|
||||
c12.049-2.396,22.522-9.662,34.957-5.292c10.946,3.849,14.821,13.382,27.438,12.421c13.553-1.03,26.5-10.913,35.903-21.616
|
||||
c7.39-8.414,13.788-17.635,20.265-26.677c7.868-10.981,8.562-7.608,17.513-12.015c12.984-6.394,20.661-14.353,35.246-15.16
|
||||
c14.517-0.804,21.14,4.291,33.692-4.117c15.376-10.295,26.229-22.342,44.704-23.326c14.436-0.769,19.929,3.102,32.191,8.538
|
||||
c20.452,9.069,43.718-6.876,57.726,21.685c6.237,12.727,6.362,25.549,19.846,32.892c12.272,6.684,21.129,1.301,25.14,17.812
|
||||
c5.138,21.15,10.479,39.173,7.463,61.775c-4.394,32.947-22.064,31.662-46.17,34.271c-12.466,1.35-22.188,4.739-34.999,4.078
|
||||
c-13.48-0.695-22.533-0.081-35.285,3.151c-12.628,3.201-18.549-3.713-30.905-4.453c-15.419-0.924-30.44,5.257-45.197,7.927
|
||||
c-14.479,2.621-29.728,3.808-44.162,1.373c-12.137-2.048-24.811-0.126-37.021-3.771c-13.342-3.982-26.211-12.17-39.719-13.718
|
||||
c-12.067-1.383-20.619,6.044-32.465,6.816c-7.688,0.503-23.148,0.176-30.031-4.081c-7.835-4.848-9.821-17.603-19.92-17.899
|
||||
c-4.705-0.14-8.105,4.776-12.46,5.546c-5.577,0.986-10.931-0.945-16.263-0.369c-8.449,0.914-19.387,6.773-27.544,5.894
|
||||
c-14.625-1.58-27.416-7.568-40.924-11.283c-0.302-2.127-0.396-4.253,0-6.382c5.892-4.391,18.011-7.11,21.011-12.588"/>
|
||||
<path fill="none" d="M11,39.105c0,1.315,0,2.631,0,3.947"/>
|
||||
<path fill="#C9DFDD" d="M463.365,311.448c-8.516-2.698-19.436,8.862-28.494,10.224c-13.336,2.005-25.959,2.91-39.479,4.88
|
||||
c-13.685,1.991-27.646,1.054-41.371,3.161c-11.834,1.817-24.374,4.271-36.22,6.256c-4.305,6.998,11.222,6.35,16.551,6.369
|
||||
c3.997,0.016,5.323-0.562,9.502-0.168c3.877,0.365,7.589,1.939,10.967,2.313c8.271,0.915,16.806-1.629,25.229-2.553
|
||||
c8.832-0.97,14.996,1.15,24.139,0.981c9.004-0.167,16.75-3.269,25.201-4.916c10.025-1.954,12.99,0.87,23.018,0.96
|
||||
c9.156,0.083,17.054-5.545,26.054-4.519c9.881,1.126,11.875,5.46,23.342,4.519c15.035-1.232,31.371-2.338,45.94-2.689
|
||||
c0.521-0.365,1.361-0.482,2.09-0.593c-2.629-4.308-10.784-8.293-16.571-10.68c-10.447-4.308-15.851-1.168-25.816-2.654
|
||||
c-2.971-0.442-8.422-5.172-12.299-6.039c-4.01-0.897-9.311-0.589-13.396-0.921c-8.77-0.715-15.872-5.285-23.864-4.72"/>
|
||||
<path opacity="0.2" fill="#C9DFDD" enable-background="new " d="M559.994,237.729c-1.471,6.418,0.275,8.416,5.141,12.002
|
||||
c4.658,3.435,5.974,6.076,9.152,11.138c2.717,4.325,5.222,8.804,10.152,10.19c2.372,0.667,5.295-0.649,7.694-0.047
|
||||
c2.845,0.714,5.188,3.634,8.334,4.077c9.299,1.312,19.679-3.421,27.026-8.924c6.829-5.113,10.979-15.039,18.536-17.946
|
||||
c12.147-4.674,24.609-1.029,36.649-7.829c8.562-4.835,21.216-11.031,16.88-21.99c-4.482-11.327-13.256-12.93-22.82-18.466
|
||||
c-5.581-3.23-10.445-2.742-16.026-4.662c-6.14-2.111-9.98-3.932-17.026-3.493c-6.08,0.378-11.136,1.312-17.558,0.666
|
||||
c-9.929-1-13.895,3.872-22.962,6.043c-9.877,2.365-20,4.342-30.166,6.443c-4.911,1.015-10.907-0.562-15.609,0.797
|
||||
c-3.36,0.972-7.216,4.505-10.422,6.526c-8.638,5.445-14.34,6.095-24.233,7.495c-4.684,0.663-9.378,2.138-14.136,2.808
|
||||
c-4.575,0.645-10.106,0.189-14.036,2.688c1.639,3.585,7.997,2.499,11.433,3.86c2.528,1.002,2.802,1.515,5.03,2.793
|
||||
c1.214,0.696,2.013,2.808,3.964,3.198c7.94,1.59,17.355-6.76,25.618-5.909c1.052,4.002,14.274,6.812,18.742,9.873"/>
|
||||
<path opacity="0.2" fill="#C9DFDD" enable-background="new " d="M722.251,378.487c1.188-6.042,0.155-7.98-2.798-11.508
|
||||
c-2.829-3.376-3.562-5.914-5.386-10.794c-1.558-4.17-2.975-8.479-6.058-9.923c-1.482-0.695-3.396,0.475-4.898-0.16
|
||||
c-1.78-0.751-3.158-3.579-5.141-4.083c-5.865-1.488-12.656,2.721-17.549,7.739c-4.548,4.664-7.577,13.958-12.5,16.514
|
||||
c-7.915,4.104-15.7,0.323-23.63,6.447c-5.639,4.354-13.934,9.89-11.604,20.387c2.404,10.85,7.924,12.601,13.791,18.099
|
||||
c3.425,3.209,6.538,2.874,10.015,4.842c3.822,2.161,6.194,3.987,10.696,3.76c3.883-0.198,7.136-0.948,11.196-0.166
|
||||
c6.276,1.209,8.992-3.301,14.849-5.118c6.377-1.979,12.896-3.584,19.447-5.306c3.165-0.832,6.918,0.82,9.963-0.344
|
||||
c2.177-0.832,4.769-4.077,6.889-5.908c5.71-4.93,9.363-5.395,15.714-6.458c3.006-0.505,6.053-1.776,9.105-2.285
|
||||
c2.938-0.49,6.438,0.086,9.036-2.176c-0.901-3.439-4.989-2.58-7.122-3.96c-1.569-1.017-1.723-1.511-3.091-2.779
|
||||
c-0.744-0.69-1.17-2.712-2.396-3.135c-4.989-1.717-11.309,5.943-16.532,4.921c-0.512-3.819-8.813-6.833-11.535-9.851"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 30 KiB |
|
@ -1,95 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="1190.55px" height="841.89px" viewBox="0 0 1190.55 841.89" enable-background="new 0 0 1190.55 841.89"
|
||||
xml:space="preserve">
|
||||
<path opacity="0.7" fill="#C9DFDD" d="M641.822,314.297c2.558-4.817,1.676-20.716,3.814-28.744
|
||||
c4.632-17.381,8.754-5.034,22.406-9.954c9.634-3.472,15.799-13.507,27.479-13.47c10.732,0.033,17.921,9.024,30.016,6.619
|
||||
c12.048-2.397,22.522-9.662,34.957-5.292c10.946,3.848,14.821,13.382,27.438,12.421c13.553-1.031,26.5-10.913,35.903-21.617
|
||||
c7.39-8.414,13.788-17.634,20.265-26.676c7.868-10.982,8.562-7.609,17.513-12.015c12.984-6.393,20.661-14.352,35.246-15.16
|
||||
c14.517-0.804,21.14,4.291,33.692-4.117c15.376-10.295,26.229-22.342,44.704-23.326c14.436-0.769,19.929,3.101,32.192,8.538
|
||||
c20.452,9.069,43.718-6.876,57.725,21.684c6.238,12.727,6.363,25.549,19.846,32.892c12.273,6.683,21.129,1.301,25.14,17.812
|
||||
c5.138,21.151,10.479,39.173,7.463,61.776c-4.394,32.947-22.065,31.662-46.17,34.271c-12.466,1.35-22.188,4.739-34.999,4.078
|
||||
c-13.481-0.695-22.533-0.081-35.285,3.152c-12.628,3.201-18.549-3.713-30.906-4.453c-15.419-0.924-30.44,5.256-45.197,7.926
|
||||
c-14.479,2.621-29.727,3.808-44.162,1.373c-12.137-2.047-24.811-0.126-37.021-3.771c-13.341-3.983-26.21-12.17-39.718-13.718
|
||||
c-12.068-1.383-20.619,6.044-32.465,6.817c-7.689,0.502-23.149,0.175-30.031-4.082c-7.835-4.847-9.822-17.602-19.92-17.899
|
||||
c-4.705-0.14-8.106,4.776-12.46,5.546c-5.577,0.986-10.931-0.945-16.263-0.369c-8.449,0.914-19.387,6.773-27.544,5.893
|
||||
c-14.625-1.58-27.416-7.568-40.924-11.283c-0.301-2.127-0.395-4.253,0-6.382c5.892-4.39,18.011-7.11,21.011-12.588"/>
|
||||
<path fill="none" d="M11,39.105c0,1.316,0,2.631,0,3.947"/>
|
||||
<path opacity="0.8" fill="#C9DFDD" d="M282.859,387.519c-9.644,0.396-12.539,0.953-7.693,1.644c1.023,0.001,2.194,0.005,3.217,0.014
|
||||
c1.29,0.791,20.289,1.868,35.789,1.38c4.862,0.293,9.724,0.451,16.45,0.545c9.413,0.13,13.948-0.053,22.84-0.094
|
||||
c16.545-0.077,25.684,0.741,44.031,0.396c6.755-0.127,14.137-0.463,21.177-0.528c6.535-0.06,11.915,0.068,18.832-0.052
|
||||
c11.423-0.196,12.84-0.531,18.317-0.993c4.042-0.341,11.041-0.597,15.491-0.944c5.753-0.448,4.507-0.42,1.894-0.815
|
||||
c-2.021-0.306-2.435-0.48-3.455-0.811c-1.46-0.472-6.448-0.903-12.996-1.223c-4.798-0.235-9.83-0.416-14.948-0.648
|
||||
c-3.353-0.152-5.295-0.32-9.849-0.374c-4.363-0.051-6.498,0.113-10.253,0.089c-7.157-0.045-14.067-0.37-21.688-0.475
|
||||
c-7.813-0.108-17.574-0.136-25.695-0.073c-8.453,0.065-14.134,0.038-22.79,0.038c-11.771,0-33.084,0.226-40.007,0.707
|
||||
c-4.581,0.319-5.236,0.434-12.997,0.625c-9.359,0.231-7.176,0.289-10.408,0.746c-0.803,0.114-2.398,0.203-4.245,0.242
|
||||
c-0.669,0.212-1.514,0.438-1.016,0.652"/>
|
||||
<path opacity="0.6" fill="#C9DFDD" d="M453.601,285.793c-3.833,5.436-6.701,15.7-1.361,21.07c3.211,3.229,6.88,1.825,10.149,4.728
|
||||
c2.583,2.293,3.317,8.757,5.733,11.938c13.566,17.866,37.07,7.981,54.575,17.572c11.178,6.124,12.896,12.701,28.518,11.272
|
||||
c10.665-0.975,19.468-4.708,29.45-7.748c19.198-5.847,51.036-0.675,58.163-25.049c4.238-14.496-5.062-30.686-13.443-41.484
|
||||
c-4.846-6.24-10.008-9.802-15.291-17.13c-6.105-8.469-10.639-13.377-21.701-14.889c-9.247-1.264-17.303,1.697-26.301-0.198
|
||||
c-9.58-2.018-16.894-7.082-27.419-5.757c-7.9,0.995-14.833,5.265-22.991,6.727c-8.876,1.59-17.445,1.871-26.268,5.433
|
||||
c-8.627,3.483-19.258,10.61-24.934,16.909c-6.997,7.766-4.858,16.437-7.975,26.535"/>
|
||||
<path fill="#C9DFDD" d="M505.906,368.396c10.322-0.162,15.688-0.239,23.836-1.38c8.002-1.121,10.873-2.015,22.49-1.601
|
||||
c10.15,0.362,13.418,1.212,23.787,0.184c10.686-1.059,18.928-2.974,32.982-2.384c8.547,0.358,14.512,1.761,21.777,2.433
|
||||
c7.984,0.738,13.723,1.193,20.088,2.532c6.871,1.446,10.602,2.595,22.678,2.495c10.41-0.085,20.402-1.238,30.715-1.249
|
||||
c12.836-0.014,16.457,2.011,27.428,2.591c10.564,0.559,25.311-0.491,35.17-1.138c-4.064,2.655-21.133,5.867-39.736,6.492
|
||||
c-24.996,0.839-42.869-1.769-62.557,1.851c-10.012,1.841-15.037,6.69-38.355,5.576c-20.307-0.971-19.402-5.129-35.92-5.917
|
||||
c-9.191-0.438-11.617-0.276-18.9-1.678c-5.502-1.059-9.455-2.112-17.203-2.812c-7.898-0.714-13.646-0.684-22.826-0.44
|
||||
c-4.117,0.11-4.023,0.542-7.924,0.482c-2.428-0.038-6.082-0.703-8.762-0.866c-17.477-1.066-26.227,0.179-41.404,0.732
|
||||
c-7.309,0.266-16.188,0.157-24.104,0.345c-6.441,0.153-13.378,0.18-19.805-0.064c-0.7-0.562,0.104-1.074,2.218-1.497
|
||||
c16.293-1.07,34.955,0.256,46.716-2.444c1.457-0.334,0.576-1.329,3.725-1.519c5.139-0.31,6.48,0.805,9.885,0.797
|
||||
c4.412-0.011,12.428-1.335,17.072-1.755c0.006-0.007,0.561,0.149,1.312,0.233"/>
|
||||
<path opacity="0.5" fill="#C9DFDD" d="M234.426,312.604c9.779-1.234,12.621-9.899,17.261-16.66
|
||||
c7.442-10.842,9.299-10.038,21.063-12.117c12.881-2.276,22.586-12.071,32.324-19.879c11.876-9.523,12.033-1.903,25.788-3.203
|
||||
c11.55-1.092,20.878-7.745,32.876-6.781c8.407,0.675,19.949,3.826,26.27,8.725c14.521,11.252,13.302,32.871,37.291,33.058
|
||||
c9.915,0.078,9.176-1.699,15.342,4.993c4.01,4.354,4.853,7.106,10.658,11.147c7.99,5.562,21.373,12.522,19.835,23.383
|
||||
c-16.882,7.901-28.884,12.983-48.031,12.089c-10.964-0.512-17.146,0.715-27.149,5.241c-11.259,5.092-12.582,4.167-24.378,2.703
|
||||
c-17.45-2.167-35.495,0.88-53.372-2.181c-8.854-1.516-16.608-2.096-24.41-5.542c-2.992-1.322-6.58-4.275-9.859-4.992
|
||||
c-5.176-1.131-7.957,1.047-13.154,0.822c-15.883-0.689-32.143-7.116-47.154-10.027c-1.969-0.382-6.268,0.679-8.976,0.295
|
||||
c-3.441-0.489-5.785-2.347-9.379-2.428c-6.048-0.136-13.672,3.818-19.913,6.227c-6.651,2.567-11.918,7.075-18.712,8.691
|
||||
c-1.237,0.294-7.242-0.434-9.841-0.078c-3.723,0.511-7.458,2.414-10.955,3.254c-10.423,2.506-36.418,6.223-45.832-0.173
|
||||
c0.195-12.183,13.974-16.848,25.014-17.697c11.826-0.909,19.783-2.133,30.68-5.984c8.773-3.1,15.558-7.183,24.135-11.818
|
||||
c5.37-2.902,6.876-3.448,12.881-4.818c3.511-0.801,6.96,0.602,10.928-2.061c5.229,5.671,27.48,2.576,35.343,4.818"/>
|
||||
<path fill="#C9DFDD" d="M66.774,297.646c4.673-1.07,6.587-3.977,11.203-4.217c4.088-0.213,7.398,3.08,11.811,3.246
|
||||
c8.492,0.32,15.564-5.297,22.957-6.973c14.689-3.332,36.58,1.221,52.658,1.984c11.762,0.559,15.862,1.256,25.176-4.99
|
||||
c6.619-4.439,11.637-8.863,19.777-4.715c3.001,1.531,1.779,5.213,6.31,6.947c5.628,2.156,4.146-0.461,9.259-0.967
|
||||
c8.71-0.861,13.707,1.373,22.769,1.732c19.676,0.779,42.496-7.633,61.281,1.225c-8.434,8.682-37.547,11.715-50.326,11.742
|
||||
c-7.922,0.018-16.498-5.154-24.139-5.035c-7.686,0.119-16.172,4.779-24.324,4.76c-16.906-0.041-37.583-3.469-53.423-1.734
|
||||
c-9.683,1.061-16.112,2.898-26.332,1.018c-7.394-1.361-17.5-3.547-24.357-2.252c-8.367,1.58-10.922,4.678-19.507,4.213
|
||||
c-6.396-0.348-15.213-1.469-21.504-2.951c2.847-0.293,5.067-2.498,6.191-3.033"/>
|
||||
<path fill="#C9DFDD" d="M702.365,303.448c-8.516-2.698-19.436,8.862-28.494,10.224c-13.336,2.004-25.959,2.91-39.48,4.879
|
||||
c-13.684,1.992-27.645,1.054-41.371,3.162c-11.834,1.817-24.374,4.271-36.22,6.255c-4.304,6.999,11.222,6.35,16.551,6.37
|
||||
c3.997,0.015,5.323-0.562,9.502-0.168c3.877,0.365,7.589,1.939,10.967,2.313c8.27,0.915,16.805-1.629,25.229-2.553
|
||||
c8.832-0.969,14.996,1.151,24.139,0.982c9.004-0.167,16.75-3.269,25.201-4.916c10.025-1.954,12.99,0.87,23.018,0.96
|
||||
c9.156,0.083,17.053-5.545,26.053-4.519c9.881,1.126,11.875,5.46,23.342,4.519c15.035-1.233,31.371-2.338,45.941-2.69
|
||||
c0.52-0.365,1.361-0.482,2.09-0.592c-2.629-4.308-10.785-8.293-16.572-10.68c-10.447-4.308-15.85-1.168-25.816-2.654
|
||||
c-2.971-0.443-8.422-5.172-12.299-6.039c-4.01-0.898-9.311-0.589-13.395-0.921c-8.77-0.715-15.873-5.286-23.865-4.72"/>
|
||||
<path fill="#C9DFDD" d="M345.207,215.422c2.867,9.337,5.019,9.245,11.837,14.478c6.405,4.916,8.871,7.965,14.223,14.762
|
||||
c9.194,11.674,25.263,15.528,33.37,29.746c14.81,3.283,26.962,3.679,39.546-5.896c6.635-5.048,7.847-10.594,16.452-13.982
|
||||
c7.348-2.893,14.537-4.371,21.083-7.86c6.514-3.472,9.171-8.494,17.436-10.192c8.988-1.847,13.006,1.168,21.376-3.696
|
||||
c3.578-2.08,15.302-7.912,16.845-11.741c2.671-6.628-3.742-11.95-5.556-18.553c-9.707-0.921-14.635-7.927-23.455-10.814
|
||||
c-8.369-2.739-20.105-4.681-28.947-6.154c-10.283-1.714-13.992,1.035-23.977,1.978c-8.697,0.822-15.787-2.921-24.346-3.942
|
||||
c-18.909-2.256-32.426,6.685-49.008,9.536c-14.431,2.482-27.891-7.269-40.832,6.668c-6.359-5.113-20.725-2.157-27.367-2.56
|
||||
c-1.629,2.662-1.919,5.686-1.346,8.783c11.236,4.322,21.705,1.506,28.948,11.842c4.766,0.53,8.323,3.045,10.297,6.809"/>
|
||||
<path opacity="0.2" fill="#C9DFDD" d="M798.994,229.729c-1.471,6.418,0.275,8.416,5.14,12.002c4.658,3.435,5.974,6.076,9.153,11.138
|
||||
c2.716,4.325,5.221,8.804,10.152,10.19c2.372,0.667,5.295-0.649,7.694-0.047c2.845,0.714,5.188,3.634,8.334,4.078
|
||||
c9.299,1.312,19.679-3.421,27.027-8.924c6.829-5.114,10.978-15.039,18.536-17.947c12.147-4.673,24.609-1.029,36.649-7.829
|
||||
c8.562-4.835,21.216-11.031,16.88-21.99c-4.482-11.327-13.256-12.93-22.82-18.466c-5.581-3.23-10.445-2.742-16.027-4.662
|
||||
c-6.139-2.111-9.98-3.931-17.026-3.493c-6.08,0.378-11.136,1.312-17.558,0.666c-9.928-1-13.894,3.872-22.961,6.043
|
||||
c-9.877,2.365-20.001,4.342-30.167,6.443c-4.911,1.015-10.907-0.562-15.609,0.797c-3.36,0.972-7.216,4.505-10.422,6.527
|
||||
c-8.637,5.445-14.34,6.094-24.233,7.495c-4.684,0.663-9.378,2.137-14.136,2.807c-4.575,0.645-10.106,0.19-14.036,2.688
|
||||
c1.639,3.585,7.997,2.499,11.433,3.86c2.528,1.002,2.801,1.515,5.03,2.793c1.214,0.696,2.012,2.808,3.964,3.198
|
||||
c7.94,1.59,17.355-6.759,25.618-5.909c1.052,4.002,14.274,6.813,18.742,9.873"/>
|
||||
<path opacity="0.2" fill="#C9DFDD" d="M961.25,370.487c1.188-6.042,0.156-7.98-2.797-11.508c-2.829-3.376-3.562-5.914-5.386-10.794
|
||||
c-1.558-4.17-2.975-8.479-6.058-9.923c-1.482-0.695-3.395,0.475-4.898-0.16c-1.781-0.751-3.158-3.579-5.141-4.083
|
||||
c-5.865-1.488-12.656,2.721-17.549,7.74c-4.548,4.664-7.577,13.958-12.5,16.513c-7.915,4.105-15.7,0.323-23.629,6.447
|
||||
c-5.639,4.354-13.934,9.89-11.605,20.387c2.404,10.85,7.924,12.601,13.791,18.099c3.425,3.209,6.538,2.874,10.015,4.841
|
||||
c3.822,2.162,6.194,3.988,10.696,3.76c3.883-0.198,7.136-0.948,11.196-0.166c6.277,1.209,8.993-3.301,14.849-5.118
|
||||
c6.377-1.979,12.896-3.584,19.447-5.306c3.165-0.832,6.918,0.821,9.963-0.343c2.177-0.832,4.769-4.078,6.889-5.908
|
||||
c5.71-4.93,9.363-5.395,15.714-6.458c3.006-0.505,6.052-1.777,9.105-2.286c2.937-0.49,6.437,0.086,9.036-2.175
|
||||
c-0.901-3.44-4.989-2.58-7.122-3.96c-1.569-1.017-1.722-1.511-3.091-2.78c-0.744-0.69-1.17-2.712-2.396-3.134
|
||||
c-4.989-1.717-11.309,5.943-16.532,4.92c-0.512-3.819-8.814-6.833-11.536-9.85"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 10 KiB |
|
@ -1,25 +1 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="341px" height="329px" viewBox="0 0 341 329" enable-background="new 0 0 341 329" xml:space="preserve">
|
||||
<path fill="none" d="M-243.321,310.151c4.236,2.689,7.549,7.308,9.434,13.208"/>
|
||||
<path fill="none" d="M-198.038,317.698c0.104,1.639,0.733,1.639,1.887,0"/>
|
||||
<path fill="none" d="M-248.981,500.718c0.043,2.615-0.133,5.229-1.887,1.888"/>
|
||||
<path fill="none" d="M-315.019,417.698c-0.874-2.107,0.456-3.383-2.082-4.896c2.567,4.578,6.12,8.258,9.629,12.442"/>
|
||||
<path fill="none" d="M-403.698,366.755c5.092,1.486,1.083-1.083,0-1.887"/>
|
||||
<path fill="none" d="M-499.924,334.68c0.629,0.629,1.258,1.258,1.887,1.888"/>
|
||||
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="234.038" y1="-140.792" x2="232.15" y2="-129.471"/>
|
||||
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="218.943" y1="-210.604" x2="215.17" y2="-195.509"/>
|
||||
<path fill="#F0A5B7" d="M106.211,70.509c8.001,5.324,18.511,28.271,31.071,23.432c11.945-4.601,17.078-21.88,31.502-25.167
|
||||
c-7.34,0.713-15.285,0.078-22.776,0.632c-7.229,0.534-16.102,2.558-23.371,0.796c-6.109-1.48-11.061-10.584-17.05-8.546
|
||||
c-9.297,3.164-0.839,12.709,5.573,12.981"/>
|
||||
<path fill="#E8ED19" d="M99.695,64.432c-0.307,7.417-5.47,18.801-9.004,25.898c5.028-4.479,9.184-11.098,13.259-16.239
|
||||
c-2.974-1.09-5.54-5.185-6.669-5.589"/>
|
||||
<ellipse fill="#ABDDE9" cx="141.657" cy="142.075" rx="53.658" ry="47.075"/>
|
||||
<ellipse fill="#EFF9FA" cx="141.657" cy="142.828" rx="34.525" ry="32.011"/>
|
||||
<ellipse fill="#ABDDE9" cx="197.219" cy="202.901" rx="53.656" ry="47.075"/>
|
||||
<ellipse fill="#EFF9FA" cx="197.219" cy="203.654" rx="34.523" ry="32.011"/>
|
||||
<polygon fill="#EFF9FA" points="275,260.521 244.035,283.471 206.6,270.667 200.129,234.912 231.096,211.961 268.529,224.766 "/>
|
||||
<rect x="403" y="-8" fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" width="19" height="3"/>
|
||||
</svg>
|
||||
<svg id="Capa_1" enable-background="new 0 0 512 512" height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><g><g><g><path d="m493.374 40.514h-474.748c-10.282 0-18.626 8.335-18.626 18.626v232.522l18.099 11.309h475.801l18.1-11.309v-232.522c0-10.291-8.345-18.626-18.626-18.626z" fill="#2b3890"/><path d="m493.374 40.514h-18.906c10.281 0 18.626 8.334 18.626 18.626v243.832h.806l18.1-11.31v-232.522c0-10.291-8.345-18.626-18.626-18.626z" fill="#242e7a"/></g><path d="m512 291.662v64.912c0 10.292-8.344 18.636-18.626 18.636h-474.748c-10.282 0-18.626-8.344-18.626-18.636v-64.912z" fill="#dae7ef"/><path d="m493.094 291.662v64.912c0 10.292-8.345 18.636-18.626 18.636h18.906c10.281 0 18.626-8.344 18.626-18.636v-64.912z" fill="#c1d5e4"/><g><path d="m28.845 291.667v-219.076c0-1.786 1.448-3.235 3.235-3.235h447.84c1.787 0 3.235 1.448 3.235 3.235v219.076z" fill="#b1e4f9"/><path d="m462.973 69.357v222.31h20.182v-219.076c0-1.786-1.448-3.235-3.235-3.235h-16.947z" fill="#90d8f9"/></g><g><path d="m265.629 341.717h-19.258c-4.573 0-8.281-3.707-8.281-8.281s3.707-8.281 8.281-8.281h19.258c4.574 0 8.281 3.707 8.281 8.281s-3.707 8.281-8.281 8.281z" fill="#242e7a"/></g><path d="m357.776 471.486h-203.552c-2.383 0-4.04-2.369-3.224-4.608l4.651-12.745c2.159-5.915 8.834-9.971 16.41-9.971h167.877c7.576 0 14.251 4.056 16.41 9.971l4.651 12.745c.817 2.238-.84 4.608-3.223 4.608z" fill="#dae7ef"/><path d="m302.548 375.21h-93.096c8.564 27.063.771 51.421-23.382 68.952h139.86c-24.152-17.531-31.946-41.889-23.382-68.952z" fill="#c1d5e4"/><path d="m209.452 375.21c2.148 6.787 3.266 13.404 3.356 19.787h86.385c.09-6.382 1.208-12.999 3.356-19.787z" fill="#98b9d3"/></g><g><g><path d="m71.128 141.112c-2.164.001-4.316-.904-5.844-2.668l-11.258-12.999c-2.514-2.903-2.514-7.213 0-10.117l11.258-12.999c2.794-3.226 7.673-3.576 10.899-.782 3.225 2.793 3.575 7.673.783 10.899l-6.877 7.941 6.877 7.941c2.793 3.226 2.443 8.106-.783 10.899-1.461 1.265-3.262 1.885-5.055 1.885z" fill="#2b3890"/></g><g><path d="m137.871 141.112c-1.793 0-3.594-.62-5.055-1.886-3.225-2.793-3.575-7.673-.783-10.899l6.877-7.941-6.877-7.941c-2.793-3.226-2.443-8.106.783-10.899 3.225-2.794 8.105-2.444 10.899.782l11.258 12.999c2.514 2.903 2.514 7.213 0 10.117l-11.258 12.999c-1.528 1.766-3.68 2.669-5.844 2.669z" fill="#2b3890"/></g></g><g><path d="m92.703 148.629c-1.306 0-2.63-.331-3.843-1.029-3.699-2.126-4.975-6.849-2.849-10.549l23.578-41.027c2.127-3.7 6.851-4.975 10.549-2.849 3.699 2.126 4.975 6.849 2.849 10.549l-23.578 41.027c-1.429 2.486-4.031 3.878-6.706 3.878z" fill="#2b3890"/></g><g><path d="m92.71 192.399h-27.213c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h27.213c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#dd5ca2"/></g><g><path d="m168.779 225.89h-103.282c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h103.283c4.268 0 7.726 3.459 7.726 7.726s-3.459 7.726-7.727 7.726z" fill="#eab14d"/></g><g><path d="m230.707 225.89h-26.348c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h26.348c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#dd5ca2"/></g><g><path d="m291.978 225.89h-26.348c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h26.348c4.268 0 7.726 3.459 7.726 7.726s-3.459 7.726-7.726 7.726z" fill="#2b3890"/></g><g><path d="m434.863 225.89h-107.964c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h107.964c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#2b3890"/></g><g><path d="m92.71 259.382h-27.213c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h27.213c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#2b3890"/></g><g><path d="m144.352 259.382h-27.214c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h27.214c4.268 0 7.726 3.459 7.726 7.726s-3.459 7.726-7.726 7.726z" fill="#dd5ca2"/></g><g><path d="m241.204 259.382h-72.425c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h72.425c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#eab14d"/></g><g><path d="m403.373 259.382h-131.312c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h131.312c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#eab14d"/></g><g><path d="m213.291 192.399h-89.024c-4.268 0-7.726-3.459-7.726-7.726s3.459-7.726 7.726-7.726h89.024c4.268 0 7.726 3.459 7.726 7.726s-3.458 7.726-7.726 7.726z" fill="#eab14d"/></g></g></svg>
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 5.6 KiB |
|
@ -1,128 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
|
||||
sodipodi:docname="default-child-avatar.svg"
|
||||
xml:space="preserve"
|
||||
enable-background="new 0 0 363.463 430.464"
|
||||
viewBox="0 0 175.47312 168.01812"
|
||||
height="168.01811"
|
||||
width="175.47313"
|
||||
y="0px"
|
||||
x="0px"
|
||||
id="Layer_1"
|
||||
version="1.1"><metadata
|
||||
id="metadata53"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs51" /><sodipodi:namedview
|
||||
inkscape:current-layer="Layer_1"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:cy="144.63254"
|
||||
inkscape:cx="77.764259"
|
||||
inkscape:zoom="2.1325826"
|
||||
showgrid="false"
|
||||
id="namedview49"
|
||||
inkscape:window-height="1136"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
guidetolerance="10"
|
||||
gridtolerance="10"
|
||||
objecttolerance="10"
|
||||
borderopacity="1"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff" />
|
||||
|
||||
<ellipse
|
||||
style="stroke-width:0.836862"
|
||||
id="ellipse4"
|
||||
ry="1.310876"
|
||||
rx="1.6778166"
|
||||
cy="-132.10965"
|
||||
cx="47.937897"
|
||||
fill="#2408f2" />
|
||||
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path8"
|
||||
d="m 75.334812,-82.700492 c -8.171314,10.612661 1.284346,25.810842 11.616034,31.223299 2.310504,-5.386987 -1.94178,-32.855955 -10.704536,-28.457215"
|
||||
fill="#e2c0d0" />
|
||||
|
||||
|
||||
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path16"
|
||||
d="m 69.866647,-106.68511 c -0.823235,1.33889 -1.386632,3.17955 -0.75312,5.37425 0.57577,0.63931 2.839255,2.617512 3.487615,3.065792 2.513425,-3.177012 0.897475,-10.610122 -3.645168,-8.440042"
|
||||
fill="#e2c0d0" />
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path18"
|
||||
d="m 17.005527,-110.37492 c -1.351986,3.82905 -2.985259,7.46962 -2.575291,11.831002 5.394749,3.63717 14.495709,1.62755 10.622047,-6.138372 -2.091084,-1.94678 -6.2881,-3.74245 -7.134432,-3.84772"
|
||||
fill="#140f0f" />
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path20"
|
||||
d="m 118.80626,53.085546 c 4.81156,-7.024733 11.22505,-20.276976 22.25047,-15.103091 10.54203,4.948896 6.53144,17.674751 3.67899,25.823577 -4.30343,12.293704 0.84798,16.430944 4.41066,27.826396 5.38073,17.215432 -13.03154,10.050612 -21.92876,8.946052 0.0511,0.24536 0.066,2.11744 0.0206,2.35176 10.91901,3.8282 10.41665,13.45091 11.77607,22.95816 1.20763,8.43409 10.60225,19.70474 3.905,27.40274 -12.04993,13.85674 -44.154467,8.81615 -60.702491,8.40183 -1.611001,-3.70594 -2.492803,-7.75743 -1.837844,-11.97447 6.462976,-2.39677 12.313887,-3.2288 13.62133,-10.67719 1.182061,-6.73098 -2.11418,-11.13311 1.123494,-18.41849 2.178522,-4.9039 7.824861,-10.11514 7.141031,-15.784 C 101.4911,98.417739 94.935735,96.711223 90.323802,93.433185 79.817238,85.961022 78.131998,73.198659 80.171114,60.934671 c 1.024507,-6.165532 3.867062,-14.211628 10.104844,-12.870187 9.490306,2.041027 2.578592,8.536825 1.885688,14.669245 -0.406668,3.607456 -1.912084,6.201191 1.841144,8.858598 9.38142,-3.842629 9.91842,-17.944734 23.0077,-16.273028 0.59309,-1.203051 1.49799,-1.006929 2.71222,-1.355024"
|
||||
fill="#b8c8cc" />
|
||||
<path
|
||||
id="path22"
|
||||
d="m -170.50425,565.87825 c 1.286,2.191 2.268,4.482 3,7"
|
||||
fill="none" />
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path24"
|
||||
d="m 121.56221,8.3544504 c -3.31274,0.7547725 -8.32145,3.1846476 -7.37118,7.9136496 1.01874,5.069456 6.32688,3.484349 9.45731,6.758992 5.57953,5.836964 3.78045,19.208069 17.94292,14.973192 6.26583,-1.873771 13.06123,-12.130697 17.86536,-16.273031 5.3766,-4.63561 12.775,-11.37083 18.02952,-13.6283555 -8.58128,4.8266385 -21.55425,5.5066985 -31.07178,7.2955685 -7.36952,1.385589 -9.68745,0.20631 -14.95187,-2.46044 -3.87944,-1.965465 -6.73107,-5.3046326 -10.8192,-3.7042432"
|
||||
fill="#0c0ce8" />
|
||||
<path
|
||||
id="path26"
|
||||
d="m -271.50425,520.87825 c 2.164,0.854 3.121,3.116 3,6"
|
||||
fill="none" />
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path28"
|
||||
d="m 113.29438,12.739602 c 0.537,3.126915 -1.06905,4.892862 2.40949,6.114591 -6.89356,2.842496 -14.74647,1.7634 -22.299947,3.572647 5.026851,-4.441187 14.142657,-8.096187 19.890457,-10.563419"
|
||||
fill="#f70b54" />
|
||||
<path
|
||||
id="path30"
|
||||
d="m 40.033471,8.5456196 c 2.337,3.1560004 4.774,9.0550004 -0.105,12.4720004 -5.231,3.664 -8.659,-1.724 -14.261,-1.219 -9.987,0.897 -19.7500004,13.939 -28.8860008,-0.437 -4.042,-6.361 -1.4260001,-20.4470004 -2.2230001,-27.6890004 -0.8899999,-8.1029986 -1.8149999,-19.5669986 -4.6200001,-25.5039986 3.6120002,10.689 14.7040002,21.062 21.744001,29.7989986 5.451,6.766 8.54,7.482 15.545,9.119 5.163,1.206 10.571,0.438 12.886,4.9170004"
|
||||
fill="#edabe4" />
|
||||
<path
|
||||
id="path32"
|
||||
d="m 43.739471,18.61062 c -3.145,2.327 -3.203,5.081 -7.373,3.528 3.783,7.68 11.767,12.655 17.021,19.931 -0.741,-7.672 -5.833,-17.736 -8.902,-24.225"
|
||||
fill="#f4e806" />
|
||||
<path
|
||||
style="stroke-width:0.836862"
|
||||
id="path34"
|
||||
d="m 57.252505,-20.590102 c 0.821585,2.105553 -0.569996,-0.320077 -0.918098,-0.87703"
|
||||
fill="none" />
|
||||
|
||||
<path
|
||||
id="path38"
|
||||
d="m -312.50425,603.87825 c 2.512,2.171 4.505,4.861 6,8"
|
||||
fill="none" />
|
||||
|
||||
<path
|
||||
id="path42"
|
||||
d="m -63.444247,323.75825 c 0.012,26.16 -5.698,50.683 0.189,76.269 13.771,8.346 31.526,5.96 46.34,6.146 15.186,0.192 32.769,-2.9 47.853,0.077 0.406,-0.388 0.817,-0.769 1.236,-1.146 -0.033,-10.151 -29.312,-4.299 -37.678,-3.896 -12.342,0.591 -31.866,2.269 -43.461,-1.003 -12.113,-3.418 -10.516,-22.771 -11.134,-34.095 -0.712,-13.036 4.193,-27.684 2.059,-41.161 -1.946,0.14 -3.67,-0.492 -5.403,-0.159"
|
||||
fill="#706f6f"
|
||||
opacity="0.4" />
|
||||
<ellipse
|
||||
style="stroke-width:0.836862"
|
||||
id="ellipse44"
|
||||
ry="1.6301048"
|
||||
rx="2.0523145"
|
||||
cy="75.280441"
|
||||
cx="109.86864"
|
||||
fill="#2408f2" />
|
||||
|
||||
</svg>
|
Before Width: | Height: | Size: 6 KiB |
Before Width: | Height: | Size: 24 KiB |
|
@ -1,27 +1 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="341px" height="329px" viewBox="0 0 341 329" enable-background="new 0 0 341 329" xml:space="preserve">
|
||||
<path fill="none" d="M-243.321,310.151c4.236,2.69,7.549,7.308,9.434,13.208"/>
|
||||
<path fill="none" d="M-198.038,317.698c0.104,1.639,0.733,1.639,1.887,0"/>
|
||||
<path fill="none" d="M-248.981,500.718c0.043,2.615-0.133,5.229-1.887,1.887"/>
|
||||
<path fill="none" d="M-315.019,417.698c-0.874-2.107,0.456-3.383-2.082-4.895c2.567,4.578,6.12,8.258,9.629,12.442"/>
|
||||
<path fill="none" d="M-403.698,366.755c5.092,1.486,1.083-1.083,0-1.887"/>
|
||||
<path fill="none" d="M-499.924,334.68c0.629,0.629,1.258,1.258,1.887,1.887"/>
|
||||
<line fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" x1="234.038" y1="-140.792" x2="232.151" y2="-129.471"/>
|
||||
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="218.943" y1="-210.604" x2="215.17" y2="-195.509"/>
|
||||
<path fill="none" d="M-149-103c0.057,1.872,0.395,3.909,1,6"/>
|
||||
<path opacity="0.4" fill="#EDB9DB" stroke="#ECC6E0" stroke-width="1.3224" stroke-miterlimit="10" d="M124.647,170.801
|
||||
c17.874,12.062,10.972,75.009,51.027,51.057c12.427-7.431,47.523-72.907,23.238-69.97c-4.476,8.643-8.036,17.745-12.708,26.19
|
||||
c4.353-6.833,13.304-19.567,9.489-27.466c-13.484-2.536-16.205,17.55-20.383,24.876c2.41-8.851,9.491-15.694,13.899-23.823
|
||||
c-12.836-18.499-20.563,14.356-27.684,21.235c4.998-14.936,27.05-36.782,23.231-52.935c-2.094-0.333-4.334-0.407-6.413,0.025
|
||||
c-6.711,7.684-12.675,18.321-17.674,28.197c-6.257,12.359-10.083,20.58-25.095,12.728c-5.403-2.826-27.74-20.205-29.881-5.353
|
||||
c-0.42,2.909,21.601,18.673,25.807,21.617"/>
|
||||
<path fill="#ECF050" d="M132.872,133.806c0.771-7.281-24.884-33.177-34.298-23.98c-9.114,8.904,12.869,9.001,16.406,9.918
|
||||
c6.693,1.733,16.904,6.358,19.263,12.786"/>
|
||||
<path fill="#ECF050" d="M134.243,117.222c1.897-9.221-7.935-25.509-2.507-38.044c0.639,0.069,3.005,0.068,3.644,0
|
||||
c4.782,10.843,2.363,27.899,0.234,39.32"/>
|
||||
<path fill="none" stroke="#ECC6E0" stroke-miterlimit="10" d="M-198,96c2.586,1.803,3.786,4.414,3,7"/>
|
||||
<path fill="#ECF050" d="M141.097,137.633c7.723-3.765,2.325-30.477,16.248-31.695c1.917,12.085-11.026,22.166-13.506,32.971"/>
|
||||
</svg>
|
||||
<svg height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><g id="Flat"><path d="m478.33 427.36v1.74a36.022 36.022 0 0 1 -29.39 35.41l-125.27 23.49h-135.34l-125.27-23.49a36.022 36.022 0 0 1 -29.39-35.41v-1.74a36.028 36.028 0 0 1 36.03-36.03h10.67c1.08 0 2.17.05 3.26.15l104.7 9.52 6.44-19.33h.01l12.89-38.67.33-39h96l.33 39 12.89 38.67h.01l6.44 19.33 104.7-9.52c1.09-.1 2.18-.15 3.26-.15h10.67a36.028 36.028 0 0 1 36.03 36.03z" fill="#fec093"/><path d="m478.33 427.36v1.74a36.022 36.022 0 0 1 -29.39 35.41l-125.27 23.49h-135.34l-125.27-23.49a36.022 36.022 0 0 1 -29.39-35.41v-1.74a36.028 36.028 0 0 1 36.03-36.03h10.67c1.08 0 2.17.05 3.26.15l104.7 9.52 6.44-19.33h122.46l6.44 19.33 104.7-9.52c1.09-.1 2.18-.15 3.26-.15h10.67a36.028 36.028 0 0 1 36.03 36.03z" fill="#b03b8d"/><path d="m323.67 188.33v48.34l-19.67 67.33h-96l-19.67-67.33v-48.34h33.83a9.662 9.662 0 0 0 9.67-9.66v-48.34h48.33v48.34a9.662 9.662 0 0 0 9.67 9.66z" fill="#fec093"/><path d="m280.16 130.33v28.73a37.129 37.129 0 0 1 -48.33 0v-28.73z" fill="#f7b488"/><path d="m275.333 33.667v38.666h29v38.667a38.667 38.667 0 0 0 38.667 38.667v-77.334a38.666 38.666 0 0 0 -38.667-38.666z" fill="#61311c"/><path d="m212.5 111h14.5v-29h-14.5a14.5 14.5 0 0 0 -14.5 14.5 14.5 14.5 0 0 0 14.5 14.5z" fill="#feb784"/><path d="m299.5 82h-14.5v29h14.5a14.5 14.5 0 0 0 14.5-14.5 14.5 14.5 0 0 0 -14.5-14.5z" fill="#feb784"/><path d="m256 149.667a37.143 37.143 0 0 1 -36.034-28.134l-1.154-4.618a49.532 49.532 0 0 1 -1.479-12.012v-22.903a38.667 38.667 0 0 1 38.667-38.667 38.667 38.667 0 0 1 38.667 38.667v22.9a49.532 49.532 0 0 1 -1.479 12.012l-1.154 4.618a37.143 37.143 0 0 1 -36.034 28.137z" fill="#fec093"/><path d="m265.667 53s9.666 19.333 35.967 44.9a122.794 122.794 0 0 0 2.7-25.565 48.333 48.333 0 0 0 -48.334-48.335 48.333 48.333 0 0 0 -48.333 48.333 122.957 122.957 0 0 0 .911 14.876c14.892-5.409 36.111-7.709 57.089-34.209z" fill="#6e3c26"/><path d="m248 343h16v38.667h-16z" fill="#f7b488"/><path d="m314.935 240.72-10.6-52.387h-9.666l-10.414 20.828a31.882 31.882 0 0 1 -23.03 17.405 31.293 31.293 0 0 1 -33.2-16.858l-10.688-21.375h-9.666l-10.6 52.387-4.922 7.766c-12.391 19.54-4.841 45.168 15.851 55.514h96c20.692-10.346 28.242-35.974 15.857-55.514z" fill="#c378cb"/><path d="m141.67 474.33a13.67 13.67 0 0 0 13.67 13.67h102.33l58.32-7.61 132.64-17.3a36.031 36.031 0 0 0 -4.66-71.76 90.006 90.006 0 0 0 -24.15 3.3l-114.15 37.57-48 15.8-15.88-9.86a24 24 0 0 0 -25.97.43l-16.15 10.76h-16.99a52.374 52.374 0 0 0 -37.01 15.33 13.705 13.705 0 0 0 -4 9.67z" fill="#f7b488"/><path d="m305.67 432.2 10.32 48.19 132.64-17.3a36.031 36.031 0 0 0 -4.66-71.76 90.006 90.006 0 0 0 -24.15 3.3z" fill="#bc4598"/><path d="m372 474.33a13.67 13.67 0 0 1 -13.67 13.67h-102.33l-58.32-7.61-132.64-17.3a36.031 36.031 0 0 1 4.66-71.76 90.006 90.006 0 0 1 24.15 3.3l114.15 37.57 48 15.8 15.88-9.86a24 24 0 0 1 25.97.43l16.15 10.76h16.99a52.374 52.374 0 0 1 37.01 15.33 13.705 13.705 0 0 1 4 9.67z" fill="#fec093"/><path d="m208 432.2-10.32 48.19-132.64-17.3a36.031 36.031 0 0 1 4.66-71.76 90.006 90.006 0 0 1 24.15 3.3z" fill="#bc4598"/><g fill="#fec093"><path d="m141.505 214.858-30.505 99.142-48.333 67.667-9.667 29v29h48.333v-48.334l58-67.666 29-87v-48.334h-10.914a37.576 37.576 0 0 0 -35.914 26.525z"/><path d="m449.333 381.667-48.333-67.667-30.5-99.142a37.576 37.576 0 0 0 -35.914-26.525h-10.919v48.334l29 87 58 67.666v48.334h48.333v-29z"/></g></g></svg>
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 9.3 KiB |
Before Width: | Height: | Size: 27 KiB |
|
@ -1,123 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="830.189px" height="543.396px" viewBox="0 0 830.189 543.396" enable-background="new 0 0 830.189 543.396"
|
||||
xml:space="preserve">
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M697.311,321.756c-4.415-23.506-72.812-1.055-91.166,6.045
|
||||
c-32.032,12.391-54.716,34.281-71.018,62.105c32.31,9.759,65.569,14.325,96.119,2.188c29.872-11.869,43.738-46.275,61.207-69.313"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M393.096,226.775c17.724,24.112,70.097-34.548,83.533-51.491
|
||||
c23.451-29.569,32.517-65.171,32.084-104.275c-36.445,4.943-70.813,16.158-92.992,44.718
|
||||
c-21.688,27.926-15.147,73.194-18.577,107.52"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M412.985,224.306c-15.78,10.438,20.599,49.106,31.143,59.14
|
||||
c18.399,17.514,40.958,25.74,65.953,27.806c-2.391-24.747-8.833-48.479-26.615-65.078c-17.387-16.231-46.45-14.571-68.312-18.939"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M413.981,241.131c-18.646-3.213-18.651,49.878-17.849,64.412
|
||||
c1.397,25.363,12.188,46.814,28.976,65.447c15.219-19.66,26.791-41.358,25.216-65.633c-1.538-23.736-23.843-42.444-36.77-60.607"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M679.821,321.319c-19.312-17.176-60.556,34.531-70.907,49.29
|
||||
c-18.067,25.76-22.11,54.78-16.949,85.578c33.068-7.685,63.456-20.104,80.469-44.932c16.638-24.28,5.088-59.305,4.078-86.733"/>
|
||||
<path opacity="0.9" fill="#F6D2E1" enable-background="new " d="M685.288,317.343c-10.094-30.188-46.41-62.218-80.094-48.574
|
||||
c-17.211,6.973-25.155,21.716-40.041,31.508c-13.534,8.904-32.453,9.735-44.141,20.796c26.475,11.981,43.891,20.419,74.745,10.671
|
||||
c24.425-7.714,54.848-27.807,80.63-10.137"/>
|
||||
<path opacity="0.6" fill="#F6D2E1" enable-background="new " d="M434.989,222.876c-21.113-16.515-68.553-31.994-97.604-19.947
|
||||
c-18.613,7.718-32.763,25.815-51.23,35.37c-19.253,9.96-37.311,18.495-58.123,24.872c42.006,0.963,64.565,39.251,107.76,26.902
|
||||
c22.141-6.332,34.773-22.705,50.343-37.72c12.769-12.315,29.737-22.084,42.289-31.256"/>
|
||||
<path opacity="0.6" fill="#F6D2E1" enable-background="new " d="M421.556,234.679c-5.031-26.329-30.568-69.201-60.371-79.246
|
||||
c-19.095-6.436-41.657-2.119-61.852-7.077c-21.052-5.169-40.265-10.624-60.133-19.517c30.997,28.366,22.79,72.042,63.443,91.164
|
||||
c20.837,9.801,41.124,5.786,62.728,4.724c17.718-0.871,36.925,2.938,52.41,4.291"/>
|
||||
<path opacity="0.8" fill="#F6D2E1" enable-background="new " d="M692.893,311.769c-18.771,15.952-18.687,55.206,4.448,69.888
|
||||
c27.975,17.755,47.869,19.761,66.853,48.886c13.048-59.098-18.361-106.368-75.751-118.773"/>
|
||||
<path opacity="0.8" fill="#F6D2E1" enable-background="new " d="M403.199,228.262c13.485,25.02,60.811,38.986,85.571,20.444
|
||||
c29.942-22.423,38.439-42.17,79.336-51.271c-67.223-34.578-133.781-19.191-166.268,35.406"/>
|
||||
<path fill="none" d="M-98.113,371.698c4.235,2.689,7.549,7.308,9.434,13.208"/>
|
||||
<path fill="none" d="M-52.83,379.245c0.104,1.639,0.733,1.639,1.888,0"/>
|
||||
<path fill="none" d="M-103.773,562.265c0.043,2.615-0.133,5.229-1.888,1.888"/>
|
||||
<path opacity="0.5" fill="#F6D2E1" enable-background="new " d="M428.613,216.518c-25.74,0.673-82.29,31.024-79.603,73.774
|
||||
c0.438,6.967,8.259,12.721,9.926,19.049c2.577,9.788-1.719,23.952,0.816,34.208c2.46,9.954,8.809,12.217,10.332,23.931
|
||||
c1.158,8.914-2.488,21.815-2.638,31.793c9.377-6.921,14.321-18.98,20.452-30.062c22.521-5.261,45.625-53.362,57.754-78.657
|
||||
c-4.737-27.025-12.364-52.977-23.183-74.32"/>
|
||||
<ellipse fill="#F0F11A" cx="430.698" cy="214.562" rx="5.936" ry="7.364"/>
|
||||
<ellipse fill="#F0F11A" cx="405.829" cy="215.815" rx="5.936" ry="5.384"/>
|
||||
<ellipse fill="#F0F11A" cx="672.368" cy="305.868" rx="6.462" ry="4.452"/>
|
||||
<path fill="#F0F11A" d="M434.588,234.119c-0.271,3.747-2.964,6.532-6.016,6.223c-3.05-0.311-5.303-3.599-5.03-7.345
|
||||
c0.271-3.747,2.965-6.532,6.015-6.223C432.607,227.085,434.859,230.373,434.588,234.119z"/>
|
||||
<path fill="#F0F11A" d="M394.522,248.586c-0.197,2.622-2.351,4.541-4.809,4.284c-2.458-0.256-4.291-2.591-4.094-5.212
|
||||
c0.198-2.623,2.35-4.541,4.808-4.285C392.887,243.63,394.719,245.962,394.522,248.586z"/>
|
||||
<path fill="#F0F11A" d="M681.364,296.969c-0.269,3.035-3.188,5.255-6.519,4.958c-3.332-0.297-5.816-2.999-5.549-6.032
|
||||
c0.269-3.035,3.185-5.254,6.518-4.958C679.146,291.235,681.629,293.935,681.364,296.969z"/>
|
||||
<path fill="#F0F11A" d="M416.136,237.076c-0.167,2.264-2.215,3.902-4.574,3.659c-2.359-0.242-4.135-2.273-3.968-4.537
|
||||
c0.167-2.264,2.214-3.902,4.573-3.66C414.526,232.781,416.303,234.811,416.136,237.076z"/>
|
||||
<path fill="#F0F11A" d="M395.594,234.198c-0.219,2.928-2.69,5.062-5.521,4.77s-4.944-2.904-4.726-5.833
|
||||
c0.22-2.928,2.689-5.062,5.519-4.771C393.698,228.659,395.813,231.27,395.594,234.198z"/>
|
||||
<path fill="#F0F11A" d="M425.852,202.152c-0.029,4.052-3.481,7.483-7.712,7.662c-4.23,0.18-7.637-2.961-7.609-7.013
|
||||
c0.029-4.053,3.481-7.482,7.711-7.663C422.473,194.961,425.881,198.101,425.852,202.152z"/>
|
||||
<path fill="#F0F11A" d="M699.883,310.221c-0.302,3.511-3.056,6.136-6.151,5.863c-3.093-0.271-5.354-3.336-5.052-6.845
|
||||
c0.303-3.51,3.057-6.135,6.149-5.864C697.923,303.647,700.185,306.712,699.883,310.221z"/>
|
||||
<path fill="#F0F11A" d="M689.332,297.186c-0.252,2.98-2.764,5.197-5.605,4.951c-2.843-0.248-4.941-2.863-4.689-5.844
|
||||
c0.256-2.981,2.765-5.195,5.605-4.95C687.487,291.591,689.585,294.206,689.332,297.186z"/>
|
||||
<path fill="#F0F11A" d="M688.844,323.332c-0.412,2.345-3.736,4.113-7.427,3.948c-3.691-0.165-6.351-2.201-5.94-4.547
|
||||
c0.413-2.346,3.736-4.113,7.427-3.948C686.597,318.951,689.256,320.986,688.844,323.332z"/>
|
||||
<path fill="#F0F11A" d="M694.015,305.074c-0.48,2.924-3.864,5.149-7.553,4.972c-3.689-0.18-6.293-2.695-5.812-5.619
|
||||
c0.48-2.926,3.861-5.151,7.552-4.974C691.893,299.633,694.497,302.149,694.015,305.074z"/>
|
||||
<path fill="#F0F11A" d="M410.48,248.004c-0.471,3.892-4.277,6.825-8.502,6.551c-4.225-0.274-7.269-3.652-6.797-7.544
|
||||
c0.471-3.893,4.276-6.825,8.501-6.551C407.907,240.735,410.95,244.113,410.48,248.004z"/>
|
||||
<path fill="#F0F11A" d="M689.903,314.86c-0.357,2.346-3.239,4.113-6.438,3.948c-3.198-0.165-5.504-2.201-5.146-4.546
|
||||
c0.357-2.348,3.236-4.114,6.436-3.95C687.956,310.479,690.258,312.515,689.903,314.86z"/>
|
||||
<path fill="none" d="M-169.812,479.245c-0.874-2.107,0.456-3.383-2.082-4.896c2.566,4.578,6.12,8.259,9.629,12.442"/>
|
||||
<path fill="none" d="M-258.491,428.302c5.093,1.486,1.083-1.083,0-1.887"/>
|
||||
<path opacity="0.8" fill="#F6D2E1" enable-background="new " d="M157.706,282.679c-1.117,13.143,13.749,28.498,28.104,25.762
|
||||
c17.359-3.311,25.691-9.826,43.925-5.377c-17.366-27.955-47.188-34.955-73.724-18.752"/>
|
||||
<ellipse transform="matrix(-0.6941 -0.7199 0.7199 -0.6941 43.2025 602.4553)" fill="#F0F11A" cx="149.606" cy="292.048" rx="6.755" ry="4.895"/>
|
||||
<path fill="#F0F11A" d="M147.723,281.108c1.045,1.289,0.771,3.229-0.608,4.336c-1.381,1.106-3.347,0.961-4.392-0.327
|
||||
c-1.044-1.288-0.772-3.229,0.606-4.336C144.712,279.676,146.677,279.821,147.723,281.108z"/>
|
||||
<path fill="#F0F11A" d="M163.112,278.701c1.211,1.485,1.155,3.526-0.125,4.556s-3.299,0.658-4.511-0.829
|
||||
c-1.211-1.487-1.154-3.526,0.125-4.556C159.882,276.844,161.901,277.215,163.112,278.701z"/>
|
||||
<path fill="#F0F11A" d="M161.34,272.724c1.03,1.262,0.913,3.051-0.263,3.998c-1.176,0.945-2.964,0.689-3.994-0.57
|
||||
c-1.029-1.262-0.912-3.051,0.264-3.998S160.31,271.462,161.34,272.724z"/>
|
||||
<path fill="#F0F11A" d="M162.457,290.707c1.712,2.11,1.779,4.882,0.148,6.19c-1.631,1.307-4.342,0.654-6.057-1.455
|
||||
c-1.712-2.112-1.778-4.883-0.148-6.19C158.032,287.944,160.744,288.597,162.457,290.707z"/>
|
||||
<path fill="#F0F11A" d="M156.982,278.249c1.987,2.452,2.274,5.5,0.643,6.807c-1.632,1.305-4.565,0.377-6.553-2.074
|
||||
c-1.987-2.453-2.276-5.498-0.644-6.806C152.06,274.869,154.996,275.797,156.982,278.249z"/>
|
||||
<path fill="#F0F11A" d="M157.099,282.245c1.713,2.111,1.778,4.882,0.147,6.189c-1.632,1.309-4.343,0.656-6.057-1.455
|
||||
c-1.712-2.111-1.779-4.883-0.148-6.189C152.675,279.481,155.385,280.134,157.099,282.245z"/>
|
||||
<path opacity="0.9" fill="#F6D2E1" enable-background="new " d="M156.916,287.653c-15.251-8.127-41.181-7.353-48.848,10.359
|
||||
c-3.918,9.05-1.371,17.744-3.336,27.048c-1.788,8.457-8.676,15.728-8.946,24.353c14.607-5.021,24.426-8.106,32.489-23.252
|
||||
c6.383-11.989,10.372-31.031,26.865-33.568"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M163.161,284.972c-10.563-7.593-28.118,26.312-32.423,35.831
|
||||
c-7.513,16.614-7.875,33.521-3.566,50.41c15.989-8.033,30.377-18.451,37.419-34.422c6.888-15.618-0.836-34.194-2.892-49.636"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M156.337,291.22c-13.842,0.355-10.004,35.764-8.366,45.348
|
||||
c2.855,16.729,12.284,29.588,25.888,39.766c9.685-15.15,16.561-31.171,13.654-47.148c-2.843-15.622-20.476-25.111-31.227-35.492"/>
|
||||
<path opacity="0.6" fill="#F6D2E1" enable-background="new " d="M163.065,293.17c7.669-13.39,51.338,19.414,58.534,29.771
|
||||
c13.257,19.077,10.432,44.826,30.001,58.482c-37.427,5.972-86.698-53.128-90.422-86.365"/>
|
||||
<path opacity="0.8" fill="#F6D2E1" enable-background="new " d="M137.503,164.552c-13.022,2.088-24.337,20.221-18.216,33.491
|
||||
c7.402,16.048,15.736,22.561,15.82,41.329c22.936-23.6,22.531-54.23,0.401-76.07"/>
|
||||
<ellipse transform="matrix(0.5311 -0.8473 0.8473 0.5311 -75.3878 181.6615)" fill="#F0F11A" cx="126.449" cy="158.948" rx="6.755" ry="4.896"/>
|
||||
<path fill="#F0F11A" d="M136.616,154.485c-0.997,1.325-2.946,1.529-4.354,0.457c-1.407-1.073-1.739-3.016-0.742-4.342
|
||||
c0.998-1.324,2.946-1.528,4.354-0.457C137.281,151.218,137.613,153.16,136.616,154.485z"/>
|
||||
<path fill="#F0F11A" d="M142.667,168.839c-1.149,1.534-3.144,1.973-4.451,0.978c-1.308-0.994-1.435-3.043-0.283-4.578
|
||||
c1.15-1.534,3.144-1.971,4.45-0.979C143.69,165.256,143.818,167.305,142.667,168.839z"/>
|
||||
<path fill="#F0F11A" d="M148.042,165.676c-0.976,1.304-2.74,1.622-3.942,0.71c-1.202-0.913-1.386-2.71-0.411-4.013
|
||||
c0.976-1.304,2.741-1.621,3.942-0.71C148.833,162.576,149.017,164.371,148.042,165.676z"/>
|
||||
<path fill="#F0F11A" d="M130.858,171.101c-1.634,2.171-4.309,2.905-5.971,1.638c-1.662-1.268-1.685-4.056-0.051-6.229
|
||||
c1.637-2.172,4.31-2.906,5.973-1.639C132.472,166.14,132.494,168.928,130.858,171.101z"/>
|
||||
<path fill="#F0F11A" d="M141.627,162.781c-1.899,2.52-4.788,3.536-6.448,2.266c-1.661-1.268-1.47-4.34,0.431-6.86
|
||||
c1.899-2.52,4.787-3.536,6.449-2.267S143.527,160.261,141.627,162.781z"/>
|
||||
<path fill="#F0F11A" d="M137.777,163.858c-1.636,2.172-4.31,2.905-5.971,1.638c-1.664-1.268-1.687-4.056-0.052-6.229
|
||||
c1.638-2.172,4.31-2.905,5.973-1.638C139.39,158.898,139.413,161.686,137.777,163.858z"/>
|
||||
<ellipse transform="matrix(0.5311 -0.8473 0.8473 0.5311 -1.4256 446.1548)" fill="#F0F11A" cx="402.417" cy="224.365" rx="6.755" ry="4.896"/>
|
||||
<path fill="#F0F11A" d="M412.584,219.902c-0.997,1.325-2.946,1.529-4.354,0.457c-1.407-1.073-1.739-3.016-0.742-4.342
|
||||
c0.998-1.324,2.946-1.528,4.354-0.457C413.249,216.635,413.581,218.577,412.584,219.902z"/>
|
||||
<path fill="#F0F11A" d="M418.635,234.256c-1.149,1.534-3.144,1.973-4.451,0.978c-1.308-0.994-1.435-3.043-0.283-4.578
|
||||
c1.15-1.534,3.144-1.971,4.45-0.979C419.658,230.673,419.786,232.722,418.635,234.256z"/>
|
||||
<path fill="#F0F11A" d="M424.01,231.093c-0.976,1.304-2.74,1.622-3.942,0.71c-1.202-0.913-1.386-2.71-0.411-4.013
|
||||
c0.976-1.304,2.741-1.621,3.942-0.71C424.801,227.993,424.985,229.788,424.01,231.093z"/>
|
||||
<path fill="#F0F11A" d="M406.826,236.518c-1.634,2.171-4.309,2.905-5.971,1.638c-1.662-1.268-1.685-4.056-0.051-6.229
|
||||
c1.637-2.172,4.31-2.906,5.973-1.639C408.44,231.557,408.462,234.345,406.826,236.518z"/>
|
||||
<path fill="#F0F11A" d="M417.594,228.198c-1.899,2.52-4.788,3.536-6.448,2.266c-1.661-1.268-1.47-4.34,0.431-6.86
|
||||
c1.899-2.52,4.787-3.536,6.449-2.267S419.495,225.678,417.594,228.198z"/>
|
||||
<path fill="#F0F11A" d="M422.745,219.275c-1.636,2.172-4.31,2.905-5.971,1.638c-1.664-1.268-1.687-4.056-0.052-6.229
|
||||
c1.638-2.172,4.31-2.905,5.973-1.638C424.358,214.315,424.381,217.103,422.745,219.275z"/>
|
||||
<path opacity="0.4" fill="#F6D2E1" enable-background="new " d="M128.884,165.286c-3.686-13.348-37.119-1.077-46.024,2.826
|
||||
c-15.545,6.81-25.748,19.063-32.341,34.721c17.04,5.741,34.246,8.548,49.05,1.871c14.476-6.528,19.428-25.931,26.907-38.869"/>
|
||||
<path opacity="0.6" fill="#F6D2E1" enable-background="new " d="M128.616,172.285c14.845,4.211-6.449,54.506-14.762,63.989
|
||||
c-15.314,17.47-40.984,20.943-49.514,43.229c-14.827-34.878,30.633-96.958,61.988-108.594"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 12 KiB |
966
public/images/grand.svg
Normal file
|
@ -0,0 +1,966 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 1096 770.85333"
|
||||
height="770.85333"
|
||||
width="1096"
|
||||
xml:space="preserve"
|
||||
id="svg2"
|
||||
version="1.1"><metadata
|
||||
id="metadata8"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs6" /><g
|
||||
transform="matrix(1.3333333,0,0,-1.3333333,0,770.85333)"
|
||||
id="g10"><g
|
||||
transform="scale(0.1)"
|
||||
id="g12"><path
|
||||
id="path14"
|
||||
style="fill:#bf3d55;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 8220,48.582 C 8220,75.4102 6815.87,97.1523 4294.23,97.1523 1772.59,97.1523 0,75.4102 0,48.582 0,21.7617 1772.59,0 4294.23,0 6815.87,0 8220,21.7617 8220,48.582" /><path
|
||||
id="path16"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4320.25,1709.91 c 11.96,-6.93 66.68,31.52 113.11,13.92 7.87,-3.12 19.67,-8.61 31.64,-13.73 21.33,-9.05 47.11,-8.65 48.95,1.43 1.47,8.44 -17.23,7.5 -32.52,13.62 -13.42,5.35 -18.13,6.87 -17.1,10.48 0.77,2.56 18.87,-0.81 39.24,-3.75 26.22,-3.93 44.17,-1.93 45.61,8.36 1.38,9.77 -16.36,7.53 -39.48,13.43 -20.2,5.12 -29.25,6.06 -28.08,15.85 0.46,4.68 14.13,2.95 35.76,4.78 25.12,2.22 40.69,9.89 39.63,18.26 -1.34,11.89 -12.51,2.34 -41.47,3.71 -37.41,1.84 -73.19,-1.72 -90.38,14.29 -15.8,14.88 12.38,54.65 -5.43,58.24 -14.02,2.75 -23.04,-38.73 -39.96,-87.92 -13.51,-39.57 -72.17,-63.6 -59.52,-70.97" /><path
|
||||
id="path18"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2436.4,714.762 c 50.12,5.5 -397.99,-448.192 -460.72,-340.121 -85.46,147.218 291.15,321.468 460.72,340.121" /><path
|
||||
id="path20"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1975.68,415.531 c 50.06,-86.332 345.96,185.688 437.46,295.86 8.05,1.32 15.91,2.558 23.26,3.371 50.12,5.5 -397.99,-448.192 -460.72,-340.121 -12.42,21.41 -14.86,43.379 -9.8,65.351 2,-8.242 5.11,-16.402 9.8,-24.461" /><path
|
||||
id="path22"
|
||||
style="fill:#d8a76b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2983.83,200.871 c -27.33,32.508 -145.3,-0.441 -208.32,-131.4921 h 144.5 c 0,0 119.16,65.7621 63.82,131.4921" /><path
|
||||
id="path24"
|
||||
style="fill:#a84129;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3583.94,2248.68 c -218.67,387.79 -672.51,363.06 -697.23,214.51 -177.43,103.14 -387.81,-569.33 -136.16,-775.63 251.68,-206.27 297.05,-627.09 330.07,-726.08 31.74,-95.281 728.52,887.75 503.32,1287.2" /><path
|
||||
id="path26"
|
||||
style="fill:#903121;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3114.97,2309.08 c 187.21,0 373.13,-158.67 476.27,-75.78 200.21,-408.47 -479.25,-1365.859 -510.62,-1271.82 -33.02,98.99 -78.39,519.81 -330.07,726.08 -137.39,112.62 -136.92,363.97 -79.46,552.47 102.43,-86.75 251.58,69.05 443.88,69.05" /><path
|
||||
id="path28"
|
||||
style="fill:#73221a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3080.62,961.48 c 26.19,646.22 -194.65,1075.63 19.38,1204.46 141.72,85.31 464.83,-261.72 380.07,-642.91 -155.99,-330.6 -401.74,-617.698 -399.45,-561.55" /><path
|
||||
id="path30"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3394,1467.16 c -9.15,65.99 369.79,5.19 984.69,295.93 0,0 41.66,-27.71 23.03,-38.48 C 4069.58,1533.01 3422.36,1262.65 3394,1467.16" /><path
|
||||
id="path32"
|
||||
style="fill:#f89f76;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3417.18,1491.13 c 72.03,-155.45 610.09,44.76 934.92,227 6.37,-6.23 17.51,-6.04 23.99,-5.85 4.88,0.14 7.11,0.28 2.6,-2.33 -332.14,-191.63 -956.33,-447.3 -984.69,-242.79 -1.44,10.3 6.48,17.73 23.18,23.97" /><path
|
||||
id="path34"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2526.62,1168.99 c -32.22,49.8 -109.67,138.51 -219.99,69.37 -145.7,-91.25 12.39,-219.8 12.39,-219.8 l 207.6,150.43" /><path
|
||||
id="path36"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2485.89,1163.02 c -23.03,35.73 -78.43,99.45 -157.52,49.85 -104.39,-65.36 8.69,-157.7 8.69,-157.7 l 148.83,107.85" /><path
|
||||
id="path38"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3418.96,1478.9 -44.13,163.56 -179.43,-24.53 38.23,-185.39 185.33,46.36" /><path
|
||||
id="path40"
|
||||
style="fill:#76c2cf;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3880.8,69.3789 c 68.69,49.9731 74.96,306.1411 -12.52,543.5121 -87.5,237.39 -224.9,893.399 -337.34,893.399 -112.44,0 -362.34,-43.75 -393.59,-87.48 -31.27,-43.72 95.86,-1093.13 28.06,-1114.99 C 2971.76,241.32 2856.19,69.3789 2856.19,69.3789 H 3880.8" /><path
|
||||
id="path42"
|
||||
style="fill:#59a9b4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3835.58,612.891 c -71.06,192.82 -133.73,647.199 -262.07,865.439 102.96,-127.46 235.63,-657.291 312.38,-865.439 87.45,-237.371 80.96,-493.539 12.26,-543.5121 h -50.09 c 68.72,49.9731 75,306.1411 -12.48,543.5121" /><path
|
||||
id="path44"
|
||||
style="fill:#b8e8f3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3221.31,1456.39 c 42.94,-44.96 115.39,-128.36 222.9,-83.86 101.21,41.96 0,128.83 0,128.83 -91.85,-7.98 -175.56,-25.02 -222.9,-44.97" /><path
|
||||
id="path46"
|
||||
style="fill:#59a9b4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 3307.21,196.813 C 3253.02,165.41 3186.54,100.691 3423.74,69.3789 h -567.55 c 0,0 93.73,187.4101 287.34,249.9021 110.74,35.719 -140,1134.589 43.01,1090.079 153.37,-45 189.48,-1172.688 120.67,-1212.547" /><path
|
||||
id="path48"
|
||||
style="fill:#59a9b4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3211.85,233.379 c 65.26,-34.238 161.3,-87.816 163.16,-67.129 1.95,20.82 -122.49,129 -122.49,129 l -40.67,-61.871" /><path
|
||||
id="path50"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2082.36,76.1602 c 149.89,0 215.89,10.2304 318.98,10.2304 31.21,31.2114 304.98,354.7574 267.47,510.8794 -37.49,156.222 -324.87,118.71 -362.34,81.261 C 2268.98,641.051 2218.99,453.602 2187.74,416.09 2156.51,378.641 1761.39,95.6992 2082.36,76.1602" /><path
|
||||
id="path52"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2074.17,107.582 c 56.06,0 100.16,24.816 140.08,24.816 66.88,0 120.21,-24.816 184.72,-24.816 30.8,30.797 286.41,362.688 256.95,521.418 5.43,-9.641 10.08,-19.969 12.89,-31.73 37.51,-156.122 -224.96,-496.641 -256.17,-527.8911 -103.12,0 -174.93,0 -324.83,0 -94.09,5.7422 -126.8,34.7421 -125.74,73.7501 17.47,-18.918 52.49,-31.949 112.1,-35.547" /><path
|
||||
id="path54"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2549.25,538.27 c -17.01,70.949 -223.56,27.293 -223.56,158.152 99.4,11.82 317.68,6.867 343.12,-99.152 37.51,-156.122 -224.96,-496.641 -256.17,-527.8911 -37.89,0 -71.51,0 -106.34,0 31.22,31.2501 280.46,312.7811 242.95,468.8911" /><path
|
||||
id="path56"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2465.76,75.1211 c 115.13,4.9297 186.38,200.3989 41.26,219.1919 -94.34,12.207 -299.43,-152.223 -284.97,-223.2114 103.64,0 88.78,4.0195 243.71,4.0195" /><path
|
||||
id="path58"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2463.73,85.3398 c 91.72,29.5192 128.31,148.1802 59.02,205.4492 134.16,-14.269 68.45,-216.6796 -42.14,-221.4101 -154.92,0 -177.02,0 -280.66,0 8.62,6.8399 13.2,59.8011 39.85,60.9611 4.1,-51.1291 189.5,-56.0587 223.93,-45.0002" /><path
|
||||
id="path60"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2173.02,114.359 c 84.8,-68.8902 -471.18,-55.2692 -533.53,82.391 -62.36,137.641 271.21,130.582 533.53,-82.391" /><path
|
||||
id="path62"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1664.39,272.281 c -12.17,-14.742 -14.29,-34.461 -3.06,-59.172 42.7,-94.328 393.43,-121.6285 504.88,-88.898 25.78,7.59 32.55,-15.469 25.49,-29.211 -26.52,-51.5508 -504.15,-29.4609 -562.26,98.719 -16.1,35.672 5.11,64.011 34.95,78.562" /><path
|
||||
id="path64"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2594.62,613.68 c 93.72,8.109 330.32,351.449 187.42,522.44 -142.91,171.03 -388.91,70.29 -440.43,-30.43 -51.53,-100.73 -180.39,-529.471 253.01,-492.01" /><path
|
||||
id="path66"
|
||||
style="fill:#d1684d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2369.95,975.422 c 9.58,26.068 31.92,41.518 49.94,34.488 18.03,-6.89 24.84,-33.738 15.26,-59.789 -9.58,-26 -31.94,-41.539 -49.94,-34.519 -18.03,6.957 -24.84,33.738 -15.26,59.82" /><path
|
||||
id="path68"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2555.78,662.77 c 88.65,7.652 304.94,315.21 207.16,493.17 6.45,-6.34 12.98,-12.48 19.1,-19.82 142.9,-170.991 -84.52,-530.429 -178.24,-538.55 -157.77,-13.609 -249.95,50.731 -289.56,122.321 47.53,-42.832 123.59,-67.289 241.54,-57.121" /><path
|
||||
id="path70"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2377.85,839.879 c 3.14,28.633 26.95,31.363 63.98,27.281 37.04,-4.09 77.21,-27.281 74.01,-55.898 -3.14,-28.653 -38.59,-47.032 -75.64,-42.942 -37.01,4.09 -65.54,42.942 -62.35,71.559" /><path
|
||||
id="path72"
|
||||
style="fill:#d1684d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2378.84,856.23 c 4.81,23.321 43.85,31 77.31,25 33.51,-6.078 65.54,-39.5 60.73,-62.82 -4.77,-23.379 -66.45,-47.039 -92,-3.051 -21.48,-19.449 -50.75,17.563 -46.04,40.871" /><path
|
||||
id="path74"
|
||||
style="fill:#5a2a23;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2416.1,878.742 c 3.71,9.77 22.82,14.817 42.69,11.238 19.95,-3.628 33.22,-14.488 29.53,-24.281 -3.67,-9.777 -22.78,-14.769 -42.69,-11.168 -19.91,3.61 -33.15,14.418 -29.53,24.211" /><path
|
||||
id="path76"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2394.2,802.059 c 2.97,8.55 19.03,4.461 34.76,-1.028 15.7,-5.5 41.83,-24.152 38.86,-32.711 -3,-8.48 -33.36,-39.25 -49.09,-33.738 -15.73,5.5 -27.53,58.957 -24.53,67.477" /><path
|
||||
id="path78"
|
||||
style="fill:#d1684d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2393.86,793.602 c 2.96,8.519 18.13,11.007 33.85,5.5 15.7,-5.5 26.03,-16.872 23.07,-25.36 -2.97,-8.543 -18.17,-10.972 -33.86,-5.48 -15.73,5.429 -26.1,16.777 -23.06,25.34" /><path
|
||||
id="path80"
|
||||
style="fill:#d1684d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2592.82,884.422 c 9.61,26.09 31.93,41.539 49.92,34.519 18.07,-6.929 24.88,-33.769 15.3,-59.832 -9.58,-26 -31.96,-41.539 -49.94,-34.5 -18.07,6.973 -24.86,33.723 -15.28,59.813" /><path
|
||||
id="path82"
|
||||
style="fill:#5a2a23;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2605.33,890.219 c 4.78,12.121 15.38,19.39 23.68,16.23 8.34,-3.117 11.21,-15.449 6.43,-27.519 -4.8,-12.078 -15.38,-19.36 -23.72,-16.231 -8.32,3.11 -11.17,15.492 -6.39,27.52" /><path
|
||||
id="path84"
|
||||
style="fill:#5a2a23;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2384.49,982.23 c 4.78,12.11 15.39,19.38 23.69,16.262 8.36,-3.152 11.19,-15.48 6.43,-27.562 -4.82,-12.051 -15.39,-19.34 -23.72,-16.219 -8.33,3.121 -11.17,15.469 -6.4,27.519" /><path
|
||||
id="path86"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 2636.01,625.441 C 2649.9,673.879 2900.33,87.5117 2776.54,70.3594 2607.89,46.8906 2589.13,461.469 2636.01,625.441" /><path
|
||||
id="path88"
|
||||
style="fill:#803626;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2805.48,887.789 c 58.57,9.422 170.99,44.57 152.26,173.401 -24.75,170.09 -190.37,87.45 -190.37,87.45 42.88,-74.38 47.72,-152.519 38.11,-260.851" /><path
|
||||
id="path90"
|
||||
style="fill:#5a2a23;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2828.35,972.309 c 33.15,4.492 97.03,22.851 88.6,95.871 -11.14,96.5 -114.85,46.53 -114.85,46.53 20.14,-40.51 27.5,-84.29 26.25,-142.401" /><path
|
||||
id="path92"
|
||||
style="fill:#f89f76;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3129.09,1241.4 c -13.14,92.94 3.15,169.55 36.45,171.14 33.24,1.62 70.88,-72.4 84.05,-165.28 13.13,-92.94 -3.15,-169.59 -36.46,-171.22 -33.26,-1.58 -70.88,72.47 -84.04,165.36" /><path
|
||||
id="path94"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3148.66,1422.9 c -65.58,8.46 22.91,-361.65 -240.97,-982.271 0,0 21.5,-27.539 31.43,-8.68 176.7,335.692 412.52,964.731 209.54,990.951" /><path
|
||||
id="path96"
|
||||
style="fill:#f89f76;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3148.66,1422.9 c 6.36,-0.8 12.29,-2.23 17.82,-4.2 -60.4,-2.35 21.75,-370.43 -238.35,-982.141 0,0 3.37,-4.25 7.96,-8.239 -10.67,-10.101 -28.4,12.309 -28.4,12.309 263.88,620.621 175.39,990.731 240.97,982.271" /><path
|
||||
id="path98"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3229.48,1464.57 c 42.96,-44.98 109.8,-113.32 216.75,-67.47 71.57,30.68 -44.96,120.63 -44.96,120.63 l -171.79,-53.16" /><path
|
||||
id="path100"
|
||||
style="fill:#9fdfe1;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3429.08,675.852 -94.21,45.398 c -2,39.91 -4.52,80.301 -7.57,120.469 l 70.6,-34.047 135.85,185.637 173.65,-118.278 43.57,57.121 c 11.26,-47.691 22.06,-93.933 32.64,-137.121 l -51.18,-70.992 -178.81,121.863 -124.54,-170.05" /><path
|
||||
id="path102"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3783.61,795.031 c -10.58,43.188 -21.38,89.43 -32.64,137.121 l 22.44,29.43 c 12.98,-45.141 26.59,-84.652 38.85,-126.812 l -28.65,-39.739" /><path
|
||||
id="path104"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3168.16,622.121 c -3.21,61.531 -13.67,116.551 -18.41,184.031 l 58.18,93.149 119.37,-57.582 c 3.05,-40.168 5.57,-80.559 7.57,-120.469 l -82.29,39.641 -84.42,-138.77" /><path
|
||||
id="path106"
|
||||
style="fill:#9fdfe1;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3441.46,462.621 -100.84,48.629 c -0.07,25.34 -0.4,51.512 -0.99,78.379 l 81.08,-39.09 134.04,183.02 174.43,-118.848 74.86,100.461 c 8.69,-32.152 17.33,-61.43 26.07,-86.902 L 3745.85,514 3567.86,635.27 3441.46,462.621" /><path
|
||||
id="path108"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3830.11,628.27 c -8.74,25.472 -17.38,54.75 -26.07,86.902 l 32.76,43.949 c 9.23,-30.801 18.13,-59.551 26.72,-85.562 l -33.41,-45.289" /><path
|
||||
id="path110"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3175.19,394.809 -0.29,0.183 c 1.43,38.418 0.84,86.86 -1.15,142.008 l 59.23,104.051 106.65,-51.422 c 0.59,-26.867 0.92,-53.039 0.99,-78.379 l -77.8,37.52 -87.63,-153.961" /><path
|
||||
id="path112"
|
||||
style="fill:#9fdfe1;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3379.04,917.781 -62.49,43.168 c -1.18,11.25 -2.42,22.473 -3.69,33.551 l 26.42,68 c 0,0 68.89,-53.61 85.74,-65.539 -10.74,-15.231 -45.98,-79.18 -45.98,-79.18" /><path
|
||||
id="path114"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3316.55,960.949 -13.19,9.11 9.5,24.441 c 1.27,-11.078 2.51,-22.301 3.69,-33.551" /><path
|
||||
id="path116"
|
||||
style="fill:#9fdfe1;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3701.31,999.582 -75.65,52.248 35.85,92.47 c 0,0 23.52,-18.92 46.42,-36.64 5.88,-22.58 11.59,-45.22 17.18,-67.87 -11.87,-20.25 -23.8,-40.208 -23.8,-40.208" /><path
|
||||
id="path118"
|
||||
style="fill:#7dd3d4;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3725.11,1039.79 c -5.59,22.65 -11.3,45.29 -17.18,67.87 5.11,-3.95 10.19,-7.84 14.97,-11.45 4,-13.24 7.94,-26.54 11.87,-39.83 -3.05,-5.27 -6.35,-10.94 -9.66,-16.59" /><path
|
||||
id="path120"
|
||||
style="fill:#dd9f99;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3471.04,1503.38 c 0.16,0.33 0.33,0.68 0.49,1 18.6,3.44 40.63,7 65.31,11.03 0.75,-0.77 1.5,-1.55 2.25,-2.32 -22.66,-3.32 -42.81,-6.24 -60.34,-9.08 -2.54,-0.2 -5.11,-0.41 -7.71,-0.63" /><path
|
||||
id="path122"
|
||||
style="fill:#912c1d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3470.78,1503.36 c 0.15,0.32 0.31,0.65 0.47,0.97 0.09,0.02 0.18,0.04 0.28,0.05 -0.16,-0.32 -0.33,-0.67 -0.49,-1 -0.08,0 -0.17,-0.01 -0.26,-0.02" /><path
|
||||
id="path124"
|
||||
style="fill:#7c221a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3470.65,1503.35 c 0.16,0.32 0.31,0.64 0.47,0.96 0.04,0 0.08,0.01 0.13,0.02 -0.16,-0.32 -0.32,-0.65 -0.47,-0.97 -0.05,0 -0.08,0 -0.13,-0.01" /><path
|
||||
id="path126"
|
||||
style="fill:#621a16;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3440.36,1501.02 c 1.27,0.12 2.56,0.23 3.85,0.34 -1.28,-0.11 -2.57,-0.22 -3.85,-0.34 m 21.75,1.57 c 2.9,0.57 5.91,1.14 9.01,1.72 -0.16,-0.32 -0.31,-0.64 -0.47,-0.96 -2.82,-0.24 -5.66,-0.49 -8.54,-0.76 m -51.56,7.49 v 0.01 l -35.72,132.37 35.72,-132.38" /><path
|
||||
id="path128"
|
||||
style="fill:#dc7952;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3552.71,1498.59 c -7.35,5.04 -14.6,7.7 -21.77,7.7 -15.18,0 -32.87,-0.8 -52.19,-2.28 17.53,2.84 37.68,5.76 60.34,9.08 4.75,-4.94 9.32,-9.76 13.62,-14.5" /><path
|
||||
id="path130"
|
||||
style="fill:#d04b3d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3227.82,1460.79 -32.42,157.14 179.43,24.53 35.72,-132.37 c -5.63,4.82 -9.28,7.64 -9.28,7.64 l -171.79,-53.16 c 0.82,-0.86 1.66,-1.73 2.5,-2.61 -1.4,-0.39 -2.78,-0.77 -4.16,-1.17" /><path
|
||||
id="path132"
|
||||
style="fill:#5a7b80;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3387.73,1315.47 c -37.01,0 -76.69,9.36 -114.25,18.72 -11.36,2.83 -22.52,5.66 -33.35,8.23 -15.92,37.25 -33.78,61.13 -53.59,66.94 -1.08,0.26 -2.14,0.49 -3.19,0.67 -5.14,3.57 -10.75,6.46 -16.9,8.67 0.01,0 0.02,0 0.03,0 -5.53,1.97 -11.46,3.4 -17.82,4.2 v 0 0 c -0.74,0.1 -1.45,0.15 -2.15,0.15 v 0 0 0 c -0.01,0 -0.01,0 -0.02,0 -2.47,-0.01 -4.7,-0.6 -6.74,-1.79 12.28,13.67 45.19,27.24 88.09,39.44 l -0.02,0.09 c 1.38,0.4 2.76,0.78 4.16,1.17 0.32,-0.33 0.63,-0.66 0.95,-1 -4.08,-1.5 -7.96,-3.03 -11.62,-4.57 34.35,-35.97 87.6,-96.53 162.56,-96.54 18.75,0 38.84,3.78 60.34,12.68 96.48,40 9.02,120.81 0.63,128.28 5.68,0.59 11.26,1.19 16.72,1.68 0.18,0.03 0.36,0.07 0.55,0.1 2.88,0.27 5.72,0.52 8.54,0.76 0.05,0.01 0.08,0.01 0.13,0.01 0.09,0.01 0.18,0.02 0.26,0.02 2.6,0.22 5.17,0.43 7.71,0.63 19.32,1.48 37.01,2.28 52.19,2.28 7.17,0 14.42,-2.66 21.77,-7.7 48.5,-53.51 61.55,-96.51 -102.38,-171.03 -19.21,-8.73 -40.43,-12.09 -62.6,-12.09" /><path
|
||||
id="path134"
|
||||
style="fill:#8ea19b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3383.87,1359.85 c -74.96,0.01 -128.21,60.57 -162.56,96.54 3.66,1.54 7.54,3.07 11.62,4.57 32.73,-34.12 78.78,-79.05 144.7,-79.05 20.82,0 43.62,4.48 68.6,15.19 51.13,21.92 6.26,74.08 -23.54,102.09 5.88,0.64 11.72,1.28 17.67,1.83 1.28,0.12 2.57,0.23 3.85,0.34 v 0 l 0.62,-0.56 c 0.01,0 0.01,0 0.01,0.01 8.39,-7.47 95.85,-88.28 -0.63,-128.28 -21.5,-8.9 -41.59,-12.68 -60.34,-12.68" /><path
|
||||
id="path136"
|
||||
style="fill:#446c70;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3240.13,1342.42 c -5.51,1.3 -10.95,2.55 -16.27,3.69 -2.58,6.28 -5.26,12.22 -8.03,17.77 -7.09,20.23 -17.75,35.92 -32.48,46.15 1.05,-0.18 2.11,-0.41 3.19,-0.67 19.81,-5.81 37.67,-29.69 53.59,-66.94" /><path
|
||||
id="path138"
|
||||
style="fill:#de6047;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3223.86,1346.11 c -1.05,0.22 -2.08,0.44 -3.12,0.65 -1.39,6.02 -3.02,11.73 -4.91,17.12 2.77,-5.55 5.45,-11.49 8.03,-17.77" /><path
|
||||
id="path140"
|
||||
style="fill:#dc7952;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3220.74,1346.76 c -17.64,3.67 -34.1,6.14 -48.73,6.14 -12.03,0 -22.81,-1.67 -32.01,-5.7 4.91,46.36 11.03,70.86 26.45,71.5 6.15,-2.21 11.76,-5.1 16.9,-8.67 14.73,-10.23 25.39,-25.92 32.48,-46.15 1.89,-5.39 3.52,-11.1 4.91,-17.12 m -80.99,74.5 v 0 c 2.04,1.19 4.27,1.78 6.74,1.79 -2.47,-0.01 -4.71,-0.61 -6.74,-1.79 m 6.76,1.79 v 0 0 0" /><path
|
||||
id="path142"
|
||||
style="fill:#de6047;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3117.23,1326.66 c 4.71,53.65 9.36,85.83 22.06,94.07 0.15,0.17 0.3,0.35 0.46,0.53 2.03,1.18 4.27,1.78 6.74,1.79 0.01,0 0.01,0 0.02,0 v 0 0 c 0.7,0 1.41,-0.05 2.15,-0.15 v 0 0 c 6.36,-0.8 12.29,-2.23 17.82,-4.2 -0.01,0 -0.02,0 -0.03,0 -15.42,-0.64 -21.54,-25.14 -26.45,-71.5 -9.38,-4.13 -17.1,-10.72 -22.77,-20.54" /><path
|
||||
id="path144"
|
||||
style="fill:#d04b3d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3377.63,1381.91 c -65.92,0 -111.97,44.93 -144.7,79.05 -0.32,0.34 -0.63,0.67 -0.95,1 -0.84,0.88 -1.68,1.75 -2.5,2.61 l 171.79,53.16 c 0,0 3.65,-2.82 9.28,-7.64 v -0.01 l 0.01,-0.04 c 3.4,-2.93 7.52,-6.62 12.05,-10.86 0.03,0.01 0.05,0.01 0.08,0.01 29.8,-28.01 74.67,-80.17 23.54,-102.09 -24.98,-10.71 -47.78,-15.19 -68.6,-15.19" /><path
|
||||
id="path146"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3237.38,1530.78 c 218.66,16.5 446.11,187.56 437.84,397.96 -3.94,101.07 -54.62,199.56 -125.71,296.63 -201.43,222.73 -371.14,97.99 -547.28,163.57 35.04,-57.39 -46.73,-270.03 -93.76,-425.42 25.21,-189.36 189.62,-443.24 328.91,-432.74" /><path
|
||||
id="path148"
|
||||
style="fill:#f89f76;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3259.2,1574.4 c 156.89,11.83 317.77,103.43 393.4,231.83 -61.8,-151 -244.9,-270.6 -419.03,-283.7 -199.86,-15.1 -310.27,322.27 -305.13,589.8 18.35,-259.63 143.69,-552.04 330.76,-537.93" /><path
|
||||
id="path150"
|
||||
style="fill:#903121;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3109.49,1737.1 c -49.5,37.1 -136.14,49.47 -198.05,12.32 0,0 -132.03,321.83 16.5,495.11 24.79,-226.89 41.85,-293.3 197.28,-458.94 l -15.73,-48.49" /><path
|
||||
id="path152"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3109.43,1711.85 c 55.33,74.42 -189.48,113.1 -192.82,46.65 -3.47,-66.38 93.75,-179.91 192.82,-46.65" /><path
|
||||
id="path154"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3064.67,1706.35 c 42.1,38.08 -100.58,91.1 -110.45,51.51 -9.96,-39.56 35.12,-119.67 110.45,-51.51" /><path
|
||||
id="path156"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3085.21,1703.61 c 28.62,25.9 -68.82,61.67 -75.44,34.83 -6.68,-26.84 24.22,-81.15 75.44,-34.83" /><path
|
||||
id="path158"
|
||||
style="fill:#d95521;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3108.71,1960.62 c -31.53,51.46 -5.65,75.8 34.05,98.77 40.41,23.54 83.33,37.11 119.75,-14.41 38.13,-53.96 0.86,-72.73 -43.45,-96.25 -43.38,-22.92 -77.37,-41.98 -110.35,11.89" /><path
|
||||
id="path160"
|
||||
style="fill:#d95521;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3507.57,2188.26 c -29.09,48.96 -72.07,42.86 -110.89,20.31 -39.8,-23.12 -62.33,-57.14 -35.56,-110.17 28.16,-55.64 62.14,-33.1 103.59,-6.8 40.68,25.72 73.35,45.39 42.86,96.66" /><path
|
||||
id="path162"
|
||||
style="fill:#fffae9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3110.02,1958.52 c -31.69,51.7 -15.61,90.99 24.53,114.3 40.01,23.31 89,21.78 120.62,-29.9 31.68,-51.68 -1.28,-69.92 -41.29,-93.16 -40.17,-23.29 -72.22,-42.95 -103.86,8.76" /><path
|
||||
id="path164"
|
||||
style="fill:#fffae9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3362.04,2109.49 c -27.06,54.08 -6.37,94.66 35.98,113.82 42.41,19.1 90.5,9.68 117.47,-44.48 27.02,-54.05 -7.71,-68.82 -50.11,-87.98 -42.43,-19.16 -76.28,-35.45 -103.34,18.64" /><path
|
||||
id="path166"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3052.97,2014.77 c 8.43,57.11 57.26,88.76 70.94,90.51 l -8.15,27.12 c -24.72,-3.28 -77.86,-44.13 -87.29,-107.61 l 24.5,-10.02" /><path
|
||||
id="path168"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3363.94,2239.59 c 54.56,26.04 123.56,4.66 136.97,-5.54 l 15.02,22.31 c -24.37,18.19 -104.87,37.95 -165.33,9.01 l 13.34,-25.78" /><path
|
||||
id="path170"
|
||||
style="fill:#7babc7;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3167.57,2018.64 c -12.89,21.03 -8.28,46.83 10.33,57.7 18.54,10.74 43.97,2.44 56.89,-18.63 12.99,-21.09 8.33,-46.88 -10.24,-57.67 -18.56,-10.81 -44.03,-2.51 -56.98,18.6" /><path
|
||||
id="path172"
|
||||
style="fill:#9fd1e5;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3178.9,2036.42 c -5.84,9.62 -3.75,21.35 4.71,26.26 8.46,4.83 20.01,1.11 25.87,-8.47 5.91,-9.55 3.75,-21.31 -4.62,-26.21 -8.52,-4.93 -20.06,-1.12 -25.96,8.42" /><path
|
||||
id="path174"
|
||||
style="fill:#7babc7;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3426.8,2161.69 c -12.87,21.04 -8.19,46.96 10.33,57.69 18.53,10.8 44.12,2.49 56.95,-18.54 12.92,-21.1 8.27,-46.91 -10.23,-57.74 -18.55,-10.74 -44.16,-2.46 -57.05,18.59" /><path
|
||||
id="path176"
|
||||
style="fill:#9fd1e5;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3432.41,2176.19 c -5.9,9.55 -3.74,21.3 4.65,26.21 8.49,4.93 20.04,1.12 25.87,-8.42 5.93,-9.62 3.84,-21.35 -4.65,-26.22 -8.42,-4.88 -20,-1.14 -25.87,8.43" /><path
|
||||
id="path178"
|
||||
style="fill:#4d2521;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3324.33,1830.51 c -1.34,19.56 154.24,95.74 180.67,86.2 26.38,-9.37 6.22,-120.94 -29.43,-142.81 -35.73,-22.17 -148.77,19.83 -151.24,56.61" /><path
|
||||
id="path180"
|
||||
style="fill:#fef0f1;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3340.97,1835.18 c -1.06,16.3 128.46,79.62 150.51,71.8 8.34,-2.91 11.03,-18.12 9.59,-36.8 l -121.81,-70.82 c -20.91,10.02 -37.41,23.21 -38.29,35.82" /><path
|
||||
id="path182"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3361.54,1969.26 c 21,12.17 32.58,31.74 28.43,46.11 2.8,-1.79 5.23,-3.95 6.92,-6.66 8.93,-14.54 -2.89,-37.36 -26.34,-50.99 -23.52,-13.64 -49.78,-12.93 -58.64,1.55 -0.9,1.51 -1.49,3.19 -1.97,4.88 11.96,-7.43 32.55,-5.93 51.6,5.11" /><path
|
||||
id="path184"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2428.99,195.57 c 6.81,41.809 22.26,76.828 53.97,71.711 31.74,-5.242 51.89,-43.25 45.07,-85.082 -6.81,-41.75 -38.03,-71.457 -69.73,-66.289 -31.77,5.149 -36.11,37.891 -29.31,79.66" /><path
|
||||
id="path186"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2534.55,239.891 c -5.15,14.91 -15.23,25.019 1.28,30.699 16.56,5.672 34.14,-1.789 39.29,-16.731 5.18,-14.968 -4.1,-31.707 -20.63,-37.379 -16.54,-5.679 -14.8,8.418 -19.94,23.411" /><path
|
||||
id="path188"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2537.2,168.719 c 4.08,15.301 1.4,29.281 18.25,24.812 16.89,-4.519 27.22,-20.57 23.13,-35.922 -4.08,-15.257 -21.1,-23.961 -37.92,-19.468 -16.92,4.531 -7.55,15.261 -3.46,30.578" /><path
|
||||
id="path190"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2500.68,116.98 c 9.31,7.809 13.8,17.79 22.45,7.489 8.57,-10.348 8.01,-25.0002 -1.32,-32.7698 -9.37,-7.7969 -23.91,-5.7187 -32.49,4.5899 -8.65,10.3319 2,12.8909 11.36,20.6909" /><path
|
||||
id="path192"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1744.54,167.531 c -26.28,-17 -53.18,-25.949 -66.1,-6.019 -12.92,19.949 -2.06,49.777 24.22,66.859 26.33,17.008 58.1,14.692 71.03,-5.25 12.98,-19.941 -2.81,-38.601 -29.15,-55.59" /><path
|
||||
id="path194"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1667.83,203.301 c -5.62,-10.289 -6.18,-20.762 -17.48,-14.539 -11.36,6.238 -15.97,19.597 -10.37,29.84 5.63,10.187 19.41,13.48 30.83,7.199 11.31,-6.211 2.7,-12.262 -2.98,-22.5" /><path
|
||||
id="path196"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1705.53,240.07 c -10.43,-5.308 -16.74,-13.8 -22.66,-2.308 -5.94,11.48 -2.24,25.027 8.17,30.457 10.43,5.312 23.61,0.34 29.59,-11.117 5.87,-11.473 -4.68,-11.672 -15.1,-17.032" /><path
|
||||
id="path198"
|
||||
style="fill:#e2755f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1752.03,245.762 c -8.87,1.269 -16.54,-1.223 -15.23,8.539 1.43,9.859 9.73,16.801 18.66,15.609 8.93,-1.281 14.98,-10.308 13.62,-20.07 -1.38,-9.84 -8.07,-5.36 -17.05,-4.078" /><path
|
||||
id="path200"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 2967.98,522.242 c -13.8,-0.383 -40.01,-61.933 -88.69,-71.441 -8.36,-1.531 -21.25,-3.129 -34.12,-5.059 -22.91,-3.562 -44.57,-17.48 -40.87,-27.023 3.21,-7.93 18.62,2.672 34.82,5.543 14.26,2.5 19,3.718 20.07,0.07 0.68,-2.5 -16.45,-9.18 -35.33,-17.48 -24.34,-10.481 -38.58,-21.59 -34.36,-31.153 3.96,-8.988 17.91,2.192 40.66,9.492 19.83,6.25 28.05,10.2 32.18,1.321 2.09,-4.223 -10.46,-9.961 -27.84,-22.942 -20.12,-15.211 -29.3,-29.91 -24.03,-36.488 7.43,-9.332 11.88,4.738 37.2,18.777 32.71,18.231 61.27,40.012 84.27,35.52 21.35,-4.25 18.34,-53.02 35.35,-46.547 13.36,5.047 -0.83,45 -12.42,95.699 -9.39,40.711 27.78,92.168 13.11,91.711" /><path
|
||||
id="path202"
|
||||
style="fill:#585148;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7206.24,433.352 H 6571.46 L 6432.89,69.1914 h 911.89 L 7206.24,433.352" /><path
|
||||
id="path204"
|
||||
style="fill:#585148;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7137.24,4588.07 H 6601.1 v -126.51 h 536.14 v 126.51" /><path
|
||||
id="path206"
|
||||
style="fill:#585148;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6921.28,5600.38 h -64.86 V 136.832 h 64.86 V 5600.38" /><path
|
||||
id="path208"
|
||||
style="fill:#fceed7;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6197.4,4527.24 h 1358.25 l -85.44,1254.21 H 6282.86 L 6197.4,4527.24" /><path
|
||||
id="path210"
|
||||
style="fill:#f4e0c2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6197.4,4527.24 h 955.08 L 7092.4,5781.45 H 6257.52 L 6197.4,4527.24" /><path
|
||||
id="path212"
|
||||
style="fill:#edcfa8;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6358.66,4527.24 h 865.73 l -54.45,1254.17 h -756.81 l -54.47,-1254.17" /><path
|
||||
id="path214"
|
||||
style="fill:#e0b98a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6598.45,4527.24 h 386.18 l -24.31,1254.17 h -337.61 l -24.26,-1254.17" /><path
|
||||
id="path216"
|
||||
style="fill:#7d7162;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 7085.76,433.352 h -175.84 l 39.96,-364.1606 h 252.65 L 7085.76,433.352" /><path
|
||||
id="path218"
|
||||
style="fill:#39312b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 942.004,1960.04 H 543.828 l -31.941,-477.48 h 412.918 l 17.199,477.48" /><path
|
||||
id="path220"
|
||||
style="fill:#4f4840;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 942.004,1960.04 -282.649,-6.69 c 0,0 -17.21,-373.94 22.122,-416.25 21.531,-23.15 243.328,-54.54 243.328,-54.54 l 17.199,477.48" /><path
|
||||
id="path222"
|
||||
style="fill:#39312b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 945.688,1966.16 c 0,55.32 -91.192,100.15 -203.696,100.15 -112.504,0 -203.691,-44.83 -203.691,-100.15 0,-55.34 91.187,-100.16 203.691,-100.16 112.504,0 203.696,44.82 203.696,100.16" /><path
|
||||
id="path224"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1133.71,2203.74 c 0,169.92 -173.323,307.64 -387.108,307.64 -213.793,0 -387.122,-137.72 -387.122,-307.64 0,-169.91 173.329,-307.63 387.122,-307.63 213.785,0 387.108,137.72 387.108,307.63" /><path
|
||||
id="path226"
|
||||
style="fill:#74832a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 813.828,2014.08 c -220.117,0 -401.676,130.79 -428.633,299.92 -16.55,-34.24 -25.715,-71.38 -25.715,-110.26 0,-169.91 173.329,-307.63 387.122,-307.63 173.718,0 320.718,90.94 369.718,216.2 -77.96,-60.73 -184.687,-98.23 -302.492,-98.23" /><path
|
||||
id="path228"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 384.07,1968.94 c 71.274,-17.81 127.817,11.13 132.723,66.77 -52.551,11.48 -93.492,-0.74 -132.723,-66.77" /><path
|
||||
id="path230"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 468.516,1890.27 c 66.125,5.14 103.711,45.46 88.691,93.67 -48.176,-5.18 -78.418,-27.04 -88.691,-93.67" /><path
|
||||
id="path232"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 611.34,1872.08 c 50.637,38.83 55.562,91.41 12.527,122.88 -36.008,-29.47 -46.715,-63.13 -12.527,-122.88" /><path
|
||||
id="path234"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 785.508,1841.1 c 30.027,53.61 12.019,103.83 -41.121,117.66 -20.543,-39.82 -15.981,-74.63 41.121,-117.66" /><path
|
||||
id="path236"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 850.027,1941.27 c 30.032,53.62 12.02,103.81 -41.121,117.66 -20.547,-39.83 -15.98,-74.63 41.121,-117.66" /><path
|
||||
id="path238"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1179.45,2101.36 c -7.87,59.68 -53.63,92.37 -106.33,77.21 7.33,-43.45 32.45,-70.11 106.33,-77.21" /><path
|
||||
id="path240"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 984.594,1871.15 c 30.036,53.61 12.023,103.83 -41.121,117.66 -20.539,-39.82 -15.973,-74.63 41.121,-117.66" /><path
|
||||
id="path242"
|
||||
style="fill:#74832a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1080.34,1880.93 c 26.22,46.75 10.51,90.48 -35.83,102.52 -17.91,-34.73 -13.94,-65.06 35.83,-102.52" /><path
|
||||
id="path244"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1135.76,1998.63 c 7.3,59.76 -29.03,101.06 -84.17,97.15 -3.78,-43.86 14,-74.99 84.17,-97.15" /><path
|
||||
id="path246"
|
||||
style="fill:#74832a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 281.301,2204.16 c 46.07,-43.22 104.308,-44.21 136.179,-3.29 -34.789,30.59 -72.582,38.07 -136.179,3.29" /><path
|
||||
id="path248"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 333.969,2306.35 c 38.765,-48.72 96.258,-57.2 134.246,-20.8 -29.621,34.77 -65.836,47.04 -134.246,20.8" /><path
|
||||
id="path250"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 385.203,2420.91 c 16.723,-58.11 66.938,-84.83 116.887,-63.31 -13.738,42.12 -42.613,65.4 -116.887,63.31" /><path
|
||||
id="path252"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 440.566,2524.48 c -7.578,-59.68 28.598,-101.02 83.758,-97.26 3.977,43.77 -13.679,74.92 -83.758,97.26" /><path
|
||||
id="path254"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 604.652,2558.86 c -25.058,-55.59 -2.5,-104.21 51.739,-114.04 16.847,41.17 9.117,75.46 -51.739,114.04" /><path
|
||||
id="path256"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 751.523,2590.99 c -35.656,-50.62 -23.07,-102.13 28.332,-120.59 24.731,37.77 23.883,72.75 -28.332,120.59" /><path
|
||||
id="path258"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 280.133,2415.91 c 16.722,-58.12 66.937,-84.85 116.883,-63.3 -13.739,42.09 -42.614,65.38 -116.883,63.3" /><path
|
||||
id="path260"
|
||||
style="fill:#8e9f32;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 311.801,2101.05 c 55.078,-33.48 112.246,-23.33 133.887,22.74 -41.11,23.27 -79.793,23.39 -133.887,-22.74" /><path
|
||||
id="path262"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 441.371,2081.33 c 64.274,-14.67 114.328,12.36 117.574,62.37 -47.343,9.31 -83.816,-2.4 -117.574,-62.37" /><path
|
||||
id="path264"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 443.441,2219.3 c 47.286,-42.15 105.567,-41.82 136.317,-0.18 -35.66,29.78 -73.664,36.41 -136.317,0.18" /><path
|
||||
id="path266"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 572.914,2307.25 c 36.496,-50.19 93.578,-60.87 133.242,-26 -27.992,35.89 -63.629,49.58 -133.242,26" /><path
|
||||
id="path268"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 741.184,2465.16 c -30.852,-53.26 -13.582,-103.72 39.32,-118.3 21.137,39.58 17.137,74.47 -39.32,118.3" /><path
|
||||
id="path270"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 535.961,2450.94 c 8.199,-59.67 54.137,-92.17 106.777,-76.81 -7.566,43.4 -32.804,69.99 -106.777,76.81" /><path
|
||||
id="path272"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 720.793,1977.05 c 46.43,42.87 45.926,95.62 -0.074,123.39 -32.789,-32.29 -40.02,-66.71 0.074,-123.39" /><path
|
||||
id="path274"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 856.816,2053.02 c 22.856,56.34 -1.543,104.22 -56.039,112.34 -15.211,-41.64 -6.191,-75.69 56.039,-112.34" /><path
|
||||
id="path276"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1000.64,2155.14 c -1.702,60.01 -43.894,96.35 -97.843,85.7 2.828,-43.79 25.055,-72.42 97.843,-85.7" /><path
|
||||
id="path278"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1022.76,2014.91 c -1.71,60.01 -43.893,96.35 -97.834,85.69 2.812,-43.78 25.054,-72.41 97.834,-85.69" /><path
|
||||
id="path280"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1180.85,2227.92 c -37.25,49.69 -94.43,59.65 -133.47,24.27 28.53,-35.52 64.33,-48.73 133.47,-24.27" /><path
|
||||
id="path282"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1056.95,2338.46 c -49.4,39.95 -107.512,37.06 -135.966,-5.79 37.129,-28.12 75.403,-33.07 135.966,5.79" /><path
|
||||
id="path284"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1095.65,2438.24 c -53.65,35.16 -111.138,26.86 -134.587,-18.42 40.127,-24.53 78.737,-25.89 134.587,18.42" /><path
|
||||
id="path286"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 923.148,2535.56 c -61.078,-23.3 -83.097,-72.11 -52.472,-113.76 44.004,18.33 65.347,47.56 52.472,113.76" /><path
|
||||
id="path288"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 572.645,2021.62 c 64.406,14.22 94.718,59.31 71.847,104.94 -46.676,-11.79 -72.871,-37.58 -71.847,-104.94" /><path
|
||||
id="path290"
|
||||
style="fill:#aab92b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 680.93,2146.8 c 65.726,7.79 101.273,49.63 84.008,97.27 -47.821,-7.12 -76.954,-30.17 -84.008,-97.27" /><path
|
||||
id="path292"
|
||||
style="fill:#74832a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 301.461,2015.4 c 44.559,-21.41 86.875,-9.71 99.16,26.66 -33.133,14.69 -62.363,12.04 -99.16,-26.66" /><path
|
||||
id="path294"
|
||||
style="fill:#eebf27;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 963.809,1781.83 c 27.406,-78.47 46.741,-109 196.641,-159.13 l 161.18,4.35 c 0,0 -133.76,56.69 -119.27,218 l -238.551,-63.22" /><path
|
||||
id="path296"
|
||||
style="fill:#fae03a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1224.77,1720.83 c -28.23,1.77 -58.35,5.69 -89.51,12.02 -59.41,12.07 -113.43,30.93 -156.322,52.99 l -15.129,-4.01 c 27.406,-78.47 46.741,-109 196.641,-159.13 l 161.18,4.35 c 0,0 -61.83,26.27 -96.86,93.78" /><path
|
||||
id="path298"
|
||||
style="fill:#eebf27;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1339.36,1637.95 H 917.07 l 26.59,-147.15 h 352.99 l 42.71,147.15" /><path
|
||||
id="path300"
|
||||
style="fill:#da881c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1149.16,1637.95 H 917.07 l 26.59,-147.15 h 205.5 v 147.15" /><path
|
||||
id="path302"
|
||||
style="fill:#f69828;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1127.75,1511.1 c -101.85,0 -187.066,53.01 -210.234,124.37 L 943.66,1490.8 h 205.5 v 21.11 c -7.04,-0.53 -14.18,-0.81 -21.41,-0.81" /><path
|
||||
id="path304"
|
||||
style="fill:#fae03a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1164.49,1599.32 89.21,8.11 c 0,0 65.23,-18.26 60.74,-19.27 -4.5,-1.01 -149.95,11.16 -149.95,11.16" /><path
|
||||
id="path306"
|
||||
style="fill:#eebf27;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1004.28,1581.27 88.95,-10.63 c 0,0 65.56,8.18 61.09,9.12 -4.48,0.93 -150.04,1.51 -150.04,1.51" /><path
|
||||
id="path308"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1533.21,1464.22 H 436.777 L 569.531,77.7188 H 1533.21 V 1464.22" /><path
|
||||
id="path310"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 671.078,252.91 c -21.32,22.61 -29.613,59.461 -38.402,98.43 -14.231,63.09 -29.696,127.441 -102.328,135.691 l 0.84,-8.929 c 64.929,-8.473 78.847,-66.661 92.851,-128.692 8.664,-38.43 17.625,-78.16 40.586,-102.59 74.152,-78.929 129.238,-130.91 169.801,-169.1012 h 12.847 c -1.609,1.5507 -2.937,2.8203 -4.613,4.371 C 802.016,120.352 746.355,172.789 671.078,252.91" /><path
|
||||
id="path312"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 837.422,235.84 c -68.188,51.769 -122.031,92.633 -122.031,124.402 0,37.25 24.769,77.188 61.703,77.188 1.211,0 2.453,-0.059 3.863,-0.149 163.922,-4.121 272.763,-135.722 360.193,-241.449 50.27,-60.793 89.97,-108.7812 128.26,-117.3125 l 1.9,8.6524 c -35.32,7.8203 -76.11,57.1801 -123.33,114.3081 -83.92,101.45 -198.839,240.442 -366.625,244.641 -1.468,0.098 -2.878,0.121 -4.261,0.121 -43.582,0 -70.578,-44.621 -70.578,-86 0,-36.14 52.664,-76.133 125.547,-131.461 C 887.461,186.762 952.945,137 1008.08,77.7188 h 11.84 C 963.199,140.18 894.949,192.199 837.422,235.84" /><path
|
||||
id="path314"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 687.961,484.012 c 16.019,0 33.711,16.961 47.359,45.367 20.633,42.863 28.379,107.082 -3.457,146.863 -48.832,54.117 -108.98,90.457 -167.144,125.61 -22.848,13.8 -45.981,27.98 -68.656,43.16 l 1.07,-11.242 c 20.887,-13.77 42.062,-26.84 63.004,-39.5 57.617,-34.821 117.222,-70.829 164.992,-123.758 29.297,-36.61 21.687,-96.813 2.215,-137.332 -11.375,-23.7 -26.246,-39.301 -38.203,-40.27 -1.243,0.86 -3.571,2.539 -6.797,4.871 -68.793,49.641 -121.801,81.5 -162.77,101.668 l 0.977,-10.199 c 39.617,-20 90.75,-51.109 156.605,-98.641 9.16,-6.597 9.16,-6.597 10.805,-6.597" /><path
|
||||
id="path316"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 586.723,646.18 c 7.324,0 16.738,9.261 16.738,19.16 0,44.289 -55.395,62.68 -85.043,62.68 -3.887,0 -7.367,-0.848 -11.023,-1.36 l 0.828,-8.519 c 3.308,0.488 6.625,1.031 10.195,1.031 25.727,0 76.172,-16.25 76.172,-53.832 0,-5.32 -5.735,-10.348 -8.149,-10.348 -28.378,-1.722 -54.218,16.821 -75.773,37.528 l 1.27,-13.278 c 20.226,-18.094 43.937,-33.191 70.816,-33.191 1.406,0 2.851,0 3.969,0.129" /><path
|
||||
id="path318"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 695.137,870.801 C 778.336,800.941 864.387,728.691 924.742,597 961.785,518.77 1036.2,470.922 1114.99,420.262 c 97.81,-62.93 198.96,-127.973 237.5,-257.793 l 8.47,2.543 C 1321.49,297.949 1218.94,363.902 1119.78,427.691 1042.1,477.672 968.699,524.859 932.781,600.742 871.617,734.18 784.785,807.09 700.813,877.559 581.34,977.871 468.523,1072.6 468.523,1333.77 c 0,47.84 6.481,91.31 18.957,130.45 h -9.187 c -12.219,-39.32 -18.641,-82.76 -18.641,-130.45 0,-265.32 114.371,-361.309 235.485,-462.969" /><path
|
||||
id="path320"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1175.49,955.93 C 1092.64,946.68 967.465,932.699 967.465,822.141 967.465,688.66 1094.22,547.5 1162.39,547.5 c 2.44,0 4.89,0.09 7.37,0.32 l -0.81,8.809 c -2.19,-0.168 -4.4,-0.289 -6.56,-0.289 -65.09,0 -186.05,136.609 -186.05,265.801 0,102.64 115.67,115.55 200.13,124.961 38.87,4.359 69.57,7.789 81.1,19.269 l -6.28,6.27 c -9.31,-9.321 -40.13,-12.731 -75.8,-16.711" /><path
|
||||
id="path322"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 780.035,1011.23 c 104.113,0 138.133,278.01 138.133,373.8 l -0.027,11.01 c -0.032,28.8 0.027,51.07 1.183,68.18 h -8.902 c -1.09,-17.11 -1.149,-39.08 -1.121,-68.18 v -11.01 c 0,-107.4 -37.196,-364.92 -129.266,-364.92 -47.301,0 -193.109,147.8 -193.109,328.45 0,55.86 9.109,91.76 21.812,115.66 h -10.086 c -12.129,-25 -20.593,-61.24 -20.593,-115.66 0,-184.12 146.664,-337.33 201.976,-337.33" /><path
|
||||
id="path324"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 977.285,1053.18 c 0,-38.25 20.164,-59.289 56.785,-59.289 40.22,0 71.82,34.109 87.06,54.449 l -7.09,5.31 c -14.26,-19.02 -43.61,-50.94 -79.97,-50.94 -31.58,0 -47.679,16.77 -47.91,49.78 0.371,1.07 1.324,3.51 2.711,7.14 66.839,175.63 108.059,319.15 116.069,404.25 l -3.94,0.34 h -4.93 c -8.07,-84.35 -49.04,-226.83 -115.468,-401.41 -3.317,-8.69 -3.317,-8.69 -3.317,-9.63" /><path
|
||||
id="path326"
|
||||
style="fill:#7a4326;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 743.992,1255.36 c 35.035,0 85.942,67.76 85.942,173.95 0,11.63 -0.895,23.28 -1.641,34.91 h -8.879 c 0.754,-11.63 1.641,-23.34 1.641,-34.91 0,-106.83 -50.903,-165.13 -77.063,-165.13 -35,0 -49.262,22.76 -49.262,78.53 0,39.58 10.778,81.02 30.68,121.51 h -10.051 c -19.273,-40.49 -29.504,-81.87 -29.504,-121.51 0,-43.21 6.915,-87.35 58.137,-87.35" /><path
|
||||
id="path328"
|
||||
style="fill:#a76137;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1591.87,1471.6 H 1090.71 L 1171.02,85.0898 h 374.93 L 1591.87,1471.6" /><path
|
||||
id="path330"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1518.43,1368.4 -383.53,9.8 36.93,-319.6 353.98,19.7 -7.38,290.1" /><path
|
||||
id="path332"
|
||||
style="fill:#cc814f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1534.42,1374.52 -363.85,9.85 34.45,-299.95 329.4,19.67 v 270.43" /><path
|
||||
id="path334"
|
||||
style="fill:#df8b53;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1399.54,1121.52 c 46.58,-12.45 92.71,-14.75 134.88,-8.65 v 261.65 l -344.01,9.3 c -24.97,-107.77 67.27,-224.38 209.13,-262.3" /><path
|
||||
id="path336"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1516.45,1015.27 -353.69,9.05 34.05,-294.718 326.43,18.148 -6.79,267.52" /><path
|
||||
id="path338"
|
||||
style="fill:#cc814f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1531.16,1020.91 -335.53,9.06 31.78,-276.579 303.75,18.129 v 249.39" /><path
|
||||
id="path340"
|
||||
style="fill:#df8b53;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1229.48,1029.04 c -3.14,-13.14 -4.81,-26.77 -4.81,-40.739 0,-109.469 100.71,-198.199 224.94,-198.199 28.81,0 56.23,4.949 81.55,13.628 v 217.18 l -301.68,8.13" /><path
|
||||
id="path342"
|
||||
style="fill:#894825;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1208.71,677.629 1.21,-575.258 306.07,3.688 -11.07,590.011 -296.21,-18.441" /><path
|
||||
id="path344"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1560.23,117.121 H 557.227 V 69.1914 H 1560.23 v 47.9296" /><path
|
||||
id="path346"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1504.92,696.07 -291.29,-239.699 -4.92,221.258 z" /><path
|
||||
id="path348"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1442.26,930.832 c 0,28.488 -23.1,51.629 -51.63,51.629 -28.52,0 -51.62,-23.141 -51.62,-51.629 0,-28.492 23.1,-51.633 51.62,-51.633 28.53,0 51.63,23.141 51.63,51.633" /><path
|
||||
id="path350"
|
||||
style="fill:#fabc92;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1457.01,952.949 c 0,28.5 -23.1,51.631 -51.62,51.631 -28.53,0 -51.63,-23.131 -51.63,-51.631 0,-28.48 23.1,-51.617 51.63,-51.617 28.52,0 51.62,23.137 51.62,51.617" /><path
|
||||
id="path352"
|
||||
style="fill:#623722;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1429.36,1297.74 c 0,28.49 -23.11,51.62 -51.63,51.62 -28.52,0 -51.63,-23.13 -51.63,-51.62 0,-28.5 23.11,-51.62 51.63,-51.62 28.52,0 51.63,23.12 51.63,51.62" /><path
|
||||
id="path354"
|
||||
style="fill:#fabc92;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 1444.11,1319.87 c 0,28.48 -23.1,51.62 -51.63,51.62 -28.52,0 -51.62,-23.14 -51.62,-51.62 0,-28.5 23.1,-51.63 51.62,-51.63 28.53,0 51.63,23.13 51.63,51.63" /><path
|
||||
id="path356"
|
||||
style="fill:#df8b53;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 1599.56,1486.41 H 429.375 v -41.78 H 1599.56 v 41.78" /><path
|
||||
id="path358"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6513.29,2875.5 -649.78,0.02 -18.01,-63.93 h 649.81 l 17.98,63.91" /><path
|
||||
id="path360"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6567.51,3076.92 h -649.76 l -18.03,-63.95 h 649.81 l 17.98,63.95" /><path
|
||||
id="path362"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6683.72,3522.34 h -649.8 l -50.51,-234.64 h 649.79 l 50.52,234.64" /><path
|
||||
id="path364"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6013.97,3522.34 -522.92,-1801.13 162.7,-81.32 418.3,1882.45 h -58.08" /><path
|
||||
id="path366"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6670.52,3522.34 -522.91,-1801.13 162.69,-81.32 418.34,1882.45 h -58.12" /><path
|
||||
id="path368"
|
||||
style="fill:#7e3b2c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6046.88,1736.19 V 72.5898 h -58.8 L 5905.86,1736.19 h 141.02" /><path
|
||||
id="path370"
|
||||
style="fill:#7e3b2c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 5130.58,1736.19 V 72.5898 h 58.75 l 82.2,1663.6002 h -140.95" /><path
|
||||
id="path372"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6320.85,1808.38 H 4833.06 v -270.44 h 1487.79 v 270.44" /><path
|
||||
id="path374"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6320.85,1763.25 6414.92,72.5898 h -58.77 L 6180,1763.25 h 140.85" /><path
|
||||
id="path376"
|
||||
style="fill:#ad543b;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 4817.29,1763.25 4723.45,72.5898 h 58.68 L 4958.34,1763.25 h -141.05" /><path
|
||||
id="path378"
|
||||
style="fill:#a4817c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4929.4,3619.58 c 300.05,20.61 708.84,366.66 742.51,600.83 33.73,234.28 -95.81,102.36 -95.81,102.36 0,0 168.77,577.12 -271.06,624.98 0,0 -133.04,557.68 -525.9,222.11 -269.2,259.26 -991.87,-239.07 -619.58,-714.98 147.65,-188.66 125.59,-244.65 125.59,-244.65 0,0 -415.28,-663.52 644.25,-590.65" /><path
|
||||
id="path380"
|
||||
style="fill:#8c615f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5576.1,4322.77 c 0,0 168.77,577.12 -271.06,624.98 0,0 -45.26,188.78 -160.44,280.59 -45.63,-202.01 -247.97,-449.07 -544.65,-636.42 -135.57,-85.64 -274.01,-147.86 -403.62,-186.19 106.42,-149.12 88.82,-195.5 88.82,-195.5 0,0 -415.28,-663.52 644.25,-590.65 300.05,20.61 708.84,366.66 742.51,600.83 33.73,234.28 -95.81,102.36 -95.81,102.36" /><path
|
||||
id="path382"
|
||||
style="fill:#664040;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5445.14,3875.32 c -10.42,35.89 -4.02,85.33 -35.3,108.39 -291.37,214.59 -467.6,743.82 -702.61,699.1 -36.55,-27.75 -66.92,-95.04 -108.33,-119.2 -13.64,-8.08 -27.42,-14.69 -41.2,-22.06 -126.8,-163.19 -138.6,-493.49 -11.36,-837.1 8.46,-22.69 17.58,-44.82 26.78,-66.75 86.54,-30.71 197.02,-52.81 337.22,-62.14 185.32,-12.21 413.34,133.52 534.8,299.76" /><path
|
||||
id="path384"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5085.36,92.1016 -53.3,901.6794 -186.17,-8.492 0.25,15.481 -274.08,-16.36 c 0,0 191.28,-807.699 198.58,-901.6405 l 59.09,9.3321 14.82,820.7774 c 46.84,-199.457 175.77,-753.309 181.7,-830.1095 l 59.11,9.3321" /><path
|
||||
id="path386"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4834.72,369.93 9.83,542.949 c 27.49,-117.07 83.27,-356.309 125.9,-549.5 11.98,-0.91 23.96,-1.566 36.11,-2.707 21.41,-1.922 42.4,-4.293 63.35,-6.781 l -37.85,639.89 -186.17,-8.492 0.25,15.481 -274.08,-16.36 c 0,0 82.72,-349.39 141.41,-615.351 38.95,1.531 79.62,1.691 121.25,0.871" /><path
|
||||
id="path388"
|
||||
style="fill:#fce897;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4561.45,2621.8 c -11.15,111.04 121.99,1156.21 360.18,1243.38 238.28,87.1 -121.93,-1231.72 -145.19,-1284.06 -23.28,-52.27 -203.38,-75.49 -214.99,40.68" /><path
|
||||
id="path390"
|
||||
style="fill:#edb46c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4921.63,3865.18 c -12.21,-4.53 -24.34,-12.11 -36.47,-21.39 20.09,-307.55 -206.64,-1132.49 -224.94,-1173.59 -13.41,-30.24 -110.36,-52.43 -192,-43.56 -0.06,-4 0,-7.81 0.26,-10.66 11.67,-116.18 284.68,-87.13 307.96,-34.86 23.26,52.34 383.47,1371.16 145.19,1284.06" /><path
|
||||
id="path392"
|
||||
style="fill:#8f3d2f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4288.4,570.82 c 139.44,-58.07 650.75,-143.351 906.36,19.321 l -58.12,1049.749 c 0,0 900.61,0 1005.19,371.85 104.56,371.87 -84.27,389.12 -379.63,484.15 -295.3,95.06 -1456.42,-42.57 -1526.12,-251.77 -156.2,-468.78 -34.86,-1080.66 52.32,-1673.3" /><path
|
||||
id="path394"
|
||||
style="fill:#732b23;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5099.84,2534.66 c 0,-45.92 465.27,-274.25 445.45,-344.71 -104.58,-371.93 -658.48,-323.5 -658.48,-323.5 l 63.91,-1357.977 c 91.36,13.519 176.68,38.859 244.04,81.668 l -58.12,1049.749 c 0,0 912.16,-3.89 1016.78,367.98 84.23,299.43 -654.6,592.57 -1053.58,526.79" /><path
|
||||
id="path396"
|
||||
style="fill:#fce897;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6153.42,2058.28 c 238.21,127.76 -269.54,1640.11 -763.77,1817.35 -494.23,177.21 -615.7,-167.66 -631.8,-230.35 -43.88,-170.13 120.34,-949.83 431.06,-786.76 45.29,-95.72 -59.39,-244.53 -43.23,-379.2 0,0 297.31,-25.1 478.71,-177.25 181.78,-152.45 390.52,-318.21 529.03,-243.79" /><path
|
||||
id="path398"
|
||||
style="fill:#f6c481;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5389.65,3875.63 c -12.51,4.5 0.19,-275.76 -11.9,-271.95 -181.38,-144.73 -75.23,-538.56 -104.58,-639.06 -27.27,-93.69 -55.73,-83.33 -207.57,-122.49 38.08,-10.43 79.13,-6.8 123.31,16.39 10.55,-22.34 12.8,-47.7 10.43,-75 172.52,37.17 601.65,22.25 636.45,-140.41 4.62,-21.5 -222.83,37.88 -182.04,-3.87 45.91,-46.87 197.42,-114.16 197.56,-139.42 0.17,-40.78 -172.13,-3.27 -236.3,3.84 -111.79,12.36 -367.71,52.18 -464.85,67.52 -5.43,-30.91 -8.13,-61.7 -4.48,-91.86 0,0 297.31,-25.1 478.7,-177.25 181.79,-152.45 390.53,-318.21 529.04,-243.79 238.21,127.76 -269.54,1640.11 -763.77,1817.35" /><path
|
||||
id="path400"
|
||||
style="fill:#fce897;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5374.83,2613.08 c -46.6,101.41 -177.19,1135.87 -41.74,1265.09 183.65,175.05 284.86,-1204.57 279.9,-1261.62 -5.06,-56.96 -189.45,-109.58 -238.16,-3.47" /><path
|
||||
id="path402"
|
||||
style="fill:#edb46c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5338.07,3881.06 c 126.92,-255.29 183.97,-1161.84 179.95,-1208.18 -3.44,-39.22 -122.71,-106.67 -212.5,-110 1.74,-5.41 3.37,-10.01 4.95,-13.39 48.72,-106.12 314.1,8.22 319.15,65.21 4.87,56.61 -80.48,1412.92 -291.55,1266.36" /><path
|
||||
id="path404"
|
||||
style="fill:#6a4a38;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5340,2624.69 -11.61,-78.44 c 313.74,-156.88 357.34,139.49 357.34,139.49 -200.45,151.03 -331.22,0 -345.73,-61.05" /><path
|
||||
id="path406"
|
||||
style="fill:#6a4a38;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4792.74,2557.81 41.2,68.54 c -263.29,260.44 -418.49,1.44 -418.49,1.44 149.18,-213.54 339.59,-121.26 377.29,-69.98" /><path
|
||||
id="path408"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5476.79,2694.08 c 73.46,10.08 99.03,-66.33 82.98,-120.51 -23.25,-78.12 -832.85,-181.16 -948.04,-68.98 95.54,42.36 577.93,150.06 865.06,189.49" /><path
|
||||
id="path410"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5526.35,2611.93 c -8.36,-38.86 -398.51,-119.69 -458.84,-69.46 44.94,24.23 275.58,94.94 413.87,125.01 35.39,7.58 50.74,-28.52 44.97,-55.55 z m -49.56,82.15 c -287.13,-39.43 -769.52,-147.13 -865.06,-189.49 115.19,-112.18 924.79,-9.14 948.04,68.98 16.05,54.18 -9.52,130.59 -82.98,120.51" /><path
|
||||
id="path412"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4544.91,2675 c -66.24,-8.98 -64.52,-88.41 -33.78,-136.07 44.05,-68.72 712.61,15.66 840.48,158.42 -145.28,7.52 -548.14,12.67 -806.7,-22.35" /><path
|
||||
id="path414"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4545.97,2594.11 c -14.02,21.78 -21.55,50.02 -19.75,75.34 -46.51,-20.47 -42.51,-87.95 -15.09,-130.52 44.05,-68.72 703,1.52 840.48,158.42 -12.11,0.62 -26.56,1.18 -41.98,1.74 -217.44,-108.85 -725.44,-164.53 -763.66,-104.98" /><path
|
||||
id="path416"
|
||||
style="fill:#e5966d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4776.29,174.18 c 56.75,-14.571 75.66,-104.9886 75.66,-104.9886 h -321.52 c 0,0 189.03,119.5276 245.86,104.9886" /><path
|
||||
id="path418"
|
||||
style="fill:#e5966d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5049.5,174.18 c 65.85,-10.071 112.33,-104.9886 112.33,-104.9886 h -201.5 c 0,0 57.31,109.8986 89.17,104.9886" /><path
|
||||
id="path420"
|
||||
style="fill:#edb46c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5072.72,3153.38 c 0,0 -277.17,501.19 -217.81,659.49 17.38,46.5 171.34,127.84 296.3,110.4 124.87,-17.45 -78.49,-769.89 -78.49,-769.89" /><path
|
||||
id="path422"
|
||||
style="fill:#6a4a38;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5068.2,3206.44 c 0,0 -253.78,458.74 -199.46,603.66 16.03,42.53 156.95,116.99 271.3,101.06 114.29,-16.05 -71.84,-704.72 -71.84,-704.72" /><path
|
||||
id="path424"
|
||||
style="fill:#a98d77;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5072.69,3379.47 c -1.16,15.47 -10.36,27.34 -20.47,26.62 -10.02,-0.78 -17.43,-13.89 -16.23,-29.4 1.18,-15.45 10.32,-27.37 20.42,-26.63 10.13,0.75 17.5,13.95 16.28,29.41" /><path
|
||||
id="path426"
|
||||
style="fill:#a98d77;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5056.21,3494.69 c -1.15,15.48 -10.32,27.39 -20.48,26.68 -10.04,-0.84 -17.44,-13.91 -16.2,-29.49 1.16,-15.41 10.31,-27.34 20.39,-26.58 10.12,0.8 17.48,13.9 16.29,29.39" /><path
|
||||
id="path428"
|
||||
style="fill:#a98d77;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5040.74,3620.58 c -1.16,15.46 -10.34,27.38 -20.49,26.66 -10.03,-0.82 -17.41,-13.95 -16.19,-29.46 1.13,-15.42 10.27,-27.38 20.38,-26.59 10.14,0.75 17.48,13.92 16.3,29.39" /><path
|
||||
id="path430"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4968.2,3758.63 85.24,23.22 83.29,143.35 -65.92,160.76 -151.02,-23.29 5.78,-183.95 42.63,-120.09" /><path
|
||||
id="path432"
|
||||
style="fill:#7d6657;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5004.96,3768.3 c -11.61,-11.61 -56.14,-147.14 -81.33,-114.25 -25.22,32.92 -42.6,209.2 -42.6,209.2 l 38.71,40.62 85.22,-135.57" /><path
|
||||
id="path434"
|
||||
style="fill:#7d6657;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4995.32,3768.3 c 14.9,-11.61 83.89,-121.96 116.13,-89.08 32.34,32.9 67.86,245.98 67.86,245.98 l -49.63,40.69 -134.36,-197.59" /><path
|
||||
id="path436"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4851.95,843.871 c 0,28.91 -8.62,52.32 -19.33,52.32 -10.7,0 -19.38,-23.41 -19.38,-52.32 0,-28.84 8.68,-52.25 19.38,-52.25 10.71,0 19.33,23.41 19.33,52.25" /><path
|
||||
id="path438"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4801.57,613.43 c 0,28.84 -8.7,52.242 -19.31,52.242 -10.74,0 -19.42,-23.402 -19.42,-52.242 0,-28.899 8.68,-52.309 19.42,-52.309 10.61,0 19.31,23.41 19.31,52.309" /><path
|
||||
id="path440"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5014.58,1500.46 c 0,28.84 -8.68,52.29 -19.32,52.29 -10.73,0 -19.35,-23.45 -19.35,-52.29 0,-28.89 8.62,-52.27 19.35,-52.27 10.64,0 19.32,23.38 19.32,52.27" /><path
|
||||
id="path442"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5262.16,1709.91 c 28.37,5.15 49.88,17.86 48.01,28.34 -1.94,10.54 -26.54,14.88 -54.96,9.77 -28.37,-5.12 -49.85,-17.92 -48,-28.44 1.96,-10.47 26.53,-14.85 54.95,-9.67" /><path
|
||||
id="path444"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5497.45,1873.39 c 27.25,9.43 46.52,25.34 43.07,35.42 -3.47,10.04 -28.52,10.58 -55.79,1.1 -27.22,-9.44 -46.52,-25.35 -43.05,-35.43 3.53,-10.05 28.53,-10.58 55.77,-1.09" /><path
|
||||
id="path446"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5262.73,1908.83 c 26.36,11.78 44.18,29.25 39.82,39 -4.38,9.79 -29.32,8.11 -55.65,-3.7 -26.3,-11.72 -44.17,-29.27 -39.76,-39.03 4.32,-9.73 29.22,-8.05 55.59,3.73" /><path
|
||||
id="path448"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5762.49,1831.35 c 26.27,11.79 44.1,29.34 39.76,39.05 -4.34,9.78 -29.34,8.08 -55.66,-3.73 -26.31,-11.75 -44.19,-29.19 -39.81,-39.07 4.36,-9.68 29.29,-8.05 55.71,3.75" /><path
|
||||
id="path450"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6008.56,1951.38 c 20.58,20.19 31.1,42.81 23.58,50.4 -7.5,7.71 -30.31,-2.52 -50.78,-22.78 -20.52,-20.2 -31.02,-42.79 -23.58,-50.43 7.5,-7.62 30.3,2.53 50.78,22.81" /><path
|
||||
id="path452"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5792.57,2039.8 c 24.02,15.79 38.85,35.89 32.99,44.81 -5.9,9.06 -30.25,3.37 -54.27,-12.39 -24.04,-15.79 -38.83,-35.98 -32.96,-44.87 5.83,-8.97 30.11,-3.32 54.24,12.45" /><path
|
||||
id="path454"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4952.97,1965.48 c 22.74,17.77 35.86,38.96 29.34,47.36 -6.6,8.45 -30.41,0.89 -53.13,-16.87 -22.74,-17.71 -35.94,-38.97 -29.33,-47.43 6.53,-8.4 30.31,-0.81 53.12,16.94" /><path
|
||||
id="path456"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5146.56,2424.02 c 26.3,11.82 44.1,29.3 39.8,39.07 -4.41,9.74 -29.34,8.08 -55.71,-3.78 -26.27,-11.79 -44.11,-29.25 -39.74,-39 4.37,-9.78 29.22,-8.13 55.65,3.71" /><path
|
||||
id="path458"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4638.26,2185.1 c 18.59,22.11 27.08,45.51 18.98,52.44 -8.19,6.9 -29.94,-5.41 -48.55,-27.44 -18.65,-21.99 -27.12,-45.5 -18.97,-52.36 8.09,-6.94 29.8,5.37 48.54,27.36" /><path
|
||||
id="path460"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4898.25,2252.03 c 23.01,17.44 36.52,38.47 30.03,47.03 -6.43,8.44 -30.37,1.22 -53.36,-16.32 -23.04,-17.46 -36.61,-38.5 -30.09,-47.01 6.39,-8.46 30.34,-1.18 53.42,16.3" /><path
|
||||
id="path462"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4620.56,2354.73 c 25.75,13.08 42.72,31.4 37.88,40.85 -4.86,9.62 -29.7,6.68 -55.52,-6.42 -25.74,-13.05 -42.81,-31.37 -37.91,-40.91 4.8,-9.52 29.65,-6.69 55.55,6.48" /><path
|
||||
id="path464"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5146.56,2071.54 c 26.3,11.76 44.16,29.27 39.8,38.95 -4.34,9.86 -29.31,8.15 -55.62,-3.69 -26.36,-11.74 -44.2,-29.28 -39.83,-38.97 4.37,-9.78 29.31,-8.12 55.65,3.71" /><path
|
||||
id="path466"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5309,2271.21 c 26.31,11.83 44.16,29.28 39.84,39.05 -4.35,9.79 -29.34,8.07 -55.69,-3.71 -26.3,-11.78 -44.19,-29.28 -39.79,-39.07 4.36,-9.72 29.28,-8.03 55.64,3.73" /><path
|
||||
id="path468"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4693.15,923.27 c 0,28.871 -8.68,52.25 -19.35,52.25 -10.73,0 -19.38,-23.379 -19.38,-52.25 0,-28.899 8.65,-52.309 19.38,-52.309 10.67,0 19.35,23.41 19.35,52.309" /><path
|
||||
id="path470"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4902.28,1124.7 c 0,28.9 -8.61,52.28 -19.31,52.28 -10.68,0 -19.35,-23.38 -19.35,-52.28 0,-28.87 8.67,-52.31 19.35,-52.31 10.7,0 19.31,23.44 19.31,52.31" /><path
|
||||
id="path472"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4774.51,1585.67 c 0,28.84 -8.68,52.24 -19.35,52.24 -10.68,0 -19.34,-23.4 -19.34,-52.24 0,-28.87 8.66,-52.32 19.34,-52.32 10.67,0 19.35,23.45 19.35,52.32" /><path
|
||||
id="path474"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4975.95,1748.36 c 17.18,23.15 24.11,47.23 15.62,53.5 -8.61,6.45 -29.55,-7.19 -46.78,-30.37 -17.16,-23.22 -24.16,-47.2 -15.57,-53.53 8.55,-6.34 29.45,7.28 46.73,30.4" /><path
|
||||
id="path476"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5095.94,779.961 c 0,28.898 -8.67,52.34 -19.36,52.34 -10.66,0 -19.33,-23.442 -19.33,-52.34 0,-28.84 8.67,-52.25 19.33,-52.25 10.69,0 19.36,23.41 19.36,52.25" /><path
|
||||
id="path478"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4518.84,1012.41 c 0,28.84 -8.64,52.31 -19.28,52.31 -10.77,0 -19.41,-23.47 -19.41,-52.31 0,-28.898 8.64,-52.308 19.41,-52.308 10.64,0 19.28,23.41 19.28,52.308" /><path
|
||||
id="path480"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4704.76,1264.18 c 0,28.83 -8.68,52.24 -19.35,52.24 -10.7,0 -19.35,-23.41 -19.35,-52.24 0,-28.93 8.65,-52.31 19.35,-52.31 10.67,0 19.35,23.38 19.35,52.31" /><path
|
||||
id="path482"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4569.16,1736.62 c 0,28.94 -8.68,52.35 -19.36,52.35 -10.67,0 -19.37,-23.41 -19.37,-52.35 0,-28.83 8.7,-52.21 19.37,-52.21 10.68,0 19.36,23.38 19.36,52.21" /><path
|
||||
id="path484"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4796.77,1990.02 c 9.24,27.31 8.36,52.33 -1.72,55.77 -10.12,3.37 -25.81,-16.07 -35.02,-43.41 -9.17,-27.38 -8.36,-52.35 1.75,-55.73 10.07,-3.45 25.78,16 34.99,43.37" /><path
|
||||
id="path486"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4579.77,1990.02 c 9.24,27.31 8.42,52.33 -1.66,55.77 -10.17,3.37 -25.81,-16.07 -35.04,-43.41 -9.21,-27.38 -8.37,-52.35 1.74,-55.73 10.08,-3.45 25.79,16 34.96,43.37" /><path
|
||||
id="path488"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4278.65,1287.4 c 0,28.86 -8.6,52.27 -19.27,52.27 -10.71,0 -19.39,-23.41 -19.39,-52.27 0,-28.88 8.68,-52.31 19.39,-52.31 10.67,0 19.27,23.43 19.27,52.31" /><path
|
||||
id="path490"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4343.67,1986.67 c 8.43,27.6 7.05,52.46 -3.16,55.68 -10.2,3.09 -25.43,-16.69 -33.83,-44.26 -8.46,-27.68 -7.05,-52.64 3.15,-55.73 10.21,-3.16 25.33,16.7 33.84,44.31" /><path
|
||||
id="path492"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4345.51,2198.63 c 15.33,24.24 20.66,48.52 11.85,54.42 -8.8,5.8 -28.45,-9.08 -43.82,-33.27 -15.26,-24.25 -20.59,-48.62 -11.78,-54.52 8.8,-5.78 28.39,9.11 43.75,33.37" /><path
|
||||
id="path494"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4569.16,725.719 c 0,28.832 -8.68,52.242 -19.36,52.242 -10.67,0 -19.37,-23.41 -19.37,-52.242 0,-28.899 8.7,-52.309 19.37,-52.309 10.68,0 19.36,23.41 19.36,52.309" /><path
|
||||
id="path496"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4379.34,721.91 c 0,28.84 -8.65,52.25 -19.36,52.25 -10.63,0 -19.32,-23.41 -19.32,-52.25 0,-28.898 8.69,-52.308 19.32,-52.308 10.71,0 19.36,23.41 19.36,52.308" /><path
|
||||
id="path498"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4359.98,1027.83 c 0,28.86 -8.6,52.3 -19.32,52.3 -10.66,0 -19.33,-23.44 -19.33,-52.3 0,-28.81 8.67,-52.31 19.33,-52.31 10.72,0 19.32,23.5 19.32,52.31" /><path
|
||||
id="path500"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4503.37,1380.34 c 0,28.89 -8.68,52.3 -19.36,52.3 -10.71,0 -19.37,-23.41 -19.37,-52.3 0,-28.84 8.66,-52.31 19.37,-52.31 10.68,0 19.36,23.47 19.36,52.31" /><path
|
||||
id="path502"
|
||||
style="fill:#ac4a3f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4317.42,1659.22 c 0,28.88 -8.67,52.29 -19.32,52.29 -10.74,0 -19.45,-23.41 -19.45,-52.29 0,-28.86 8.71,-52.3 19.45,-52.3 10.65,0 19.32,23.44 19.32,52.3" /><path
|
||||
id="path504"
|
||||
style="fill:#582928;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4882.88,3845.93 c -1.24,10.76 -1.85,17.32 -1.85,17.32 v 0 c 0,0 0.64,-6.53 1.86,-17.31 l -0.01,-0.01 m 42.16,49.5 -5.3,8.44 5.3,-8.37 v -0.07 m 198.63,61.62 -52.86,128.91 52.87,-128.88 -0.01,-0.03" /><path
|
||||
id="path506"
|
||||
style="fill:#dc9059;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4929.56,3384.79 c -109.27,0.01 -154.47,142.76 -157.42,302.31 14.64,35.95 40.68,85.23 84.61,129.88 -0.72,-1.39 -1.34,-2.76 -1.84,-4.11 -32.18,-85.8 34.52,-272.35 102.37,-425.22 -9.67,-1.93 -18.91,-2.86 -27.72,-2.86 M 5165.64,3570 c 25.22,145.71 38.61,285.39 10.08,334.77 1.73,9.57 2.89,16.3 3.35,19.05 50.53,-3.99 106.75,-14.82 169.44,-34.45 -5.06,-2.53 -10.21,-6.24 -15.42,-11.2 -20.35,-19.42 -34.7,-59.29 -44.22,-113.35 -40.94,-64.88 -81.63,-133.87 -123.23,-194.82" /><path
|
||||
id="path508"
|
||||
style="fill:#dc9059;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5288.87,3764.82 c 9.52,54.06 23.87,93.93 44.22,113.35 5.21,4.96 10.36,8.67 15.42,11.2 0.14,-0.04 0.28,-0.08 0.42,-0.13 5.01,2.42 9.94,3.48 14.82,3.48 2.16,0 4.32,-0.21 6.46,-0.6 -0.23,0.01 -0.47,0.01 -0.7,0.01 -10.16,0 -20.63,-3.57 -31.44,-11.07 3.86,-7.78 7.67,-16.17 11.4,-25.11 -20.34,-28.41 -40.51,-59.28 -60.6,-91.13" /><path
|
||||
id="path510"
|
||||
style="fill:#ce6f43;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5349.47,3855.95 c -3.73,8.94 -7.54,17.33 -11.4,25.11 10.81,7.5 21.28,11.07 31.44,11.07 0.23,0 0.47,0 0.7,-0.01 1.05,-0.19 2.1,-0.42 3.15,-0.7 l 2.31,-0.5 c -8.77,-11.13 -17.5,-22.83 -26.2,-34.97" /><path
|
||||
id="path512"
|
||||
style="fill:#ce6f43;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4957.28,3387.65 c -67.85,152.87 -134.55,339.42 -102.37,425.22 0.5,1.35 1.12,2.72 1.84,4.11 0.2,0.2 0.4,0.4 0.59,0.6 4.65,8.67 13.49,18.3 25.56,28.19 -0.01,0.05 -0.01,0.11 -0.02,0.16 l 0.01,0.01 c 0.47,-4.17 1.03,-8.98 1.67,-14.29 -7.88,-7.64 -13.34,-14.98 -15.82,-21.55 -31.48,-83.99 40.53,-273.4 106.65,-417.82 -6.2,-1.92 -12.24,-3.46 -18.11,-4.63 m 187.31,152.36 c 25.32,133.84 43.06,271.33 25.53,334.99 2.24,11.49 4.12,21.65 5.6,29.77 28.53,-49.38 15.14,-189.06 -10.08,-334.77 -6.98,-10.24 -14.01,-20.27 -21.05,-29.99" /><path
|
||||
id="path514"
|
||||
style="fill:#5b2e25;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4975.39,3392.28 c -66.12,144.42 -138.13,333.83 -106.65,417.82 2.48,6.57 7.94,13.91 15.82,21.55 6.3,-52.29 20.58,-153.47 39.07,-177.6 2.72,-3.55 5.65,-5.13 8.75,-5.13 23.07,0 54.97,88.18 68.69,113.47 18.98,-22.03 65.15,-89.25 96.29,-89.26 5.18,0 9.94,1.86 14.09,6.09 22.26,22.65 46.02,130.65 58.67,195.78 17.53,-63.66 -0.21,-201.15 -25.53,-334.99 -47.21,-65.19 -95.79,-117.54 -147.36,-139.63 -7.5,-3.22 -14.77,-5.91 -21.84,-8.1 m 61.21,129.12 c -0.29,0 -0.58,-0.01 -0.87,-0.03 -10.04,-0.84 -17.44,-13.91 -16.2,-29.49 1.13,-14.94 9.77,-26.62 19.48,-26.62 0.3,0 0.61,0.01 0.91,0.04 10.12,0.8 17.48,13.9 16.29,29.39 -1.12,15.04 -9.81,26.71 -19.61,26.71 m -15.47,125.87 c -0.29,0 -0.58,-0.01 -0.88,-0.03 -10.03,-0.82 -17.41,-13.95 -16.19,-29.46 1.09,-14.94 9.71,-26.63 19.44,-26.63 0.32,0 0.63,0.01 0.94,0.04 10.14,0.75 17.48,13.92 16.3,29.39 -1.13,15.01 -9.82,26.69 -19.61,26.69" /><path
|
||||
id="path516"
|
||||
style="fill:#915647;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5039.01,3465.26 c -9.71,0 -18.35,11.68 -19.48,26.62 -1.24,15.58 6.16,28.65 16.2,29.49 0.29,0.02 0.58,0.03 0.87,0.03 9.8,0 18.49,-11.67 19.61,-26.71 1.19,-15.49 -6.17,-28.59 -16.29,-29.39 -0.3,-0.03 -0.61,-0.04 -0.91,-0.04" /><path
|
||||
id="path518"
|
||||
style="fill:#915647;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5023.5,3591.15 c -9.73,0 -18.35,11.69 -19.44,26.63 -1.22,15.51 6.16,28.64 16.19,29.46 0.3,0.02 0.59,0.03 0.88,0.03 9.79,0 18.48,-11.68 19.61,-26.69 1.18,-15.47 -6.16,-28.64 -16.3,-29.39 -0.31,-0.03 -0.62,-0.04 -0.94,-0.04" /><path
|
||||
id="path520"
|
||||
style="fill:#d04b3d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5000.33,3775.67 -75.29,119.76 v 0.07 l 0.03,-0.05 -5.28,167.22 151.02,23.29 52.86,-128.91 -123.34,-181.38" /><path
|
||||
id="path522"
|
||||
style="fill:#6c3e36;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4932.38,3648.92 c -3.1,0 -6.03,1.58 -8.75,5.13 -18.49,24.13 -32.77,125.31 -39.07,177.6 -0.64,5.31 -1.2,10.12 -1.67,14.29 -1.22,10.78 -1.86,17.31 -1.86,17.31 l 38.71,40.62 5.3,-8.44 75.29,-119.76 -5.01,-7.37 c 1.44,-1.12 3.38,-3.16 5.75,-5.91 -13.72,-25.29 -45.62,-113.47 -68.69,-113.47" /><path
|
||||
id="path524"
|
||||
style="fill:#6c3e36;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5097.36,3673.13 c -31.14,0.01 -77.31,67.23 -96.29,89.26 -2.37,2.75 -4.31,4.79 -5.75,5.91 l 5.01,7.37 123.34,181.38 0.01,0.03 0.01,-0.02 5.99,8.83 49.63,-40.69 v 0 l -0.29,-1.38 c 0.02,0 0.04,0 0.05,0 -0.46,-2.75 -1.62,-9.48 -3.35,-19.05 -1.48,-8.12 -3.36,-18.28 -5.6,-29.77 -12.65,-65.13 -36.41,-173.13 -58.67,-195.78 -4.15,-4.23 -8.91,-6.09 -14.09,-6.09" /><path
|
||||
id="path526"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4419.84,4152.68 c 8.68,-88.85 280.27,-321.64 504.67,-247.99 153.73,50.59 229.07,335.31 184.85,479.69 -42.53,138.72 -214.38,329.82 -238.13,360.47 -152.21,195.68 -202.14,271.65 -333.62,227.83 -104.44,-34.86 -258.32,-92.48 -225.56,-485.02 4.8,-57.18 95.94,-213.76 107.79,-334.98" /><path
|
||||
id="path528"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4956,4640.71 c 44.65,-90.49 87.53,-185.14 105.99,-245.22 44.16,-144.31 -7.16,-430.32 -160.79,-480.68 -50.18,-16.54 -126.69,-15.96 -178.06,-6.88 65.95,-19.59 135.64,-24.77 201.37,-3.24 153.73,50.59 229.07,335.31 184.85,479.69 -25.12,81.83 -95.09,181.83 -153.36,256.33" /><path
|
||||
id="path530"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5069.76,4275.46 c 100.52,10.46 217.84,176.61 129.11,253.14 -88.88,76.5 -121.75,4.55 -156.79,-63.89 -35,-68.53 27.68,-189.25 27.68,-189.25" /><path
|
||||
id="path532"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5102.22,4349.89 c 56.32,5.9 122.18,98.91 72.3,141.76 -49.8,42.79 -68.28,2.58 -87.84,-35.74 -19.67,-38.36 15.54,-106.02 15.54,-106.02" /><path
|
||||
id="path534"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5089.35,4319.87 c 41.05,4.18 88.98,72 52.62,103.15 -36.23,31.21 -49.65,1.9 -63.97,-26 -14.31,-27.93 11.35,-77.15 11.35,-77.15" /><path
|
||||
id="path536"
|
||||
style="fill:#8c615f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5086.91,4394.74 c -38.78,32.9 -118.27,78.53 -146.48,173.65 -28.21,95.1 -114.17,238 -114.17,238 0,0 215.98,-194.28 249.8,-254.82 0,0 -24.59,-67.85 10.85,-156.83" /><path
|
||||
id="path538"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4699.86,4338.19 c 37.11,-78.99 109.98,-119.25 162.88,-89.91 52.71,29.27 65.51,116.94 28.25,195.84 -36.99,78.89 -109.9,119.15 -162.61,89.79 -52.75,-29.18 -65.5,-116.88 -28.52,-195.72 z m 9.68,225.64 c 63.19,32.83 152.95,-17.69 200.32,-113.16 47.51,-95.38 34.81,-199.34 -28.42,-232.26 -63.07,-32.94 -152.9,17.75 -200.38,113.16 -47.45,95.41 -34.69,199.4 28.48,232.26" /><path
|
||||
id="path540"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4433.23,4213.92 c 36.65,-78.97 108.12,-119.73 159.61,-90.63 51.31,28.89 63.36,116.37 26.66,195.4 -36.65,79.08 -108.17,119.59 -159.55,90.6 -51.34,-28.97 -63.39,-116.39 -26.72,-195.37 z m 8.1,225.36 c 61.78,32.52 149.62,-18.6 196.51,-114.13 46.95,-95.54 35.12,-199.34 -26.49,-231.86 -61.55,-32.46 -149.71,18.53 -196.5,114.04 -46.87,95.62 -35.04,199.36 26.48,231.95" /><path
|
||||
id="path542"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4679.04,4343.19 -53.11,-32.25 8.64,-16.25 54.58,30.46 -10.11,18.04" /><path
|
||||
id="path544"
|
||||
style="fill:#664040;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4657.29,4365.75 c 36.99,-78.87 110.01,-119.19 162.82,-89.73 52.61,29.12 65.39,116.78 28.31,195.78 -37.01,78.83 -109.92,119.03 -162.67,89.82 -52.8,-29.24 -65.47,-117.04 -28.46,-195.87 z m 9.64,225.74 c 63.11,32.86 152.9,-17.79 200.34,-113.14 47.52,-95.49 34.63,-199.43 -28.46,-232.35 -63.21,-32.9 -152.83,17.76 -200.37,113.16 -47.43,95.44 -34.74,199.36 28.49,232.33" /><path
|
||||
id="path546"
|
||||
style="fill:#8c615f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4752.04,4650.16 c -41.35,28.15 -123.9,56.3 -184.01,-24.69 l 14.8,-29.14 c 0,0 40.51,83.29 166.59,44.78 l 2.62,9.05" /><path
|
||||
id="path548"
|
||||
style="fill:#8c615f;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4317.79,4458.78 c 2.97,46.35 28.6,119.66 118.35,102.28 l 12.26,-30.09 c 0,0 -80.76,31.93 -122.8,-76.93 l -7.81,4.74" /><path
|
||||
id="path550"
|
||||
style="fill:#4f2d24;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4820.45,4118.64 -121.41,-58.28 c 0,0 53.25,-68.77 99.57,-39.67 46.38,29.09 21.84,97.95 21.84,97.95" /><path
|
||||
id="path552"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4780.94,3974.29 c -3.71,7.49 13.42,13.1 31.78,22.32 18.4,9.33 31.2,18.69 34.82,11.19 3.62,-7.54 -8.27,-21.21 -26.61,-30.43 -18.48,-9.26 -36.3,-10.63 -39.99,-3.08" /><path
|
||||
id="path554"
|
||||
style="fill:#fef4d3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4816.74,4111.24 5.3,-30.06 -82.07,-50.12 -31.71,25.96 108.48,54.22" /><path
|
||||
id="path556"
|
||||
style="fill:#4e2c2c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4726.88,4377.52 c -7.49,17.91 -2.86,37.01 10.12,42.34 13.05,5.56 29.49,-4.52 36.92,-22.47 7.46,-18.04 2.87,-36.95 -10.18,-42.38 -12.88,-5.55 -29.52,4.53 -36.86,22.51" /><path
|
||||
id="path558"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4729.7,4351.92 c 0,0 82.73,33.86 107.49,38.33 l -91.45,-60.86 -16.04,22.53" /><path
|
||||
id="path560"
|
||||
style="fill:#4e2c2c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4480.55,4263.07 c -7.37,17.88 -3.09,36.86 9.33,42.14 12.58,5.45 28.44,-4.84 35.8,-22.82 7.3,-17.92 3.06,-36.89 -9.4,-42.26 -12.55,-5.37 -28.46,4.93 -35.73,22.94" /><path
|
||||
id="path562"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4483.42,4237.51 c 0,0 79.24,33.08 103.12,37.17 l -87.56,-59.77 -15.56,22.6" /><path
|
||||
id="path564"
|
||||
style="fill:#664040;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4372.13,4247.4 c 37.11,-78.9 109.92,-119.18 162.72,-89.88 52.82,29.3 65.58,116.87 28.32,195.83 -36.95,78.93 -109.83,119.13 -162.51,89.89 -52.94,-29.21 -65.6,-116.98 -28.53,-195.84 z m 9.61,225.68 c 63.27,32.86 152.84,-17.79 200.4,-113.17 47.47,-95.47 34.71,-199.43 -28.47,-232.26 -63.23,-32.96 -152.85,17.76 -200.43,113.14 -47.36,95.4 -34.67,199.42 28.5,232.29" /><path
|
||||
id="path566"
|
||||
style="fill:#664040;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4636.5,4370.83 -53.07,-32.27 8.57,-16.35 54.68,30.5 -10.18,18.12" /><path
|
||||
id="path568"
|
||||
style="fill:#664040;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4867.14,4465.31 208.3,47.03 -8.59,-26.75 -189.69,-48.25 -10.02,27.97" /><path
|
||||
id="path570"
|
||||
style="fill:#f7936d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4605.29,4748.41 c 7.93,6.83 -189.47,-65.01 -217.61,-89.05 0,0 186.16,62.05 217.61,89.05" /><path
|
||||
id="path572"
|
||||
style="fill:#f07d61;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 4729.76,4201.96 c 0.72,-1.18 1.99,-1.91 2.58,-3.27 6.71,-16.87 -7.39,-38.33 -31.48,-47.97 -11.46,-4.52 -23.03,-5.34 -32.8,-3.34 8.61,-14.02 30.98,-18.82 53.24,-9.96 24,9.58 38.05,31.02 31.37,47.88 -3.62,8.86 -12.17,14.47 -22.91,16.66" /><path
|
||||
id="path574"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5161.57,2652.87 c 53.81,16.52 175.77,-31.49 184.06,16.76 7.32,43.42 -43.52,118.04 -190.98,24.94 l 6.92,-41.7" /><path
|
||||
id="path576"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5236.79,2726.97 c -17.76,-76.21 72.65,-88.7 102.61,-86.05 32.92,3.07 61.76,58.68 52.53,82.39 -9.01,23.78 -148.21,32.77 -155.14,3.66" /><path
|
||||
id="path578"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5331.32,2738.45 c 37.05,29.15 67.07,79.31 53.97,89.1 -14.9,11.18 -32.96,-36.07 -71.78,-54.55 -41.98,-20.34 -67.51,-35.32 -62.17,-51.25 5.29,-16 43.01,-12.7 79.98,16.7" /><path
|
||||
id="path580"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5409.38,2717.45 c 38.55,3.77 58.71,14.66 57.39,24.71 -1,10.36 -23.13,6.81 -61.42,3.06 -38.42,-3.75 -87.26,1.09 -86.2,-8.96 1.21,-10.3 51.82,-22.43 90.23,-18.81" /><path
|
||||
id="path582"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5404.53,2671.57 c 38.46,-4.21 75.19,9.8 76.13,19.91 0.83,10.2 -36.14,5.43 -74.67,9.62 -38.33,4.18 -63.81,4.65 -64.61,-5.59 -0.73,-10.11 24.71,-19.72 63.15,-23.94" /><path
|
||||
id="path584"
|
||||
style="fill:#fbc68c;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 5368.06,2636.55 c 38.77,-2.59 61.79,4.87 62.29,14.95 0.54,10.21 -25.59,7.08 -64.33,9.49 -38.75,2.6 -66.01,3.88 -66.57,-6.21 -0.55,-10.33 29.72,-15.82 68.61,-18.23" /><path
|
||||
id="path586"
|
||||
style="fill:#cf5540;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7589.06,300.109 7325.47,327.07 7294.5,97.9297 7558.02,70.9727 7589.06,300.109" /><path
|
||||
id="path588"
|
||||
style="fill:#ecb538;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6948.54,301.922 H 6680.87 V 69.1914 h 267.67 V 301.922" /><path
|
||||
id="path590"
|
||||
style="fill:#7ed4cf;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7073.27,536.57 H 6805.61 V 303.75 h 267.66 v 232.82" /><path
|
||||
id="path592"
|
||||
style="fill:#ecb538;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 7019.85,769.531 h -281.49 v -232.82 h 281.49 v 232.82" /><path
|
||||
id="path594"
|
||||
style="fill:#7ed4cf;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7296.74,301.922 H 7029.11 V 69.1914 h 267.63 V 301.922" /><path
|
||||
id="path596"
|
||||
style="fill:#a5b12a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7048.23,1001.08 H 6780.57 V 768.32 h 267.66 v 232.76" /><path
|
||||
id="path598"
|
||||
style="fill:#cf5540;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6804.56,536.52 H 6536.92 V 303.75 h 267.64 v 232.77" /><path
|
||||
id="path600"
|
||||
style="fill:#a5b12a;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6670.91,301.922 H 6366.47 V 69.1914 h 304.44 V 301.922" /><path
|
||||
id="path602"
|
||||
style="fill:#cf5540;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6346.66,301.922 H 6079.01 V 69.1914 h 267.65 V 301.922" /><path
|
||||
id="path604"
|
||||
style="fill:#ecb538;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6930.35,1233.28 h -267.64 v -232.75 h 267.64 v 232.75" /><path
|
||||
id="path606"
|
||||
style="fill:#7ed4cf;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6867.99,1466.32 h -267.65 v -232.76 h 267.65 v 232.76" /><path
|
||||
id="path608"
|
||||
style="fill:#7ed4cf;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6736.4,1001.1 H 6468.77 V 768.32 h 267.63 v 232.78" /><path
|
||||
id="path610"
|
||||
style="fill:#cf5540;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6696.61,769.5 H 6428.98 V 536.711 h 267.63 V 769.5" /><path
|
||||
id="path612"
|
||||
style="fill:#ecb538;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6483.88,536.48 H 6216.23 V 303.75 h 267.65 v 232.73" /><path
|
||||
id="path614"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6715.19,1293.01 v 115.95 l 22.32,7.59 h 22.12 v -123.54 h -44.44" /><path
|
||||
id="path616"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6849.82,1179.4 v -15.33 l -6.92,-15.74 h -48.12 v -13.92 h 38.19 c 10.36,0 17.66,-6.36 17.66,-15.35 v -47.83 c 0,-9 -7.3,-15.37 -17.66,-15.37 h -82.59 v 30.72 h 56.02 v 17.13 h -56.02 v 75.69 h 99.44" /><path
|
||||
id="path618"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6800.22,586.699 v 115.942 l 22.33,7.621 h 22.11 V 586.699 h -44.44" /><path
|
||||
id="path620"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6905.12,679.172 V 617.41 h 11.57 v 61.762 z m -26.59,-92.473 c -10.33,0 -17.66,6.352 -17.66,15.352 v 92.851 c 0,9 7.33,15.36 17.66,15.36 h 64.76 c 10.36,0 17.87,-6.36 17.87,-15.36 v -92.851 c 0,-9 -7.32,-15.352 -17.87,-15.352 h -64.76" /><path
|
||||
id="path622"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6515.87,152.621 h -11.54 v -17.129 h 11.54 z m 44.47,15.348 v -47.828 c 0,-9.012 -7.3,-15.36 -17.87,-15.36 h -64.78 c -10.31,0 -17.61,6.348 -17.61,15.36 v 92.828 c 0,9.011 7.3,15.371 17.61,15.371 h 80.83 v -15.371 l -6.91,-15.727 h -47.28 v -13.941 h 38.14 c 10.57,0 17.87,-6.352 17.87,-15.332" /><path
|
||||
id="path624"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6661.84,821.332 c 0,-9 -7.31,-15.34 -17.66,-15.34 h -82.62 v 30.707 h 56.03 v 17.102 h -32.07 v 19.25 l 23.55,18.89 v 6.52 h -40.37 l -7.14,15.711 v 15.367 h 99.47 v -29.488 l -17.26,-19.949 c 11.15,-0.692 18.07,-5.981 18.07,-16.043 v -42.727" /><path
|
||||
id="path626"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 7143.82,209.992 H 7102 v 31.078 h 87.3 v -31.769 l -34.31,-91.781 h -41.2 v 9.89 l 30.03,78.36 v 4.222" /><path
|
||||
id="path628"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6932.63,852 h 11.58 v 17.121 h -11.58 z m 0,47.809 h 11.58 v 13.961 h -11.58 z m -44.44,-63.149 v 31.238 c 0,8.981 8.55,14.793 18.27,14.793 v 3.539 c -9.72,0 -18.27,5.84 -18.27,14.829 v 28.41 c 0,9 7.5,15.363 17.85,15.363 h 64.74 c 10.37,0 17.67,-6.363 17.67,-15.363 v -28.41 c 0,-8.989 -8.34,-14.829 -18.07,-14.829 v -3.539 c 9.73,0 18.07,-5.812 18.07,-14.793 V 836.66 c 0,-9.031 -7.3,-15.379 -17.67,-15.379 h -64.74 c -10.54,0 -17.85,6.348 -17.85,15.379" /><path
|
||||
id="path630"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6374.38,384.441 v -6.699 h 55.81 V 347.02 h -100.27 v 40.941 c 0,10.031 2.04,15.687 11.98,21 l 44.04,24 v 6.531 h -48.92 l -7.1,15.707 v 15.364 h 82.63 c 10.33,0 17.64,-6.383 17.64,-15.364 v -28.238 c 0,-9.891 -1.64,-15.879 -11.99,-21 l -43.82,-21.52" /><path
|
||||
id="path632"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6684.58,478.211 v -15.359 l -19.07,-47.481 v -6.531 h 17.43 v 22.41 h 44.45 v -76.59 h -44.45 v 23.289 h -62.73 v 37.762 l 24.97,62.5 h 39.4" /><path
|
||||
id="path634"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 7460.36,259.031 -2.99,-15.14 -27.99,-43.993 -1.25,-6.457 17.18,-2.562 4.34,22.09 43.84,-6.52 -14.86,-75.488 -43.83,6.531 4.51,22.938 -61.81,9.179 7.33,37.27 36.74,57.902 38.79,-5.75" /><path
|
||||
id="path636"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6798.44,200.719 h 11.59 v 16.941 h -11.59 z m -44.25,-15.36 v 48.012 c 0,9.027 7.3,15.348 17.66,15.348 h 64.76 c 10.55,0 17.86,-6.321 17.86,-15.348 v -92.84 c 0,-8.98 -7.31,-15.351 -17.86,-15.351 h -77.33 v 30.711 h 50.75 v 13.918 h -38.18 c -10.36,0 -17.66,6.371 -17.66,15.55" /><path
|
||||
id="path638"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6899.91,359.75 v 115.969 l 22.32,7.601 h 22.13 V 359.75 h -44.45" /><path
|
||||
id="path640"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 6601.34,671.512 h -41.78 v 31.07 h 87.27 v -31.773 l -34.3,-91.77 h -41.23 v 9.902 l 30.04,78.36 v 4.211" /><path
|
||||
id="path642"
|
||||
style="fill:#fef5da;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="M 6283.89,246.172 V 230.82 l -6.92,-15.718 h -48.08 v -13.961 h 38.15 c 10.34,0 17.65,-6.34 17.65,-15.34 V 137.98 c 0,-9.011 -7.31,-15.359 -17.65,-15.359 h -82.61 v 30.719 h 56.03 v 17.109 h -56.03 v 75.723 h 99.46" /></g></g></svg>
|
After Width: | Height: | Size: 90 KiB |
BIN
public/images/landing-hero01.jpg
Normal file
After Width: | Height: | Size: 82 KiB |
BIN
public/images/landing-hero02.jpg
Normal file
After Width: | Height: | Size: 65 KiB |
BIN
public/images/landing-hero03.jpg
Normal file
After Width: | Height: | Size: 77 KiB |
BIN
public/images/landing-hero04.jpg
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
public/images/landing-hero05.jpg
Normal file
After Width: | Height: | Size: 81 KiB |
|
@ -1,41 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="841.89px" height="1190.55px" viewBox="0 0 841.89 1190.55" enable-background="new 0 0 841.89 1190.55"
|
||||
xml:space="preserve">
|
||||
<path fill="#EAEBBB" d="M161.212,356.175c-9.446,10.035-34.028-31.792-37.835-41.462c-8.334-21.164-14.772-47.843-11.584-70.554
|
||||
c5.966-42.501,30.333-92.34,70.678-113.148c28.79-14.848,67.833-12.53,96.234,6.158c-36.317-13.345-74.084,0.796-99.543,26.562
|
||||
c-31.68,32.062-44.661,62.372-48.777,106.377c-1.667,17.828,2.691,30.046,7.767,47.115c2.144,7.213,3.793,15.191,7.627,21.989
|
||||
c3.996,7.082,12.816,13.661,15.752,20.813"/>
|
||||
<ellipse fill="#EAEBBB" cx="509.811" cy="373.014" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="355.094" cy="364.17" rx="2.388" ry="2.321"/>
|
||||
<ellipse fill="#EAEBBB" cx="294.717" cy="315.703" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="267.3" cy="485.868" rx="2.388" ry="2.653"/>
|
||||
<circle fill="#EAEBBB" cx="469.186" cy="465.113" r="5.97"/>
|
||||
<ellipse fill="#EAEBBB" cx="531.51" cy="530.208" rx="2.687" ry="4.312"/>
|
||||
<ellipse fill="#EAEBBB" cx="324.906" cy="497.542" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="336.226" cy="627.731" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="423.962" cy="336.222" rx="2.687" ry="4.312"/>
|
||||
<ellipse fill="#EAEBBB" cx="360.754" cy="287.755" rx="4.776" ry="5.307"/>
|
||||
<path fill="#EAEBBB" d="M387.17,433.038c0.594,2.929-1.116,7.328-1.126,11.1c0.524-1.58,3.387-5.58,5.623-7.151
|
||||
c2.789,1.716,5.263,4.939,6.809,7.404c0.004-3.969-2.169-7.195-2.185-10.764c2.271-1.013,4.745-2.251,6.624-3.496
|
||||
c-7.171-1.659-6.822-1.705-6.695-8.946c-1.768,1.977-3.138,4.198-4.664,6.277c-2.598-2.056-4.218-4.975-7.671-5.887
|
||||
c0.123,2.835,1.305,5.828,2.057,8.371c-2.403,0.962-4.97,2.522-7.156,3.007c2.697-0.718,6.344,0.265,8.948,1.589"/>
|
||||
<path fill="#EAEBBB" d="M657.635,604.653c0.871,3.733-1.342,9.402-1.269,14.226c0.673-2.033,4.454-7.22,7.444-9.283
|
||||
c3.813,2.128,7.234,6.19,9.383,9.306c-0.085-5.076-3.1-9.15-3.202-13.716c3.05-1.35,6.368-2.993,8.883-4.633
|
||||
c-9.741-1.947-9.271-2.015-9.264-11.281c-2.348,2.571-4.15,5.446-6.169,8.142c-3.562-2.566-5.82-6.262-10.514-7.345
|
||||
c0.231,3.624,1.898,7.423,2.975,10.659c-3.23,1.289-6.667,3.347-9.615,4.021c3.633-0.983,8.591,0.186,12.146,1.816"/>
|
||||
<path fill="#EAEBBB" d="M218.131,284.289c0.52,2.38-0.977,5.954-0.985,9.019c0.459-1.284,2.963-4.534,4.92-5.811
|
||||
c2.44,1.395,4.605,4.013,5.958,6.016c0.003-3.225-1.898-5.846-1.912-8.746c1.987-0.823,4.152-1.829,5.796-2.84
|
||||
c-6.274-1.348-5.969-1.385-5.858-7.269c-1.546,1.606-2.745,3.411-4.081,5.1c-2.273-1.67-3.69-4.042-6.712-4.784
|
||||
c0.108,2.304,1.142,4.735,1.8,6.802c-2.103,0.782-4.349,2.049-6.262,2.443c2.36-0.583,5.551,0.215,7.83,1.291"/>
|
||||
<path fill="#EAEBBB" d="M471.587,697.332c0.594,2.93-1.116,7.328-1.126,11.1c0.524-1.58,3.387-5.58,5.623-7.151
|
||||
c2.789,1.716,5.263,4.938,6.809,7.403c0.004-3.969-2.169-7.194-2.185-10.764c2.271-1.012,4.745-2.251,6.624-3.496
|
||||
c-7.171-1.658-6.822-1.704-6.695-8.945c-1.768,1.977-3.138,4.198-4.664,6.277c-2.598-2.057-4.218-4.976-7.671-5.888
|
||||
c0.123,2.835,1.305,5.827,2.057,8.371c-2.403,0.962-4.97,2.522-7.156,3.007c2.697-0.717,6.344,0.266,8.948,1.59"/>
|
||||
<path fill="#EAEBBB" d="M561.422,410.271c0.334,1.464-0.628,3.664-0.634,5.55c0.295-0.79,1.905-2.79,3.163-3.576
|
||||
c1.569,0.858,2.961,2.469,3.83,3.702c0.002-1.984-1.22-3.597-1.229-5.382c1.276-0.506,2.669-1.125,3.726-1.748
|
||||
c-4.033-0.829-3.838-0.852-3.767-4.473c-0.994,0.988-1.765,2.099-2.623,3.138c-1.461-1.028-2.373-2.487-4.315-2.943
|
||||
c0.069,1.417,0.734,2.914,1.157,4.186c-1.352,0.481-2.796,1.261-4.025,1.503c1.518-0.359,3.568,0.133,5.033,0.794"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.8 KiB |
|
@ -1,17 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="224.528px" height="250.943px" viewBox="0 0 224.528 250.943" enable-background="new 0 0 224.528 250.943"
|
||||
xml:space="preserve">
|
||||
<path fill="#D8D8CA" d="M79.466,96.109c7.63-10.5,3.745-28.037,12.366-39.049c7.794-9.957,23.492-16.494,37.881-13.954
|
||||
c33.339,5.888,28.286,46.728,25.554,68.068c-1.627-0.03-4.241-0.617-5.938-1.678c1.075-17.703,2.243-58.972-27.547-58.287
|
||||
c-16.29,0.374-23.376,6.137-27.826,18.332c-2.77,7.59-2.299,32.882-12.013,34.596c-3.09-2.793-3.083-7.737-2.307-9.074"/>
|
||||
<path fill="#EFEB7D" d="M65.605,108.094c-3.008,22.271-7.865,42.015-3.103,64.369c6.385,29.966,33.202,24.52,57.619,23.418
|
||||
c21.376-0.963,47.262,6.782,52.681-20.735c3.611-18.342,4.286-48.806,0.716-66.008c-5.083-24.496-33.9-19.658-53.388-17.502
|
||||
c-18.221,2.015-57.679-6.961-55.989,22.897"/>
|
||||
<path fill="#D8D8CA" d="M107.205,168.697c6.687-8.175-10.408-39.729,12.285-41.5c8.455-0.661,16.761,8.79,14.62,14.948
|
||||
c-2.396,6.889-17.361,4.935-16.111,13.593c0.474,0.097,0.793-0.025,0.958-0.367c0.344,0.248,0.661,0.516,0.952,0.802
|
||||
c-2.989,3.801-0.792,7.606-3.951,11.299c0.229,0.697,1.495,1.178,1.649,1.764c-1.536,2.716-1.667,3.829-2.589,7.374
|
||||
c-5.662,0.097-7.47-3.65-6.603-7.852"/>
|
||||
</svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="511pt" version="1.1" viewBox="-38 0 511 511.99956" width="511pt">
|
||||
<g id="surface1">
|
||||
<path d="M 413.476562 341.910156 C 399.714844 379.207031 378.902344 411.636719 351.609375 438.289062 C 320.542969 468.625 279.863281 492.730469 230.699219 509.925781 C 229.085938 510.488281 227.402344 510.949219 225.710938 511.289062 C 223.476562 511.730469 221.203125 511.96875 218.949219 512 L 218.507812 512 C 216.105469 512 213.691406 511.757812 211.296875 511.289062 C 209.605469 510.949219 207.945312 510.488281 206.339844 509.9375 C 157.117188 492.769531 116.386719 468.675781 85.289062 438.339844 C 57.984375 411.6875 37.175781 379.277344 23.433594 341.980469 C -1.554688 274.167969 -0.132812 199.464844 1.011719 139.433594 L 1.03125 138.511719 C 1.261719 133.554688 1.410156 128.347656 1.492188 122.597656 C 1.910156 94.367188 24.355469 71.011719 52.589844 69.4375 C 111.457031 66.152344 156.996094 46.953125 195.90625 9.027344 L 196.246094 8.714844 C 202.707031 2.789062 210.847656 -0.117188 218.949219 0.00390625 C 226.761719 0.105469 234.542969 3.007812 240.773438 8.714844 L 241.105469 9.027344 C 280.023438 46.953125 325.5625 66.152344 384.429688 69.4375 C 412.664062 71.011719 435.109375 94.367188 435.527344 122.597656 C 435.609375 128.386719 435.757812 133.585938 435.988281 138.511719 L 436 138.902344 C 437.140625 199.046875 438.554688 273.898438 413.476562 341.910156 Z M 413.476562 341.910156 " style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,86.666667%,50.196078%);fill-opacity:1;" />
|
||||
<path d="M 413.476562 341.910156 C 399.714844 379.207031 378.902344 411.636719 351.609375 438.289062 C 320.542969 468.625 279.863281 492.730469 230.699219 509.925781 C 229.085938 510.488281 227.402344 510.949219 225.710938 511.289062 C 223.476562 511.730469 221.203125 511.96875 218.949219 512 L 218.949219 0.00390625 C 226.761719 0.105469 234.542969 3.007812 240.773438 8.714844 L 241.105469 9.027344 C 280.023438 46.953125 325.5625 66.152344 384.429688 69.4375 C 412.664062 71.011719 435.109375 94.367188 435.527344 122.597656 C 435.609375 128.386719 435.757812 133.585938 435.988281 138.511719 L 436 138.902344 C 437.140625 199.046875 438.554688 273.898438 413.476562 341.910156 Z M 413.476562 341.910156 " style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,66.666667%,38.823529%);fill-opacity:1;" />
|
||||
<path d="M 346.101562 256 C 346.101562 326.207031 289.097656 383.355469 218.949219 383.605469 L 218.5 383.605469 C 148.144531 383.605469 90.894531 326.359375 90.894531 256 C 90.894531 185.644531 148.144531 128.398438 218.5 128.398438 L 218.949219 128.398438 C 289.097656 128.648438 346.101562 185.796875 346.101562 256 Z M 346.101562 256 " style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" />
|
||||
<path d="M 346.101562 256 C 346.101562 326.207031 289.097656 383.355469 218.949219 383.605469 L 218.949219 128.398438 C 289.097656 128.648438 346.101562 185.796875 346.101562 256 Z M 346.101562 256 " style=" stroke:none;fill-rule:nonzero;fill:rgb(88.235294%,92.156863%,94.117647%);fill-opacity:1;" />
|
||||
<path d="M 276.417969 237.625 L 218.949219 295.101562 L 206.53125 307.519531 C 203.597656 310.453125 199.75 311.917969 195.90625 311.917969 C 192.058594 311.917969 188.214844 310.453125 185.277344 307.519531 L 158.578125 280.808594 C 152.710938 274.941406 152.710938 265.4375 158.578125 259.566406 C 164.4375 253.699219 173.953125 253.699219 179.820312 259.566406 L 195.90625 275.652344 L 255.175781 216.382812 C 261.042969 210.511719 270.558594 210.511719 276.417969 216.382812 C 282.285156 222.25 282.285156 231.765625 276.417969 237.625 Z M 276.417969 237.625 " style=" stroke:none;fill-rule:nonzero;fill:rgb(70.588235%,82.352941%,84.313725%);fill-opacity:1;" />
|
||||
<path d="M 276.417969 237.625 L 218.949219 295.101562 L 218.949219 252.605469 L 255.175781 216.382812 C 261.042969 210.511719 270.558594 210.511719 276.417969 216.382812 C 282.285156 222.25 282.285156 231.765625 276.417969 237.625 Z M 276.417969 237.625 " style=" stroke:none;fill-rule:nonzero;fill:rgb(43.529412%,64.705882%,66.666667%);fill-opacity:1;" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 4 KiB |
|
@ -1,18 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="289.474px" height="232.895px" viewBox="0 0 289.474 232.895" enable-background="new 0 0 289.474 232.895"
|
||||
xml:space="preserve">
|
||||
<path fill="#E4E4B1" d="M127.631,72.368c-14.536,18.928-18.959,43.044-2.308,61.842c13.873,15.661,29.564,29.735,52.016,27.334
|
||||
c39.117-4.184,69.279-47.317,50.548-81.537c-10.66-19.475-24.322-26.59-46.24-28.756c-18.806-1.858-45.491,2.462-52.924,20.892
|
||||
c-2.534,0.815-3.085,2.192-3.723,2.856"/>
|
||||
<path fill="#E2EEED" d="M118.42,183.537c4.168-0.477,2.26-7.334,20.587-5.434c10.482-1.096,18.979-2.721,32.146-2.483
|
||||
c5.564,0.101,12.167,0.992,17.946,1.245c5.325,0.232,15.889,0.088,20.554,0.47c12.728,1.043,12.19,2.806,29.515,3.425
|
||||
c11.906,0.425,26.215,0.904,37.148,1.662c-8.83-0.164-13.688,0.879-21.518,1.151c-1.99,0.868-29.548,2.604-37.469,2.956
|
||||
c-12.323,0.547-38.914,0.71-45.178-1.459c-11.274-0.291-20.87,1.564-34.178,0.984c-8.716-0.381-18.67-1.477-19.554-2.945"/>
|
||||
<path fill="#E2EEED" d="M118.42,198.75c13.387-3.454,27.872,1.021,42.105-0.003c12.7-0.913,22.863-5.25,34.403-7.971
|
||||
c-13.103,1.404-26.295,0.908-39.38,2.594c-10.138,1.306-19.155,3.513-29.561,1.876c-7.854-1.235-14.282-4.628-22.442-5.472
|
||||
c-10.887-1.126-22.876,0.402-33.813,0.836c-11.337,0.449-28.281,1.447-39.071-1.236c14.667-2.308,26.629-5.004,41.707-6.476"/>
|
||||
<path fill="none" d="M-247.369-127.631c-0.935,0.468-1.696,0.848-2.631,1.315"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.7 KiB |
|
@ -1,34 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="586.842px" height="577.631px" viewBox="0 0 586.842 577.631" enable-background="new 0 0 586.842 577.631"
|
||||
xml:space="preserve">
|
||||
<path fill="#E4E4B1" d="M214.474,196.053c-14.536,18.928-18.959,43.044-2.308,61.842c13.873,15.661,29.564,29.735,52.016,27.334
|
||||
c39.117-4.184,69.279-47.317,50.548-81.537c-10.66-19.475-24.322-26.59-46.24-28.756c-18.806-1.858-45.491,2.462-52.924,20.892
|
||||
c-2.534,0.815-3.085,2.192-3.723,2.856"/>
|
||||
<path fill="#E2EEED" d="M196.053,321.696c4.168-0.477,2.26-7.334,20.587-5.434c10.482-1.096,18.979-2.721,32.146-2.483
|
||||
c5.564,0.101,12.167,0.992,17.946,1.245c5.325,0.232,15.889,0.088,20.554,0.47c12.728,1.043,12.19,2.806,29.516,3.425
|
||||
c11.906,0.425,26.215,0.904,37.147,1.662c-8.83-0.164-13.688,0.879-21.518,1.151c-1.99,0.868-29.548,2.604-37.469,2.956
|
||||
c-12.323,0.547-38.914,0.71-45.178-1.459c-11.274-0.291-20.87,1.564-34.178,0.984c-8.716-0.381-18.67-1.477-19.554-2.945"/>
|
||||
<path fill="#E2EEED" d="M206.579,339.541c13.387-3.454,27.872,1.021,42.105-0.003c12.7-0.913,22.863-5.25,34.403-7.971
|
||||
c-13.103,1.404-26.295,0.908-39.38,2.594c-10.138,1.306-19.155,3.513-29.561,1.876c-7.854-1.235-14.282-4.628-22.442-5.472
|
||||
c-10.887-1.126-22.876,0.402-33.813,0.836c-11.337,0.449-28.281,1.447-39.071-1.236c14.667-2.308,26.629-5.004,41.707-6.476"/>
|
||||
<path fill="#E2EEED" d="M317.105,265.79c-1.899,4.037-11.697,16.755-15.696,19.961c-5.29,4.242-32.294,9.331-18.541,20.634
|
||||
c7.544,6.199,25.902-3.816,33.974-3.229c11.265,0.819,17.492,5.418,30.598,1.809c5.943-1.637,8.006-5.072,15.722-4.961
|
||||
c5.117,0.074,13.135,1.012,17.424,1.574c9.941,1.301,19.883,0.867,30.008,2.008c20.396,2.301,41.854-2.333,61.774-4.511
|
||||
c5.324-0.582,11.217-3.381,16.775-3.978c-8.153-3.754-17.38-0.255-26.017-1.646c-7.244-1.167-17.911-2.622-24.97-4.97
|
||||
c-13.688-4.556-20.836-18.147-35.521-16.838c-1.252,0.491-2.771,1.337-3.884,1.915c-9.922-10.049-29.283-13.75-42.178-17.042
|
||||
c-16.299-4.16-28.867-0.557-39.469,10.59"/>
|
||||
<path fill="none" d="M-128.947,28.948c-0.935,0.468-1.696,0.848-2.631,1.315"/>
|
||||
<path fill="#E2EEED" d="M207.895,265.79c-5.536-6.607-13.992-4.646-22.045-6.256c-7.698-1.539-17.149-7.683-26.639-6.902
|
||||
c-6.528,0.537-9.182,4.101-15.492,5.591c-5.326,1.258-7.347-0.754-12.072-0.365c-7.43,0.612-22.55,3.322-29.303,8.887
|
||||
c-8.284,6.826-6.565,16.358,5.586,15.883c3.994-0.156,8.179-5.883,11.774-6.406c4.248-0.618,11.093,2.412,15.822,2.721
|
||||
c19.443,1.268,37.445,9.22,56.256,6.192c9.186-1.479,16.905-1.834,26.346-1.222c7.222,0.469,16.862,3.355,24.134,0.998
|
||||
c-6.14-1.747-12.96-1.65-18.51-4.647c-5.887-3.179-8.561-9.088-14.322-10.747c-0.147-0.73-0.293-1.46-0.44-2.191
|
||||
c-1.204-0.168-2.306-0.23-3.507-0.44c-0.733-2.313-1.509-2.182-2.852-3.727"/>
|
||||
<path fill="#E2EEED" d="M292.105,194.737c-1.458,4.176-0.905,7.716,1.545,11.618c10.833,2.586,12.248,5.199,23.49,4.207
|
||||
c9.136-0.806,19.716,0.881,30.228,0.033c15.033-1.213,48.743-14.688,59.534-4.54c9.564-8.62,33.354-2.839,45.561-2.337
|
||||
c-5.719-13.756-60.162-6.621-74.764-6.642c-13.25-0.019-26.776-3.078-39.542-4.97c-10.264-1.521-26.955-6.963-36.617-2.407
|
||||
c-1.125,4.7-5.491,6.333-9.435,7.67"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.3 KiB |
|
@ -1,48 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="390.54px" height="414.864px" viewBox="0 0 390.54 414.864" enable-background="new 0 0 390.54 414.864"
|
||||
xml:space="preserve">
|
||||
<path opacity="0.2" fill="#EEB9D9" d="M29.392,329.493c-2.671,15.49-13.02,32.522-8.234,51.097
|
||||
c1.937,7.52,7.161,14.719,14.985,15.179c3.559,0.21,6.497-4.188,9.541-4.54c4.786-0.554,8.79,2.644,12.615,2.197
|
||||
c19.41-2.271,7.661-29.232,3.59-41.092c-1.699-4.949-6.436-17.517-11.131-20.821c-4.23-2.981-17.908-5.773-21.717-2.378
|
||||
c-0.5,0.384-0.773,0.9-0.816,1.544"/>
|
||||
<path fill="#685B35" d="M271.108,36.434c-1.011,3.064-14.624,5.218-19.558,10.932c-6.344,7.347-7.637,20.443-7.3,29.731
|
||||
c0.695,19.176,14.369,53.209,30.128,65.155c7.401,5.61,17.978,8.588,27.091,9.511c10.62,1.075,13.476,1.054,22.187,7.068
|
||||
c12.563,8.675,29.225,9.311,38.534,23.766c4.851,7.532,5.021,15.519,8.146,23.258c13.603-8.544-0.85-40.085-2.336-51.777
|
||||
c-1.38-10.884,2.133-18.439-0.819-27.591c-3.061-9.487-8.001-16.883-9.662-27.071c-3.356-20.589-3.771-36.743-16.669-54.427
|
||||
c-7.907-10.84-23.656-23.578-37.306-27.299c-7.402-2.018-16.513-0.634-21.957,4.453C277.237,26.206,276.635,34.727,271.108,36.434"
|
||||
/>
|
||||
<path fill="none" d="M83.95,192.171c-0.186,6.211-0.497,13.22,1.499,19.399"/>
|
||||
<path opacity="0.7" fill="#F0959C" d="M286.289,145.759c-33.637-9.126-47.449,55.707-61.01,74.628
|
||||
c-9.898,13.811-27.872,23.389-44.146,27.568c-19.741,5.069-30.175-13.493-47.811-11.88c-5.189,0.476-14.062,4.618-16.21,9.234
|
||||
c8.066,2.012,14.844,3.671,21.754,8.819c6.142,4.576,9.68,11.183,16.925,14.919c17.134,8.837,37.076-0.131,52.264-8.018
|
||||
c9.814-5.096,29.695-22.521,40.866-20.329c15.476,3.039,10.487,36.695,7.887,47.364c-6.95,28.519-24.96,69.995-1.167,96.841
|
||||
c13.506,15.242,32.667,3.794,50.498,4.459c17.394,0.646,35.388,10.297,48.164-5.651c10.36-12.932,8.91-34.819,7.887-51.389
|
||||
c-1.209-19.609-4.871-36.473-4.671-57.04c0.349-35.644,27.464-74.246-4.438-101.332c-11.203-9.513-20.094-14.448-33.219-19.58
|
||||
c-12.879-5.035-25.895-3.871-38.244-8.615"/>
|
||||
<path fill="#BAA570" d="M136.821,142.946c-16.528-1.704-32.17,5.273-26.625,22.577c1.709,5.333,6.012,2.6,4.759,8.645
|
||||
c-0.715,3.445-6.066,3.49-7.067,5.876c-3.292,7.847,0.79,10.98,8.902,13.047c-4.859,9.117-12.239,11.933-6.535,23.259
|
||||
c4.223,8.383,11.717,11.002,19.528,13.364c4.788,1.446,5.554-0.216,10.248,2.387c3.028,1.678,5.904,5.959,8.759,7.927
|
||||
c10.114,6.975,12.515,2.942,22.772,1.786c8.392-0.944,14.403,0.651,22.77-5.86c4.283-3.333,4.374-6.084,9.049-8.701
|
||||
c3.608-2.02,8.813-0.356,12.643-3.771c8.392-7.488,1.416-14.611,2.478-23.56c0.42-3.541,5.05-6.582,4.987-11.556
|
||||
c-0.075-5.949-4.107-6.107-5.21-10.672c-2.993-12.405,6.2-21.662-2.932-34.806c-6.314-9.09-17.093-12.135-26.205-16.613
|
||||
c-10.111-4.971-18.497-12.091-30.129-3.527c-7.399,5.447-10.909,20.552-22.191,19.008"/>
|
||||
<path fill="none" d="M49.477,130.99c1.911,4.254,1.434,10.601,1.499,16.415"/>
|
||||
<path opacity="0.9" fill="#CBE1E8" d="M123.977,238.946c-1.642-0.204-6.066,0.634-9.142,1.391
|
||||
c-7.331,21.757-8.535,48.043-26.116,64.924c-7.103,6.82-21.064,13.666-30.166,16.572c-7.634,2.437-35.734,0.341-27.822,15.569
|
||||
c7.141-0.286,13.125,1.789,19.386,3.564c14.87-10.402,30.126-16.803,43.499-29.265c6.066-5.651,12.561-10.228,17.812-16.575
|
||||
c5.983-7.233,9.492-15.942,18.156-21.275c8.701,11.592,3.903,39.127,0.165,51.776c-4.252,14.392-12.248,34.974-7.876,51.19
|
||||
c6.174,22.896,25.215,12.482,39.469,11.827c15.735-0.724,33.279,9.981,47.704-0.146c6.388-19.227-4.712-41.464-9.138-60.461
|
||||
c-5.107-21.917,3.428-45.589,2.102-68.684c-14.157-7.596-29.726,13.03-45.659,2.495c-11.25-7.439-20.595-26.423-35.879-20.527"/>
|
||||
<path fill="none" d="M-1.484,98.161c1.626,1.811,3.145,12.053,4.497,17.907"/>
|
||||
<path opacity="0.2" fill="#EEB9D9" d="M31.727,331.127c-15.804-13.447-11.5-28.01-15.44-47.269
|
||||
c-3.764-18.398-5.918-33.012-4.35-52.545c2.46-30.676,15.768,3.81,18.688,16.574c2.676,11.702-4.533,52.109,16.287,39.248
|
||||
c0.485-0.301,3.889-0.222,4.495-0.157c2.764-9.985-0.08-17.951-2.224-27.086c-2.362-10.068-1.214-16.149,1.228-26.142
|
||||
c1.73-7.079,2.219-20.577,10.477-19.041c8.211,1.528,7.233,15.037,8.146,21.418c2.811,19.63,4.795,35.867-1.103,54.602
|
||||
c-5.643,17.92-1.416,34.767-23.354,39.215C40.797,330.708,34.225,331.57,31.727,331.127"/>
|
||||
<path opacity="0.3" fill="#F0959C" d="M271.621,145.946c-4.546,9.44,11.508,14.898,18.688,15.101
|
||||
c10.938,15.275,29.976,20.527,41.104,35.95c11.548,16.006,22.271,28.585,26.996,50.202c12.149-20.923,5.306-57.647-11.451-73.855
|
||||
c-13.178-12.746-55.298-29.019-72.634-26.046"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 4.7 KiB |
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="555.555px" height="758.333px" viewBox="0 0 555.555 758.333" enable-background="new 0 0 555.555 758.333"
|
||||
xml:space="preserve">
|
||||
<path fill="#10110C" d="M100.946,316.693c-7.734-13.852-27.933,15.604-38.823,22.121c1.795,16.34-0.756,32.145,8.873,47.761
|
||||
c8.854,14.362,19.222,30.996,27.717,45.959c12.831,22.594,20.436,18.397,41.446,17.349c17.018-0.85,29.186,3.871,45.688,12.134
|
||||
c24.023,12.026,24.484,10.313,32.733-17.487c3.185-10.721-1.366-13.461,6.429-21.819c3.801-4.073,17.004-3.203,23.523-10.068
|
||||
c22.922-24.146,10.479-75.64-12.523-93.661c-21.182-16.592-53.393-43.89-80.602-43.294c-21.75,0.477-19.251,12.972-30.933,23.64
|
||||
c-10.186,9.302-24.638,8.758-32.242,19.779"/>
|
||||
<path fill="#EFDCE7" d="M136.207,452.37c-32.326,9.12-55.125,5.491-52.647,53.597c2.022,39.237,11.11,71.645,17.309,108.018
|
||||
c6.389,37.499-7.602,73.802,21.726,101.776c14.918,14.231,26.432,14.085,46.288,14.006c16.768-0.064,30.954,9.295,45.262,4.343
|
||||
c69.559-24.072,22.102-161.968,20.1-211.795c-1.607-39.958,7.277-73.05,30.006-103.839c13.754-18.632,52.465-54.933,42.469-77.599
|
||||
c-21.689-49.183-58.168,71.738-67.648,83.078c-7.055,8.436-13.418,11.664-19.549,21.773c-6.933,11.428-3.24,22.136-17.91,25.459
|
||||
c-17.975,4.073-49.118-13.303-69.759-13.993"/>
|
||||
<path fill="#D0BFA7" d="M153.634,727.355c-15.221,1.021-35.508-15.831-43.022-29.553c-11.546-21.088-4.994-38.316-24.049-56.248
|
||||
c-17.198-16.186-44.378-35.336-67.619-24.746c-12.741,30.396,40.606,64.098,56.269,79.188c22.131,21.324,52.82,39.901,80.599,28.945
|
||||
"/>
|
||||
<path fill="#D0BFA7" d="M240.768,585.038c7.65-7.169,17.316-28.799,31.035-12.652c11.025,12.978,1.898,41.783-2.229,56.061
|
||||
c-7.137,24.675-10.654,79.313-32.721,93.844c0.785-21.864,18.068-36.269,17.037-62.477c-0.76-19.226-6.822-56.31-13.123-72.363"/>
|
||||
<path fill="#DCE1A6" d="M380.649,187.037c-38.945,15.518-94.045-41.285-95.666-74.721c-1.988-41.03,36.701-86.417,80.541-93.048
|
||||
c-35.402,18.116-68.842,58.836-62.463,97.873c4.449,27.192,51.852,81.063,77.588,77.132"/>
|
||||
<path fill="#DCE1A6" d="M527.948,20.599c-1.145,0.63-4.553,2.682-4.709,9.245c2.842,1.742,6.432,3.729,9.303,4.919
|
||||
c5.398-7.495,5.342-8.093,2.707-16.204C531.106,16.807,531.387,19.904,527.948,20.599"/>
|
||||
<path fill="#D0BFA7" d="M290.202,322.115c-0.48,1.825,0,4.356,0,6.258c-4.576-18.212,12.33-21.317,25.193-13.851
|
||||
c8.65-6.923,13.062-13.751,23.516-16.164c-2.002,16.096-17.596,26.956-25.959,40.278c-7.16-2.37-16.939-6.38-22.75-9.285"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.7 KiB |
|
@ -1,229 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Layer_2"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="519.35626"
|
||||
height="222.7771"
|
||||
viewBox="0 0 519.35624 222.7771"
|
||||
enable-background="new 0 0 1190.55 841.89"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="grand.svg"
|
||||
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||
id="metadata47"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs45"><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3796"><rect
|
||||
id="rect3798"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3800"><rect
|
||||
id="rect3802"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3804"><rect
|
||||
id="rect3806"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3808"><rect
|
||||
id="rect3810"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3812"><rect
|
||||
id="rect3814"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3816"><rect
|
||||
id="rect3818"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3820"><rect
|
||||
id="rect3822"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3824"><rect
|
||||
id="rect3826"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3828"><rect
|
||||
id="rect3830"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3832"><rect
|
||||
id="rect3834"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath3836"><rect
|
||||
id="rect3838"
|
||||
width="534.7666"
|
||||
height="229.54593"
|
||||
x="339.27405"
|
||||
y="297.03354"
|
||||
style="fill:none" /></clipPath></defs><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
id="namedview43"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.79286936"
|
||||
inkscape:cx="395.8304"
|
||||
inkscape:cy="-114.94323"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Layer_2" />
|
||||
<path
|
||||
d="m 771.983,362.89 c -2.131,-6.595 -13.981,-11.819 -18.028,-17.972 -6.434,-9.778 -5.192,-20.199 0.277,-30.005 13,-23.304 36.94,-16.667 47.925,3.803 10.985,1.491 14.858,6.729 19.607,16.397 4.069,8.285 4.811,21.176 16.219,21.777 22.847,1.205 19.488,-34.582 0.123,-40.226 2.702,-3.875 7.387,-7.891 11.626,-10.623 17.304,16.195 26.901,55.003 4.303,69.849 -14.354,9.429 -20.855,10.414 -22.052,30 -0.994,16.274 0.769,31.055 2.223,46.777 0.764,8.269 -7.438,31.298 8.831,29.274 5.474,-0.682 12.24,-4.632 17.847,-6.255 -2.137,-3.626 -4.989,-5.767 -7.098,-9.646 -8.397,0.844 -29.04,4.706 -19.553,16.602 5.287,6.629 19.363,8.89 27.599,8.398 1.978,5.539 -0.394,10.752 0,16.697 -30.249,-2.668 -56.959,22.312 -86.9,13.199 -11.956,-3.639 -25.503,-11.607 -28.171,-23.825 -2.81,-12.867 8.848,-25.918 14.219,-38.004 3.626,-8.157 9.05,-21.441 8.027,-31.195 -1.409,-13.437 -15.076,-7.019 -21.828,-17.219 -6.219,-9.397 -0.935,-21.505 4.082,-29.526 4.307,-6.885 17.363,-13.233 18.723,-17.278"
|
||||
id="path2"
|
||||
clip-path="url(#clipPath3836)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="opacity:0.4;fill:#bcb7b7" />
|
||||
|
||||
<path
|
||||
d="m 687.983,339.89 c -4.077,1.877 -11.059,3.685 -13.726,8.226 -3.859,6.57 -0.141,10.661 -1.5,17.548 -0.199,1.006 -3.405,3.78 -3.798,6.203 -0.613,3.791 2.16,5.174 2.85,8.301 1.361,6.18 -1.07,7.873 6.425,12.575 1.931,-0.991 3.573,-0.221 5.575,-0.678 1.166,9.494 10.468,4.803 16.923,7.077 8.835,3.112 7.43,5.015 18.025,2.146 8.226,10.157 20.592,0.662 20.377,-10.246 11.225,1.258 8.125,-15.308 7.096,-20.402 -0.571,-2.828 -0.587,-11.47 -1.477,-13.526 -1.395,-3.223 -6.731,-4.676 -9.548,-7.422 -4.363,-4.254 -3.313,-6.063 -9.171,-8.829 -4.159,-1.964 -10.317,-3.998 -15.048,-2.941 -4.987,1.113 -7.711,5.002 -12.805,5.771 -2.997,0.452 -6.224,-4.041 -10.199,-0.801"
|
||||
id="path6"
|
||||
clip-path="url(#clipPath3832)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#e0da8c" />
|
||||
|
||||
<path
|
||||
d="m 726.983,417.89 c -10.816,8.367 -24.624,-8.225 -31,10 -4.489,12.832 -4.732,27.228 -9.026,39.974 -9.204,27.317 -50.472,2.347 -69.803,7.197 -0.544,0.902 -1.262,1.924 -1.772,2.806 1.608,2.112 7.886,6.123 10.324,7.301 1.952,0.943 1.721,2.982 4.277,3.719 2.782,0.802 4.566,-1.99 6.199,-1.797 9.3,1.101 19.604,4.116 28.675,6.972 -3.316,5.737 -26.019,7.768 -33.097,8.606 -4.824,0.572 -13.382,2.329 -17.052,0.467 -5.502,-2.793 -3.887,-10.883 -12.552,-9.07 -3.285,6.669 6.071,11.418 2.945,18.826 0.92,1.327 1.38,1.342 2.048,2.829 7.41,2.712 13.495,-1.111 20.856,-1.853 6.707,-0.675 15.012,0.937 21.98,1.02 15.531,0.188 31.146,-2.748 45.973,-1.973 12.109,0.633 34.597,3.027 44.02,-5.027 13.479,-11.519 1.668,-24.081 -3.048,-36.996 -3.152,-8.632 -5.201,-18.445 -4.726,-28 0.336,-6.76 5.089,-25.143 -7.223,-24"
|
||||
id="path10"
|
||||
clip-path="url(#clipPath3828)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#ddabab" />
|
||||
<path
|
||||
d="m 153.18057,94.248605 c 0,1.954708 0,3.909417 0,5.864125"
|
||||
id="path12"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#c4b5b5;stroke-width:0.98138338" />
|
||||
<path
|
||||
d="m 678.983,393.89 c 3.159,5.645 3.484,11.978 10.004,15.997 6.029,3.717 13.888,3.509 20.822,4.178 0.475,1.961 1.875,2.689 2.348,4.651 3.418,0.424 6.6,0.097 9.679,-0.973 2.952,-13.452 -8.706,-11.364 -16.602,-14.104 -7.288,-2.529 -15.865,-6.321 -23.251,-9.749"
|
||||
id="path14"
|
||||
clip-path="url(#clipPath3824)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="opacity:0.3;fill:#c4b5b5" />
|
||||
<path
|
||||
d="m 523,407.89 c 5.639,-0.725 6.524,-11.83 16.023,-7.801 7.752,3.289 6.661,11.861 2.029,16.075 -1.991,1.812 -6.875,2.212 -9.278,3.651 -3.788,2.269 -5.884,5.936 -10.023,7.826 -6.292,2.872 -13.333,4.958 -20.577,3.972 -9.678,-1.318 -22.979,-11.351 -30.422,-18.475 -5.363,-5.134 -9.31,-11.167 -14.53,-16.299 -3.999,-3.931 -11.099,-8.116 -13.474,-13.697 -0.536,-1.259 -1.979,-2.855 -2.626,-4.071 4.492,0.489 8.482,3.822 11.045,7.649 13.833,2.233 21.053,17.325 34.055,21.948 11.958,4.252 32.899,-13.087 39.777,1.223"
|
||||
id="path16"
|
||||
clip-path="url(#clipPath3820)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#dd7f7f" />
|
||||
<path
|
||||
d="m 1003.6059,155.85146 c -0.472,5.849 1.286,10.842 3,16"
|
||||
id="path18"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#dbc07f" />
|
||||
<path
|
||||
d="m 544,401.89 c 6.047,-0.753 14.783,-7.755 21.82,-9.877 -2.79,7.679 -10.128,16.235 -17.84,19.452 -0.617,-2.913 -1.376,-6.584 -1.98,-9.575"
|
||||
id="path20"
|
||||
clip-path="url(#clipPath3816)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#dbc07f" />
|
||||
<path
|
||||
d="m 502,437.89 c 0.012,25.323 -5.116,49.062 0.171,73.829 12.364,8.077 28.307,5.769 41.606,5.948 13.635,0.186 29.422,-2.809 42.965,0.075 0.365,-0.375 0.735,-0.745 1.11,-1.11 -0.029,-9.826 -26.318,-4.159 -33.83,-3.771 -11.082,0.572 -28.611,2.195 -39.023,-0.972 -10.875,-3.308 -9.44,-22.04 -9.997,-33.004 -0.64,-12.617 3.765,-26.796 1.849,-39.842 -1.748,0.135 -3.296,-0.477 -4.853,-0.154"
|
||||
id="path22"
|
||||
clip-path="url(#clipPath3812)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="opacity:0.4;fill:#706f6f" />
|
||||
|
||||
<path
|
||||
d="m 420,502.89 c 9.284,1.241 31.77,-8.579 41.774,-13.249 14.288,-6.67 21.657,-21.523 32.301,-31.374 -0.508,20.775 5.899,45.269 -16.856,54.894 -15,6.345 -43.21,-3.235 -57.219,-9.271"
|
||||
id="path26"
|
||||
clip-path="url(#clipPath3808)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="opacity:0.3;fill:#a6d9e8" />
|
||||
|
||||
|
||||
<path
|
||||
d="m 449.001,479.89 c -11.056,0.999 -24.618,-15.231 -17.1,-27.574 -13.521,1.975 -15.402,14.869 -19.655,25.82 -4.276,11.011 -11.034,20.833 -16.094,31.377 8.767,-6.86 12.852,-14.536 23.044,-18.427 9.263,-3.536 21.751,-5.157 28.804,-9.196"
|
||||
id="path32"
|
||||
clip-path="url(#clipPath3804)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#edd1d1" />
|
||||
|
||||
<path
|
||||
stroke-miterlimit="10"
|
||||
d="m 430,451.891 c 10.296,12.053 18.23,26.291 26,40"
|
||||
id="path36"
|
||||
clip-path="url(#clipPath3800)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="opacity:0.8;fill:none;stroke:#967e7e;stroke-miterlimit:10" />
|
||||
|
||||
<path
|
||||
d="m 350.775,515.511 c -3.361,-13.475 -7.952,-34.665 14.021,-32.91 8.211,0.656 15.089,4.582 16.735,-7.11 1.127,-8.011 -5.524,-16.101 -3.143,-25.098 6.323,-2.813 12.935,-5.111 19.852,-1.618 -1.566,6.26 -7.799,5.537 -10.389,10.299 -2.983,5.489 0.036,14.514 0.466,19.877 1.039,12.95 1.429,26.013 1.229,39.02 -1.275,0.019 -2.427,-0.149 -3.665,-0.269 -3.259,-8.471 -0.681,-7.516 -8.512,-9.368 -7.023,-1.661 -14.056,0.239 -20.952,-0.286 1.212,2.925 1.595,6.274 1.045,9.744 -1.161,0.64 -3.773,1.37 -4.927,1.398 -2.058,-0.474 -1.269,-1.325 -1.827,-2.681"
|
||||
id="path40"
|
||||
clip-path="url(#clipPath3796)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(0.98542917,0,0,0.97735419,-339.07608,-290.84908)"
|
||||
style="fill:#dbe00b" />
|
||||
</svg>
|
Before Width: | Height: | Size: 11 KiB |
|
@ -1,81 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
|
||||
sodipodi:docname="whale.svg"
|
||||
xml:space="preserve"
|
||||
enable-background="new 0 0 416.217 320.271"
|
||||
viewBox="0 0 416.217 320.271"
|
||||
height="320.271px"
|
||||
width="416.217px"
|
||||
y="0px"
|
||||
x="0px"
|
||||
id="Layer_1"
|
||||
version="1.1"><metadata
|
||||
id="metadata25"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs23" /><sodipodi:namedview
|
||||
inkscape:current-layer="Layer_1"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:cy="160.1355"
|
||||
inkscape:cx="208.10851"
|
||||
inkscape:zoom="2.8663226"
|
||||
showgrid="false"
|
||||
id="namedview21"
|
||||
inkscape:window-height="1136"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
guidetolerance="10"
|
||||
gridtolerance="10"
|
||||
objecttolerance="10"
|
||||
borderopacity="1"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff" />
|
||||
<path
|
||||
id="path2"
|
||||
d="M12.986,129.484c-2.773,36.785-10.619,67.726,13.799,98.534c8.958,11.302,18.468,25.23,28.724,35.555 c11.8,11.88,27.47,14.167,42.025,20.957c28.008,13.065,71.161,10.505,100.205,1.657c17.246-5.25,27.826-8.032,40.886-21.597 c10.771-11.19,24.304-16.7,33.633-29.946c6.59-9.352,25.73-35.62,22.189-46.713c-11.781,7.987-19.527,19.36-33.217,26.374 c-15.814,8.104-30.854,15.978-48.723,18.267c-33.527,4.295-67.614,1.224-98.639-10.925c-11.561-4.527-24.563-6.187-34.483-14.789 c-8.853-7.675-16.899-16.899-23.867-26.754c-7.51-10.62-10.157-24.481-16.635-33.471c-4.749-6.588-25.754-11.223-23.818-16.992"
|
||||
fill="#F7F4E2" />
|
||||
<path
|
||||
id="path4"
|
||||
d="M394.737,67.927c-7.628-3.066-14.161,6.937-7.948,11.544c2.692,1.998,16.247,1.206,19.707,1.699 c13.126,1.868,29.188,1.084,41.78,5.585c2.163-3.955,2.558-8.097-0.076-11.621c-14.9,4.25-40.034-4.817-54.352-7.328"
|
||||
fill="none" />
|
||||
<ellipse
|
||||
id="ellipse6"
|
||||
ry="3.597"
|
||||
rx="3.292"
|
||||
cy="153.644"
|
||||
cx="82.278"
|
||||
fill="#FCFCFC"
|
||||
transform="matrix(0.1353 -0.9908 0.9908 0.1353 -81.0843 214.3818)" />
|
||||
|
||||
<path
|
||||
id="path10"
|
||||
d="M29.667,101.408c20.163-7.524,40.878-5.726,61.508,3.748c12.578,5.775,22.337,15.946,34.695,21.43 c14.054,6.235,27.184,11.915,42.675,14.781c32.696,6.048,63.052,17.544,96.95,17.591c31.852,0.045,54.133-19.761,58.424-53.146 c2.107-16.38-5.17-31.679-1.816-49.062c3.429-17.77,9.508-25.179,22.952-35.696c5.116,8.75,9.009,18.155,11.587,27.787 c2.885,10.797-2.108,17.756-1.887,29.043c9.016-27.753,24.1-28.312,48.911-31.897c1.217,13.409-3.38,34.501-10.594,45.221 c-8.25,12.259-19.378,20.187-32.263,25.779c-16.957,7.362-26.106,10.692-36.044,27.09c-14.141,23.341-29.859,47.279-51.421,64.229 c-20.019,15.737-55.577,27.382-79.919,27.594c-32.447,0.285-64.502,1.544-93.042-14.271c-24.048-13.325-41.616-31.512-57.1-54.671 c-4.078-6.102-5.675-13.266-9.747-19.346c-5.534-8.265-10.559-6.002-17.385-10.795c-11.927-8.378,4.19-28.58,13.417-34.331"
|
||||
fill="#F7DFF3" />
|
||||
<path
|
||||
id="path12"
|
||||
d="M185.766,139.689c-1.369,3.194-13.844,14.104-18.472,14.786c-9.973,1.467-16.968-10.333-27.009-10.561 c-2.057,5.782,8.974,12.097,12.816,16.617c6.371,7.496,6.95,8.932,16.698,8.094c8.976-0.772,15.682-3.333,24.327-0.799 c8.581,2.519,14.453,4.182,22.418,5.146c15.157,1.835,39.012,2.346,51.086,11.265c11.368,8.399,16.196,21.587,29.653,28.568 c14.019,7.271,27.363,18.312,42.49,22.745c0.955-1.461,1.454-3.359,1.649-4.813c-5.617-3.307-10.212-6.793-14.469-11.786 c-1.516-1.779-0.332-5.585-2.857-7.892c-1.601-1.463-7.582-1.327-10.059-2.781c-8.958-5.268-23.617-22.911-22.188-33.168 c1.393-9.997,16.089-26.739,22.009-35.097c9.849-13.907,12.447-21.519,10.457-38.644c-6.609-1.825-11.963,19.067-15.438,24.617 c-4.899,7.828-10.167,17.236-18.72,21.256c-15.611-16.87-36.387-2.918-52.052-8.563c-11.644-4.197-13.379-1.795-24.591,1.849 c-8.974,2.916-20.074,1.569-28.625,2.279"
|
||||
fill="#DFEAEA" />
|
||||
<path
|
||||
id="path14"
|
||||
d="M129.111,128.649c7.511,11.663,20.2,20.518,32.301,26.873c8.455-3.931,31.88-13.027,10.363-20.58 c-2.542-0.891-6.909,1.209-9.918,0.661c-3.988-0.727-7.133-3.393-10.443-4.33c-5.008-1.416-15.734-4.886-20.99-1.98 c0.499,1.56,1.145,2.434,1.832,3.606"
|
||||
fill="#F2E9D7" />
|
||||
<path
|
||||
id="path16"
|
||||
d="M152.468,94.796c-0.477-3.437-12.637-4.495-18.28-0.644c-3.699,2.524-11.741,16.624-12.201,20.086 c-1.038,7.784,5.543,15.402,12.629,17.072c3.486,0.822,7.845-1.964,10.357-1.355c4.948,1.198,3.957,4.78,8.025,6.263 c7.341,2.677,12.519-3.384,19.067,0.849c7.521,4.86,4.991,9.935,15.975,9.502c4.881-0.192,17.235-0.423,21.472-2.888 c10.632-6.187,1.85-10.946,2.056-19.062c0.222-8.76,7.221-10.841,1.237-19.853c-4.28-6.445-12.593-10.999-19.789-12.324 c-13.104-2.414-28.244,3.626-40.84,3.393"
|
||||
fill="#E0E099" />
|
||||
<path
|
||||
id="path18"
|
||||
d="M82.609,147.635c-6.449,0-6.449,10,0,10S89.057,147.635,82.609,147.635z"
|
||||
fill="#F9F9F9" />
|
||||
</svg>
|
Before Width: | Height: | Size: 5.1 KiB |
|
@ -1,76 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="387.838px" height="443.241px" viewBox="0 0 387.838 443.241" enable-background="new 0 0 387.838 443.241"
|
||||
xml:space="preserve">
|
||||
<path fill="none" d="M106.41,203.622c-0.543,4.111-0.019,9.15,1.229,11.986"/>
|
||||
<path fill="#131111" d="M145.995,25.831c-8.15,1.947-10.877,2.412-16.365,8.455c-3.415,3.761-11.881,8.165-14.648,12.022
|
||||
c-5.096,7.102,2.739,13.316,1.026,20.069c-1.944,7.664-8.059,6.985-4.844,16.201c2.273,6.517,9.079,9.517,11.815,15.766
|
||||
c1.461,3.336-0.404,6.373,1.658,9.681c2.149,3.447,4.042,3.388,6.919,5.418c3.123,2.204,5.463,3.371,7.902,5.471
|
||||
c2.434,2.096,4.538,5.307,7.233,7.065c7.065,4.608,11.656,1.647,19.507,1.556c8.223-0.096,13.839,1.436,22.318-3.513
|
||||
c6.715-3.919,10.403-8.656,18.023-11.516c18.611-6.984,17.855-16.901,15.168-34.848c-1.253-8.361,0.446-16.297,0.424-24.498
|
||||
c-0.023-8.507-3.918-12.439-10.762-17.928c-13.721-11.003-23.145-15.087-42.097-15.263c-9.667-0.09-18.286,3.141-27.124,6.806"/>
|
||||
<path fill="none" d="M72.97,287.837c-0.24,5,0.575,11.908,1.352,17.566"/>
|
||||
<path fill="#EAECE0" d="M209.427,140.797c-12.483-5.196-32.365,4.692-46.132,4.708c-14.446,0.018-26.671-10.797-34.862,5.4
|
||||
c-6.362,12.582,0.826,30.698,4.084,43.603c3.625,14.355,8.33,28.338,9.657,43.329c1.973,22.284-17.268,65.764,21.335,68.395
|
||||
c8.021,0.547,15.559-3.338,23.812-3.35c7.322-0.012,15.287,2.928,21.332-1.652c11.627-8.811-0.293-31.337-2.16-42.59
|
||||
c-3.755-22.628,1.34-42.68,7.714-64.103c3.444-11.581,16.345-52.214-6.703-54.681"/>
|
||||
<path fill="none" d="M-354.057,118.917c-1.129-4.446-2.049-9.047-2.703-13.514"/>
|
||||
<path fill="#B1946D" d="M203.659,250.11c8-1.43,15.658-9.239,21.891-14.346c10.863-8.897,16.32-2.921,13.67,10.625
|
||||
c-1.867,9.535-7.33,18.281-10.572,27.258c-2.756,7.631-5.174,19.314-13.261,22.543c-1.505-9.125-0.487-15.623-4.011-24.434
|
||||
c-2.679-6.694-8.062-15.837-5.795-21.647"/>
|
||||
<path fill="#B1946D" d="M137.347,256.707c-8.288,6.808-64.317-4.389-59.608,18.868c2.515,12.424,22.609,11.95,32.484,13.381
|
||||
c11.393,1.65,19.176,6.839,29.763,10.956c1.679-4.038-3.357-13.035-2.688-19.695c0.738-7.353,2.241-14.397,1.826-22.423
|
||||
c-1.717-0.664-2.291,0.157-3.699,0.797"/>
|
||||
<path fill="none" d="M95.352,228.792c-2.694,4.455-3.377,9.143-3.686,14.383"/>
|
||||
<path fill="#B1946D" d="M170.983,124.777c0.945,6.626-5.348,12.301-2.719,17.737c5.2-0.577,11.617-0.012,16.025-2.893
|
||||
c-2.992-2.255-4.598-6.12-3.863-9.968c-2.445-1.759-5.229-2.529-8.482-2.049"/>
|
||||
<path fill="none" d="M71.619,477.026c1.753,4.361,3.063,8.727,4.054,13.514"/>
|
||||
<path fill="#BF99BD" d="M132.376,305.634c2.611,5.74-1.267,13.865,1.241,20.002c18.296,1.076,32.772-2.127,50.552-3.002
|
||||
c8.483-0.418,17.981-0.867,26.426,0c10.17,1.047,16.423,6.176,19.026-5.312c5.405-23.857-18.07-17.07-31.683-14.846
|
||||
c-16.562,2.707-32.755,3.582-49.708,0.979c-5.165-0.791-14.789-3.883-13.741,4.307"/>
|
||||
<path fill="#F0D6E6" d="M253.933,365.132c2.61,5.738-1.267,13.863,1.242,20c18.295,1.076,32.771-2.127,50.552-3.002
|
||||
c8.483-0.418,17.981-0.867,26.426,0c10.17,1.047,16.423,6.176,19.025-5.312c5.406-23.855-18.069-17.068-31.682-14.846
|
||||
c-16.562,2.707-32.756,3.584-49.708,0.98c-5.166-0.793-14.789-3.885-13.741,4.305"/>
|
||||
<path fill="#A7A6CF" d="M122.863,332.196c-0.597,3.645-0.144,7.498,1.326,10.463c15.152-5.875,36.767-4.166,52.816-4.91
|
||||
c19.009-0.883,38.272-1.473,57.741-2.527c4.056-13.535-15.126-7.217-22.038-7.221c-10.758-0.006-22.454-1.104-33.589-1.117
|
||||
c-10.682-0.012-19.164,2.141-29.832,2.125c-6.832-0.01-25.747-4.863-26.425,2.125"/>
|
||||
<path fill="#A7A6CF" d="M262.39,391.692c-0.598,3.645-0.144,7.498,1.326,10.465c15.151-5.877,36.767-4.168,52.816-4.912
|
||||
c19.009-0.883,38.271-1.473,57.741-2.525c4.056-13.537-15.126-7.219-22.038-7.223c-10.758-0.006-22.454-1.104-33.589-1.117
|
||||
c-10.682-0.012-19.165,2.141-29.832,2.125c-6.833-0.01-25.746-4.863-26.425,2.125"/>
|
||||
<path fill="none" d="M-335.138,436.485c1.323,4.697,2.635,9.904,2.703,14.864"/>
|
||||
<path fill="#E5CD88" d="M124.978,347.069c0,4.594-2.254,17.307,0.239,21.01c3.836,5.699,12.372,3.049,18.841,3.371
|
||||
c13.733,0.688,27.229-1.027,41.17-1.006c13.203,0.018,23.914-4.24,37.053-6.191c6.55-0.971,11.758,2.26,14.765-5.473
|
||||
c1.899-4.883-1.149-16.377-2.294-21.133c-5.175,3.469-21.982,2.654-29.412,4.139c-9.703,1.939-19.812,3.076-29.625,4.197
|
||||
c-9.819,1.121-48.443-9.922-49.68,4.273"/>
|
||||
<path fill="none" d="M-345.949,525.674c1.033,2.763,2.229,8.115,2.703,12.163"/>
|
||||
<path fill="#1D0E81" d="M119.692,377.88c-5.622,17.824,2.715,17.139,16.677,15.701c11.997-1.236,24.474,0.025,36.409,0
|
||||
c21.738-0.051,52.753,2.725,73.575-4.195c1.217-2.469,0.949-14.449-0.826-16.812c-3.488-4.645-10.76-3.1-16.987-2.154
|
||||
c-12.304,1.867-24.471,3.543-36.971,4.299c-12.438,0.752-23.926,1.48-36.996,1.037c-12.803-0.432-24.497-3.99-36.894,0.158
|
||||
c0.879,2.018,0.252,4.324,0.956,6.217"/>
|
||||
<path fill="#E8BBD2" d="M117.578,402.317c0.515,3.029-2.21,14.186,2.06,17.045c2.061,1.381,14.885-3.084,18.027-3.23
|
||||
c13.171-0.613,29.052-0.459,40.984,1.295c12.719,1.869,23.435,4.191,37.23,2.951c6.558-0.588,13.32-2.588,19.263-2.947
|
||||
c7.083-0.428,12.169,3.498,18.635-0.396c3.642-17.41-4.406-20.85-20.188-20.881c-11.741-0.023-25.39,3.475-37.738,4.094
|
||||
c-13.899,0.695-27.509,1.602-41.302,0.982c-9.508-0.426-26.504-7.303-35.73-4.039c-0.316,1.068-0.036,1.922-0.184,3.002"/>
|
||||
<path fill="#F7102B" d="M107.008,310.946c0.213,11.283-5.291,25.215-7.634,36.949c-2.523,12.635-5.733,26.309-7.324,39.387
|
||||
c-14.678,0.797-28.327,0.16-43.178,0.16c-12.778,0-35.238-4.457-31.551,12.588c13.819,2.021,30.97-2.924,44.235-3.08
|
||||
c12.965-0.154,31.958,5.463,43.157,0.936c5.27-16.088,8.179-31.748,11.778-48.691c1.717-8.084,5.752-17.686,6.427-25.443
|
||||
c1.097-12.625-5.007-9.172-14.853-12.805"/>
|
||||
<path fill="none" d="M-474.327,421.62c0.586,3.23,1.478,6.355,2.703,9.46"/>
|
||||
<path fill="#EFE7D0" d="M16.105,408.69c0.061,17.365,4.495,12.658,19.026,12.695c11.015,0.029,21.524,3.877,31.686,4.328
|
||||
c10.289,0.459,19.671-3.869,29.596-4.354c12.584-0.613,19.808-0.57,14.667-16.762c-17.697-0.883-35.509,0.008-52.695,0.904
|
||||
c-8.562,0.449-46.924-4.963-42.28,7.438"/>
|
||||
<path fill="#F9F119" d="M257.104,404.497c0.061,17.363,4.495,12.656,19.026,12.693c11.015,0.029,21.524,3.877,31.687,4.33
|
||||
c10.289,0.459,19.671-3.869,29.597-4.354c12.583-0.613,19.807-0.572,14.666-16.764c-17.697-0.881-35.51,0.008-52.695,0.906
|
||||
c-8.562,0.447-46.924-4.963-42.28,7.438"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-490.543,248.647c0,9.91,0,19.82,0,29.729"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-477.03,332.431c3.128,10.144,1.352,22.87,1.352,33.784"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-472.976,398.647c0,6.307,0,12.612,0,18.919"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M90.538,383.782c-7.175,1.877-23.109-4.379-32.432-5.41
|
||||
c-13.029-1.441-25.95-2.604-39.189-2.697"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-483.787,387.837c0,3.153,0,6.306,0,9.459"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M87.835,386.485c-22.888,0-49.125-10.15-71.622-2.703"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-481.084,378.377c0,2.703,0,5.405,0,8.108"/>
|
||||
<path fill="none" stroke="#DDD3BA" stroke-miterlimit="10" d="M-482.435,459.458c0,7.657,0,15.315,0,22.973"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 7.3 KiB |
|
@ -1,37 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="841.89px" height="520.755px" viewBox="0 0 841.89 520.755" enable-background="new 0 0 841.89 520.755"
|
||||
xml:space="preserve">
|
||||
<ellipse fill="#EAEBBB" cx="568.301" cy="109.08" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="355.094" cy="146.227" rx="2.388" ry="2.321"/>
|
||||
<ellipse fill="#EAEBBB" cx="287.17" cy="198.113" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="267.3" cy="267.925" rx="2.388" ry="2.653"/>
|
||||
<circle fill="#EAEBBB" cx="453.208" cy="331.766" r="5.97"/>
|
||||
<ellipse fill="#EAEBBB" cx="551.32" cy="296.227" rx="2.687" ry="4.312"/>
|
||||
<ellipse fill="#EAEBBB" cx="214.469" cy="307.547" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="336.226" cy="409.788" rx="4.776" ry="5.307"/>
|
||||
<ellipse fill="#EAEBBB" cx="423.962" cy="118.278" rx="2.687" ry="4.312"/>
|
||||
<ellipse fill="#EAEBBB" cx="276.852" cy="81.132" rx="4.776" ry="5.307"/>
|
||||
<path fill="#EAEBBB" d="M387.17,215.094c0.594,2.929-1.116,7.328-1.126,11.1c0.524-1.58,3.387-5.58,5.623-7.151
|
||||
c2.789,1.716,5.263,4.939,6.809,7.404c0.004-3.969-2.169-7.195-2.185-10.764c2.271-1.013,4.745-2.251,6.624-3.496
|
||||
c-7.171-1.659-6.822-1.705-6.695-8.946c-1.768,1.977-3.138,4.198-4.664,6.277c-2.598-2.056-4.218-4.975-7.671-5.887
|
||||
c0.123,2.835,1.305,5.828,2.057,8.371c-2.403,0.962-4.97,2.522-7.156,3.007c2.697-0.718,6.344,0.265,8.948,1.589"/>
|
||||
<path fill="#EAEBBB" d="M657.635,386.71c0.871,3.733-1.342,9.402-1.269,14.226c0.673-2.033,4.454-7.22,7.444-9.283
|
||||
c3.813,2.128,7.234,6.19,9.383,9.306c-0.085-5.076-3.1-9.15-3.202-13.716c3.05-1.35,6.368-2.993,8.883-4.633
|
||||
c-9.741-1.947-9.271-2.015-9.264-11.281c-2.348,2.571-4.15,5.446-6.169,8.142c-3.562-2.566-5.82-6.262-10.514-7.345
|
||||
c0.231,3.624,1.898,7.423,2.975,10.659c-3.23,1.289-6.667,3.347-9.615,4.021c3.633-0.983,8.591,0.186,12.146,1.816"/>
|
||||
<path fill="#EAEBBB" d="M134.276,72.456c0.52,2.38-0.977,5.954-0.985,9.019c0.459-1.284,2.963-4.534,4.92-5.811
|
||||
c2.44,1.395,4.605,4.013,5.958,6.016c0.003-3.225-1.898-5.846-1.912-8.746c1.987-0.823,4.152-1.829,5.796-2.84
|
||||
c-6.274-1.348-5.969-1.385-5.858-7.269c-1.546,1.606-2.745,3.411-4.081,5.1c-2.273-1.67-3.69-4.042-6.712-4.784
|
||||
c0.108,2.304,1.142,4.735,1.8,6.802c-2.103,0.782-4.349,2.049-6.262,2.443c2.36-0.583,5.551,0.215,7.83,1.291"/>
|
||||
<path fill="#EAEBBB" d="M471.587,479.389c0.594,2.93-1.116,7.328-1.126,11.1c0.524-1.58,3.387-5.58,5.623-7.151
|
||||
c2.789,1.716,5.263,4.938,6.809,7.403c0.004-3.969-2.169-7.194-2.185-10.764c2.271-1.012,4.745-2.251,6.624-3.496
|
||||
c-7.171-1.658-6.822-1.704-6.695-8.945c-1.768,1.977-3.138,4.198-4.664,6.277c-2.598-2.057-4.218-4.976-7.671-5.888
|
||||
c0.123,2.835,1.305,5.827,2.057,8.371c-2.403,0.962-4.97,2.522-7.156,3.007c2.697-0.717,6.344,0.266,8.948,1.59"/>
|
||||
<path fill="#EAEBBB" d="M561.422,192.328c0.334,1.464-0.628,3.664-0.634,5.55c0.295-0.79,1.905-2.79,3.163-3.576
|
||||
c1.569,0.858,2.961,2.469,3.83,3.702c0.002-1.984-1.22-3.597-1.229-5.382c1.276-0.506,2.669-1.125,3.726-1.748
|
||||
c-4.033-0.829-3.838-0.852-3.767-4.473c-0.994,0.988-1.765,2.099-2.623,3.138c-1.461-1.028-2.373-2.487-4.315-2.943
|
||||
c0.069,1.417,0.734,2.914,1.157,4.186c-1.352,0.481-2.796,1.261-4.025,1.503c1.518-0.359,3.568,0.133,5.033,0.794"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.4 KiB |
|
@ -1,35 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="279px" height="279px" viewBox="0 0 279 279" enable-background="new 0 0 279 279" xml:space="preserve">
|
||||
<path fill="none" d="M-305.321,260.151c4.236,2.69,7.549,7.308,9.434,13.208"/>
|
||||
<path fill="none" d="M-260.038,267.698c0.104,1.639,0.733,1.639,1.887,0"/>
|
||||
<path fill="none" d="M-310.981,450.718c0.043,2.615-0.133,5.229-1.887,1.887"/>
|
||||
<path fill="none" d="M-377.019,367.698c-0.874-2.107,0.456-3.383-2.082-4.895c2.567,4.578,6.12,8.258,9.629,12.442"/>
|
||||
<path fill="none" d="M-465.698,316.755c5.092,1.486,1.083-1.083,0-1.887"/>
|
||||
<path fill="none" d="M-561.924,284.68c0.629,0.629,1.258,1.258,1.887,1.887"/>
|
||||
<line fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" x1="172.038" y1="-190.792" x2="170.151" y2="-179.471"/>
|
||||
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="156.943" y1="-260.604" x2="153.17" y2="-245.509"/>
|
||||
<path fill="#D1D0CD" d="M28,118c5.637,13.139,3.016,35.708,3,50c-0.01,9,1.545,17.161,1.997,26
|
||||
c0.351,6.884-3.701,19.373,1.003,24.097c21.819-16.124,45.399-27.502,66.735-41.268c13.177-8.501,25.705-17.085,39.094-25.104
|
||||
c4.132-2.474,16.953-7.328,18.968-10.928c2.434-4.349-1.666-17.878-1.849-22.797c-0.845-22.732,3.475-47.831-0.1-69.849
|
||||
c-11.547-0.934-23.641,13.048-33.874,17.824c-10.76,5.021-21.173,9.822-31.253,16.973c-10.398,7.377-21.277,12.714-32.968,17.803
|
||||
c-9.776,4.255-25.78,7.204-31.854,16.252c1.069,1.441,1.248,3.782,2.1,4.997"/>
|
||||
<path opacity="0.4" fill="#8C8B85" d="M35,220c10.21-1.191,23.131-10.645,32.278-15.723c11.426-6.343,22.105-12.259,32.473-20.526
|
||||
c17.925-14.294,40.282-21.928,57.5-37.604c26.165,11.395,55.806,18.208,81.801,28.801c21.218,8.646,2.623,15.808-9.026,22.077
|
||||
c-11.583,6.233-24.629,11.577-34.776,21.001c-10.612,9.857-21.233,18.785-33.495,26.776C150.307,252.264,141.843,263.376,128,256
|
||||
c-13.13-6.996-24.691-11.43-39.023-16.199c-14.207-4.729-26.688-13.017-40.751-17.05C44.168,221.587,42.416,219.063,38,221"/>
|
||||
<path fill="#ABDDE9" d="M87.661,122.057C92.142,129.271,90.951,139.99,85,146s-14.406,5.034-18.888-2.181
|
||||
c-4.479-7.215-3.288-17.935,2.662-23.944C74.725,113.865,83.18,114.842,87.661,122.057z"/>
|
||||
<path fill="#D1D0CD" d="M83.671,125.647c2.88,4.637,2.132,11.511-1.671,15.353c-3.803,3.84-9.222,3.194-12.101-1.444
|
||||
c-2.882-4.638-2.132-11.512,1.671-15.353C75.373,120.363,80.791,121.008,83.671,125.647z"/>
|
||||
<g>
|
||||
<path fill="#ABDDE9" d="M113.974,123.681c4.481,7.213,3.289,17.933-2.661,23.943c-5.951,6.01-14.406,5.032-18.888-2.182
|
||||
c-4.481-7.214-3.29-17.934,2.661-23.943C101.036,115.488,109.493,116.464,113.974,123.681z"/>
|
||||
<path fill="#D1D0CD" d="M109.975,127.719c2.88,4.638,2.133,11.51-1.671,15.352c-3.804,3.842-9.222,3.196-12.102-1.442
|
||||
c-2.88-4.637-2.132-11.511,1.671-15.353C101.676,122.435,107.094,123.081,109.975,127.719z"/>
|
||||
</g>
|
||||
<polygon fill="#D1D0CD" points="140.269,134.279 131.655,150.198 116.809,149.574 110.576,133.034 119.19,117.116 134.037,117.739
|
||||
"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.2 KiB |
|
@ -1,41 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
width="341px" height="329px" viewBox="0 0 341 329" enable-background="new 0 0 341 329" xml:space="preserve">
|
||||
<path fill="none" d="M-243.321,310.151c4.236,2.69,7.549,7.308,9.434,13.208"/>
|
||||
<path fill="none" d="M-198.038,317.698c0.104,1.639,0.733,1.639,1.887,0"/>
|
||||
<path fill="none" d="M-248.981,500.718c0.043,2.615-0.133,5.229-1.887,1.887"/>
|
||||
<path fill="none" d="M-315.019,417.698c-0.874-2.107,0.456-3.383-2.082-4.895c2.567,4.578,6.12,8.258,9.629,12.442"/>
|
||||
<path fill="none" d="M-403.698,366.755c5.092,1.486,1.083-1.083,0-1.887"/>
|
||||
<path fill="none" d="M-499.924,334.68c0.629,0.629,1.258,1.258,1.887,1.887"/>
|
||||
<line fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" x1="234.038" y1="-140.792" x2="232.151" y2="-129.471"/>
|
||||
<line fill="none" stroke="#000000" stroke-miterlimit="10" x1="218.943" y1="-210.604" x2="215.17" y2="-195.509"/>
|
||||
<path fill="#D1D0CD" d="M92.283,140.985c3.515,11.945-1.584,31.049-3.325,43.336c-1.096,7.737-0.674,14.933-1.334,22.585
|
||||
c-0.514,5.959-5.69,16.233-2.003,20.834c21.699-11.36,44.418-18.437,65.394-27.824c12.955-5.798,25.332-11.741,38.421-17.099
|
||||
c4.039-1.653,16.231-4.355,18.49-7.22c2.729-3.46,0.652-15.564,1.081-19.814c1.982-19.642,8.925-40.727,8.35-60.069
|
||||
c-10.339-2.128-22.977,8.506-32.816,11.438c-10.347,3.083-20.353,6.015-30.341,11.008c-10.304,5.15-20.796,8.49-31.993,11.524
|
||||
c-9.364,2.536-24.207,3.235-30.797,10.318c0.793,1.362,0.673,3.395,1.296,4.537"/>
|
||||
<path opacity="0.4" fill="#8C8B85" d="M86.296,229.492c9.386,0.147,22.224-6.498,31.117-9.815
|
||||
c11.109-4.143,21.491-8.004,31.875-13.922c17.953-10.233,39.112-14.231,56.592-25.734c22.308,12.8,48.315,22.06,70.566,34.151
|
||||
c18.162,9.87,0.464,13.894-10.838,17.947c-11.238,4.03-23.693,7.127-34.017,14.066c-10.797,7.258-21.49,13.715-33.555,19.179
|
||||
c-11.263,5.102-20.267,13.685-31.907,5.754c-11.04-7.521-20.97-12.661-33.366-18.406c-12.289-5.696-22.585-14.256-34.828-19.337
|
||||
c-3.532-1.467-4.814-3.838-9.045-2.679"/>
|
||||
<path fill="#ABDDE9" d="M146.797,147.32c3.185,6.718,0.812,15.798-5.301,20.282c-6.113,4.484-13.648,2.675-16.834-4.043
|
||||
c-3.183-6.718-0.81-15.799,5.302-20.283C136.078,138.792,143.613,140.602,146.797,147.32z"/>
|
||||
<path fill="#D1D0CD" d="M143.074,149.811c2.046,4.317,0.539,10.142-3.368,13.009c-3.907,2.866-8.734,1.688-10.779-2.63
|
||||
c-2.049-4.319-0.539-10.143,3.368-13.009C136.201,144.315,141.027,145.492,143.074,149.811z"/>
|
||||
<g>
|
||||
<path fill="#ABDDE9" d="M165.419,158.736c3.185,6.717,0.811,15.797-5.301,20.282c-6.114,4.484-13.649,2.673-16.833-4.044
|
||||
c-3.185-6.717-0.812-15.798,5.301-20.281C154.698,150.207,162.236,152.017,165.419,158.736z"/>
|
||||
<path fill="#D1D0CD" d="M161.312,161.749c2.047,4.318,0.54,10.142-3.367,13.008c-3.908,2.867-8.734,1.689-10.781-2.629
|
||||
c-2.047-4.317-0.54-10.142,3.367-13.009C154.438,156.254,159.265,157.431,161.312,161.749z"/>
|
||||
</g>
|
||||
<polygon fill="#D1D0CD" points="186.941,174.867 177.221,187.566 163.857,185.326 160.214,170.388 169.935,157.69 183.298,159.93
|
||||
"/>
|
||||
<path fill="#F0A5B7" d="M189.211,67.509c8.001,5.324,18.511,28.271,31.071,23.432c11.945-4.601,17.078-21.88,31.502-25.167
|
||||
c-7.34,0.713-15.285,0.078-22.776,0.632c-7.229,0.534-16.102,2.558-23.371,0.796c-6.109-1.48-11.061-10.584-17.05-8.546
|
||||
c-9.297,3.164-0.839,12.709,5.573,12.981"/>
|
||||
<path fill="#E8ED19" d="M182.695,61.432c-0.307,7.417-5.47,18.801-9.004,25.898c5.028-4.479,9.184-11.098,13.259-16.239
|
||||
c-2.974-1.09-5.54-5.185-6.669-5.589"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.6 KiB |
2417
public/style.css
1
public/vendor/croppa/vue-croppa.min.css
vendored
|
@ -1 +0,0 @@
|
|||
.sk-fading-circle{position:absolute}.sk-fading-circle .sk-circle{width:100%;height:100%;position:absolute;left:0;top:0}.sk-fading-circle .sk-circle .sk-circle-indicator{display:block;margin:0 auto;width:15%;height:15%;border-radius:100%;-webkit-animation:sk-circleFadeDelay 1s infinite ease-in-out both;animation:sk-circleFadeDelay 1s infinite ease-in-out both}.sk-fading-circle .sk-circle2{-webkit-transform:rotate(30deg);transform:rotate(30deg)}.sk-fading-circle .sk-circle3{-webkit-transform:rotate(60deg);transform:rotate(60deg)}.sk-fading-circle .sk-circle4{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.sk-fading-circle .sk-circle5{-webkit-transform:rotate(120deg);transform:rotate(120deg)}.sk-fading-circle .sk-circle6{-webkit-transform:rotate(150deg);transform:rotate(150deg)}.sk-fading-circle .sk-circle7{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.sk-fading-circle .sk-circle8{-webkit-transform:rotate(210deg);transform:rotate(210deg)}.sk-fading-circle .sk-circle9{-webkit-transform:rotate(240deg);transform:rotate(240deg)}.sk-fading-circle .sk-circle10{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.sk-fading-circle .sk-circle11{-webkit-transform:rotate(300deg);transform:rotate(300deg)}.sk-fading-circle .sk-circle12{-webkit-transform:rotate(330deg);transform:rotate(330deg)}.sk-fading-circle .sk-circle2 .sk-circle-indicator{-webkit-animation-delay:-.91667s;animation-delay:-.91667s}.sk-fading-circle .sk-circle3 .sk-circle-indicator{-webkit-animation-delay:-.83333s;animation-delay:-.83333s}.sk-fading-circle .sk-circle4 .sk-circle-indicator{-webkit-animation-delay:-.75s;animation-delay:-.75s}.sk-fading-circle .sk-circle5 .sk-circle-indicator{-webkit-animation-delay:-.66667s;animation-delay:-.66667s}.sk-fading-circle .sk-circle6 .sk-circle-indicator{-webkit-animation-delay:-.58333s;animation-delay:-.58333s}.sk-fading-circle .sk-circle7 .sk-circle-indicator{-webkit-animation-delay:-.5s;animation-delay:-.5s}.sk-fading-circle .sk-circle8 .sk-circle-indicator{-webkit-animation-delay:-.41667s;animation-delay:-.41667s}.sk-fading-circle .sk-circle9 .sk-circle-indicator{-webkit-animation-delay:-.33333s;animation-delay:-.33333s}.sk-fading-circle .sk-circle10 .sk-circle-indicator{-webkit-animation-delay:-.25s;animation-delay:-.25s}.sk-fading-circle .sk-circle11 .sk-circle-indicator{-webkit-animation-delay:-.16667s;animation-delay:-.16667s}.sk-fading-circle .sk-circle12 .sk-circle-indicator{-webkit-animation-delay:-83.33ms;animation-delay:-83.33ms}@-webkit-keyframes sk-circleFadeDelay{0%,100%,39%{opacity:0}40%{opacity:1}}@keyframes sk-circleFadeDelay{0%,100%,39%{opacity:0}40%{opacity:1}}.croppa-container{display:inline-block;cursor:pointer;-webkit-transition:all .3s;transition:all .3s;position:relative;font-size:0;-ms-flex-item-align:start;align-self:flex-start;background-color:#e6e6e6}.croppa-container canvas{-webkit-transition:all .3s;transition:all .3s}.croppa-container:hover{opacity:.7}.croppa-container.croppa--dropzone{-webkit-box-shadow:inset 0 0 10px #333;box-shadow:inset 0 0 10px #333}.croppa-container.croppa--dropzone canvas{opacity:.5}.croppa-container.croppa--disabled-cc{cursor:default}.croppa-container.croppa--disabled-cc:hover{opacity:1}.croppa-container.croppa--has-target{cursor:move}.croppa-container.croppa--has-target:hover{opacity:1}.croppa-container.croppa--has-target.croppa--disabled-mz{cursor:default}.croppa-container.croppa--disabled{cursor:not-allowed}.croppa-container.croppa--disabled:hover{opacity:1}.croppa-container.croppa--passive{cursor:default}.croppa-container.croppa--passive:hover{opacity:1}.croppa-container svg.icon-remove{position:absolute;background:#fff;border-radius:50%;-webkit-filter:drop-shadow(-2px 2px 2px rgba(0,0,0,.7));filter:drop-shadow(-2px 2px 2px rgba(0,0,0,.7));z-index:10;cursor:pointer;border:2px solid #fff}
|
|
@ -4,98 +4,12 @@
|
|||
@import './variables.scss';
|
||||
@import './mixins.scss';
|
||||
@import "../../node_modules/bulma/bulma.sass";
|
||||
@import "./overrides.scss";
|
||||
|
||||
@import url('/vendor/croppa/vue-croppa.min.css');
|
||||
// @import '../../node_modules/animate.css/source/_base.css';
|
||||
// nav.navbar {
|
||||
// padding-left: 5rem;
|
||||
// padding-right: 5rem;
|
||||
// }
|
||||
html{
|
||||
scroll-behavior: smooth;
|
||||
.navbar {
|
||||
background:#fafafa;
|
||||
}
|
||||
.hero-bg{
|
||||
// @include pattern(#c0ebfa, #7FD7F5);
|
||||
// @include pattern(#c1d7df, rgb(183, 236, 253));
|
||||
background-image: url('/images/clouds-bg.svg');
|
||||
background-size: cover;
|
||||
background-color: #fff;
|
||||
position: relative;
|
||||
// @include linearGradient(#eef6fc, #f8afaf);
|
||||
// background: url('/images/whale.svg') 15% 25% no-repeat, linear-gradient(to bottom, #eef6fc 0%, #f8afaf 100%);
|
||||
// background-size: 250px, auto;
|
||||
// background-position: ;
|
||||
// background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
.hero-bg-svg{
|
||||
background-image: url("/images/cloudgroup.svg"), url('/images/sun+clouds.svg');
|
||||
background-size: cover, contain;
|
||||
background-position: center, center;
|
||||
background-repeat: no-repeat, no-repeat;
|
||||
}
|
||||
|
||||
.bg-moon-stars{
|
||||
background-image: url('/images/moon+stars.svg');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.bg-sun-cloud{
|
||||
background-image: url('/images/sun+cloud.svg');
|
||||
background-position: center top;
|
||||
background-repeat: no-repeat;
|
||||
// background-size: ;
|
||||
}
|
||||
|
||||
.bg-flower{
|
||||
background-image: url('/images/flowers.svg');
|
||||
background-position: right bottom;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 40%;
|
||||
// background-size: contain;
|
||||
}
|
||||
|
||||
.scroll-down-indicator{
|
||||
position: absolute;
|
||||
bottom: 25px;
|
||||
left: 50%;
|
||||
animation: bounce 1.5s;
|
||||
animation-delay: 1s;
|
||||
animation-iteration-count: 2;
|
||||
transform: translate(-50%,0);
|
||||
|
||||
}
|
||||
|
||||
@keyframes bounce {
|
||||
0%, 20%, 53%, 80%, 100% {
|
||||
-webkit-transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
|
||||
transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
|
||||
-webkit-transform: translate3d(-50%,0,0);
|
||||
transform: translate3d(-50%,0,0);
|
||||
}
|
||||
40%, 43% {
|
||||
-webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
|
||||
transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
|
||||
-webkit-transform: translate3d(-50%, -30px, 0);
|
||||
transform: translate3d(-50%, -30px, 0);
|
||||
}
|
||||
70% {
|
||||
-webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
|
||||
transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
|
||||
-webkit-transform: translate3d(-50%, -15px, 0);
|
||||
transform: translate3d(-50%, -15px, 0);
|
||||
}
|
||||
90% {
|
||||
-webkit-transform: translate3d(-50%,-4px,0); transform: translate3d(-50%,-4px,0);
|
||||
}
|
||||
}
|
||||
.landing-featue-image{
|
||||
max-height: 180px !important;
|
||||
width: auto;
|
||||
object-fit: contain;
|
||||
z-index: 0;
|
||||
@include pattern(#c0ebfa, #7FD7F5);
|
||||
}
|
||||
.navbar-menu{
|
||||
&.is-active{
|
||||
|
@ -146,7 +60,6 @@ $sizes: (
|
|||
('lg', 2),
|
||||
('xl', 4),
|
||||
('xxl', 8),
|
||||
('diego', 6.25),
|
||||
);
|
||||
$positions: (
|
||||
('t', 'top'),
|
||||
|
@ -215,17 +128,11 @@ $sizes: (
|
|||
|
||||
.is-fullheight{
|
||||
min-height: calc(100vh - ( #{$navbar-height} ) );
|
||||
// max-height: calc(100vh - ( #{$navbar-height} ) );
|
||||
// height: calc(100vh - ( #{$navbar-height} ) );
|
||||
// .column{
|
||||
// overflow-y: auto;
|
||||
// }
|
||||
}
|
||||
.is-fullwidth-container{
|
||||
width:100%;
|
||||
}
|
||||
.is-fullheight-container{
|
||||
height:100%;
|
||||
max-height: calc(100vh - ( #{$navbar-height} ) );
|
||||
height: calc(100vh - ( #{$navbar-height} ) );
|
||||
.column{
|
||||
overflow-y: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.is-fullwidth{
|
||||
|
@ -317,11 +224,9 @@ $sizes: (
|
|||
}
|
||||
// TODO: Remove this - make generic
|
||||
.flipbook {
|
||||
width: 99%;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
height: 75vh;
|
||||
overflow-y: visible;
|
||||
object-fit: contain;
|
||||
transition: opacity .5s;
|
||||
}
|
||||
.book-flip-buttons{
|
||||
height: 100%;
|
||||
|
@ -334,260 +239,28 @@ $sizes: (
|
|||
}
|
||||
|
||||
video{
|
||||
// margin-left: 5px;
|
||||
// margin-right: 5px;
|
||||
margin-left: 5px;
|
||||
margin-right: 5px;
|
||||
background-color:rgba(56, 181, 187, 0.19);
|
||||
// border-radius: 15px;
|
||||
border-radius: 15px;
|
||||
border: solid 1px rgba(56, 181, 187, 0.30);
|
||||
flex-basis: 100%;
|
||||
// max-width: 15vh;
|
||||
}
|
||||
.has-wrap{
|
||||
flex-wrap: wrap;
|
||||
max-width: 15vh;
|
||||
}
|
||||
|
||||
.book-thumb{
|
||||
// cursor: not-allowed;
|
||||
cursor: pointer;
|
||||
transition: all .2s;
|
||||
z-index: inherit;
|
||||
flex-basis: 12%;
|
||||
text-align: center;
|
||||
min-width: 180px;
|
||||
background-color: whitesmoke;
|
||||
padding: 5px;
|
||||
margin: 5px;
|
||||
}
|
||||
.book-thumb.enabled{
|
||||
cursor: pointer;
|
||||
&:hover{
|
||||
transform: scale(1.1);
|
||||
z-index: 10;
|
||||
// box-shadow: 10px 0px 15px -13px rgba(0,0,0,0.35);
|
||||
}
|
||||
}
|
||||
.book-cover{
|
||||
position:relative;
|
||||
border: 1px solid rgba(0,0,0,.4);
|
||||
.image{
|
||||
&:before{
|
||||
border: 1px solid rgba(0,0,0,.4);
|
||||
content: "";
|
||||
position: absolute;
|
||||
top:3px;
|
||||
left:3px;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
//Fade vue transition
|
||||
.fade-enter-active, .fade-leave-active {
|
||||
transition: opacity 0.2s ease-in-out;
|
||||
position: absolute;
|
||||
}
|
||||
.fade-enter-active{
|
||||
transition-delay: 0.2s;
|
||||
}
|
||||
.fade-enter, .fade-leave-to{
|
||||
opacity: 0;
|
||||
}
|
||||
.fade-enter-to, .fade-leave{
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
|
||||
.slide-left-enter-active,
|
||||
.slide-left-leave-active,
|
||||
.slide-right-enter-active,
|
||||
.slide-right-leave-active {
|
||||
transition-duration: 0.2s;
|
||||
transition-property: height, opacity, transform;
|
||||
transition-timing-function: ease-in-out;
|
||||
overflow: hidden;
|
||||
}
|
||||
.slide-left-enter-active,
|
||||
.slide-right-enter-active{
|
||||
transition-delay: 0.2s;
|
||||
}
|
||||
|
||||
.slide-left-enter,
|
||||
.slide-right-leave-active {
|
||||
opacity: 0;
|
||||
transform: translate(2em, 0);
|
||||
}
|
||||
|
||||
.slide-left-leave-active,
|
||||
.slide-right-enter {
|
||||
opacity: 0;
|
||||
transform: translate(-2em, 0);
|
||||
}
|
||||
|
||||
.has-diego-width-800{
|
||||
max-width: 50rem;
|
||||
}
|
||||
.is-borderless{
|
||||
border: none;
|
||||
}
|
||||
.is-justify-centered{
|
||||
justify-content: center;
|
||||
}
|
||||
.is-justify-between{
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
|
||||
.video-side-bar{
|
||||
height: calc(100vh - ( #{$navbar-height} ) );
|
||||
video{
|
||||
width: 100%;
|
||||
height: 50%;
|
||||
object-fit: cover;
|
||||
}
|
||||
}
|
||||
|
||||
.book-view{
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
.is-transparent{
|
||||
opacity: 0;
|
||||
}
|
||||
.is-mirrored{
|
||||
transform: scaleX(-1);
|
||||
}
|
||||
.is-relative{
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.editable-image{
|
||||
|
||||
cursor: pointer;
|
||||
&:hover{
|
||||
&::after{
|
||||
opacity: 1;
|
||||
transform: scaleY(1);
|
||||
height: 54px;
|
||||
}
|
||||
}
|
||||
&::after{
|
||||
opacity: 0;
|
||||
transform: scaleY(0);
|
||||
transition: all .3s;
|
||||
position: absolute;
|
||||
bottom:0;
|
||||
left:0;
|
||||
content: '\f093';
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
height: 0%;
|
||||
background-color: rgba(0, 0, 0, .4);
|
||||
font: normal normal normal 14px/1 ForkAwesome;
|
||||
color: whitesmoke;
|
||||
font-size: 50px;
|
||||
padding-top: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.is-flex-column{
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
//edit page
|
||||
.page-editor{
|
||||
|
||||
.croppa-container {
|
||||
border: 2px solid whitesmoke;
|
||||
border-radius: 8px;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
.book-thumb.page-preview{
|
||||
// flex-basis: unset;
|
||||
}
|
||||
.book-stitch-preview-left{
|
||||
&::before{
|
||||
content: '';
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
// background-color: black;
|
||||
width:50%;
|
||||
left:-50%;
|
||||
top:0;
|
||||
mask-image: linear-gradient(to left, rgba(0,0,0,.3) 0%, transparent 100%);
|
||||
background: url('/images/default-user-avatar.png');
|
||||
}
|
||||
}
|
||||
.stitch-preview-right{
|
||||
// position: absolute;
|
||||
// top:0;
|
||||
// right:0;
|
||||
border: solid 1px whitesmoke;
|
||||
&::after{
|
||||
content: '';
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
// background-color: black;
|
||||
width:100%;
|
||||
left:0;
|
||||
top:0;
|
||||
background: linear-gradient(to right, transparent 0%, white 80%);
|
||||
}
|
||||
}
|
||||
.stitch-preview-left{
|
||||
// position: absolute;
|
||||
// top:0;
|
||||
// left:0;
|
||||
border: solid 1px whitesmoke;
|
||||
&::after{
|
||||
content: '';
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
// background-color: black;
|
||||
width:100%;
|
||||
left:0;
|
||||
top:0;
|
||||
background: linear-gradient(to left, transparent 0%, white 80%);
|
||||
}
|
||||
|
||||
}
|
||||
.book-stitch-preview-right{
|
||||
&::after{
|
||||
content: '';
|
||||
|
||||
background: url('/images/default-user-avatar.png');
|
||||
}
|
||||
}
|
||||
.edit-page-controllers{
|
||||
border-radius: 15px;
|
||||
background-color: rgba(134, 134, 134, 0.1);
|
||||
}
|
||||
.book-uploading-overlay{
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
background-color: rgba($color: #000000, $alpha: .6);
|
||||
z-index: 100;
|
||||
}
|
||||
.height-max-view{
|
||||
max-height: calc(99vh - ( #{$navbar-height} ) );
|
||||
}
|
||||
.book-uploading-overlay-content{
|
||||
position: relative;
|
||||
top:50%;
|
||||
left:50%;
|
||||
transform: translate(-50%, -50%);
|
||||
max-width: 600px;
|
||||
.title{
|
||||
color: whitesmoke;
|
||||
opacity: 1;
|
||||
}
|
||||
.subtitle{
|
||||
color: whitesmoke;
|
||||
opacity: 0.8;
|
||||
}
|
||||
.book-thumb:disabled:hover{
|
||||
cursor: not-allowed;
|
||||
transform: scale(1);
|
||||
}
|
||||
|
|
|
@ -42,6 +42,6 @@
|
|||
rgba($bg-primary,0.4) 0,
|
||||
rgba($bg-primary,0.1) 2em
|
||||
), #FFF;
|
||||
// background-blend-mode: multiply;
|
||||
background-blend-mode: multiply;
|
||||
// background-attachment: fixed;
|
||||
}
|
||||
|
|
|
@ -1,202 +0,0 @@
|
|||
// Overrides
|
||||
@if $bulmaswatch-import-font {
|
||||
@import url("https://fonts.googleapis.com/css?family=Montserrat&display=swap");
|
||||
}
|
||||
|
||||
.modal-card-title,
|
||||
.subtitle,
|
||||
.title,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-weight: 700;
|
||||
font-family: $family-heading;
|
||||
}
|
||||
|
||||
.button,
|
||||
.control.has-icons-left .icon,
|
||||
.control.has-icons-right .icon,
|
||||
.input,
|
||||
.pagination-ellipsis,
|
||||
.pagination-link,
|
||||
.pagination-next,
|
||||
.pagination-previous,
|
||||
.select,
|
||||
.select select,
|
||||
.textarea {
|
||||
height: 2.534em;
|
||||
}
|
||||
|
||||
.image.is-light{
|
||||
background-color: whitesmoke;
|
||||
color: rgba(0, 0, 0, 0.7);
|
||||
}
|
||||
|
||||
.button {
|
||||
transition: all 200ms ease;
|
||||
font-weight: 500;
|
||||
font-family: $family-heading;
|
||||
|
||||
&.is-active,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&:focus {
|
||||
box-shadow: 0 0 0 2px rgba($button-focus-border-color, 0.25);
|
||||
}
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: nth($pair, 2);
|
||||
|
||||
&.is-#{$name} {
|
||||
&.is-active,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&:focus {
|
||||
border-color: $color;
|
||||
box-shadow: 0 0 0 2px rgba($color, 0.25);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.input,
|
||||
.textarea {
|
||||
transition: all 200ms ease;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.notification {
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: nth($pair, 2);
|
||||
|
||||
&.is-#{$name} {
|
||||
a:not(.button) {
|
||||
color: $color-invert;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.card {
|
||||
box-shadow: none;
|
||||
border: 1px solid $grey-lighter;
|
||||
border-radius: $radius;
|
||||
|
||||
.card-image {
|
||||
img {
|
||||
border-radius: $radius $radius 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.card-header {
|
||||
box-shadow: none;
|
||||
border-bottom: 1px solid $grey-lighter;
|
||||
border-radius: $radius $radius 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.card-header-title,
|
||||
.menu-label,
|
||||
.message-header,
|
||||
.panel-heading {
|
||||
font-family: $family-heading;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.menu-list a {
|
||||
border-radius: $radius;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
border-radius: $radius;
|
||||
|
||||
.navbar-item,
|
||||
.navbar-link {
|
||||
font-family: $family-heading;
|
||||
transition: all 300ms;
|
||||
}
|
||||
|
||||
@include touch {
|
||||
.navbar-menu {
|
||||
background-color: inherit;
|
||||
border-radius: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-dropdown .navbar-item {
|
||||
@include desktop {
|
||||
color: $text;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-transparent {
|
||||
background-color: transparent;
|
||||
.navbar-item,
|
||||
.navbar-link {
|
||||
color: rgba($text, 0.75);
|
||||
|
||||
&.is-active {
|
||||
color: $text;
|
||||
}
|
||||
|
||||
&:after {
|
||||
border-color: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: nth($pair, 2);
|
||||
|
||||
&.is-#{$name} {
|
||||
.navbar-start,
|
||||
.navbar-end {
|
||||
> .navbar-item,
|
||||
.navbar-link {
|
||||
color: rgba($color-invert, 0.75);
|
||||
|
||||
&.is-active {
|
||||
color: $color-invert;
|
||||
}
|
||||
}
|
||||
}
|
||||
@include touch {
|
||||
.navbar-item,
|
||||
.navbar-link {
|
||||
color: rgba($color-invert, 0.75);
|
||||
|
||||
&.is-active {
|
||||
color: $color-invert;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.hero {
|
||||
// Colors
|
||||
.navbar {
|
||||
background-color: $primary;
|
||||
}
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: nth($pair, 2);
|
||||
|
||||
&.is-#{$name} {
|
||||
.navbar {
|
||||
background: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.panel-block.is-active {
|
||||
color: $primary;
|
||||
}
|
|
@ -1,45 +1,9 @@
|
|||
////////////////////////////////////////////////
|
||||
// MINTY
|
||||
////////////////////////////////////////////////
|
||||
$grey: #888;
|
||||
$grey-light: #aaa;
|
||||
$grey-lighter: #dbdbdb;
|
||||
|
||||
$orange: #eea170;
|
||||
$yellow: #ffce67;
|
||||
$green: #56cc90;
|
||||
$cyan: #6cc3d5;
|
||||
$blue: #6d90d6;
|
||||
$red: #e07f7d;
|
||||
$turquoise: #6abfb0;
|
||||
|
||||
$danger: $orange;
|
||||
|
||||
$text: darken($grey, 10);
|
||||
$subtitle-color: $grey;
|
||||
|
||||
$size-1: 2.5rem;
|
||||
$size-2: 2rem;
|
||||
$size-3: 1.75rem;
|
||||
$size-4: 1.5rem;
|
||||
$size-5: 1.25rem;
|
||||
$size-6: 15px;
|
||||
$size-7: 0.75rem;
|
||||
|
||||
$radius-small: 4px;
|
||||
$radius: 6px;
|
||||
$radius-large: 8px;
|
||||
|
||||
$family-heading: "Montserrat", -apple-system, system-ui, BlinkMacSystemFont,
|
||||
"Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
|
||||
$navbar-background-color: $turquoise;
|
||||
$navbar-item-color: rgba(#fff, 0.75);
|
||||
$navbar-item-hover-color: #fff;
|
||||
$navbar-item-active-color: #fff;
|
||||
$navbar-item-hover-background-color: rgba(#000, 0.1);
|
||||
$navbar-dropdown-arrow: $navbar-item-color;
|
||||
|
||||
$bulmaswatch-import-font: true !default;
|
||||
|
||||
$box-shadow: 0 0 0 1px $grey-lighter;
|
||||
// Update Bulma's global variables
|
||||
// $family-sans-serif: "Nunito", sans-serif;
|
||||
$grey-dark: $brown;
|
||||
$grey-light: $beige-light;
|
||||
$primary: $purple;
|
||||
// $primary: #7FD7F5;
|
||||
$link: $pink;
|
||||
$widescreen-enabled: false;
|
||||
$fullhd-enabled: false;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="app">
|
||||
<!-- <Header :appName="appName" /> -->
|
||||
<TopNavbar :ws="this.ws" />
|
||||
<TopNavbar />
|
||||
<div class="loading" v-if="loading">
|
||||
<Loading />
|
||||
</div>
|
||||
|
@ -30,7 +30,7 @@ import Notification from "../shared/components/Notification.vue";
|
|||
import { mapActions, mapGetters } from "vuex";
|
||||
import Loading from "../shared/components/Loading/Loading.vue";
|
||||
import TopNavbar from "../shared/components/TopNavbar.vue";
|
||||
import WebsocketService from "./ws/websocket.service";
|
||||
import WebsocketService from "./scripts/websocket.service";
|
||||
// import AppRouter from "./router/router.vue";
|
||||
|
||||
// Services.ApiService.getConnections();
|
||||
|
@ -45,8 +45,7 @@ export default {
|
|||
TopNavbar
|
||||
},
|
||||
async created() {
|
||||
const u = await this.getUser();
|
||||
// console.log(u);
|
||||
await this.getUser();
|
||||
this.ws = await WebsocketService.getInstance();
|
||||
this.ws.on(WebsocketService.Events.CONNECTION_ONLINE, user => {
|
||||
console.log(`User Online: ${JSON.stringify(user, null, 2)}`);
|
||||
|
|
|
@ -1,9 +1,5 @@
|
|||
import WebSocketService from "./websocket.service";
|
||||
import WebSocketService from "../scripts/websocket.service";
|
||||
import { EventEmitter } from "events";
|
||||
|
||||
|
||||
let singleton: CallManager = null;
|
||||
|
||||
export default class CallManager {
|
||||
private inCall: boolean;
|
||||
public peerId: number;
|
||||
|
@ -17,9 +13,7 @@ export default class CallManager {
|
|||
public isHost = false;
|
||||
public books = [];
|
||||
public currentActivity = null;
|
||||
public callId;
|
||||
private userId: number
|
||||
constructor(private ws: WebSocketService) {
|
||||
constructor(private ws: WebSocketService, readonly callId: number, private userId: number) {
|
||||
this.inCall = false;
|
||||
this.peerId = null;
|
||||
this.pc = null;
|
||||
|
@ -27,10 +21,8 @@ export default class CallManager {
|
|||
}
|
||||
|
||||
|
||||
async connectToCall(userId: number, mediaConstraints: MediaStreamConstraints, callId: number): Promise<boolean> {
|
||||
async connectToCall(mediaConstraints: MediaStreamConstraints): Promise<boolean> {
|
||||
if (this.inCall) throw new Error('Already connected to call');
|
||||
this.callId = callId;
|
||||
this.userId = userId;
|
||||
console.log('connecting to call');
|
||||
await this.getUserMedia(mediaConstraints);
|
||||
this.signalingChannel = this.ws.subscribe(`call:${this.callId}`);
|
||||
|
@ -61,9 +53,6 @@ export default class CallManager {
|
|||
on(event: ECallEvents, callback: (...args) => void) {
|
||||
this.emitter.on(event, callback);
|
||||
}
|
||||
removeListener(event: ECallEvents, callback: (...args) => void) {
|
||||
this.emitter.removeListener(event, callback);
|
||||
}
|
||||
private emit(event: ECallEvents, data: any) {
|
||||
this.emitter.emit(event, data);
|
||||
}
|
||||
|
@ -80,7 +69,7 @@ export default class CallManager {
|
|||
console.log(payload);
|
||||
this.peerId = payload.peerId;
|
||||
this.books = payload.books;
|
||||
this.isHost = this.userId === payload.hostId;
|
||||
this.isHost = this.peerId === payload.hostId;
|
||||
this.pc = new RTCPeerConnection({ iceServers: payload.iceServers });
|
||||
this.child = payload.child;
|
||||
payload.users.forEach(u => {
|
||||
|
@ -105,7 +94,7 @@ export default class CallManager {
|
|||
console.log(payload);
|
||||
this.peerId = payload.peerId;
|
||||
this.books = payload.books;
|
||||
this.isHost = this.userId === payload.hostId;
|
||||
this.isHost = this.peerId === payload.hostId;
|
||||
this.pc = new RTCPeerConnection({ iceServers: payload.iceServers });
|
||||
this.child = payload.child;
|
||||
payload.users.forEach(u => {
|
||||
|
@ -126,7 +115,6 @@ export default class CallManager {
|
|||
}
|
||||
public backToLobby() {
|
||||
console.log('-------> backToLobby');
|
||||
this.emitter.removeAllListeners(ECallEvents.ACTION_BOOK_FLIP);
|
||||
this.send('call:view:lobby', {});
|
||||
}
|
||||
|
||||
|
@ -206,12 +194,11 @@ export default class CallManager {
|
|||
}
|
||||
|
||||
onRemoteHostChanged(payload) {
|
||||
this.isHost = this.userId === payload.hostId;
|
||||
this.isHost = this.peerId === payload.hostId;
|
||||
this.emit(ECallEvents.CALL_HOST_CHANGED, payload);
|
||||
}
|
||||
|
||||
onRemoteViewLobby(payload) {
|
||||
this.emitter.removeAllListeners(ECallEvents.ACTION_BOOK_FLIP);
|
||||
this.emit(ECallEvents.CALL_VIEW_LOBBY, null);
|
||||
}
|
||||
onRemoteViewBook(payload) {
|
||||
|
@ -219,8 +206,8 @@ export default class CallManager {
|
|||
}
|
||||
|
||||
close() {
|
||||
if (!this.inCall) return;
|
||||
console.log('Closing...');
|
||||
if (!this.inCall) return;
|
||||
this.emit(ECallEvents.CLOSE, this.callId);
|
||||
if (this.signalingChannel) this.signalingChannel.close();
|
||||
this.signalingChannel = null;
|
||||
|
@ -228,9 +215,7 @@ export default class CallManager {
|
|||
if (this.localStream) this.localStream.getTracks().forEach(t => t.stop());
|
||||
this.localStream = null;
|
||||
this.remoteStream = null;
|
||||
this.emitter.removeAllListeners();
|
||||
this.inCall = false;
|
||||
singleton = null;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,121 +0,0 @@
|
|||
<template>
|
||||
<Modal
|
||||
title="Add your child"
|
||||
:isActive="isActive"
|
||||
acceptText="Add"
|
||||
rejectText="Cancel"
|
||||
@accept="addChild()"
|
||||
@close="onColse()"
|
||||
>
|
||||
<h2 class="subtitle">I am the proud parent of:</h2>
|
||||
<form class="form" id="form-add-child">
|
||||
<div class="field">
|
||||
<label class="label">Name</label>
|
||||
<div class="control has-icons-left">
|
||||
<input
|
||||
:class="`input ${!!errors.name ? 'is-danger' : ''}`"
|
||||
required="true"
|
||||
name="name"
|
||||
type="text"
|
||||
placeholder="John Snow"
|
||||
:disabled="!childValidation.enableInput"
|
||||
v-model="childValidation.name"
|
||||
/>
|
||||
<span class="icon is-small is-left">
|
||||
<i class="fa fa-id-card"></i>
|
||||
</span>
|
||||
</div>
|
||||
<p class="help is-danger" v-if="!!errors.name">{{ `${errors.name.message}` }}</p>
|
||||
<!-- TODO: Error messages -->
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label class="label">Birthday</label>
|
||||
<div class="control has-icons-left">
|
||||
<input
|
||||
:class="`input ${!!errors.dob ? 'is-danger' : ''}`"
|
||||
required="true"
|
||||
name="dob"
|
||||
type="date"
|
||||
:disabled="!childValidation.enableInput"
|
||||
v-model="childValidation.dob"
|
||||
/>
|
||||
<span class="icon is-small is-left">
|
||||
<i class="fa fa-gift"></i>
|
||||
</span>
|
||||
</div>
|
||||
<p class="help is-danger" v-if="!!errors.dob">{{ `${errors.dob.message}` }}</p>
|
||||
</div>
|
||||
<ImagePicker ref="imagePicker" initialImage="/images/default-child-avatar.png" />
|
||||
</form>
|
||||
</Modal>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts">
|
||||
import Modal from "../../shared/components/Modal/Modal.vue";
|
||||
import Services from "../../services";
|
||||
import ImagePicker from "./ImagePicker.vue";
|
||||
export default {
|
||||
name: "AddChildModal",
|
||||
components: {
|
||||
Modal,
|
||||
ImagePicker
|
||||
},
|
||||
props: ["isActive"],
|
||||
data() {
|
||||
return {
|
||||
errors: {},
|
||||
childValidation: {
|
||||
enableInput: true,
|
||||
name: null,
|
||||
dob: null,
|
||||
avatar: null
|
||||
}
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
onColse() {
|
||||
this.$emit("onClose");
|
||||
this.childValidation.name = null;
|
||||
this.childValidation.dob = null;
|
||||
this.childValidation.avatar = null;
|
||||
},
|
||||
async addChild() {
|
||||
this.errors = {};
|
||||
this.childValidation.enableInput = false;
|
||||
const childData = {
|
||||
name: this.childValidation.name,
|
||||
dob: this.childValidation.dob,
|
||||
avatar: this.$refs.imagePicker.generateDataUrl("image/png", 0.8)
|
||||
};
|
||||
if (this.$refs.imagePicker.isDefaultImage) delete childData.avatar;
|
||||
try {
|
||||
const response = await Services.ApiService.createChild(
|
||||
childData.name,
|
||||
childData.dob,
|
||||
childData.avatar
|
||||
);
|
||||
if (response.code === 201) this.$emit("onCreated", response.child);
|
||||
else if (response.code === 400) {
|
||||
response.message.forEach(m => {
|
||||
this.errors[m.field] = m;
|
||||
});
|
||||
} else {
|
||||
this.$emit("onFail", response.message);
|
||||
this.childValidation.name = null;
|
||||
this.childValidation.dob = null;
|
||||
this.childValidation.avatar = null;
|
||||
}
|
||||
} catch (e) {
|
||||
this.$emit("onFail", e.message);
|
||||
this.childValidation.name = null;
|
||||
this.childValidation.dob = null;
|
||||
this.childValidation.avatar = null;
|
||||
}
|
||||
this.childValidation.enableInput = true;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
|
@ -1,42 +0,0 @@
|
|||
<template>
|
||||
<Modal
|
||||
title="Change Avatar"
|
||||
:isActive="isActive"
|
||||
acceptText="Update"
|
||||
rejectText="Cancel"
|
||||
@accept="emitAvatarChange()"
|
||||
@close="onColse()"
|
||||
>
|
||||
<ImagePicker ref="imagePicker" :initialImage="defaultImage" />
|
||||
</Modal>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts">
|
||||
import Modal from "../../shared/components/Modal/Modal.vue";
|
||||
import ImagePicker from "./ImagePicker.vue";
|
||||
export default {
|
||||
name: "ChangeAvatarModal",
|
||||
components: {
|
||||
Modal,
|
||||
ImagePicker
|
||||
},
|
||||
props: ["isActive", "defaultImage"],
|
||||
|
||||
data() {
|
||||
return {};
|
||||
},
|
||||
methods: {
|
||||
onColse() {
|
||||
this.$emit("onClose");
|
||||
},
|
||||
emitAvatarChange() {
|
||||
const event = {
|
||||
isDefaultImage: this.$refs.imagePicker.isDefaultImage,
|
||||
image: this.$refs.imagePicker.generateDataUrl("image/png", 0.8)
|
||||
};
|
||||
this.$emit("onAvatarSelected", event);
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
|
@ -1,20 +1,18 @@
|
|||
<template>
|
||||
<!-- <div class="card"> -->
|
||||
<!-- <div class="card-content " > -->
|
||||
<article class="media has-pointer" @click="goToChild(child)">
|
||||
<div class="media-left">
|
||||
<figure class="image is-48x48">
|
||||
<img class="is-rounded is-avatar" :src="child.avatar" :alt="child.name" />
|
||||
</figure>
|
||||
</div>
|
||||
<div class="media-content">
|
||||
<div class="content">
|
||||
<p class>{{child.name}}</p>
|
||||
<div class="card-content has-pointer" @click="goToChild(child)">
|
||||
<div class="media">
|
||||
<div class="media-left">
|
||||
<figure class="image is-48x48">
|
||||
<img class="is-rounded is-avatar" :src="child.avatar" :alt="child.name" />
|
||||
</figure>
|
||||
</div>
|
||||
<div class="media-content">
|
||||
<p class>{{child.name}}</p>
|
||||
<!-- <p class>{{childAge}}</p> -->
|
||||
</div>
|
||||
<!-- <p class>{{childAge}}</p> -->
|
||||
</div>
|
||||
</article>
|
||||
<!-- </div> -->
|
||||
</div>
|
||||
<!-- </div> -->
|
||||
</template>
|
||||
<script lang="ts">
|
||||
|
|
|
@ -1,98 +0,0 @@
|
|||
<template>
|
||||
<div class="columns has-text-centered">
|
||||
<div class="column">
|
||||
<figure class="image is-avatar is-inline-block is-light">
|
||||
<croppa
|
||||
v-model="croppa"
|
||||
:initial-image="initialImage"
|
||||
:prevent-white-space="true"
|
||||
:show-remove-button="false"
|
||||
:disable-drag-to-move="isDefaultImage"
|
||||
:accept="'image/*'"
|
||||
@new-image="isDefaultImage=false;zoomState=1"
|
||||
></croppa>
|
||||
</figure>
|
||||
</div>
|
||||
<div class="column is-flex-column m-t-md m-b-md m-r-lg">
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-primary"
|
||||
v-if="true"
|
||||
@click="croppa.chooseFile()"
|
||||
>
|
||||
<i class="fa fa-fw fa-refresh"></i> Change Photo
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-danger"
|
||||
v-if="true"
|
||||
:disabled="isDefaultImage"
|
||||
@click="croppa.refresh();isDefaultImage=true"
|
||||
>
|
||||
<i class="fa fa-fw fa-trash"></i> Remove Image
|
||||
</button>
|
||||
|
||||
<div class="is-flex">
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined"
|
||||
:disabled="isDefaultImage"
|
||||
@click="zoomState--"
|
||||
>
|
||||
<i class="fa fa-fw fa-minus"></i>
|
||||
</button>
|
||||
<input type="range" min="1" max="100" v-model="zoomState" :disabled="isDefaultImage" />
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined"
|
||||
:disabled="isDefaultImage"
|
||||
@click="zoomState++"
|
||||
>
|
||||
<i class="fa fa-fw fa-plus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import Croppa from "vue-croppa";
|
||||
|
||||
export default {
|
||||
name: "ImagePicker",
|
||||
components: {
|
||||
Croppa: Croppa.component
|
||||
},
|
||||
props: ["initialImage"],
|
||||
watch: {
|
||||
zoomState: function(newVal, oldVal) {
|
||||
if (newVal < oldVal) {
|
||||
this.croppa.zoomOut();
|
||||
console.log(this.croppa.getChosenFile());
|
||||
} else {
|
||||
this.croppa.zoomIn();
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// this.pickerController = {
|
||||
// generateDataUrl(mimeType: string, compression: number) {
|
||||
// return this.croppa.generateDataUrl(mimeType, compression);
|
||||
// }
|
||||
// };
|
||||
},
|
||||
methods: {
|
||||
generateDataUrl(mimeType: string, compression: number) {
|
||||
return this.croppa.generateDataUrl(mimeType, compression);
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
zoomState: 1,
|
||||
isDefaultImage: true,
|
||||
croppa: {}
|
||||
};
|
||||
}
|
||||
};
|
||||
</script>
|
|
@ -1,8 +1,8 @@
|
|||
<template>
|
||||
<section class="hero is-small p-t-xl p-b-xl is-light" :style="style">
|
||||
<section class="hero is-small p-t-xl p-b-lg" :style="style">
|
||||
<div class="hero-body">
|
||||
<div class="container">
|
||||
<!-- <h1 class="title has-text-light">{{title}}</h1> -->
|
||||
<h1 class="title has-text-light">{{title}}</h1>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
@ -13,19 +13,10 @@ export default {
|
|||
props: ["title", "background"],
|
||||
computed: {
|
||||
style() {
|
||||
const defaultCss = `
|
||||
background-image: url("/images/cloudgroup.png"), url('/images/sun+clouds.svg');
|
||||
background-size: contain, cover;
|
||||
background-position: center top, center right;
|
||||
background-repeat: repeat, no-repeat;
|
||||
`;
|
||||
const customCss = `
|
||||
background-image: url('${this.background}');
|
||||
background-size: cover;
|
||||
background-position: center
|
||||
`;
|
||||
const css = this.background ? customCss : defaultCss;
|
||||
return css;
|
||||
return `background-image: url('${this.background ||
|
||||
"/images/landing-hero01.jpg"}');
|
||||
background-size: cover;
|
||||
background-position: center;`;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -389,19 +389,13 @@ var script = {
|
|||
}
|
||||
},
|
||||
mounted: function() {
|
||||
var self;
|
||||
window.addEventListener('resize', this.onResize, {
|
||||
passive: true
|
||||
});
|
||||
this.onResize();
|
||||
this.preloadImages();
|
||||
this.zoom = this.zooms_[0];
|
||||
this.goToPage(this.startPage);
|
||||
self = this;
|
||||
return setTimeout(function() {
|
||||
self.onResize();
|
||||
return self.$emit('on-mounted', self);
|
||||
}, 1000);
|
||||
return this.goToPage(this.startPage);
|
||||
},
|
||||
beforeDestroy: function() {
|
||||
return window.removeEventListener('resize', this.onResize, {
|
||||
|
@ -423,8 +417,7 @@ var script = {
|
|||
}
|
||||
this.fixFirstPage();
|
||||
this.minX = 2e308;
|
||||
this.maxX = -2e308;
|
||||
return console.log('Flipbook resized');
|
||||
return this.maxX = -2e308;
|
||||
},
|
||||
fixFirstPage: function() {
|
||||
if (this.displayedPages === 1 && this.currentPage === 0 && this.pages.length && !this.pageUrl(0)) {
|
||||
|
@ -804,7 +797,19 @@ var script = {
|
|||
return this.zoomTo(this.zooms_[this.zoomIndex], x, y);
|
||||
},
|
||||
swipeStart: function(touch) {
|
||||
return;
|
||||
if (!this.enabled) {
|
||||
return;
|
||||
}
|
||||
this.touchStartX = touch.pageX;
|
||||
this.touchStartY = touch.pageY;
|
||||
this.maxMove = 0;
|
||||
if (this.zoom <= 1) {
|
||||
return this.activeCursor = 'grab';
|
||||
} else {
|
||||
this.startScrollLeft = this.$refs.viewport.scrollLeft;
|
||||
this.startScrollTop = this.$refs.viewport.scrollTop;
|
||||
return this.activeCursor = 'all-scroll';
|
||||
}
|
||||
},
|
||||
swipeMove: function(touch) {
|
||||
var x, y;
|
||||
|
@ -1239,11 +1244,11 @@ var __vue_staticRenderFns__ = [];
|
|||
/* style */
|
||||
var __vue_inject_styles__ = function (inject) {
|
||||
if (!inject) { return }
|
||||
inject("data-v-1b72a150_0", { source: ".viewport[data-v-1b72a150]{-webkit-overflow-scrolling:touch;width:100%;height:100%}.viewport.zoom[data-v-1b72a150]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-1b72a150]{overflow:hidden}.book-container[data-v-1b72a150]{position:relative;width:100%;height:100%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-1b72a150]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-1b72a150]{left:0}.click-to-flip.right[data-v-1b72a150]{right:0}.bounding-box[data-v-1b72a150]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-1b72a150]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 0 15px -4px rgba(0,0,0,.75)}.polygon[data-v-1b72a150]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-1b72a150]{background-color:#ddd}.polygon .lighting[data-v-1b72a150]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
inject("data-v-16acf8ed_0", { source: ".viewport[data-v-16acf8ed]{-webkit-overflow-scrolling:touch;width:100%;height:95%}.viewport.zoom[data-v-16acf8ed]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-16acf8ed]{overflow:hidden}.book-container[data-v-16acf8ed]{position:relative;width:100%;height:95%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-16acf8ed]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-16acf8ed]{left:0}.click-to-flip.right[data-v-16acf8ed]{right:0}.bounding-box[data-v-16acf8ed]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-16acf8ed]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden}.polygon[data-v-16acf8ed]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-16acf8ed]{background-color:#ddd}.polygon .lighting[data-v-16acf8ed]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
|
||||
};
|
||||
/* scoped */
|
||||
var __vue_scope_id__ = "data-v-1b72a150";
|
||||
var __vue_scope_id__ = "data-v-16acf8ed";
|
||||
/* module identifier */
|
||||
var __vue_module_identifier__ = undefined;
|
||||
/* functional template */
|
||||
|
|
|
@ -387,19 +387,13 @@ var script = {
|
|||
}
|
||||
},
|
||||
mounted: function() {
|
||||
var self;
|
||||
window.addEventListener('resize', this.onResize, {
|
||||
passive: true
|
||||
});
|
||||
this.onResize();
|
||||
this.preloadImages();
|
||||
this.zoom = this.zooms_[0];
|
||||
this.goToPage(this.startPage);
|
||||
self = this;
|
||||
return setTimeout(function() {
|
||||
self.onResize();
|
||||
return self.$emit('on-mounted', self);
|
||||
}, 1000);
|
||||
return this.goToPage(this.startPage);
|
||||
},
|
||||
beforeDestroy: function() {
|
||||
return window.removeEventListener('resize', this.onResize, {
|
||||
|
@ -421,8 +415,7 @@ var script = {
|
|||
}
|
||||
this.fixFirstPage();
|
||||
this.minX = 2e308;
|
||||
this.maxX = -2e308;
|
||||
return console.log('Flipbook resized');
|
||||
return this.maxX = -2e308;
|
||||
},
|
||||
fixFirstPage: function() {
|
||||
if (this.displayedPages === 1 && this.currentPage === 0 && this.pages.length && !this.pageUrl(0)) {
|
||||
|
@ -802,7 +795,19 @@ var script = {
|
|||
return this.zoomTo(this.zooms_[this.zoomIndex], x, y);
|
||||
},
|
||||
swipeStart: function(touch) {
|
||||
return;
|
||||
if (!this.enabled) {
|
||||
return;
|
||||
}
|
||||
this.touchStartX = touch.pageX;
|
||||
this.touchStartY = touch.pageY;
|
||||
this.maxMove = 0;
|
||||
if (this.zoom <= 1) {
|
||||
return this.activeCursor = 'grab';
|
||||
} else {
|
||||
this.startScrollLeft = this.$refs.viewport.scrollLeft;
|
||||
this.startScrollTop = this.$refs.viewport.scrollTop;
|
||||
return this.activeCursor = 'all-scroll';
|
||||
}
|
||||
},
|
||||
swipeMove: function(touch) {
|
||||
var x, y;
|
||||
|
@ -1237,11 +1242,11 @@ var __vue_staticRenderFns__ = [];
|
|||
/* style */
|
||||
var __vue_inject_styles__ = function (inject) {
|
||||
if (!inject) { return }
|
||||
inject("data-v-1b72a150_0", { source: ".viewport[data-v-1b72a150]{-webkit-overflow-scrolling:touch;width:100%;height:100%}.viewport.zoom[data-v-1b72a150]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-1b72a150]{overflow:hidden}.book-container[data-v-1b72a150]{position:relative;width:100%;height:100%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-1b72a150]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-1b72a150]{left:0}.click-to-flip.right[data-v-1b72a150]{right:0}.bounding-box[data-v-1b72a150]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-1b72a150]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 0 15px -4px rgba(0,0,0,.75)}.polygon[data-v-1b72a150]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-1b72a150]{background-color:#ddd}.polygon .lighting[data-v-1b72a150]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
inject("data-v-16acf8ed_0", { source: ".viewport[data-v-16acf8ed]{-webkit-overflow-scrolling:touch;width:100%;height:95%}.viewport.zoom[data-v-16acf8ed]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-16acf8ed]{overflow:hidden}.book-container[data-v-16acf8ed]{position:relative;width:100%;height:95%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-16acf8ed]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-16acf8ed]{left:0}.click-to-flip.right[data-v-16acf8ed]{right:0}.bounding-box[data-v-16acf8ed]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-16acf8ed]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden}.polygon[data-v-16acf8ed]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-16acf8ed]{background-color:#ddd}.polygon .lighting[data-v-16acf8ed]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
|
||||
};
|
||||
/* scoped */
|
||||
var __vue_scope_id__ = "data-v-1b72a150";
|
||||
var __vue_scope_id__ = "data-v-16acf8ed";
|
||||
/* module identifier */
|
||||
var __vue_module_identifier__ = undefined;
|
||||
/* functional template */
|
||||
|
|
|
@ -570,19 +570,13 @@
|
|||
}
|
||||
},
|
||||
mounted: function() {
|
||||
var self;
|
||||
window.addEventListener('resize', this.onResize, {
|
||||
passive: true
|
||||
});
|
||||
this.onResize();
|
||||
this.preloadImages();
|
||||
this.zoom = this.zooms_[0];
|
||||
this.goToPage(this.startPage);
|
||||
self = this;
|
||||
return setTimeout(function() {
|
||||
self.onResize();
|
||||
return self.$emit('on-mounted', self);
|
||||
}, 1000);
|
||||
return this.goToPage(this.startPage);
|
||||
},
|
||||
beforeDestroy: function() {
|
||||
return window.removeEventListener('resize', this.onResize, {
|
||||
|
@ -604,8 +598,7 @@
|
|||
}
|
||||
this.fixFirstPage();
|
||||
this.minX = 2e308;
|
||||
this.maxX = -2e308;
|
||||
return console.log('Flipbook resized');
|
||||
return this.maxX = -2e308;
|
||||
},
|
||||
fixFirstPage: function() {
|
||||
if (this.displayedPages === 1 && this.currentPage === 0 && this.pages.length && !this.pageUrl(0)) {
|
||||
|
@ -985,7 +978,19 @@
|
|||
return this.zoomTo(this.zooms_[this.zoomIndex], x, y);
|
||||
},
|
||||
swipeStart: function(touch) {
|
||||
return;
|
||||
if (!this.enabled) {
|
||||
return;
|
||||
}
|
||||
this.touchStartX = touch.pageX;
|
||||
this.touchStartY = touch.pageY;
|
||||
this.maxMove = 0;
|
||||
if (this.zoom <= 1) {
|
||||
return this.activeCursor = 'grab';
|
||||
} else {
|
||||
this.startScrollLeft = this.$refs.viewport.scrollLeft;
|
||||
this.startScrollTop = this.$refs.viewport.scrollTop;
|
||||
return this.activeCursor = 'all-scroll';
|
||||
}
|
||||
},
|
||||
swipeMove: function(touch) {
|
||||
var x, y;
|
||||
|
@ -1420,11 +1425,11 @@
|
|||
/* style */
|
||||
var __vue_inject_styles__ = function (inject) {
|
||||
if (!inject) { return }
|
||||
inject("data-v-1b72a150_0", { source: ".viewport[data-v-1b72a150]{-webkit-overflow-scrolling:touch;width:100%;height:100%}.viewport.zoom[data-v-1b72a150]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-1b72a150]{overflow:hidden}.book-container[data-v-1b72a150]{position:relative;width:100%;height:100%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-1b72a150]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-1b72a150]{left:0}.click-to-flip.right[data-v-1b72a150]{right:0}.bounding-box[data-v-1b72a150]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-1b72a150]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 0 15px -4px rgba(0,0,0,.75)}.polygon[data-v-1b72a150]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-1b72a150]{background-color:#ddd}.polygon .lighting[data-v-1b72a150]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
inject("data-v-16acf8ed_0", { source: ".viewport[data-v-16acf8ed]{-webkit-overflow-scrolling:touch;width:100%;height:95%}.viewport.zoom[data-v-16acf8ed]{overflow:scroll}.viewport.zoom.drag-to-scroll[data-v-16acf8ed]{overflow:hidden}.book-container[data-v-16acf8ed]{position:relative;width:100%;height:95%;transform-origin:top left;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip[data-v-16acf8ed]{position:absolute;width:50%;height:100%;top:0;-webkit-user-select:none;-ms-user-select:none;user-select:none}.click-to-flip.left[data-v-16acf8ed]{left:0}.click-to-flip.right[data-v-16acf8ed]{right:0}.bounding-box[data-v-16acf8ed]{position:absolute;-webkit-user-select:none;-ms-user-select:none;user-select:none}.page[data-v-16acf8ed]{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden}.polygon[data-v-16acf8ed]{position:absolute;top:0;left:0;background-repeat:no-repeat;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:center left}.polygon.blank[data-v-16acf8ed]{background-color:#ddd}.polygon .lighting[data-v-16acf8ed]{width:100%;height:100%}", map: undefined, media: undefined });
|
||||
|
||||
};
|
||||
/* scoped */
|
||||
var __vue_scope_id__ = "data-v-1b72a150";
|
||||
var __vue_scope_id__ = "data-v-16acf8ed";
|
||||
/* module identifier */
|
||||
var __vue_module_identifier__ = undefined;
|
||||
/* functional template */
|
||||
|
|
|
@ -14,8 +14,6 @@ import Home from "../views/home.vue";
|
|||
import Settings from "../views/settings.vue";
|
||||
import Call from "../views/call.vue";
|
||||
import ChildProfile from "../views/child_profile.vue";
|
||||
import EditBook from "../views/edit_book.vue";
|
||||
import BookOfflineViewer from "../views/BookOfflineViewer.vue";
|
||||
|
||||
// Call Views
|
||||
import CallLobby from "../views/call_views/Lobby.vue";
|
||||
|
@ -32,14 +30,6 @@ const routes: RouteConfig[] = [
|
|||
path: "/settings",
|
||||
component: Settings
|
||||
},
|
||||
{
|
||||
path: "/create/book",
|
||||
component: EditBook
|
||||
},
|
||||
{
|
||||
path: "/book/:id",
|
||||
component: BookOfflineViewer
|
||||
},
|
||||
{
|
||||
path: "/call/:id",
|
||||
component: Call,
|
||||
|
|
|
@ -26,8 +26,7 @@ export default class UserChannel {
|
|||
|
||||
static async getInstance(ws) {
|
||||
if (singleton) return singleton;
|
||||
singleton = new UserChannel(ws);
|
||||
return singleton;
|
||||
else return new UserChannel(ws);
|
||||
}
|
||||
close() {
|
||||
this.subscription.close();
|
|
@ -2,7 +2,6 @@
|
|||
import Ws from "@adonisjs/websocket-client";
|
||||
import UserChannelService from './user.channel.service';
|
||||
import { EventEmitter } from 'events';
|
||||
import CallManager from "./call.manager";
|
||||
let singleton: WebSocketService = null;
|
||||
enum EEvents {
|
||||
NEW_CONNECTION,
|
||||
|
@ -13,7 +12,6 @@ enum EEvents {
|
|||
export default class WebSocketService {
|
||||
static Events = EEvents;
|
||||
private emitter;
|
||||
readonly callManager: CallManager;
|
||||
|
||||
private constructor(private ws, private userChannelService: UserChannelService) {
|
||||
this.emitter = new EventEmitter();
|
||||
|
@ -21,7 +19,6 @@ export default class WebSocketService {
|
|||
this.userChannelService.on('connection:online', this.onUserConnectionOnline.bind(this));
|
||||
this.userChannelService.on('connection:offline', this.onUserConnectionOffline.bind(this));
|
||||
this.userChannelService.on('call:incoming', this.onIncomingCall.bind(this));
|
||||
this.callManager = new CallManager(this);
|
||||
}
|
||||
|
||||
|
|
@ -1,12 +1,15 @@
|
|||
import Vue from 'vue';
|
||||
import Vuex, { Store } from "vuex";
|
||||
import Services from '../services';
|
||||
|
||||
import CallManager, { ECallEvents } from "./classes/call.manager";
|
||||
import WebsocketService from './scripts/websocket.service';
|
||||
import { createContext } from 'vm';
|
||||
Vue.use(Vuex);
|
||||
const store = new Store({
|
||||
strict: true,
|
||||
state: {
|
||||
inCall: false,
|
||||
callManager: null as CallManager,
|
||||
user: { name: 'loading...', is_admin: false, id: null, books: [] },
|
||||
notifications: []
|
||||
},
|
||||
|
@ -17,6 +20,9 @@ const store = new Store({
|
|||
notifications(state) {
|
||||
return state.notifications;
|
||||
},
|
||||
callManager(state): CallManager {
|
||||
return state.callManager;
|
||||
},
|
||||
inCall(state) {
|
||||
return state.inCall;
|
||||
}
|
||||
|
@ -37,9 +43,11 @@ const store = new Store({
|
|||
state.notifications = state.notifications.filter(n => n.id != noteId);
|
||||
},
|
||||
callEnded(state) {
|
||||
state.callManager = null;
|
||||
state.inCall = false;
|
||||
},
|
||||
callStarted(state) {
|
||||
connectToCall(state, options: { callId: number, ws: any }) {
|
||||
state.callManager = new CallManager(options.ws, options.callId, state.user.id);
|
||||
state.inCall = true;
|
||||
}
|
||||
},
|
||||
|
@ -47,7 +55,6 @@ const store = new Store({
|
|||
async getUser(ctx, userId?: number) {
|
||||
const user = await Services.ApiService.getUser(userId);
|
||||
ctx.commit('setUser', user);
|
||||
return user;
|
||||
},
|
||||
notify(ctx, notification: { message: string, level?: "info" | "warning" | "success" | "danger" }) {
|
||||
ctx.commit("notify", notification);
|
||||
|
@ -58,8 +65,13 @@ const store = new Store({
|
|||
callEnded(ctx) {
|
||||
ctx.commit('callEnded');
|
||||
},
|
||||
callStarted(ctx) {
|
||||
ctx.commit('callStarted');
|
||||
async connectToCall(ctx, callId: string) {
|
||||
if (!ctx.state.inCall) {
|
||||
const ws = await WebsocketService.getInstance();
|
||||
ctx.commit('connectToCall', { callId, ws });
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -1,137 +0,0 @@
|
|||
<template>
|
||||
<div class="is-fullwidth is-fullheight-container p-l-lg p-r-lg">
|
||||
<Loading v-if="loading" />
|
||||
<div :class="`is-fullheight-container ${flipbookRef ? '' : 'is-transparent'}`" v-else>
|
||||
<div class="book-view m-sm m-r-md">
|
||||
<div
|
||||
class="go-left m-r-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; left:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!canFlipLeft"
|
||||
@click="onLeftClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-left"></i>
|
||||
</button>
|
||||
</div>
|
||||
<flipbook
|
||||
class="flipbook"
|
||||
:pages="pages"
|
||||
:forwardDirection="book.ltr ? 'right': 'left'"
|
||||
:zooms="null"
|
||||
:enabled="true"
|
||||
@on-mounted="bookMounted()"
|
||||
ref="flipbook"
|
||||
v-slot="flipbook"
|
||||
>
|
||||
<!-- @flip-left-start="onFlip('left')" -->
|
||||
<!-- @flip-right-start="onFlip('right')" -->
|
||||
<div class="page-progress has-text-centered m-b-none">
|
||||
<p>Page {{ flipbook.page }} of {{ flipbook.numPages }}</p>
|
||||
</div>
|
||||
</flipbook>
|
||||
<div
|
||||
class="go-right m-l-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; right:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!canFlipRight"
|
||||
@click="onRightClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-right"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts">
|
||||
import { mapGetters, mapActions } from "vuex";
|
||||
import Flipbook from "../components/flipbook/flipbook.cjs.js";
|
||||
import Loading from "../../shared/components/Loading/Loading.vue";
|
||||
|
||||
export default {
|
||||
name: "BookOfflineViewer",
|
||||
components: {
|
||||
Flipbook,
|
||||
Loading
|
||||
},
|
||||
created() {
|
||||
const bookId = Number(this.$route.params.id);
|
||||
if (!this.user || !bookId) {
|
||||
this.$router.replace({ path: `/` });
|
||||
}
|
||||
|
||||
this.user.books.forEach(b => {
|
||||
if (this.book) return;
|
||||
if (b.id === bookId) {
|
||||
console.log("Found Book");
|
||||
this.book = b;
|
||||
}
|
||||
});
|
||||
if (!this.book) {
|
||||
this.notify({ message: "Book Not Found!", level: "danger" });
|
||||
this.$router.replace({ path: `/` });
|
||||
} else {
|
||||
// create pages
|
||||
// /u/books/:bookId/page/:pageNumber
|
||||
const pages = [null];
|
||||
for (let i = 1; i < this.book.pages + 1; i++) {
|
||||
pages.push(`/u/books/${bookId}/page/${i}`);
|
||||
}
|
||||
this.pages = pages;
|
||||
this.loading = false;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
bookMounted() {
|
||||
console.log("Book Mounted!");
|
||||
if (this.$refs.flipbook) {
|
||||
console.log("Found!");
|
||||
this.flipbookRef = true;
|
||||
// this.$refs.flipbook.onResize();
|
||||
// console.log("resized");
|
||||
} else {
|
||||
console.log("Still Null!!");
|
||||
}
|
||||
},
|
||||
onLeftClicked() {
|
||||
this.$refs.flipbook.flipLeft();
|
||||
},
|
||||
onRightClicked() {
|
||||
this.$refs.flipbook.flipRight();
|
||||
},
|
||||
...mapActions(["notify"])
|
||||
},
|
||||
computed: {
|
||||
canFlipLeft() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipLeft;
|
||||
},
|
||||
canFlipRight() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipRight;
|
||||
},
|
||||
...mapGetters(["user"])
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
loading: true,
|
||||
book: <IBook>null,
|
||||
pages: <string[]>[],
|
||||
flipbookRef: null
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
interface IBook {
|
||||
id: number;
|
||||
pages: number;
|
||||
user_id?: number;
|
||||
title: string;
|
||||
ltr: boolean;
|
||||
created_at: string;
|
||||
}
|
||||
</script>
|
|
@ -3,24 +3,16 @@
|
|||
<div v-if="loading">
|
||||
<Loading />
|
||||
</div>
|
||||
<div v-else class="columns">
|
||||
<VideoStrip
|
||||
:localStream="localStream"
|
||||
:remoteStream="remoteStream"
|
||||
:remotePoster="callManager.peer.avatar"
|
||||
class="column is-3"
|
||||
/>
|
||||
<transition :name="stateTransitionName">
|
||||
<router-view class="column"></router-view>
|
||||
</transition>
|
||||
<div v-else class>
|
||||
<VideoStrip :localStream="localStream" :remoteStream="remoteStream" />
|
||||
<router-view></router-view>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import Loading from "../../shared/components/Loading/Loading.vue";
|
||||
import CallManager, { ECallEvents } from "../ws/call.manager";
|
||||
import WebsocketService from "../ws/websocket.service";
|
||||
import { ECallEvents } from "../classes/call.manager";
|
||||
import VideoStrip from "./call_views/VideoStrip.vue";
|
||||
import Services from "../../services/index";
|
||||
import { mapActions, mapGetters } from "vuex";
|
||||
|
@ -30,22 +22,25 @@ export default {
|
|||
VideoStrip
|
||||
},
|
||||
name: "Call",
|
||||
// mounted() {
|
||||
// const self = this;
|
||||
// setTimeout(() => {
|
||||
// self.isMounted = true;
|
||||
// }, 1000);
|
||||
// },
|
||||
async created() {
|
||||
this.loading = true;
|
||||
try {
|
||||
const callId = Number(this.$route.params.id);
|
||||
const ws = await WebsocketService.getInstance();
|
||||
this.callManager = ws.callManager;
|
||||
this.callManager.on(ECallEvents.CLOSE, this.endCall);
|
||||
|
||||
const success = await this.callManager.connectToCall(
|
||||
this.user.id,
|
||||
{
|
||||
video: true,
|
||||
audio: true
|
||||
},
|
||||
callId
|
||||
);
|
||||
await this.connectToCall(callId);
|
||||
|
||||
this.callManager.on(ECallEvents.CLOSE, this.callEnded);
|
||||
|
||||
const success = await this.callManager.connectToCall({
|
||||
video: true,
|
||||
audio: true
|
||||
});
|
||||
this.callManager.on(
|
||||
ECallEvents.CALL_HOST_CHANGED,
|
||||
this.onRemoteHostChanged
|
||||
|
@ -55,7 +50,6 @@ export default {
|
|||
this.$router.push({ path: `/` });
|
||||
return false;
|
||||
}
|
||||
this.callStarted();
|
||||
this.localStream = await this.callManager.getUserMedia();
|
||||
this.remoteStream = this.callManager.getRemoteStream();
|
||||
this.notify({ message: "Connected!", level: "success" });
|
||||
|
@ -69,14 +63,14 @@ export default {
|
|||
async beforeDestroy() {
|
||||
console.log("destroyed");
|
||||
this.callManager.close();
|
||||
this.callEnded();
|
||||
this.$store.dispatch("callEnded");
|
||||
return true;
|
||||
},
|
||||
methods: {
|
||||
async setupCall(): Promise<boolean> {
|
||||
return true;
|
||||
},
|
||||
endCall(callId) {
|
||||
callEnded(callId) {
|
||||
this.notify({ message: `Call #${callId} Ended` });
|
||||
this.$router.replace({ path: `/` });
|
||||
},
|
||||
|
@ -88,26 +82,19 @@ export default {
|
|||
changeHost() {
|
||||
this.callManager.changeHost();
|
||||
},
|
||||
...mapActions(["notify", "callStarted", "callEnded"])
|
||||
...mapActions(["notify", "connectToCall"])
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(["user", "inCall"])
|
||||
},
|
||||
watch: {
|
||||
$route(to, from) {
|
||||
const toDepth = to.path.split("/").length;
|
||||
const fromDepth = from.path.split("/").length;
|
||||
this.stateTransitionName =
|
||||
toDepth < fromDepth ? "slide-right" : "slide-left";
|
||||
}
|
||||
...mapGetters(["user", "callManager", "inCall"])
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
loading: true,
|
||||
localStream: null,
|
||||
remoteStream: null,
|
||||
callManager: null as CallManager,
|
||||
stateTransitionName: "slide-left"
|
||||
remoteStream: null
|
||||
// currentPage: 0,
|
||||
// totalPages: 34,
|
||||
// isMounted: false
|
||||
};
|
||||
},
|
||||
beforeCreate: () => {}
|
||||
|
|
|
@ -1,48 +1,45 @@
|
|||
<template>
|
||||
<div>
|
||||
<Loading v-if="loading" />
|
||||
<div :class="`is-fullheight-container ${flipbookRef ? '' : 'is-transparent'}`" v-else>
|
||||
<div class="book-view m-sm m-r-md">
|
||||
<div
|
||||
class="go-left m-r-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; left:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!(callManager.isHost && canFlipLeft)"
|
||||
@click="onLeftClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-left"></i>
|
||||
</button>
|
||||
<div class="book-view">
|
||||
<!-- <nav class="level">
|
||||
<div class="level-left">
|
||||
<div class="level-item">
|
||||
<button class="button" @click="$router.back()">Back</button>
|
||||
</div>
|
||||
<flipbook
|
||||
class="flipbook"
|
||||
:pages="createPages"
|
||||
:forwardDirection="callManager.currentActivity.ltr ? 'right': 'left'"
|
||||
:zooms="null"
|
||||
:enabled="callManager.isHost"
|
||||
@on-mounted="bookMounted()"
|
||||
ref="flipbook"
|
||||
v-slot="flipbook"
|
||||
</div>
|
||||
</nav>-->
|
||||
<div class="is-flex">
|
||||
<div class="go-left m-r-sm" style="display: flex; align-items: center;">
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!callManager.isHost"
|
||||
@click="onLeftClicked()"
|
||||
>
|
||||
<!-- @flip-left-start="onFlip('left')" -->
|
||||
<!-- @flip-right-start="onFlip('right')" -->
|
||||
<div class="page-progress has-text-centered m-b-none">
|
||||
<p>Page {{ flipbook.page }} of {{ flipbook.numPages }}</p>
|
||||
</div>
|
||||
</flipbook>
|
||||
<div
|
||||
class="go-right m-l-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; right:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!(callManager.isHost && canFlipRight)"
|
||||
@click="onRightClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-right"></i>
|
||||
</button>
|
||||
<i class="fa fa-fw fa-arrow-left"></i>
|
||||
</button>
|
||||
</div>
|
||||
<flipbook
|
||||
class="flipbook"
|
||||
:pages="createPages(callManager.currentActivity)"
|
||||
:forwardDirection="callManager.currentActivity.ltr ? 'right': 'left'"
|
||||
:zooms="null"
|
||||
:enabled="callManager.isHost"
|
||||
@flip-left-end="onFlip('left')"
|
||||
@flip-right-end="onFlip('right')"
|
||||
ref="flipbook"
|
||||
v-slot="flipbook"
|
||||
>
|
||||
<div class="page-progress has-text-centered m-b-none">
|
||||
<p>Page {{ flipbook.page }} of {{ flipbook.numPages }}</p>
|
||||
</div>
|
||||
</flipbook>
|
||||
<div class="go-right m-l-sm" style="display: flex; align-items: center;">
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!callManager.isHost"
|
||||
@click="onRightClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-right"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -50,78 +47,38 @@
|
|||
|
||||
<script lang="ts">
|
||||
import Flipbook from "../../components/flipbook/flipbook.cjs.js";
|
||||
import Loading from "../../../shared/components/Loading/Loading.vue";
|
||||
import CallManager, { ECallEvents } from "../../ws/call.manager";
|
||||
import WebsocketService from "../../ws/websocket.service";
|
||||
import { ECallEvents } from "../../classes/call.manager";
|
||||
import { mapActions, mapGetters } from "vuex";
|
||||
export default {
|
||||
name: "CallBook",
|
||||
components: { Flipbook, Loading },
|
||||
async created() {
|
||||
const ws = await WebsocketService.getInstance();
|
||||
this.callManager = ws.callManager;
|
||||
components: { Flipbook },
|
||||
created() {
|
||||
this.callManager.on(
|
||||
ECallEvents.ACTION_BOOK_FLIP,
|
||||
this.onRemoteFlip.bind(this)
|
||||
);
|
||||
this.loading = false;
|
||||
return true;
|
||||
},
|
||||
destroyed() {
|
||||
this.callManager.removeListener(
|
||||
ECallEvents.ACTION_BOOK_FLIP,
|
||||
this.onRemoteFlip.bind(this)
|
||||
);
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
loading: true,
|
||||
localStream: null,
|
||||
remoteStream: null,
|
||||
flipbookRef: false,
|
||||
callManager: { isHost: false } as CallManager
|
||||
remoteStream: null
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
canFlipLeft() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipLeft;
|
||||
},
|
||||
canFlipRight() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipRight;
|
||||
},
|
||||
createPages() {
|
||||
const pages = [null];
|
||||
for (let i = 1; i < this.callManager.currentActivity.pages + 1; i++) {
|
||||
pages.push(
|
||||
`/u/call/${this.callManager.callId}/books/${this.callManager.currentActivity.id}/page/${i}`
|
||||
);
|
||||
}
|
||||
return pages;
|
||||
},
|
||||
...mapGetters(["user"])
|
||||
...mapGetters(["user", "callManager"])
|
||||
},
|
||||
methods: {
|
||||
bookMounted() {
|
||||
console.log("Book Mounted!");
|
||||
if (this.$refs.flipbook) {
|
||||
console.log("Found!");
|
||||
this.flipbookRef = true;
|
||||
// this.$refs.flipbook.onResize();
|
||||
// console.log("resized");
|
||||
} else {
|
||||
console.log("Still Null!!");
|
||||
}
|
||||
onFlip(direction: "left" | "right") {
|
||||
if (this.callManager.isHost)
|
||||
this.callManager.send(`book:action:flip-page`, { direction });
|
||||
},
|
||||
onLeftClicked() {
|
||||
this.callManager.send(`book:action:flip-page`, { direction: "left" });
|
||||
this.$refs.flipbook.flipLeft();
|
||||
},
|
||||
onRightClicked() {
|
||||
this.callManager.send(`book:action:flip-page`, { direction: "right" });
|
||||
this.$refs.flipbook.flipRight();
|
||||
},
|
||||
onRemoteFlip(payload) {
|
||||
console.log("remote Flip!");
|
||||
switch (payload.direction) {
|
||||
case "left":
|
||||
this.$refs.flipbook.flipLeft();
|
||||
|
@ -130,6 +87,15 @@ export default {
|
|||
this.$refs.flipbook.flipRight();
|
||||
break;
|
||||
}
|
||||
},
|
||||
createPages(book) {
|
||||
const pages = [null];
|
||||
for (let i = 1; i < book.pages + 1; i++) {
|
||||
pages.push(
|
||||
`/u/call/${this.callManager.callId}/books/${book.id}/page/${i}`
|
||||
);
|
||||
}
|
||||
return pages;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
<h2 class="subtitle">
|
||||
<i class="fa fa-fw fa-book"></i> Select A Book
|
||||
</h2>
|
||||
<div class="is-flex m-b-md has-wrap">
|
||||
<div class="is-flex m-b-md">
|
||||
<div
|
||||
:class="['book-thumb', 'm-l-md', {'enabled': callManager.isHost}]"
|
||||
class="book-thumb m-l-md"
|
||||
v-for="(book, index) in callManager.books"
|
||||
:key="index"
|
||||
@click="goToBook(book, index, false)"
|
||||
|
@ -28,23 +28,15 @@
|
|||
|
||||
<script lang="ts">
|
||||
import { mapGetters } from "vuex";
|
||||
import { ECallEvents } from "../../ws/call.manager";
|
||||
import WebsocketService from "../../ws/websocket.service";
|
||||
import { ECallEvents } from "../../classes/call.manager";
|
||||
export default {
|
||||
name: "CallLobby",
|
||||
async created() {
|
||||
const ws = await WebsocketService.getInstance();
|
||||
this.callManager = ws.callManager;
|
||||
created() {
|
||||
this.callManager.on(
|
||||
ECallEvents.CALL_VIEW_BOOK,
|
||||
this.remoteBookSelected.bind(this)
|
||||
);
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
callManager: { books: [] }
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
goToBook(book, index, remote) {
|
||||
if (remote || this.callManager.isHost) {
|
||||
|
@ -63,7 +55,7 @@ export default {
|
|||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(["user"])
|
||||
...mapGetters(["callManager"])
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -1,25 +1,15 @@
|
|||
<template>
|
||||
<div class="video-side-bar">
|
||||
<video :src-object.prop.camel="remoteStream" autoplay :poster="remotePoster" />
|
||||
<video
|
||||
:src-object.prop.camel="localStream"
|
||||
class="is-mirrored"
|
||||
autoplay
|
||||
playsinline
|
||||
muted="true"
|
||||
/>
|
||||
</div>
|
||||
<!-- <div class="container">
|
||||
<div class="container">
|
||||
<div class="video-strip m-b-md">
|
||||
<video :src-object.prop.camel="localStream" autoplay playsinline muted="true" />
|
||||
<video :src-object.prop.camel="remoteStream" autoplay />
|
||||
</div>
|
||||
</div>-->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
export default {
|
||||
name: "CallVideoStrip",
|
||||
props: ["remoteStream", "localStream", "remotePoster"]
|
||||
props: ["remoteStream", "localStream"]
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div class="container is-fullwidth">
|
||||
<div class="container">
|
||||
<div class="loading" v-if="loading">
|
||||
<Loading />
|
||||
</div>
|
||||
|
@ -19,13 +19,6 @@
|
|||
/>
|
||||
<file-select v-model="childCoverModalImage" accept="image/*" lable="Select Cover:"></file-select>
|
||||
</Modal>
|
||||
<!-- Change Avatar Modal -->
|
||||
<ChangeAvatarModal
|
||||
@onAvatarSelected="updateAvatar($event)"
|
||||
@onClose="showChangeAvatarModal=false"
|
||||
:isActive="showChangeAvatarModal"
|
||||
:defaultImage="child.avatar"
|
||||
/>
|
||||
<!-- Add Connection Modal -->
|
||||
<AddConnectionModal
|
||||
@createNewConnection="addConnection($event)"
|
||||
|
@ -36,13 +29,10 @@
|
|||
<!-- Profile -->
|
||||
<ProfileHeader :title="child.name" :background="child.profile_cover" />
|
||||
<div class="columns is-fullheight m-t-md">
|
||||
<div class="column is-2">
|
||||
<div class="column is-3">
|
||||
<div class="card">
|
||||
<div class="card-image p-md is-relative">
|
||||
<figure
|
||||
:class="`image is-1by1 is-light ${isParent ? 'editable-image' : ''}`"
|
||||
@click="onAvatarClicked()"
|
||||
>
|
||||
<div class="card-image">
|
||||
<figure class="image is-4by4 p-md">
|
||||
<img :src="child.avatar" class="is-rounded is-avatar" />
|
||||
</figure>
|
||||
</div>
|
||||
|
@ -65,14 +55,6 @@
|
|||
<div class="column">
|
||||
<div class="card">
|
||||
<div class="card-content">
|
||||
<nav class="level">
|
||||
<!-- Left side -->
|
||||
<div class="level-left">
|
||||
<div class="level-item">
|
||||
<h1 class="title">{{`${child.name.split(' ')[0]}'s Room`}}</h1>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<nav class="level">
|
||||
<!-- Left side -->
|
||||
<div class="level-left">
|
||||
|
@ -143,7 +125,6 @@ import FileSelect from "../../shared/components/FileSelect/FileSelect.vue";
|
|||
import AvatarBadge from "../components/AvatarBadge.vue";
|
||||
import Moment from "moment";
|
||||
import Modal from "../../shared/components/Modal/Modal.vue";
|
||||
import ChangeAvatarModal from "../components/ChangeAvatarModal.vue";
|
||||
export default {
|
||||
name: "ChildProfile",
|
||||
components: {
|
||||
|
@ -153,14 +134,9 @@ export default {
|
|||
Modal,
|
||||
FileSelect,
|
||||
AvatarBadge,
|
||||
AddConnectionModal,
|
||||
ChangeAvatarModal
|
||||
AddConnectionModal
|
||||
},
|
||||
beforeCreate() {},
|
||||
async beforeDestroy() {
|
||||
await this.getUser();
|
||||
return true;
|
||||
},
|
||||
async created() {
|
||||
const response = await Services.ApiService.getChild(this.$route.params.id);
|
||||
this.loading = false;
|
||||
|
@ -188,13 +164,12 @@ export default {
|
|||
inEditMode: false,
|
||||
showCoverModal: false,
|
||||
showAddConnectionModal: false,
|
||||
showChangeAvatarModal: false,
|
||||
childCoverModalImage: null
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
onDeleteClicked() {
|
||||
this.notify({ message: "Delete button clicked. Still not working" });
|
||||
this.notify({ message: "Test" });
|
||||
},
|
||||
goToUserProfile(user) {
|
||||
if (this.user.id === user.id) {
|
||||
|
@ -229,7 +204,7 @@ export default {
|
|||
} else {
|
||||
this.child.connections.push(connection.data.user);
|
||||
}
|
||||
await this.getUser();
|
||||
console.log(connection);
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
|
@ -237,52 +212,21 @@ export default {
|
|||
this.showAddConnectionModal = false;
|
||||
return true;
|
||||
},
|
||||
onAvatarClicked() {
|
||||
if (this.isParent) {
|
||||
this.showChangeAvatarModal = true;
|
||||
}
|
||||
},
|
||||
async updateAvatar(event) {
|
||||
if (!event.isDefaultImage) {
|
||||
try {
|
||||
const response = await Services.ApiService.updateChild(
|
||||
this.child.id,
|
||||
{
|
||||
avatar: event.image
|
||||
}
|
||||
);
|
||||
if (response.code === 0) {
|
||||
this.notify({ message: "Updated Successfully!", level: "success" });
|
||||
this.child.avatar = response.data.child.avatar;
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
this.showChangeAvatarModal = false;
|
||||
return true;
|
||||
},
|
||||
async changeCover() {
|
||||
if (this.childCoverModalImage) {
|
||||
this.loading = true;
|
||||
try {
|
||||
const response = await Services.ApiService.updateChild(
|
||||
this.child.profile_cover = await Services.ApiService.updateChildCover(
|
||||
this.child.id,
|
||||
{
|
||||
profile_cover: this.childCoverModalImage
|
||||
}
|
||||
this.childCoverModalImage
|
||||
);
|
||||
if (response.code === 0) {
|
||||
this.child.profile_cover = response.data.child.profile_cover;
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error.message);
|
||||
console.error(error);
|
||||
}
|
||||
this.loading = false;
|
||||
}
|
||||
this.showCoverModal = false;
|
||||
this.this.childCoverModalImage = null;
|
||||
return true;
|
||||
},
|
||||
togleEditMode() {
|
||||
this.inEditMode = !this.inEditMode;
|
||||
|
@ -290,7 +234,7 @@ export default {
|
|||
this.showCoverModal = true;
|
||||
}
|
||||
},
|
||||
...mapActions(["getUser", "notify"])
|
||||
...mapActions(["getUser", "getConnections", "notify"])
|
||||
},
|
||||
computed: {
|
||||
age() {
|
||||
|
@ -307,7 +251,7 @@ export default {
|
|||
}
|
||||
return `${text}`;
|
||||
},
|
||||
...mapGetters(["user"])
|
||||
...mapGetters(["user", "connections"])
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -1,725 +0,0 @@
|
|||
<template>
|
||||
<div class="is-fullwidth is-fullheight-container p-l-lg p-r-lg">
|
||||
<transition name="fade">
|
||||
<div class="book-uploading-overlay" v-if="uploading">
|
||||
<div class="section book-uploading-overlay-content has-text-centered">
|
||||
<h1 class="title">Uploading...</h1>
|
||||
<h1 class="subtitle">Be pacient, This can take a while</h1>
|
||||
<progress class="progress is-small is-primary" max="100">15%</progress>
|
||||
</div>
|
||||
</div>
|
||||
</transition>
|
||||
<div class="columns is-flex is-fullheight-container">
|
||||
<div class="column is-3">
|
||||
<!-- Properties -->
|
||||
<div class="card m-b-md">
|
||||
<div class="card-content">
|
||||
<h1 class="subtitle">
|
||||
<i class="fa fa-book"></i> Properties
|
||||
</h1>
|
||||
<div class="book-properties">
|
||||
<div class="field">
|
||||
<label class="label">Book Title:</label>
|
||||
<input class="input" type="text" placeholder="My Book" v-model="book.title" />
|
||||
</div>
|
||||
<div class="field">
|
||||
<label class="label">Book Author:</label>
|
||||
<input class="input" type="text" placeholder="Savta Cochi" v-model="book.author" />
|
||||
</div>
|
||||
<div class="field">
|
||||
<label class="label">Language Direction:</label>
|
||||
<label>
|
||||
<input
|
||||
class="checkbox"
|
||||
type="checkbox"
|
||||
v-model="book.ltr"
|
||||
aria-label="Book direction"
|
||||
/>
|
||||
{{book.ltr ? "Left To Right" : "Right To Left"}}
|
||||
<i
|
||||
:class="`fa fa-fw fa-arrow-${book.ltr?'right':'left'}`"
|
||||
></i>
|
||||
</label>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label class="label">Total page count: #{{pages.length}}</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<footer class="card-footer">
|
||||
<a class="card-footer-item is-success" @click="onUploadClicked()">
|
||||
<i class="fa fa-fw fa-upload"></i> Upload Book
|
||||
</a>
|
||||
</footer>
|
||||
</div>
|
||||
<!-- Pages -->
|
||||
<div class="card">
|
||||
<aside class="menu card-content">
|
||||
<p class="menu-label">Pages</p>
|
||||
<ul class="menu-list">
|
||||
<li v-for="page in pages" :key="page.id">
|
||||
<a
|
||||
:class="{'is-active' : currentPage === page.id}"
|
||||
@click="onPageClicked(page.id)"
|
||||
>{{page.text}}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</aside>
|
||||
<footer class="card-footer">
|
||||
<a class="card-footer-item" @click="onAddPageClicked()">
|
||||
<i class="fa fa-fw fa-plus"></i> Add Page
|
||||
</a>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
<div class="column is-9">
|
||||
<div class="card is-fullheight-container bg-flower height-max-view">
|
||||
<div class="card-content is-fullheight-container">
|
||||
<div class="tabs-container has-text-centered m-b-lg">
|
||||
<div class="tabs is-centered">
|
||||
<ul>
|
||||
<li :class="editMode ? 'is-active' : ''" @click="editMode=true">
|
||||
<a>
|
||||
<span class="icon is-small">
|
||||
<i class="fa fa-pencil" aria-hidden="true"></i>
|
||||
</span>
|
||||
<span>Edit</span>
|
||||
</a>
|
||||
</li>
|
||||
<li :class="!editMode ? 'is-active' : ''" @click="onEditClicked()">
|
||||
<a>
|
||||
<span class="icon is-small">
|
||||
<i class="fa fa-eye" aria-hidden="true"></i>
|
||||
</span>
|
||||
<span>Preview</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content is-fullheight-container">
|
||||
<!-- Book Edit -->
|
||||
<transition name="fade">
|
||||
<div class="edit" v-if="editMode">
|
||||
<div class="has-text-centered" v-if="currentPage < -1">
|
||||
<h1 class="subtitle m-t-xl m-b-xl">This is exciting...</h1>
|
||||
<div class="has-text-left">
|
||||
<p>Here will be some more instructions in the future...</p>
|
||||
<p>Also maybe some gifs fo help...</p>
|
||||
<ul>
|
||||
<li>Add a title and author for the book</li>
|
||||
<li>Add first image (Cover of the book)</li>
|
||||
<li>Try to fit the image as close as possible to edges of the "page"</li>
|
||||
<li>You can modify the width/height while editing the cover</li>
|
||||
<li>You can always zoom in/out and drag the image to make it fit better</li>
|
||||
<li>Please click on preview to actualy see how the book will look like before uploading</li>
|
||||
<li>Once all done. Click on "Upload Book"</li>
|
||||
</ul>
|
||||
</div>
|
||||
<a class="button is-large is-rounded" @click="onAddPageClicked()">
|
||||
<i class="fa fa-fw fa-plus"></i> Add Cover
|
||||
</a>
|
||||
</div>
|
||||
<div class="page-editor" v-else>
|
||||
<div class="columns">
|
||||
<!-- Croppa -->
|
||||
<div class="column has-text-centered">
|
||||
<div v-if="pages[currentPage].loaded">
|
||||
<h1 class="subtitle is-3">{{pages[currentPage].text}}</h1>
|
||||
<div class="is-relative is-flex is-justify-centered">
|
||||
<div
|
||||
class="stitch-preview-left is-relative"
|
||||
v-if="currentPage != 0 && currentPage % 2 === 0 && book.ltr"
|
||||
:style="`width:${croppaWidth}px;height:${croppaHeight}px;`"
|
||||
>
|
||||
<img :src="pages[currentPage-1].image" alt />
|
||||
</div>
|
||||
<croppa
|
||||
v-model="pages[currentPage].croppa"
|
||||
:prevent-white-space="false"
|
||||
:show-remove-button="false"
|
||||
:accept="'image/*'"
|
||||
:initial-image="pages[currentPage].image"
|
||||
:width="croppaWidth"
|
||||
:height="croppaHeight"
|
||||
:disable-drag-to-move="false"
|
||||
:disable-scroll-to-zoom="true"
|
||||
:zoom-speed="1"
|
||||
canvas-color="white"
|
||||
@loading-end="onCroppaImageLoaded()"
|
||||
></croppa>
|
||||
<div
|
||||
class="stitch-preview-right is-relative"
|
||||
v-if="currentPage != 0 && currentPage % 2 === 0 && !book.ltr"
|
||||
:style="`width:${croppaWidth}px;height:${croppaHeight}px;`"
|
||||
>
|
||||
<img :src="pages[currentPage-1].image" alt />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Controllers -->
|
||||
<div
|
||||
class="edit-page-controllers column is-3 is-flex-column is-justify-centered has-text-centered"
|
||||
>
|
||||
<div class="field" v-if="currentPage===0 && pages.length===1">
|
||||
<label class="label">Page width</label>
|
||||
<input
|
||||
type="range"
|
||||
:min="DEFAULT_PAGE_WIDTH-100"
|
||||
:max="DEFAULT_PAGE_WIDTH"
|
||||
v-model="bookWidth"
|
||||
:disabled="!pages[currentPage].imageLoaded"
|
||||
/>
|
||||
<div class="is-flex is-justify-between">
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || bookWidth<= DEFAULT_PAGE_WIDTH - 100"
|
||||
@click="bookWidth-=2"
|
||||
>
|
||||
<i class="fa fa-fw fa-minus"></i>
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || bookWidth >= DEFAULT_PAGE_WIDTH"
|
||||
@click="bookWidth+=2"
|
||||
>
|
||||
<i class="fa fa-fw fa-plus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="prev-page-preview" v-else>
|
||||
<div
|
||||
class="is-flex is-justify-centered"
|
||||
v-if="pages[currentPage - 1] && pages[currentPage - 1].base64"
|
||||
>
|
||||
<div class="book-thumb page-preview">
|
||||
<div class="book-text">
|
||||
<div>Previouse Page</div>
|
||||
</div>
|
||||
<div class="book-cover is-flex">
|
||||
<img
|
||||
:src="pages[currentPage - 1] ? pages[currentPage - 1].base64: ''"
|
||||
/>
|
||||
</div>
|
||||
<div class="book-text">
|
||||
<div>{{pages[currentPage - 1].text}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr class="is-fullwidth-container" />
|
||||
<div class="field" v-if="currentPage===0 && pages.length===1">
|
||||
<label class="label">Page height</label>
|
||||
<input
|
||||
type="range"
|
||||
:min="DEFAULT_PAGE_HEIGHT-50"
|
||||
:max="DEFAULT_PAGE_HEIGHT"
|
||||
v-model="bookHeight"
|
||||
:disabled="!pages[currentPage].imageLoaded"
|
||||
/>
|
||||
<div class="is-flex is-justify-between">
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || bookWidth<= DEFAULT_PAGE_HEIGHT - 50"
|
||||
@click="bookHeight-=2"
|
||||
>
|
||||
<i class="fa fa-fw fa-minus"></i>
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || bookWidth >= DEFAULT_PAGE_HEIGHT"
|
||||
@click="bookHeight+=2"
|
||||
>
|
||||
<i class="fa fa-fw fa-plus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field"></div>
|
||||
<div class="field">
|
||||
<label class="label">Zoom Image</label>
|
||||
<input
|
||||
type="range"
|
||||
min="0"
|
||||
:max="DEFAULT_ZOOM*2"
|
||||
v-model="pageZoom"
|
||||
:disabled="!pages[currentPage].imageLoaded"
|
||||
ref="zoomRangeSlider"
|
||||
@mouseup="blurZoomSlider()"
|
||||
/>
|
||||
<div class="is-flex is-justify-between">
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || pageZoom <= 0"
|
||||
@click="zoom(false)"
|
||||
>
|
||||
<i class="fa fa-fw fa-minus"></i>
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
class="button is-rounded is-outlined is-small"
|
||||
:disabled="!pages[currentPage].imageLoaded || pageZoom >= DEFAULT_ZOOM * 2"
|
||||
@click="zoom(true)"
|
||||
>
|
||||
<i class="fa fa-fw fa-plus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="rotations is-flex is-justify-between m-b-lg">
|
||||
<label class="label">Rotate Image</label>
|
||||
<button
|
||||
class="button"
|
||||
@click="onRotateClicked(false)"
|
||||
:disabled="!pages[currentPage].imageLoaded"
|
||||
>
|
||||
<i class="fa fa-fw fa-rotate-left"></i>
|
||||
</button>
|
||||
<button
|
||||
class="button"
|
||||
@click="onRotateClicked(true)"
|
||||
:disabled="!pages[currentPage].imageLoaded"
|
||||
>
|
||||
<i class="fa fa-fw fa-rotate-right"></i>
|
||||
</button>
|
||||
</div>
|
||||
<div class="change-image">
|
||||
<button
|
||||
class="button is-fullwidth-container"
|
||||
@click="pages[currentPage].croppa.chooseFile()"
|
||||
>
|
||||
<i class="fa fa-fw fa-refresh"></i> Change Image
|
||||
</button>
|
||||
</div>
|
||||
<div class="remove-image" v-if="currentPage === pages.length-1">
|
||||
<button
|
||||
class="button is-danger is-fullwidth-container"
|
||||
@click="deleteLastPage()"
|
||||
>
|
||||
<i class="fa fa-fw fa-trash"></i> Delete Page
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<!-- TODO: Fix this shit - maybe fork the project? -->
|
||||
<!-- <div class="field">
|
||||
<label class="label">Rotate Image</label>
|
||||
<input
|
||||
type="range"
|
||||
min="-180"
|
||||
max="180"
|
||||
v-model="pageRotation"
|
||||
:disabled="!pages[currentPage].croppa.hasImage"
|
||||
/>
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</transition>
|
||||
<!-- Book Preview -->
|
||||
<transition name="fade">
|
||||
<div
|
||||
:class="`is-fullheight-container ${flipbookRef ? '' : 'is-transparent'}`"
|
||||
v-if="!editMode"
|
||||
>
|
||||
<div class="book-view m-sm m-r-md">
|
||||
<div
|
||||
class="go-left m-r-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; left:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!canFlipLeft"
|
||||
@click="onLeftClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-left"></i>
|
||||
</button>
|
||||
</div>
|
||||
<flipbook
|
||||
class="flipbook"
|
||||
:pages="previewPages"
|
||||
:forwardDirection="book.ltr ? 'right': 'left'"
|
||||
:zooms="null"
|
||||
:enabled="true"
|
||||
ref="flipbook"
|
||||
v-slot="flipbook"
|
||||
@on-mounted="bookMounted()"
|
||||
>
|
||||
<div class="page-progress has-text-centered m-b-none">
|
||||
<p>Page {{ flipbook.page }} of {{ flipbook.numPages }}</p>
|
||||
</div>
|
||||
</flipbook>
|
||||
<div
|
||||
class="go-right m-l-sm"
|
||||
style="display: inline-block; align-items: center; position: absolute; right:0px; top:0px"
|
||||
>
|
||||
<button
|
||||
class="button book-flip-buttons"
|
||||
:disabled="!canFlipRight"
|
||||
@click="onRightClicked()"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-right"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</transition>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { mapGetters, mapActions } from "vuex";
|
||||
import Flipbook from "../components/flipbook/flipbook.cjs.js";
|
||||
import Croppa from "vue-croppa";
|
||||
import Services from "../../services";
|
||||
|
||||
const DEFAULT_PAGE_WIDTH = 350;
|
||||
const DEFAULT_PAGE_HEIGHT = 350;
|
||||
|
||||
const DEFAULT_ZOOM = 250;
|
||||
const MIME_TYPE = "image/jpeg";
|
||||
const COMPRESSION_RATE = 0.4;
|
||||
export default {
|
||||
name: "EditBook",
|
||||
props: ["editBook"],
|
||||
components: {
|
||||
Flipbook,
|
||||
Croppa: Croppa.component
|
||||
},
|
||||
watch: {
|
||||
editMode: function(newVal) {
|
||||
if (!newVal) {
|
||||
this.currentPage = -7;
|
||||
//Update previewPages
|
||||
this.previewPages = [null, ...this.pages.map(page => page.image)];
|
||||
} else {
|
||||
if (this.currentPage < 0 && this.pages.length) this.currentPage = 0;
|
||||
this.flipbookRef = false;
|
||||
}
|
||||
},
|
||||
currentPage: async function(currentPage, lastPage) {
|
||||
/// Save progress on latest page
|
||||
console.log(lastPage, currentPage);
|
||||
if (this.pages[lastPage] && lastPage >= 0) {
|
||||
const imageBlob = await this.pages[lastPage].croppa.promisedBlob(
|
||||
MIME_TYPE,
|
||||
COMPRESSION_RATE
|
||||
);
|
||||
if (imageBlob) {
|
||||
let url = URL.createObjectURL(imageBlob);
|
||||
this.pages[lastPage].base64 = this.pages[
|
||||
lastPage
|
||||
].croppa.generateDataUrl(MIME_TYPE, COMPRESSION_RATE);
|
||||
this.pages[lastPage].image = url;
|
||||
}
|
||||
}
|
||||
if (currentPage >= 0) {
|
||||
// Load new page croppa
|
||||
this.pages[currentPage].loaded = false;
|
||||
this.$nextTick(function() {
|
||||
console.log("tick");
|
||||
this.pages[currentPage].loaded = true;
|
||||
});
|
||||
}
|
||||
this.pageRotation = 0;
|
||||
this.pageZoom = DEFAULT_ZOOM;
|
||||
return true;
|
||||
},
|
||||
pageRotation: function(newAngle) {
|
||||
console.log(newAngle);
|
||||
const page = this.pages[this.currentPage];
|
||||
const canvas: HTMLCanvasElement = page.croppa.getCanvas();
|
||||
const ctx: CanvasRenderingContext2D = page.croppa.getContext();
|
||||
ctx.rotate((newAngle * Math.PI) / 180);
|
||||
ctx.drawImage(canvas, 0, 0);
|
||||
ctx.setTransform(1, 0, 0, 1, 0, 0);
|
||||
this.$nextTick(function() {
|
||||
// page.croppa.moveDownwards(1);
|
||||
});
|
||||
// page.croppa.rotate(newAngle / 90);
|
||||
},
|
||||
pageZoom: function(newVal, oldVal) {
|
||||
const page = this.pages[this.currentPage];
|
||||
console.log(newVal, oldVal);
|
||||
const delta = Math.abs(newVal - oldVal);
|
||||
if (!page.croppa.zoomOut) return;
|
||||
if (newVal < oldVal) {
|
||||
//zoomOut
|
||||
for (let i = delta; i > 0; i--) page.croppa.zoomOut();
|
||||
} else {
|
||||
//zoomIn
|
||||
for (let i = delta; i > 0; i--) page.croppa.zoomIn();
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.editBook) this.book = this.editBook;
|
||||
else
|
||||
this.book = {
|
||||
name: "",
|
||||
ltr: true,
|
||||
pages: 0,
|
||||
user_id: this.user.id
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
...mapActions(["notify", "getUser"]),
|
||||
///
|
||||
deleteLastPage() {
|
||||
this.pages.pop();
|
||||
|
||||
if (!this.pages.length) this.currentPage = -7;
|
||||
else this.currentPage = this.pages.length - 1;
|
||||
},
|
||||
onRotateClicked(clockwise: boolean) {
|
||||
const page = this.pages[this.currentPage];
|
||||
page.croppa.rotate(clockwise ? 1 : -1);
|
||||
},
|
||||
onPageClicked(pageIndex) {
|
||||
this.currentPage = pageIndex;
|
||||
this.editMode = true;
|
||||
},
|
||||
onCroppaImageLoaded() {
|
||||
this.pages[this.currentPage].imageLoaded = true;
|
||||
},
|
||||
async promiseAllProgress(
|
||||
promises: Promise<any>[],
|
||||
callback: (done: number, total: number) => void
|
||||
): Promise<any> {
|
||||
let counter = 0;
|
||||
callback(counter, promises.length);
|
||||
for (let i = 0; i < promises.length; i++) {
|
||||
const promise = promises[i];
|
||||
promise.then(async val => {
|
||||
counter++;
|
||||
callback(counter, promises.length);
|
||||
return val;
|
||||
});
|
||||
}
|
||||
return Promise.all(promises);
|
||||
},
|
||||
async onUploadClicked() {
|
||||
//TODO: Better validations
|
||||
if (!this.book.title || !this.book.title.length) {
|
||||
this.notify({
|
||||
message: "Book needs a title!",
|
||||
level: "warning"
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (!this.book.author || !this.book.author.length) {
|
||||
this.notify({
|
||||
message: "Book sure has an author!",
|
||||
level: "warning"
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (this.pages.length < 4) {
|
||||
this.notify({
|
||||
message: "A book need to have at least 4 pages",
|
||||
level: "warning"
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (!this.pages[this.pages.length - 1].base64) {
|
||||
this.notify({
|
||||
message: "You last page is empty. Delete or update",
|
||||
level: "warning"
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.uploading = true;
|
||||
try {
|
||||
const resp = await Services.ApiService.uploadBook({
|
||||
title: this.book.title,
|
||||
author: this.book.author,
|
||||
ltr: this.book.ltr,
|
||||
pages: this.pages.map(
|
||||
p =>
|
||||
p.base64 || p.croppa.generateDataUrl(MIME_TYPE, COMPRESSION_RATE)
|
||||
)
|
||||
});
|
||||
if (resp.code === 0) {
|
||||
this.notify({
|
||||
message: `Woop Woop!! ${this.book.title} has been added!`,
|
||||
level: "success"
|
||||
});
|
||||
this.getUser();
|
||||
this.$router.replace({ path: `/` });
|
||||
} else {
|
||||
this.notify({
|
||||
message: `Something went wrong!`,
|
||||
level: "danger"
|
||||
});
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(`Error... ${e.message}`);
|
||||
}
|
||||
this.uploading = false;
|
||||
},
|
||||
async onEditClicked() {
|
||||
const lastPage = this.currentPage;
|
||||
if (lastPage >= 0) {
|
||||
const imageBlob = await this.pages[lastPage].croppa.promisedBlob(
|
||||
MIME_TYPE,
|
||||
COMPRESSION_RATE
|
||||
);
|
||||
if (!imageBlob) {
|
||||
this.notify({
|
||||
message: "Cant have an empty page.",
|
||||
level: "warning"
|
||||
});
|
||||
this.currentPage = lastPage;
|
||||
return;
|
||||
}
|
||||
let url = URL.createObjectURL(imageBlob);
|
||||
this.pages[lastPage].base64 = this.pages[
|
||||
lastPage
|
||||
].croppa.generateDataUrl(MIME_TYPE, COMPRESSION_RATE);
|
||||
this.pages[lastPage].image = url;
|
||||
this.currentPage = -7;
|
||||
this.editMode = false;
|
||||
} else {
|
||||
this.notify({
|
||||
message: `Please add pages before preview`,
|
||||
level: "warning"
|
||||
});
|
||||
}
|
||||
},
|
||||
async onAddPageClicked() {
|
||||
const lastPage = this.pages.length - 1;
|
||||
if (lastPage < 0) {
|
||||
this.pages.push({
|
||||
text: "Cover",
|
||||
id: 0,
|
||||
loaded: false,
|
||||
croppa: {},
|
||||
image: null,
|
||||
imageLoaded: false,
|
||||
base64: null
|
||||
});
|
||||
this.currentPage = 0;
|
||||
//return;
|
||||
} else {
|
||||
console.log("In else");
|
||||
const nextPage = lastPage + 1;
|
||||
const imageBlob = await this.pages[lastPage].croppa.promisedBlob(
|
||||
MIME_TYPE,
|
||||
COMPRESSION_RATE
|
||||
);
|
||||
if (!imageBlob) {
|
||||
this.notify({
|
||||
message: "Your last page is still empty",
|
||||
level: "warning"
|
||||
});
|
||||
this.currentPage = lastPage;
|
||||
return;
|
||||
}
|
||||
this.editMode = true;
|
||||
let url = URL.createObjectURL(imageBlob);
|
||||
this.pages[lastPage].base64 = this.pages[
|
||||
lastPage
|
||||
].croppa.generateDataUrl(MIME_TYPE, COMPRESSION_RATE);
|
||||
this.pages[lastPage].image = url;
|
||||
this.pages.push({
|
||||
text: `Page ${nextPage}`,
|
||||
id: nextPage,
|
||||
loaded: false,
|
||||
croppa: {},
|
||||
image: null,
|
||||
imageLoaded: false,
|
||||
base64: null
|
||||
});
|
||||
this.currentPage = nextPage;
|
||||
}
|
||||
},
|
||||
bookMounted() {
|
||||
if (this.$refs.flipbook) {
|
||||
console.log("Found!");
|
||||
this.flipbookRef = true;
|
||||
// this.$refs.flipbook.onResize();
|
||||
// console.log("resized");
|
||||
} else {
|
||||
console.log("Still Null!!");
|
||||
}
|
||||
},
|
||||
onLeftClicked() {
|
||||
console.time("Flip Left");
|
||||
this.$refs.flipbook.flipLeft();
|
||||
console.timeEnd("Flip Left");
|
||||
return true;
|
||||
},
|
||||
onRightClicked() {
|
||||
this.$refs.flipbook.flipRight();
|
||||
return true;
|
||||
},
|
||||
zoom(zoomIn: boolean) {
|
||||
const amount = zoomIn ? 2 : -2;
|
||||
this.pageZoom = Number(this.pageZoom) + amount;
|
||||
},
|
||||
blurZoomSlider() {
|
||||
const slider: HTMLInputElement = this.$refs.zoomRangeSlider;
|
||||
if (slider) {
|
||||
slider.blur();
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(["user"]),
|
||||
//
|
||||
bookPages() {
|
||||
return this.pages.slice(1);
|
||||
},
|
||||
croppaClass() {
|
||||
if (this.currentPage != 0 && this.currentPage % 2 == 0) {
|
||||
return `book-stitch-preview-${this.book.ltr ? "left" : "right"}`;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
canFlipLeft() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipLeft;
|
||||
},
|
||||
canFlipRight() {
|
||||
return this.flipbookRef && this.$refs.flipbook.canFlipRight;
|
||||
},
|
||||
croppaWidth() {
|
||||
return Number(this.bookWidth);
|
||||
},
|
||||
croppaHeight() {
|
||||
return Number(this.bookHeight);
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
book: {
|
||||
title: "",
|
||||
author: "",
|
||||
rtl: true
|
||||
},
|
||||
pages: [],
|
||||
bookWidth: DEFAULT_PAGE_WIDTH,
|
||||
bookHeight: DEFAULT_PAGE_HEIGHT,
|
||||
previewPages: [],
|
||||
editMode: true,
|
||||
currentPage: -7,
|
||||
flipbookRef: false,
|
||||
pageRotation: 0,
|
||||
pageZoom: DEFAULT_ZOOM,
|
||||
uploading: false,
|
||||
errors: {},
|
||||
DEFAULT_PAGE_WIDTH,
|
||||
DEFAULT_PAGE_HEIGHT,
|
||||
DEFAULT_ZOOM
|
||||
};
|
||||
}
|
||||
};
|
||||
</script>
|
|
@ -1,23 +1,9 @@
|
|||
<template>
|
||||
<div class="container is-fullwidth">
|
||||
<div class="container">
|
||||
<div class="loading" v-if="loading">
|
||||
<Loading />
|
||||
</div>
|
||||
<div class v-else>
|
||||
<!-- Add Child Modal -->
|
||||
<AddChildModal
|
||||
:isActive="showAddChildModal"
|
||||
@onFail="onCreateChildFailed($event)"
|
||||
@onCreated="onChildCreated($event)"
|
||||
@onClose="showAddChildModal=false"
|
||||
/>
|
||||
<!-- Change Avatar Modal -->
|
||||
<ChangeAvatarModal
|
||||
@onAvatarSelected="updateAvatar($event)"
|
||||
@onClose="showChangeAvatarModal=false"
|
||||
:isActive="showChangeAvatarModal"
|
||||
:defaultImage="user.avatar"
|
||||
/>
|
||||
<!-- Profile Cover Modal -->
|
||||
<Modal
|
||||
title="Change Cover"
|
||||
|
@ -43,13 +29,10 @@
|
|||
<!-- Profile -->
|
||||
<ProfileHeader :title="user.name" :background="user.profile_cover" />
|
||||
<div class="columns is-fullheight m-t-md">
|
||||
<div class="column is-2">
|
||||
<div class="column is-3">
|
||||
<div class="card">
|
||||
<div class="card-image p-md is-relative">
|
||||
<figure
|
||||
class="image is-1by1 editable-image is-light"
|
||||
@click="showChangeAvatarModal=true"
|
||||
>
|
||||
<div class="card-image">
|
||||
<figure class="image is-4by4 p-md">
|
||||
<img :src="user.avatar" class="is-rounded is-avatar" />
|
||||
</figure>
|
||||
</div>
|
||||
|
@ -63,9 +46,6 @@
|
|||
></ChildCard>
|
||||
<br />
|
||||
</div>
|
||||
<div v-else>
|
||||
<p class="card-header-title">No Connections yet...</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -76,59 +56,17 @@
|
|||
<!-- Left side -->
|
||||
<div class="level-left">
|
||||
<div class="level-item">
|
||||
<h1 class="title">{{`${user.name.split(' ')[0]}'s Room`}}</h1>
|
||||
<h1 class="title">My Room</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Right side -->
|
||||
<div class="level-right">
|
||||
<div class="level-item">
|
||||
<!-- Dropdown -->
|
||||
<div :class="`dropdown ${addMenuOpen ? 'is-active' : ''}`">
|
||||
<div class="dropdown-trigger">
|
||||
<button
|
||||
class="button"
|
||||
aria-haspopup="true"
|
||||
aria-controls="dropdown-menu"
|
||||
@click="addMenuOpen=!addMenuOpen"
|
||||
>
|
||||
<span>Add</span>
|
||||
<span class="icon is-small">
|
||||
<i
|
||||
:class="`fa fa-angle-${addMenuOpen ? 'up' : 'down'}`"
|
||||
aria-hidden="true"
|
||||
></i>
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="dropdown-menu" id="dropdown-menu" role="menu">
|
||||
<div class="dropdown-content">
|
||||
<a class="dropdown-item" @click="onAddClicked('book')">
|
||||
<i class="fa fa-fw fa-book"></i> Add a book
|
||||
</a>
|
||||
<a class="dropdown-item" @click="onAddClicked('slideshow')">
|
||||
<i class="fa fa-fw fa-photo"></i> New slideshow
|
||||
</a>
|
||||
<a class="dropdown-item" @click="onAddClicked('puzzle')">
|
||||
<i class="fa fa-fw fa-puzzle-piece"></i> Create a puzzle
|
||||
</a>
|
||||
<hr class="dropdown-divider" />
|
||||
<a class="dropdown-item" @click="onAddClicked('child')">
|
||||
<i class="fa fa-fw fa-child"></i> Add a child
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- End Dropdown -->
|
||||
<!-- <button class="button" @click="onAddClicked()">
|
||||
<button class="button">
|
||||
<i class="fa fa-fw fa-plus"></i> Add
|
||||
</button>-->
|
||||
<button
|
||||
class="button is-success m-l-md"
|
||||
@click="showCreateCallModal=true"
|
||||
:disabled="!user.connections.children.length"
|
||||
:title="user.connections.children.length ? 'Start a new call' : 'Only a parent of a child can start a call'"
|
||||
>
|
||||
</button>
|
||||
<button class="button is-success m-l-md" @click="showCreateCallModal=true">
|
||||
<i class="fa fa-fw fa-phone"></i> Call
|
||||
</button>
|
||||
</div>
|
||||
|
@ -138,13 +76,8 @@
|
|||
<h2 class="subtitle">
|
||||
<i class="fa fa-fw fa-book"></i> My Books
|
||||
</h2>
|
||||
<div class="is-flex m-b-md is-justify-centered has-wrap">
|
||||
<div
|
||||
class="book-thumb enabled m-l-md"
|
||||
v-for="book in user.books"
|
||||
:key="book.id"
|
||||
@click="goToBook(book)"
|
||||
>
|
||||
<div class="is-flex m-b-md">
|
||||
<div class="book-thumb m-l-md" v-for="book in user.books" :key="book.id">
|
||||
<div class="book-cover">
|
||||
<figure class="image is-2by3 m-a">
|
||||
<img :src="`/u/books/${book.id}/thumbnail`" />
|
||||
|
@ -170,14 +103,12 @@ import ChildCard from "../components/Child_Card.vue";
|
|||
import Services from "../../services/index";
|
||||
import Loading from "../../shared/components/Loading/Loading.vue";
|
||||
import ProfileHeader from "../components/ProfileHeader.vue";
|
||||
import AddChildModal from "../components/AddChildModal.vue";
|
||||
import AddConnectionModal from "../components/AddConnectionModal.vue";
|
||||
import ConfigureNewCallModal from "../components/ConfigureNewCallModal.vue";
|
||||
import FileSelect from "../../shared/components/FileSelect/FileSelect.vue";
|
||||
import AvatarBadge from "../components/AvatarBadge.vue";
|
||||
import Moment from "moment";
|
||||
import Modal from "../../shared/components/Modal/Modal.vue";
|
||||
import ChangeAvatarModal from "../components/ChangeAvatarModal.vue";
|
||||
export default {
|
||||
name: "Home",
|
||||
components: {
|
||||
|
@ -188,9 +119,7 @@ export default {
|
|||
AvatarBadge,
|
||||
AddConnectionModal,
|
||||
ConfigureNewCallModal,
|
||||
ChildCard,
|
||||
AddChildModal,
|
||||
ChangeAvatarModal
|
||||
ChildCard
|
||||
},
|
||||
beforeCreate() {},
|
||||
async created() {
|
||||
|
@ -205,74 +134,21 @@ export default {
|
|||
inEditMode: false,
|
||||
showCoverModal: false,
|
||||
showCreateCallModal: false,
|
||||
showAddChildModal: false,
|
||||
showAddConnectionModal: false,
|
||||
childCoverModalImage: null,
|
||||
addMenuOpen: false,
|
||||
showChangeAvatarModal: false
|
||||
childCoverModalImage: null
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
async updateAvatar(event) {
|
||||
if (!event.isDefaultImage) {
|
||||
try {
|
||||
const response = await Services.ApiService.updateUser({
|
||||
avatar: event.image
|
||||
});
|
||||
if (response.code === 0) {
|
||||
await this.getUser();
|
||||
this.notify({ message: "Updated Successfully!", level: "success" });
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
this.showChangeAvatarModal = false;
|
||||
return true;
|
||||
},
|
||||
onAddClicked(action: "book" | "slideshow" | "puzzle" | "child") {
|
||||
switch (action) {
|
||||
case "child":
|
||||
this.showAddChildModal = true;
|
||||
break;
|
||||
case "book":
|
||||
this.$router.push({ path: `/create/${action}` });
|
||||
break;
|
||||
default:
|
||||
this.notify({
|
||||
message: `Add ${action} button clicked. Still not working`
|
||||
});
|
||||
}
|
||||
this.addMenuOpen = false;
|
||||
},
|
||||
onDeleteClicked() {
|
||||
this.notify({ message: "Delete button clicked. Still not working" });
|
||||
this.notify({ message: "Test" });
|
||||
},
|
||||
goChildProfile(connection) {
|
||||
this.$router.push({ path: `/child/${connection.id}` });
|
||||
},
|
||||
goToBook(book) {
|
||||
this.$router.push({ path: `/book/${book.id}` });
|
||||
},
|
||||
async onChildCreated(child) {
|
||||
this.loading = true;
|
||||
await this.getUser();
|
||||
this.loading = false;
|
||||
this.showAddChildModal = false;
|
||||
this.notify({
|
||||
message: `Woohoo! ${child.name} created!`,
|
||||
level: "success"
|
||||
});
|
||||
this.goChildProfile(child);
|
||||
},
|
||||
onCreateChildFailed(msg) {
|
||||
this.notify({ message: `ERROR: ${msg}`, level: "danger" });
|
||||
this.showAddChildModal = false;
|
||||
},
|
||||
async makeCall(event) {
|
||||
try {
|
||||
const response = await Services.ApiService.createCall(event);
|
||||
this.notify({ message: `Connecting...` });
|
||||
this.notify({ message: `Connectiong...` });
|
||||
this.$router.push({ path: `/call/${response.data.id}` });
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
|
@ -283,9 +159,9 @@ export default {
|
|||
if (this.childCoverModalImage) {
|
||||
this.loading = true;
|
||||
try {
|
||||
this.child.profile_cover = await Services.ApiService.updateChild(
|
||||
this.child.profile_cover = await Services.ApiService.updateChildCover(
|
||||
this.child.id,
|
||||
{ profile_cover: this.childCoverModalImage }
|
||||
this.childCoverModalImage
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
|
|
|
@ -1,11 +1,106 @@
|
|||
<template>
|
||||
<div class="container is-fullwidth">
|
||||
<div class="container">
|
||||
<div class="loading" v-if="loading">
|
||||
<Loading />
|
||||
</div>
|
||||
<div class v-else>
|
||||
<h1 class="is-1">Under a complete remake.</h1>
|
||||
<h2 class="subtitle">Add a child from your homepage</h2>
|
||||
<Modal
|
||||
title="Add A child"
|
||||
:isActive="enableChildModel"
|
||||
acceptText="Add"
|
||||
rejectText="Cancel"
|
||||
@accept="addChild()"
|
||||
@close="enableChildModel=false"
|
||||
>
|
||||
<form class="form register" id="form-register">
|
||||
<div class="field">
|
||||
<label class="label">Name</label>
|
||||
<div class="control has-icons-left">
|
||||
<input
|
||||
:class="['input']"
|
||||
required="true"
|
||||
name="name"
|
||||
type="text"
|
||||
placeholder="John Snow"
|
||||
:disabled="!childValidation.enableInput"
|
||||
v-model="childValidation.name"
|
||||
/>
|
||||
<span class="icon is-small is-left">
|
||||
<i class="fa fa-id-card"></i>
|
||||
</span>
|
||||
</div>
|
||||
<p class="help is-danger">{{ '' }}</p>
|
||||
<!-- TODO: Error messages -->
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label class="label">Birthday</label>
|
||||
<div class="control has-icons-left">
|
||||
<input
|
||||
:class="['input']"
|
||||
required="true"
|
||||
name="dob"
|
||||
type="date"
|
||||
:disabled="!childValidation.enableInput"
|
||||
v-model="childValidation.dob"
|
||||
/>
|
||||
<span class="icon is-small is-left">
|
||||
<i class="fa fa-gift"></i>
|
||||
</span>
|
||||
</div>
|
||||
<p class="help is-danger">{{ '' }}</p>
|
||||
</div>
|
||||
<file-select v-model="childValidation.avatar" accept="image/*" lable="Upload Avatar:"></file-select>
|
||||
</form>
|
||||
</Modal>
|
||||
<div class="has-text-centered">
|
||||
<h3 class="title">Settings</h3>
|
||||
<h4 class="subtitle">{{user.name}}</h4>
|
||||
</div>
|
||||
<div class="columns">
|
||||
<div class="column is-one-quarter">
|
||||
<figure class="image is-128x128 m-auto">
|
||||
<img class="is-rounded is-avatar" :src="user.avatar" />
|
||||
</figure>
|
||||
<div class="card m-t-lg">
|
||||
<header class="card-header">
|
||||
<p class="card-header-title">My Children</p>
|
||||
</header>
|
||||
<div class="card-content">
|
||||
<ChildCard v-for="child in user.connections.children" :key="child.id" :child="child"></ChildCard>
|
||||
</div>
|
||||
<footer class="card-footer">
|
||||
<a
|
||||
:enabled="childValidation.enableInput"
|
||||
class="card-footer-item"
|
||||
@click="enableChildModel=true"
|
||||
>Add a New Child</a>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
<div class="column">
|
||||
<form class="form">
|
||||
<div class="field">
|
||||
<label class="label">Name</label>
|
||||
<div class="control">
|
||||
<input
|
||||
:disabled="!childValidation.enableInput"
|
||||
class="input"
|
||||
type="text"
|
||||
placeholder="Text input"
|
||||
v-model="user.name"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label class="label">Email</label>
|
||||
<div class="control">
|
||||
<input class="input" v-model="user.email" type="email" placeholder="Text input" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
|
|
@ -1,65 +1,16 @@
|
|||
export default class ApiService {
|
||||
|
||||
static async getUser(userId?: number) {
|
||||
try {
|
||||
return (await fetch('/api/v1/client/user/')).json();
|
||||
} catch (e) {
|
||||
console.error(`getUser ERROR: ${e.message}`);
|
||||
return e;
|
||||
}
|
||||
return (await fetch('/api/v1/client/user/')).json();
|
||||
}
|
||||
|
||||
|
||||
static async getAllUsers() {
|
||||
try {
|
||||
return (await fetch('/api/v1/admin/users')).json();
|
||||
} catch (e) {
|
||||
console.error(`getAllUsers ERROR: ${e.message}`);
|
||||
return e;
|
||||
}
|
||||
}
|
||||
|
||||
static async uploadBook(payload: { title: string, author: string, pages: string[], ltr: boolean }) {
|
||||
// console.log(payload);
|
||||
// return { code: 0 }
|
||||
const options = {
|
||||
method: 'POST',
|
||||
body: JSON.stringify(payload),
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
}
|
||||
try {
|
||||
return (await fetch('/api/v1/client/book/create', options)).json();
|
||||
} catch (e) {
|
||||
console.error(`uploadBook ERROR: ${e.message}`);
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
static async updateUser(payload: { name?: string; avatar?: string; profile_cover?: string; email?: string }) {
|
||||
const options = {
|
||||
method: 'PUT',
|
||||
body: JSON.stringify(payload),
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
}
|
||||
try {
|
||||
return (await fetch('/api/v1/client/user/', options)).json();
|
||||
} catch (e) {
|
||||
console.error(`updateUser ERROR: ${e.message}`);
|
||||
return e;
|
||||
}
|
||||
return (await fetch('/api/v1/admin/users')).json();
|
||||
}
|
||||
|
||||
static async getChild(id: number): Promise<IApiResponse> {
|
||||
try {
|
||||
return (await fetch(`/api/v1/client/child/${id}`)).json();
|
||||
} catch (e) {
|
||||
console.error(`getChild ERROR: ${e.message}`);
|
||||
return e;
|
||||
}
|
||||
return (await fetch(`/api/v1/client/child/${id}`)).json();
|
||||
}
|
||||
|
||||
static async createConnection(payload: { child_id: number, email: string, is_parent: boolean }) {
|
||||
|
@ -72,27 +23,28 @@ export default class ApiService {
|
|||
}
|
||||
try {
|
||||
return (await fetch('/api/v1/client/connections/create', options)).json();
|
||||
} catch (e) {
|
||||
console.error(`createConnection ERROR: ${e.message}`);
|
||||
return e;
|
||||
} catch (error) {
|
||||
return error;
|
||||
}
|
||||
}
|
||||
|
||||
static async updateChild(child_id: number, data: any) {
|
||||
static async updateChildCover(child_id: number, profile_cover: string) {
|
||||
const options = {
|
||||
method: 'POST',
|
||||
body: JSON.stringify(data),
|
||||
body: JSON.stringify({
|
||||
profile_cover
|
||||
}),
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
};
|
||||
try {
|
||||
const response = await fetch(`/api/v1/client/child/${child_id}`, options);
|
||||
const response = await fetch(`/api/v1/client/child/${child_id}/profile/cover`, options);
|
||||
console.log(response);
|
||||
return response.json();
|
||||
|
||||
} catch (e) {
|
||||
console.error(`updateChildCover ERROR: ${e.message}`);
|
||||
console.error(e);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
@ -110,7 +62,7 @@ export default class ApiService {
|
|||
return response.json();
|
||||
|
||||
} catch (e) {
|
||||
console.error(`createCall ERROR: ${e.message}`);
|
||||
console.error(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -131,9 +83,11 @@ export default class ApiService {
|
|||
};
|
||||
try {
|
||||
const response = await fetch('/api/v1/client/child/', options);
|
||||
console.log(response);
|
||||
return response.json();
|
||||
|
||||
} catch (e) {
|
||||
console.error(`createChild ERROR: ${e.message}`);
|
||||
console.error(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,40 +1,35 @@
|
|||
<template>
|
||||
<transition name="fade">
|
||||
<div :class="['modal', { 'is-active': !!isActive }]" v-if="!!isActive">
|
||||
<div class="modal-background" @click="close()"></div>
|
||||
<div class="modal-card">
|
||||
<header class="modal-card-head" v-if="showTitle">
|
||||
<p class="modal-card-title">{{title}}</p>
|
||||
<button class="delete" aria-label="close" @click="close()"></button>
|
||||
</header>
|
||||
<section class="modal-card-body">
|
||||
<slot></slot>
|
||||
</section>
|
||||
<footer class="modal-card-foot" v-if="showButtons">
|
||||
<button
|
||||
class="button is-success"
|
||||
v-if="!!acceptText"
|
||||
@click="$emit('accept')"
|
||||
>{{acceptText}}</button>
|
||||
<button class="button" @click="close()" v-if="!!rejectText">{{rejectText}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
<div :class="['modal', { 'is-active': !!isActive }]">
|
||||
<div class="modal-background" @click="close()"></div>
|
||||
<div class="modal-card">
|
||||
<header class="modal-card-head" v-if="showTitle">
|
||||
<p class="modal-card-title">{{title}}</p>
|
||||
<button class="delete" aria-label="close" @click="close()"></button>
|
||||
</header>
|
||||
<section class="modal-card-body">
|
||||
<slot></slot>
|
||||
</section>
|
||||
<footer class="modal-card-foot" v-if="showButtons">
|
||||
<button class="button is-success" v-if="!!acceptText" @click="$emit('accept')">{{acceptText}}</button>
|
||||
<button class="button" @click="close()" v-if="!!rejectText">{{rejectText}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
</transition>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
export default {
|
||||
|
||||
props: ["title", "isActive", "acceptText", "rejectText"],
|
||||
data() {
|
||||
data(){
|
||||
return {
|
||||
showTitle: !!this.title,
|
||||
showButtons: this.acceptText || this.rejectText
|
||||
};
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
close() {
|
||||
this.$emit("close");
|
||||
this.$emit('close');
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -1,24 +1,16 @@
|
|||
<template>
|
||||
<transition name="fade">
|
||||
<div :class="['notification' ,'is-light', `is-${notification.level || 'info'}`]" v-if="ready">
|
||||
<button class="delete" @click="close()"></button>
|
||||
{{notification.message}}
|
||||
</div>
|
||||
</transition>
|
||||
<div
|
||||
:class="['notification','notification-fade' ,'is-light', `is-${notification.level || 'info'}`]"
|
||||
>
|
||||
<button class="delete" @click="close()"></button>
|
||||
{{notification.message}}
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
export default {
|
||||
name: "Notification",
|
||||
props: ["notification"],
|
||||
mounted() {
|
||||
this.ready = true;
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
ready: false
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
close() {
|
||||
this.$emit("onClose");
|
||||
|
|
|
@ -1,158 +1,118 @@
|
|||
<template>
|
||||
<div>
|
||||
<!-- End Call Modal -->
|
||||
<Modal
|
||||
title="Are You Sure?"
|
||||
:isActive="showConfirmEndCall"
|
||||
acceptText="End"
|
||||
rejectText="Cancel"
|
||||
@accept="onConfirmedEndCall()"
|
||||
@close="showConfirmEndCall=false"
|
||||
>
|
||||
<p>End Call?</p>
|
||||
</Modal>
|
||||
<nav class="navbar is-light" role="navigation" aria-label="main navigation">
|
||||
<div class="navbar-brand">
|
||||
<router-link to="/" class="navbar-item" exact v-if="!inCall">
|
||||
<strong>Seepur</strong>
|
||||
</router-link>
|
||||
<!-- <a class="navbar-item" href="/">
|
||||
</a>-->
|
||||
<a
|
||||
id="menu-button"
|
||||
role="button"
|
||||
class="navbar-burger burger"
|
||||
@click="showMenu=!showMenu"
|
||||
aria-label="menu"
|
||||
aria-expanded="false"
|
||||
data-target="navbarBasicExample"
|
||||
>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
</a>
|
||||
</div>
|
||||
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||
<div class="navbar-brand">
|
||||
<router-link to="/" class="navbar-item" exact v-if="!inCall">
|
||||
<strong>Seepur</strong>
|
||||
</router-link>
|
||||
<!-- <a class="navbar-item" href="/">
|
||||
</a>-->
|
||||
<a
|
||||
id="menu-button"
|
||||
role="button"
|
||||
class="navbar-burger burger"
|
||||
@click="showMenu=!showMenu"
|
||||
aria-label="menu"
|
||||
aria-expanded="false"
|
||||
data-target="navbarBasicExample"
|
||||
>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div id="nav-menu" :class="['navbar-menu', {'is-active':showMenu}]">
|
||||
<div class="navbar-start">
|
||||
<!-- Normal Nav -->
|
||||
<router-link active-class="is-active" to="/" class="navbar-item" exact v-if="!inCall">Home</router-link>
|
||||
<router-link
|
||||
active-class="is-active"
|
||||
to="/about"
|
||||
class="navbar-item"
|
||||
exact
|
||||
v-if="!inCall"
|
||||
>About</router-link>
|
||||
<!-- In call Nav -->
|
||||
<div class="navbar-item" v-if="inCall">
|
||||
<div class="field is-grouped">
|
||||
<p class="control">
|
||||
<button @click="showConfirmEndCall = true" class="button is-danger" v-if="inCall">
|
||||
<i class="fa fa-fw fa-times-circle-o"></i> End Call
|
||||
</button>
|
||||
</p>
|
||||
<p class="control">
|
||||
<button
|
||||
class="button is-info"
|
||||
append
|
||||
replace
|
||||
v-if="inCall && $route.name==='book'"
|
||||
:disabled="!callManager.isHost"
|
||||
@click="backToLobby(true)"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-circle-o-left"></i> Back
|
||||
</button>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="navbar-end">
|
||||
<div class="navbar-item has-dropdown is-hoverable is-dark" v-if="!inCall">
|
||||
<a class="navbar-link">{{user.name}}</a>
|
||||
|
||||
<div class="navbar-dropdown">
|
||||
<div id="nav-menu" :class="['navbar-menu', {'is-active':showMenu}]">
|
||||
<div class="navbar-start">
|
||||
<!-- Normal Nav -->
|
||||
<router-link active-class="is-active" to="/" class="navbar-item" exact v-if="!inCall">Home</router-link>
|
||||
<router-link
|
||||
active-class="is-active"
|
||||
to="/about"
|
||||
class="navbar-item"
|
||||
exact
|
||||
v-if="!inCall"
|
||||
>About</router-link>
|
||||
<!-- In call Nav -->
|
||||
<div class="navbar-item" v-if="inCall">
|
||||
<div class="field is-grouped">
|
||||
<p class="control">
|
||||
<router-link
|
||||
active-class="is-active"
|
||||
to="/settings"
|
||||
class="navbar-item"
|
||||
to="/"
|
||||
class="button is-danger"
|
||||
exact
|
||||
>Settings</router-link>
|
||||
<a class="navbar-item" href="/logout">Logout</a>
|
||||
<hr class="navbar-divider" v-if="user.is_admin" />
|
||||
<a class="navbar-item" href="/admin/" v-if="user.is_admin">Admin Settigns</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-item" v-if="inCall">
|
||||
replace
|
||||
v-if="inCall"
|
||||
>
|
||||
<i class="fa fa-fw fa-times-circle-o"></i> End Call
|
||||
</router-link>
|
||||
</p>
|
||||
<p class="control">
|
||||
<button class="button" @click="changeHost()">
|
||||
<i class="fa fa-fw fa-refresh"></i> Change Host
|
||||
<button
|
||||
class="button is-info"
|
||||
append
|
||||
replace
|
||||
v-if="inCall && $route.name==='book'"
|
||||
:disabled="!callManager.isHost"
|
||||
@click="backToLobby(true)"
|
||||
>
|
||||
<i class="fa fa-fw fa-arrow-circle-o-left"></i> Back
|
||||
</button>
|
||||
</p>
|
||||
</div>
|
||||
<div v-if="inCall" class="navbar-item">Current Host: {{host.name}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
<div class="navbar-end">
|
||||
<div class="navbar-item has-dropdown is-hoverable is-dark" v-if="!inCall">
|
||||
<a class="navbar-link">{{user.name}}</a>
|
||||
|
||||
<div class="navbar-dropdown">
|
||||
<router-link active-class="is-active" to="/settings" class="navbar-item" exact>Settings</router-link>
|
||||
<a class="navbar-item" href="/logout">Logout</a>
|
||||
<hr class="navbar-divider" v-if="user.is_admin" />
|
||||
<a class="navbar-item" href="/admin/" v-if="user.is_admin">Admin Settigns</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="navbar-item" v-if="inCall">
|
||||
<p class="control">
|
||||
<button class="button" @click="changeHost()">
|
||||
<i class="fa fa-fw fa-refresh"></i> Change Host
|
||||
</button>
|
||||
</p>
|
||||
</div>
|
||||
<div v-if="inCall" class="navbar-item">Current Host: {{host.name}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { mapGetters, mapActions } from "vuex";
|
||||
import CallManager, { ECallEvents } from "../../home/ws/call.manager";
|
||||
import WebsocketService from "../../home/ws/websocket.service";
|
||||
import Modal from "../../shared/components/Modal/Modal.vue";
|
||||
import { ECallEvents } from "../../home/classes/call.manager";
|
||||
export default {
|
||||
name: "TobNavbar",
|
||||
props: ["ws"],
|
||||
components: {
|
||||
Modal
|
||||
},
|
||||
watch: {
|
||||
ws(val, oldVal) {
|
||||
if (val != null) {
|
||||
this.callManager = this.ws.callManager;
|
||||
}
|
||||
}
|
||||
},
|
||||
async created() {},
|
||||
updated() {
|
||||
if (!this.inCall) {
|
||||
this.subscribedToLobbyEvents = false;
|
||||
}
|
||||
},
|
||||
created() {},
|
||||
data() {
|
||||
return {
|
||||
showConfirmEndCall: false,
|
||||
showMenu: false,
|
||||
subscribedToLobbyEvents: false,
|
||||
callManager: null as CallManager
|
||||
showMenu: false
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
host() {
|
||||
if (this.inCall) {
|
||||
if (!this.subscribedToLobbyEvents) {
|
||||
console.log("TopNav subscribe to back_to_lobby");
|
||||
this.subscribedToLobbyEvents = true;
|
||||
this.callManager.on(
|
||||
ECallEvents.CALL_VIEW_LOBBY,
|
||||
this.remoteBackToLobby.bind(this)
|
||||
);
|
||||
}
|
||||
this.callManager.on(
|
||||
ECallEvents.CALL_VIEW_LOBBY,
|
||||
this.remoteBackToLobby.bind(this)
|
||||
);
|
||||
if (this.callManager.isHost) return this.user;
|
||||
return this.callManager.peer;
|
||||
}
|
||||
return null;
|
||||
},
|
||||
...mapGetters(["user", "inCall"])
|
||||
...mapGetters(["user", "inCall", "callManager"])
|
||||
},
|
||||
methods: {
|
||||
onConfirmedEndCall() {
|
||||
this.showConfirmEndCall = false;
|
||||
this.$router.replace({ path: `/` });
|
||||
},
|
||||
changeHost() {
|
||||
this.callManager.changeHost();
|
||||
},
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{{ script('scripts/components/navbar/app.bundle.js') }}
|
||||
<nav class="{{ isLanding ? 'darken' : '' }} navbar is-light" role="navigation" aria-label="main navigation">
|
||||
<nav class="{{ isLanding ? 'darken' : '' }} navbar" role="navigation" aria-label="main navigation">
|
||||
<div class="navbar-brand">
|
||||
<a class="navbar-item" href="/">
|
||||
{{-- <img src="https://bulma.io/images/bulma-logo.png" width="112" height="28"> --}}
|
||||
|
@ -49,10 +49,10 @@
|
|||
@else
|
||||
<div class="navbar-item">
|
||||
<div class="buttons">
|
||||
<a class="button is-primary is-rounded" href='/register'>
|
||||
<a class="button is-primary" href='/register'>
|
||||
<strong>Sign up</strong>
|
||||
</a>
|
||||
<a class="button is-rounded is-outlined" href='/login'>
|
||||
<a class="button is-light" href='/login'>
|
||||
Log in
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
<html>
|
||||
|
||||
<head>
|
||||
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat&display=swap">
|
||||
</head>
|
||||
|
||||
<body style="font-family: 'Montserrat', Arial, sans-serif;">
|
||||
<div style="width:100%;background-color:#fff;">
|
||||
<div style="color: #4a4a4a;
|
||||
max-width:800px;
|
||||
margin-left:auto;
|
||||
margin-right:auto;
|
||||
text-align: left;
|
||||
direction: ltr;
|
||||
">
|
||||
<div style="background-color: #fafafa;
|
||||
padding: 2rem 1.5rem 2rem;
|
||||
margin-bottom:2rem;
|
||||
background-image: url('{{baseUrl}}/images/emails/cloudgroup.png');
|
||||
background-size: cover;
|
||||
background-position: center center;">
|
||||
<h1>Seepur</h1>
|
||||
<h4>A <b>safe</b> and <b>fun</b> way to spend time with far away loved ones</h4>
|
||||
</div>
|
||||
|
||||
@!section('content')
|
||||
|
||||
<footer style="background-color: #fafafa;
|
||||
padding: 3rem 1.5rem 6rem;
|
||||
margin-top:2rem;
|
||||
/* background-image: url('{{baseUrl}}/images/emails/sun+cloud.png'); */
|
||||
background-position: center center;
|
||||
background-size: contain;
|
||||
background-repeat: no-repeat;
|
||||
">
|
||||
<div style="text-align: center !important;">
|
||||
<p>
|
||||
<strong>Seepur</strong> | The source code is licensed
|
||||
<a href="https://www.gnu.org/licenses/agpl-3.0.en.html">AGPLv3</a>. Made with ♥️ by friends and family. For
|
||||
all
|
||||
the savtot out there
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,13 +0,0 @@
|
|||
Hi {{user.name}},
|
||||
The following URL will allow you to reset your password.
|
||||
If you have not requested the password reset, then ignore this email.
|
||||
|
||||
Navigate to:
|
||||
{{link.href}}
|
||||
|
||||
|
||||
Do note that this link will expire within 24 hours.
|
||||
|
||||
|
||||
Have a great time,
|
||||
Team Seepur
|
|
@ -1,30 +0,0 @@
|
|||
@layout('emails.layouts.base')
|
||||
|
||||
@section('content')
|
||||
Hi {{user.name}},
|
||||
<p>
|
||||
Click the following button to reset your password. If you have not requested the password reset, then ignore this email.
|
||||
</p>
|
||||
<div style="width: 100%; display:flex;justify-content: center;">
|
||||
<a style="margin-right:auto; margin-left:auto;background-color: white;
|
||||
border:solid 1px #dbdbdb;
|
||||
color: #363636;
|
||||
cursor: pointer;
|
||||
justify-content: center;
|
||||
padding-bottom: calc(0.5em - 1px);
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
padding-top: calc(0.5em - 1px);
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
border-radius: 290486px;
|
||||
padding-left: calc(1em + 0.25em);
|
||||
padding-right: calc(1em + 0.25em);
|
||||
display: inline-block;
|
||||
text-decoration: none;
|
||||
" href="{{link.href}}" target="_blank">{{link.text}}</a>
|
||||
</div>
|
||||
<p>
|
||||
Do note that this link will expire within 24 hours.
|
||||
</p>
|
||||
@endsection
|
|
@ -1,6 +0,0 @@
|
|||
|
||||
Hi {{user.name}},
|
||||
|
||||
You've got mail!
|
||||
|
||||
If you see this email it means that your email settings are correct!
|