@ -0,0 +1,3 @@ |
|||||||
|
# Developers |
||||||
|
|
||||||
|
- Özcan Oğuz <ozcan {on} oyd.org.tr> |
@ -0,0 +1,675 @@ |
|||||||
|
### GNU GENERAL PUBLIC LICENSE |
||||||
|
|
||||||
|
Version 3, 29 June 2007 |
||||||
|
|
||||||
|
Copyright (C) 2007 Free Software Foundation, Inc. |
||||||
|
<https://fsf.org/> |
||||||
|
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies of this |
||||||
|
license document, but changing it is not allowed. |
||||||
|
|
||||||
|
### Preamble |
||||||
|
|
||||||
|
The GNU General Public License is a free, copyleft license for |
||||||
|
software and other kinds of works. |
||||||
|
|
||||||
|
The licenses for most software and other practical works are designed |
||||||
|
to take away your freedom to share and change the works. By contrast, |
||||||
|
the GNU General Public License is 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. We, the Free Software Foundation, use |
||||||
|
the GNU General Public License for most of our software; it applies |
||||||
|
also to any other work released this way by its authors. You can apply |
||||||
|
it to your programs, too. |
||||||
|
|
||||||
|
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. |
||||||
|
|
||||||
|
To protect your rights, we need to prevent others from denying you |
||||||
|
these rights or asking you to surrender the rights. Therefore, you |
||||||
|
have certain responsibilities if you distribute copies of the |
||||||
|
software, or if you modify it: responsibilities to respect the freedom |
||||||
|
of others. |
||||||
|
|
||||||
|
For example, if you distribute copies of such a program, whether |
||||||
|
gratis or for a fee, you must pass on to the recipients the same |
||||||
|
freedoms that you received. You must make sure that they, too, receive |
||||||
|
or can get the source code. And you must show them these terms so they |
||||||
|
know their rights. |
||||||
|
|
||||||
|
Developers that use the GNU GPL protect your rights with two steps: |
||||||
|
(1) assert copyright on the software, and (2) offer you this License |
||||||
|
giving you legal permission to copy, distribute and/or modify it. |
||||||
|
|
||||||
|
For the developers' and authors' protection, the GPL clearly explains |
||||||
|
that there is no warranty for this free software. For both users' and |
||||||
|
authors' sake, the GPL requires that modified versions be marked as |
||||||
|
changed, so that their problems will not be attributed erroneously to |
||||||
|
authors of previous versions. |
||||||
|
|
||||||
|
Some devices are designed to deny users access to install or run |
||||||
|
modified versions of the software inside them, although the |
||||||
|
manufacturer can do so. This is fundamentally incompatible with the |
||||||
|
aim of protecting users' freedom to change the software. The |
||||||
|
systematic pattern of such abuse occurs in the area of products for |
||||||
|
individuals to use, which is precisely where it is most unacceptable. |
||||||
|
Therefore, we have designed this version of the GPL to prohibit the |
||||||
|
practice for those products. If such problems arise substantially in |
||||||
|
other domains, we stand ready to extend this provision to those |
||||||
|
domains in future versions of the GPL, as needed to protect the |
||||||
|
freedom of users. |
||||||
|
|
||||||
|
Finally, every program is threatened constantly by software patents. |
||||||
|
States should not allow patents to restrict development and use of |
||||||
|
software on general-purpose computers, but in those that do, we wish |
||||||
|
to avoid the special danger that patents applied to a free program |
||||||
|
could make it effectively proprietary. To prevent this, the GPL |
||||||
|
assures that patents cannot be used to render the program non-free. |
||||||
|
|
||||||
|
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 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. Use with the GNU Affero General Public License. |
||||||
|
|
||||||
|
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 Affero 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 special requirements of the GNU Affero General Public License, |
||||||
|
section 13, concerning interaction through a network will apply to the |
||||||
|
combination as such. |
||||||
|
|
||||||
|
#### 14. Revised Versions of this License. |
||||||
|
|
||||||
|
The Free Software Foundation may publish revised and/or new versions |
||||||
|
of the GNU 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 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 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 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 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 General Public License for more details. |
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License |
||||||
|
along with this program. If not, see <https://www.gnu.org/licenses/>. |
||||||
|
|
||||||
|
Also add information on how to contact you by electronic and paper |
||||||
|
mail. |
||||||
|
|
||||||
|
If the program does terminal interaction, make it output a short |
||||||
|
notice like this when it starts in an interactive mode: |
||||||
|
|
||||||
|
<program> Copyright (C) <year> <name of author> |
||||||
|
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. |
||||||
|
This is free software, and you are welcome to redistribute it |
||||||
|
under certain conditions; type `show c' for details. |
||||||
|
|
||||||
|
The hypothetical commands \`show w' and \`show c' should show the |
||||||
|
appropriate parts of the General Public License. Of course, your |
||||||
|
program's commands might be different; for a GUI interface, you would |
||||||
|
use an "about box". |
||||||
|
|
||||||
|
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 GPL, see <https://www.gnu.org/licenses/>. |
||||||
|
|
||||||
|
The GNU General Public License does not permit incorporating your |
||||||
|
program into proprietary programs. If your program is a subroutine |
||||||
|
library, you may consider it more useful to permit linking proprietary |
||||||
|
applications with the library. If this is what you want to do, use the |
||||||
|
GNU Lesser General Public License instead of this License. But first, |
||||||
|
please read <https://www.gnu.org/licenses/why-not-lgpl.html>. |
@ -0,0 +1,16 @@ |
|||||||
|
# ozgurkon_app |
||||||
|
|
||||||
|
A new Flutter project. |
||||||
|
|
||||||
|
## Getting Started |
||||||
|
|
||||||
|
This project is a starting point for a Flutter application. |
||||||
|
|
||||||
|
A few resources to get you started if this is your first Flutter project: |
||||||
|
|
||||||
|
- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) |
||||||
|
- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) |
||||||
|
|
||||||
|
For help getting started with Flutter, view our |
||||||
|
[online documentation](https://flutter.dev/docs), which offers tutorials, |
||||||
|
samples, guidance on mobile development, and a full API reference. |
@ -0,0 +1,11 @@ |
|||||||
|
gradle-wrapper.jar |
||||||
|
/.gradle |
||||||
|
/captures/ |
||||||
|
/gradlew |
||||||
|
/gradlew.bat |
||||||
|
/local.properties |
||||||
|
GeneratedPluginRegistrant.java |
||||||
|
|
||||||
|
# Remember to never publicly share your keystore. |
||||||
|
# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app |
||||||
|
key.properties |
@ -0,0 +1,59 @@ |
|||||||
|
def localProperties = new Properties() |
||||||
|
def localPropertiesFile = rootProject.file('local.properties') |
||||||
|
if (localPropertiesFile.exists()) { |
||||||
|
localPropertiesFile.withReader('UTF-8') { reader -> |
||||||
|
localProperties.load(reader) |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
def flutterRoot = localProperties.getProperty('flutter.sdk') |
||||||
|
if (flutterRoot == null) { |
||||||
|
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") |
||||||
|
} |
||||||
|
|
||||||
|
def flutterVersionCode = localProperties.getProperty('flutter.versionCode') |
||||||
|
if (flutterVersionCode == null) { |
||||||
|
flutterVersionCode = '1' |
||||||
|
} |
||||||
|
|
||||||
|
def flutterVersionName = localProperties.getProperty('flutter.versionName') |
||||||
|
if (flutterVersionName == null) { |
||||||
|
flutterVersionName = '1.0' |
||||||
|
} |
||||||
|
|
||||||
|
apply plugin: 'com.android.application' |
||||||
|
apply plugin: 'kotlin-android' |
||||||
|
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" |
||||||
|
|
||||||
|
android { |
||||||
|
compileSdkVersion 30 |
||||||
|
|
||||||
|
sourceSets { |
||||||
|
main.java.srcDirs += 'src/main/kotlin' |
||||||
|
} |
||||||
|
|
||||||
|
defaultConfig { |
||||||
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). |
||||||
|
applicationId "tr.org.oyd.ozgurkon" |
||||||
|
minSdkVersion 19 |
||||||
|
targetSdkVersion 30 |
||||||
|
versionCode flutterVersionCode.toInteger() |
||||||
|
versionName flutterVersionName |
||||||
|
} |
||||||
|
|
||||||
|
buildTypes { |
||||||
|
release { |
||||||
|
// TODO: Add your own signing config for the release build. |
||||||
|
// Signing with the debug keys for now, so `flutter run --release` works. |
||||||
|
signingConfig signingConfigs.debug |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
flutter { |
||||||
|
source '../..' |
||||||
|
} |
||||||
|
|
||||||
|
dependencies { |
||||||
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" |
||||||
|
} |
@ -0,0 +1,7 @@ |
|||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" |
||||||
|
package="tr.org.oyd.ozgurkon"> |
||||||
|
<!-- Flutter needs it to communicate with the running application |
||||||
|
to allow setting breakpoints, to provide hot reload, etc. |
||||||
|
--> |
||||||
|
<uses-permission android:name="android.permission.INTERNET"/> |
||||||
|
</manifest> |
@ -0,0 +1,41 @@ |
|||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" |
||||||
|
package="tr.org.oyd.ozgurkon"> |
||||||
|
<application |
||||||
|
android:label="ÖzgürKon" |
||||||
|
android:icon="@mipmap/ic_launcher"> |
||||||
|
<activity |
||||||
|
android:name=".MainActivity" |
||||||
|
android:launchMode="singleTop" |
||||||
|
android:theme="@style/LaunchTheme" |
||||||
|
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" |
||||||
|
android:hardwareAccelerated="true" |
||||||
|
android:windowSoftInputMode="adjustResize"> |
||||||
|
<!-- Specifies an Android theme to apply to this Activity as soon as |
||||||
|
the Android process has started. This theme is visible to the user |
||||||
|
while the Flutter UI initializes. After that, this theme continues |
||||||
|
to determine the Window background behind the Flutter UI. --> |
||||||
|
<meta-data |
||||||
|
android:name="io.flutter.embedding.android.NormalTheme" |
||||||
|
android:resource="@style/NormalTheme" |
||||||
|
/> |
||||||
|
<!-- Displays an Android View that continues showing the launch screen |
||||||
|
Drawable until Flutter paints its first frame, then this splash |
||||||
|
screen fades out. A splash screen is useful to avoid any visual |
||||||
|
gap between the end of Android's launch screen and the painting of |
||||||
|
Flutter's first frame. --> |
||||||
|
<meta-data |
||||||
|
android:name="io.flutter.embedding.android.SplashScreenDrawable" |
||||||
|
android:resource="@drawable/launch_background" |
||||||
|
/> |
||||||
|
<intent-filter> |
||||||
|
<action android:name="android.intent.action.MAIN"/> |
||||||
|
<category android:name="android.intent.category.LAUNCHER"/> |
||||||
|
</intent-filter> |
||||||
|
</activity> |
||||||
|
<!-- Don't delete the meta-data below. |
||||||
|
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java --> |
||||||
|
<meta-data |
||||||
|
android:name="flutterEmbedding" |
||||||
|
android:value="2" /> |
||||||
|
</application> |
||||||
|
</manifest> |
@ -0,0 +1,6 @@ |
|||||||
|
package tr.org.oyd.ozgurkon |
||||||
|
|
||||||
|
import io.flutter.embedding.android.FlutterActivity |
||||||
|
|
||||||
|
class MainActivity: FlutterActivity() { |
||||||
|
} |
@ -0,0 +1,12 @@ |
|||||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||||
|
<!-- Modify this file to customize your launch splash screen --> |
||||||
|
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> |
||||||
|
<item android:drawable="?android:colorBackground" /> |
||||||
|
|
||||||
|
<!-- You can insert your own image assets here --> |
||||||
|
<!-- <item> |
||||||
|
<bitmap |
||||||
|
android:gravity="center" |
||||||
|
android:src="@mipmap/launch_image" /> |
||||||
|
</item> --> |
||||||
|
</layer-list> |
@ -0,0 +1,12 @@ |
|||||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||||
|
<!-- Modify this file to customize your launch splash screen --> |
||||||
|
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> |
||||||
|
<item android:drawable="@android:color/white" /> |
||||||
|
|
||||||
|
<!-- You can insert your own image assets here --> |
||||||
|
<!-- <item> |
||||||
|
<bitmap |
||||||
|
android:gravity="center" |
||||||
|
android:src="@mipmap/launch_image" /> |
||||||
|
</item> --> |
||||||
|
</layer-list> |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 13 KiB |
@ -0,0 +1,18 @@ |
|||||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||||
|
<resources> |
||||||
|
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on --> |
||||||
|
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar"> |
||||||
|
<!-- Show a splash screen on the activity. Automatically removed when |
||||||
|
Flutter draws its first frame --> |
||||||
|
<item name="android:windowBackground">@drawable/launch_background</item> |
||||||
|
</style> |
||||||
|
<!-- Theme applied to the Android Window as soon as the process has started. |
||||||
|
This theme determines the color of the Android Window while your |
||||||
|
Flutter UI initializes, as well as behind your Flutter UI while its |
||||||
|
running. |
||||||
|
|
||||||
|
This Theme is only used starting with V2 of Flutter's Android embedding. --> |
||||||
|
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar"> |
||||||
|
<item name="android:windowBackground">?android:colorBackground</item> |
||||||
|
</style> |
||||||
|
</resources> |
@ -0,0 +1,18 @@ |
|||||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||||
|
<resources> |
||||||
|
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off --> |
||||||
|
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar"> |
||||||
|
<!-- Show a splash screen on the activity. Automatically removed when |
||||||
|
Flutter draws its first frame --> |
||||||
|
<item name="android:windowBackground">@drawable/launch_background</item> |
||||||
|
</style> |
||||||
|
<!-- Theme applied to the Android Window as soon as the process has started. |
||||||
|
This theme determines the color of the Android Window while your |
||||||
|
Flutter UI initializes, as well as behind your Flutter UI while its |
||||||
|
running. |
||||||
|
|
||||||
|
This Theme is only used starting with V2 of Flutter's Android embedding. --> |
||||||
|
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar"> |
||||||
|
<item name="android:windowBackground">?android:colorBackground</item> |
||||||
|
</style> |
||||||
|
</resources> |
@ -0,0 +1,7 @@ |
|||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" |
||||||
|
package="com.example.ozgurkon_app"> |
||||||
|
<!-- Flutter needs it to communicate with the running application |
||||||
|
to allow setting breakpoints, to provide hot reload, etc. |
||||||
|
--> |
||||||
|
<uses-permission android:name="android.permission.INTERNET"/> |
||||||
|
</manifest> |
@ -0,0 +1,29 @@ |
|||||||
|
buildscript { |
||||||
|
ext.kotlin_version = '1.3.50' |
||||||
|
repositories { |
||||||
|
google() |
||||||
|
jcenter() |
||||||
|
} |
||||||
|
|
||||||
|
dependencies { |
||||||
|
classpath 'com.android.tools.build:gradle:4.1.0' |
||||||
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
allprojects { |
||||||
|
repositories { |
||||||
|
google() |
||||||
|
jcenter() |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
rootProject.buildDir = '../build' |
||||||
|
subprojects { |
||||||
|
project.buildDir = "${rootProject.buildDir}/${project.name}" |
||||||
|
project.evaluationDependsOn(':app') |
||||||
|
} |
||||||
|
|
||||||
|
task clean(type: Delete) { |
||||||
|
delete rootProject.buildDir |
||||||
|
} |
@ -0,0 +1,3 @@ |
|||||||
|
org.gradle.jvmargs=-Xmx1536M |
||||||
|
android.useAndroidX=true |
||||||
|
android.enableJetifier=true |
@ -0,0 +1,6 @@ |
|||||||
|
#Fri Jun 23 08:50:38 CEST 2017 |
||||||
|
distributionBase=GRADLE_USER_HOME |
||||||
|
distributionPath=wrapper/dists |
||||||
|
zipStoreBase=GRADLE_USER_HOME |
||||||
|
zipStorePath=wrapper/dists |
||||||
|
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip |
@ -0,0 +1,11 @@ |
|||||||
|
include ':app' |
||||||
|
|
||||||
|
def localPropertiesFile = new File(rootProject.projectDir, "local.properties") |
||||||
|
def properties = new Properties() |
||||||
|
|
||||||
|
assert localPropertiesFile.exists() |
||||||
|
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } |
||||||
|
|
||||||
|
def flutterSdkPath = properties.getProperty("flutter.sdk") |
||||||
|
assert flutterSdkPath != null, "flutter.sdk not set in local.properties" |
||||||
|
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" |
After Width: | Height: | Size: 74 KiB |
After Width: | Height: | Size: 10 KiB |
@ -0,0 +1,33 @@ |
|||||||
|
*.mode1v3 |
||||||
|
*.mode2v3 |
||||||
|
*.moved-aside |
||||||
|
*.pbxuser |
||||||
|
*.perspectivev3 |
||||||
|
**/*sync/ |
||||||
|
.sconsign.dblite |
||||||
|
.tags* |
||||||
|
**/.vagrant/ |
||||||
|
**/DerivedData/ |
||||||
|
Icon? |
||||||
|
**/Pods/ |
||||||
|
**/.symlinks/ |
||||||
|
profile |
||||||
|
xcuserdata |
||||||
|
**/.generated/ |
||||||
|
Flutter/App.framework |
||||||
|
Flutter/Flutter.framework |
||||||
|
Flutter/Flutter.podspec |
||||||
|
Flutter/Generated.xcconfig |
||||||
|
Flutter/ephemeral/ |
||||||
|
Flutter/app.flx |
||||||
|
Flutter/app.zip |
||||||
|
Flutter/flutter_assets/ |
||||||
|
Flutter/flutter_export_environment.sh |
||||||
|
ServiceDefinitions.json |
||||||
|
Runner/GeneratedPluginRegistrant.* |
||||||
|
|
||||||
|
# Exceptions to above rules. |
||||||
|
!default.mode1v3 |
||||||
|
!default.mode2v3 |
||||||
|
!default.pbxuser |
||||||
|
!default.perspectivev3 |
@ -0,0 +1,26 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>CFBundleDevelopmentRegion</key> |
||||||
|
<string>en</string> |
||||||
|
<key>CFBundleExecutable</key> |
||||||
|
<string>App</string> |
||||||
|
<key>CFBundleIdentifier</key> |
||||||
|
<string>io.flutter.flutter.app</string> |
||||||
|
<key>CFBundleInfoDictionaryVersion</key> |
||||||
|
<string>6.0</string> |
||||||
|
<key>CFBundleName</key> |
||||||
|
<string>App</string> |
||||||
|
<key>CFBundlePackageType</key> |
||||||
|
<string>FMWK</string> |
||||||
|
<key>CFBundleShortVersionString</key> |
||||||
|
<string>1.0</string> |
||||||
|
<key>CFBundleSignature</key> |
||||||
|
<string>????</string> |
||||||
|
<key>CFBundleVersion</key> |
||||||
|
<string>1.0</string> |
||||||
|
<key>MinimumOSVersion</key> |
||||||
|
<string>8.0</string> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1 @@ |
|||||||
|
#include "Generated.xcconfig" |
@ -0,0 +1 @@ |
|||||||
|
#include "Generated.xcconfig" |
@ -0,0 +1,471 @@ |
|||||||
|
// !$*UTF8*$! |
||||||
|
{ |
||||||
|
archiveVersion = 1; |
||||||
|
classes = { |
||||||
|
}; |
||||||
|
objectVersion = 46; |
||||||
|
objects = { |
||||||
|
|
||||||
|
/* Begin PBXBuildFile section */ |
||||||
|
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; |
||||||
|
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; |
||||||
|
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; |
||||||
|
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; |
||||||
|
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
||||||
|
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
||||||
|
/* End PBXBuildFile section */ |
||||||
|
|
||||||
|
/* Begin PBXCopyFilesBuildPhase section */ |
||||||
|
9705A1C41CF9048500538489 /* Embed Frameworks */ = { |
||||||
|
isa = PBXCopyFilesBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
dstPath = ""; |
||||||
|
dstSubfolderSpec = 10; |
||||||
|
files = ( |
||||||
|
); |
||||||
|
name = "Embed Frameworks"; |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
}; |
||||||
|
/* End PBXCopyFilesBuildPhase section */ |
||||||
|
|
||||||
|
/* Begin PBXFileReference section */ |
||||||
|
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; |
||||||
|
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; |
||||||
|
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; |
||||||
|
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; |
||||||
|
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; |
||||||
|
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; |
||||||
|
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; |
||||||
|
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; |
||||||
|
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
||||||
|
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; |
||||||
|
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
||||||
|
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
||||||
|
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; |
||||||
|
/* End PBXFileReference section */ |
||||||
|
|
||||||
|
/* Begin PBXFrameworksBuildPhase section */ |
||||||
|
97C146EB1CF9000F007C117D /* Frameworks */ = { |
||||||
|
isa = PBXFrameworksBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
files = ( |
||||||
|
); |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
}; |
||||||
|
/* End PBXFrameworksBuildPhase section */ |
||||||
|
|
||||||
|
/* Begin PBXGroup section */ |
||||||
|
9740EEB11CF90186004384FC /* Flutter */ = { |
||||||
|
isa = PBXGroup; |
||||||
|
children = ( |
||||||
|
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, |
||||||
|
9740EEB21CF90195004384FC /* Debug.xcconfig */, |
||||||
|
7AFA3C8E1D35360C0083082E /* Release.xcconfig */, |
||||||
|
9740EEB31CF90195004384FC /* Generated.xcconfig */, |
||||||
|
); |
||||||
|
name = Flutter; |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
97C146E51CF9000F007C117D = { |
||||||
|
isa = PBXGroup; |
||||||
|
children = ( |
||||||
|
9740EEB11CF90186004384FC /* Flutter */, |
||||||
|
97C146F01CF9000F007C117D /* Runner */, |
||||||
|
97C146EF1CF9000F007C117D /* Products */, |
||||||
|
); |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
97C146EF1CF9000F007C117D /* Products */ = { |
||||||
|
isa = PBXGroup; |
||||||
|
children = ( |
||||||
|
97C146EE1CF9000F007C117D /* Runner.app */, |
||||||
|
); |
||||||
|
name = Products; |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
97C146F01CF9000F007C117D /* Runner */ = { |
||||||
|
isa = PBXGroup; |
||||||
|
children = ( |
||||||
|
97C146FA1CF9000F007C117D /* Main.storyboard */, |
||||||
|
97C146FD1CF9000F007C117D /* Assets.xcassets */, |
||||||
|
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, |
||||||
|
97C147021CF9000F007C117D /* Info.plist */, |
||||||
|
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, |
||||||
|
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, |
||||||
|
74858FAE1ED2DC5600515810 /* AppDelegate.swift */, |
||||||
|
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, |
||||||
|
); |
||||||
|
path = Runner; |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
/* End PBXGroup section */ |
||||||
|
|
||||||
|
/* Begin PBXNativeTarget section */ |
||||||
|
97C146ED1CF9000F007C117D /* Runner */ = { |
||||||
|
isa = PBXNativeTarget; |
||||||
|
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; |
||||||
|
buildPhases = ( |
||||||
|
9740EEB61CF901F6004384FC /* Run Script */, |
||||||
|
97C146EA1CF9000F007C117D /* Sources */, |
||||||
|
97C146EB1CF9000F007C117D /* Frameworks */, |
||||||
|
97C146EC1CF9000F007C117D /* Resources */, |
||||||
|
9705A1C41CF9048500538489 /* Embed Frameworks */, |
||||||
|
3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
||||||
|
); |
||||||
|
buildRules = ( |
||||||
|
); |
||||||
|
dependencies = ( |
||||||
|
); |
||||||
|
name = Runner; |
||||||
|
productName = Runner; |
||||||
|
productReference = 97C146EE1CF9000F007C117D /* Runner.app */; |
||||||
|
productType = "com.apple.product-type.application"; |
||||||
|
}; |
||||||
|
/* End PBXNativeTarget section */ |
||||||
|
|
||||||
|
/* Begin PBXProject section */ |
||||||
|
97C146E61CF9000F007C117D /* Project object */ = { |
||||||
|
isa = PBXProject; |
||||||
|
attributes = { |
||||||
|
LastUpgradeCheck = 1020; |
||||||
|
ORGANIZATIONNAME = ""; |
||||||
|
TargetAttributes = { |
||||||
|
97C146ED1CF9000F007C117D = { |
||||||
|
CreatedOnToolsVersion = 7.3.1; |
||||||
|
LastSwiftMigration = 1100; |
||||||
|
}; |
||||||
|
}; |
||||||
|
}; |
||||||
|
buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; |
||||||
|
compatibilityVersion = "Xcode 9.3"; |
||||||
|
developmentRegion = en; |
||||||
|
hasScannedForEncodings = 0; |
||||||
|
knownRegions = ( |
||||||
|
en, |
||||||
|
Base, |
||||||
|
); |
||||||
|
mainGroup = 97C146E51CF9000F007C117D; |
||||||
|
productRefGroup = 97C146EF1CF9000F007C117D /* Products */; |
||||||
|
projectDirPath = ""; |
||||||
|
projectRoot = ""; |
||||||
|
targets = ( |
||||||
|
97C146ED1CF9000F007C117D /* Runner */, |
||||||
|
); |
||||||
|
}; |
||||||
|
/* End PBXProject section */ |
||||||
|
|
||||||
|
/* Begin PBXResourcesBuildPhase section */ |
||||||
|
97C146EC1CF9000F007C117D /* Resources */ = { |
||||||
|
isa = PBXResourcesBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
files = ( |
||||||
|
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, |
||||||
|
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, |
||||||
|
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, |
||||||
|
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, |
||||||
|
); |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
}; |
||||||
|
/* End PBXResourcesBuildPhase section */ |
||||||
|
|
||||||
|
/* Begin PBXShellScriptBuildPhase section */ |
||||||
|
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { |
||||||
|
isa = PBXShellScriptBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
files = ( |
||||||
|
); |
||||||
|
inputPaths = ( |
||||||
|
); |
||||||
|
name = "Thin Binary"; |
||||||
|
outputPaths = ( |
||||||
|
); |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
shellPath = /bin/sh; |
||||||
|
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; |
||||||
|
}; |
||||||
|
9740EEB61CF901F6004384FC /* Run Script */ = { |
||||||
|
isa = PBXShellScriptBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
files = ( |
||||||
|
); |
||||||
|
inputPaths = ( |
||||||
|
); |
||||||
|
name = "Run Script"; |
||||||
|
outputPaths = ( |
||||||
|
); |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
shellPath = /bin/sh; |
||||||
|
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; |
||||||
|
}; |
||||||
|
/* End PBXShellScriptBuildPhase section */ |
||||||
|
|
||||||
|
/* Begin PBXSourcesBuildPhase section */ |
||||||
|
97C146EA1CF9000F007C117D /* Sources */ = { |
||||||
|
isa = PBXSourcesBuildPhase; |
||||||
|
buildActionMask = 2147483647; |
||||||
|
files = ( |
||||||
|
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, |
||||||
|
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, |
||||||
|
); |
||||||
|
runOnlyForDeploymentPostprocessing = 0; |
||||||
|
}; |
||||||
|
/* End PBXSourcesBuildPhase section */ |
||||||
|
|
||||||
|
/* Begin PBXVariantGroup section */ |
||||||
|
97C146FA1CF9000F007C117D /* Main.storyboard */ = { |
||||||
|
isa = PBXVariantGroup; |
||||||
|
children = ( |
||||||
|
97C146FB1CF9000F007C117D /* Base */, |
||||||
|
); |
||||||
|
name = Main.storyboard; |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { |
||||||
|
isa = PBXVariantGroup; |
||||||
|
children = ( |
||||||
|
97C147001CF9000F007C117D /* Base */, |
||||||
|
); |
||||||
|
name = LaunchScreen.storyboard; |
||||||
|
sourceTree = "<group>"; |
||||||
|
}; |
||||||
|
/* End PBXVariantGroup section */ |
||||||
|
|
||||||
|
/* Begin XCBuildConfiguration section */ |
||||||
|
249021D3217E4FDB00AE95B9 /* Profile */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
buildSettings = { |
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO; |
||||||
|
CLANG_ANALYZER_NONNULL = YES; |
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||||
|
CLANG_CXX_LIBRARY = "libc++"; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CLANG_ENABLE_OBJC_ARC = YES; |
||||||
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||||
|
CLANG_WARN_BOOL_CONVERSION = YES; |
||||||
|
CLANG_WARN_COMMA = YES; |
||||||
|
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||||
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||||
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||||
|
CLANG_WARN_EMPTY_BODY = YES; |
||||||
|
CLANG_WARN_ENUM_CONVERSION = YES; |
||||||
|
CLANG_WARN_INFINITE_RECURSION = YES; |
||||||
|
CLANG_WARN_INT_CONVERSION = YES; |
||||||
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||||
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||||
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||||
|
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||||
|
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||||
|
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||||
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||||
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
||||||
|
COPY_PHASE_STRIP = NO; |
||||||
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; |
||||||
|
ENABLE_NS_ASSERTIONS = NO; |
||||||
|
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||||
|
GCC_NO_COMMON_BLOCKS = YES; |
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES; |
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES; |
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||||
|
MTL_ENABLE_DEBUG_INFO = NO; |
||||||
|
SDKROOT = iphoneos; |
||||||
|
SUPPORTED_PLATFORMS = iphoneos; |
||||||
|
TARGETED_DEVICE_FAMILY = "1,2"; |
||||||
|
VALIDATE_PRODUCT = YES; |
||||||
|
}; |
||||||
|
name = Profile; |
||||||
|
}; |
||||||
|
249021D4217E4FDB00AE95B9 /* Profile */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; |
||||||
|
buildSettings = { |
||||||
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
||||||
|
ENABLE_BITCODE = NO; |
||||||
|
INFOPLIST_FILE = Runner/Info.plist; |
||||||
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; |
||||||
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.ozgurkonApp; |
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||||
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||||
|
SWIFT_VERSION = 5.0; |
||||||
|
VERSIONING_SYSTEM = "apple-generic"; |
||||||
|
}; |
||||||
|
name = Profile; |
||||||
|
}; |
||||||
|
97C147031CF9000F007C117D /* Debug */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
buildSettings = { |
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO; |
||||||
|
CLANG_ANALYZER_NONNULL = YES; |
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||||
|
CLANG_CXX_LIBRARY = "libc++"; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CLANG_ENABLE_OBJC_ARC = YES; |
||||||
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||||
|
CLANG_WARN_BOOL_CONVERSION = YES; |
||||||
|
CLANG_WARN_COMMA = YES; |
||||||
|
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||||
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||||
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||||
|
CLANG_WARN_EMPTY_BODY = YES; |
||||||
|
CLANG_WARN_ENUM_CONVERSION = YES; |
||||||
|
CLANG_WARN_INFINITE_RECURSION = YES; |
||||||
|
CLANG_WARN_INT_CONVERSION = YES; |
||||||
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||||
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||||
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||||
|
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||||
|
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||||
|
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||||
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||||
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
||||||
|
COPY_PHASE_STRIP = NO; |
||||||
|
DEBUG_INFORMATION_FORMAT = dwarf; |
||||||
|
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||||
|
ENABLE_TESTABILITY = YES; |
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||||
|
GCC_DYNAMIC_NO_PIC = NO; |
||||||
|
GCC_NO_COMMON_BLOCKS = YES; |
||||||
|
GCC_OPTIMIZATION_LEVEL = 0; |
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = ( |
||||||
|
"DEBUG=1", |
||||||
|
"$(inherited)", |
||||||
|
); |
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES; |
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES; |
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||||
|
MTL_ENABLE_DEBUG_INFO = YES; |
||||||
|
ONLY_ACTIVE_ARCH = YES; |
||||||
|
SDKROOT = iphoneos; |
||||||
|
TARGETED_DEVICE_FAMILY = "1,2"; |
||||||
|
}; |
||||||
|
name = Debug; |
||||||
|
}; |
||||||
|
97C147041CF9000F007C117D /* Release */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
buildSettings = { |
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO; |
||||||
|
CLANG_ANALYZER_NONNULL = YES; |
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||||
|
CLANG_CXX_LIBRARY = "libc++"; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CLANG_ENABLE_OBJC_ARC = YES; |
||||||
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||||
|
CLANG_WARN_BOOL_CONVERSION = YES; |
||||||
|
CLANG_WARN_COMMA = YES; |
||||||
|
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||||
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||||
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||||
|
CLANG_WARN_EMPTY_BODY = YES; |
||||||
|
CLANG_WARN_ENUM_CONVERSION = YES; |
||||||
|
CLANG_WARN_INFINITE_RECURSION = YES; |
||||||
|
CLANG_WARN_INT_CONVERSION = YES; |
||||||
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||||
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||||
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||||
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||||
|
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||||
|
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||||
|
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||||
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||||
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; |
||||||
|
COPY_PHASE_STRIP = NO; |
||||||
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; |
||||||
|
ENABLE_NS_ASSERTIONS = NO; |
||||||
|
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||||
|
GCC_NO_COMMON_BLOCKS = YES; |
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES; |
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES; |
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||||
|
MTL_ENABLE_DEBUG_INFO = NO; |
||||||
|
SDKROOT = iphoneos; |
||||||
|
SUPPORTED_PLATFORMS = iphoneos; |
||||||
|
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; |
||||||
|
TARGETED_DEVICE_FAMILY = "1,2"; |
||||||
|
VALIDATE_PRODUCT = YES; |
||||||
|
}; |
||||||
|
name = Release; |
||||||
|
}; |
||||||
|
97C147061CF9000F007C117D /* Debug */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; |
||||||
|
buildSettings = { |
||||||
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
||||||
|
ENABLE_BITCODE = NO; |
||||||
|
INFOPLIST_FILE = Runner/Info.plist; |
||||||
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; |
||||||
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.ozgurkonApp; |
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||||
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||||
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone"; |
||||||
|
SWIFT_VERSION = 5.0; |
||||||
|
VERSIONING_SYSTEM = "apple-generic"; |
||||||
|
}; |
||||||
|
name = Debug; |
||||||
|
}; |
||||||
|
97C147071CF9000F007C117D /* Release */ = { |
||||||
|
isa = XCBuildConfiguration; |
||||||
|
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; |
||||||
|
buildSettings = { |
||||||
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||||
|
CLANG_ENABLE_MODULES = YES; |
||||||
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
||||||
|
ENABLE_BITCODE = NO; |
||||||
|
INFOPLIST_FILE = Runner/Info.plist; |
||||||
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; |
||||||
|
PRODUCT_BUNDLE_IDENTIFIER = com.example.ozgurkonApp; |
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||||
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||||
|
SWIFT_VERSION = 5.0; |
||||||
|
VERSIONING_SYSTEM = "apple-generic"; |
||||||
|
}; |
||||||
|
name = Release; |
||||||
|
}; |
||||||
|
/* End XCBuildConfiguration section */ |
||||||
|
|
||||||
|
/* Begin XCConfigurationList section */ |
||||||
|
97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { |
||||||
|
isa = XCConfigurationList; |
||||||
|
buildConfigurations = ( |
||||||
|
97C147031CF9000F007C117D /* Debug */, |
||||||
|
97C147041CF9000F007C117D /* Release */, |
||||||
|
249021D3217E4FDB00AE95B9 /* Profile */, |
||||||
|
); |
||||||
|
defaultConfigurationIsVisible = 0; |
||||||
|
defaultConfigurationName = Release; |
||||||
|
}; |
||||||
|
97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { |
||||||
|
isa = XCConfigurationList; |
||||||
|
buildConfigurations = ( |
||||||
|
97C147061CF9000F007C117D /* Debug */, |
||||||
|
97C147071CF9000F007C117D /* Release */, |
||||||
|
249021D4217E4FDB00AE95B9 /* Profile */, |
||||||
|
); |
||||||
|
defaultConfigurationIsVisible = 0; |
||||||
|
defaultConfigurationName = Release; |
||||||
|
}; |
||||||
|
/* End XCConfigurationList section */ |
||||||
|
}; |
||||||
|
rootObject = 97C146E61CF9000F007C117D /* Project object */; |
||||||
|
} |
@ -0,0 +1,7 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<Workspace |
||||||
|
version = "1.0"> |
||||||
|
<FileRef |
||||||
|
location = "self:"> |
||||||
|
</FileRef> |
||||||
|
</Workspace> |
@ -0,0 +1,8 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>IDEDidComputeMac32BitWarning</key> |
||||||
|
<true/> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1,8 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>PreviewsEnabled</key> |
||||||
|
<false/> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1,91 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<Scheme |
||||||
|
LastUpgradeVersion = "1020" |
||||||
|
version = "1.3"> |
||||||
|
<BuildAction |
||||||
|
parallelizeBuildables = "YES" |
||||||
|
buildImplicitDependencies = "YES"> |
||||||
|
<BuildActionEntries> |
||||||
|
<BuildActionEntry |
||||||
|
buildForTesting = "YES" |
||||||
|
buildForRunning = "YES" |
||||||
|
buildForProfiling = "YES" |
||||||
|
buildForArchiving = "YES" |
||||||
|
buildForAnalyzing = "YES"> |
||||||
|
<BuildableReference |
||||||
|
BuildableIdentifier = "primary" |
||||||
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||||
|
BuildableName = "Runner.app" |
||||||
|
BlueprintName = "Runner" |
||||||
|
ReferencedContainer = "container:Runner.xcodeproj"> |
||||||
|
</BuildableReference> |
||||||
|
</BuildActionEntry> |
||||||
|
</BuildActionEntries> |
||||||
|
</BuildAction> |
||||||
|
<TestAction |
||||||
|
buildConfiguration = "Debug" |
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||||
|
<Testables> |
||||||
|
</Testables> |
||||||
|
<MacroExpansion> |
||||||
|
<BuildableReference |
||||||
|
BuildableIdentifier = "primary" |
||||||
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||||
|
BuildableName = "Runner.app" |
||||||
|
BlueprintName = "Runner" |
||||||
|
ReferencedContainer = "container:Runner.xcodeproj"> |
||||||
|
</BuildableReference> |
||||||
|
</MacroExpansion> |
||||||
|
<AdditionalOptions> |
||||||
|
</AdditionalOptions> |
||||||
|
</TestAction> |
||||||
|
<LaunchAction |
||||||
|
buildConfiguration = "Debug" |
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||||
|
launchStyle = "0" |
||||||
|
useCustomWorkingDirectory = "NO" |
||||||
|
ignoresPersistentStateOnLaunch = "NO" |
||||||
|
debugDocumentVersioning = "YES" |
||||||
|
debugServiceExtension = "internal" |
||||||
|
allowLocationSimulation = "YES"> |
||||||
|
<BuildableProductRunnable |
||||||
|
runnableDebuggingMode = "0"> |
||||||
|
<BuildableReference |
||||||
|
BuildableIdentifier = "primary" |
||||||
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||||
|
BuildableName = "Runner.app" |
||||||
|
BlueprintName = "Runner" |
||||||
|
ReferencedContainer = "container:Runner.xcodeproj"> |
||||||
|
</BuildableReference> |
||||||
|
</BuildableProductRunnable> |
||||||
|
<AdditionalOptions> |
||||||
|
</AdditionalOptions> |
||||||
|
</LaunchAction> |
||||||
|
<ProfileAction |
||||||
|
buildConfiguration = "Profile" |
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES" |
||||||
|
savedToolIdentifier = "" |
||||||
|
useCustomWorkingDirectory = "NO" |
||||||
|
debugDocumentVersioning = "YES"> |
||||||
|
<BuildableProductRunnable |
||||||
|
runnableDebuggingMode = "0"> |
||||||
|
<BuildableReference |
||||||
|
BuildableIdentifier = "primary" |
||||||
|
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||||
|
BuildableName = "Runner.app" |
||||||
|
BlueprintName = "Runner" |
||||||
|
ReferencedContainer = "container:Runner.xcodeproj"> |
||||||
|
</BuildableReference> |
||||||
|
</BuildableProductRunnable> |
||||||
|
</ProfileAction> |
||||||
|
<AnalyzeAction |
||||||
|
buildConfiguration = "Debug"> |
||||||
|
</AnalyzeAction> |
||||||
|
<ArchiveAction |
||||||
|
buildConfiguration = "Release" |
||||||
|
revealArchiveInOrganizer = "YES"> |
||||||
|
</ArchiveAction> |
||||||
|
</Scheme> |
@ -0,0 +1,7 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<Workspace |
||||||
|
version = "1.0"> |
||||||
|
<FileRef |
||||||
|
location = "group:Runner.xcodeproj"> |
||||||
|
</FileRef> |
||||||
|
</Workspace> |
@ -0,0 +1,8 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>IDEDidComputeMac32BitWarning</key> |
||||||
|
<true/> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1,8 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>PreviewsEnabled</key> |
||||||
|
<false/> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1,13 @@ |
|||||||
|
import UIKit |
||||||
|
import Flutter |
||||||
|
|
||||||
|
@UIApplicationMain |
||||||
|
@objc class AppDelegate: FlutterAppDelegate { |
||||||
|
override func application( |
||||||
|
_ application: UIApplication, |
||||||
|
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? |
||||||
|
) -> Bool { |
||||||
|
GeneratedPluginRegistrant.register(with: self) |
||||||
|
return super.application(application, didFinishLaunchingWithOptions: launchOptions) |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,122 @@ |
|||||||
|
{ |
||||||
|
"images" : [ |
||||||
|
{ |
||||||
|
"size" : "20x20", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-20x20@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "20x20", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-20x20@3x.png", |
||||||
|
"scale" : "3x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "29x29", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-29x29@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "29x29", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-29x29@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "29x29", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-29x29@3x.png", |
||||||
|
"scale" : "3x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "40x40", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-40x40@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "40x40", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-40x40@3x.png", |
||||||
|
"scale" : "3x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "60x60", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-60x60@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "60x60", |
||||||
|
"idiom" : "iphone", |
||||||
|
"filename" : "Icon-App-60x60@3x.png", |
||||||
|
"scale" : "3x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "20x20", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-20x20@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "20x20", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-20x20@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "29x29", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-29x29@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "29x29", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-29x29@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "40x40", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-40x40@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "40x40", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-40x40@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "76x76", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-76x76@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "76x76", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-76x76@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "83.5x83.5", |
||||||
|
"idiom" : "ipad", |
||||||
|
"filename" : "Icon-App-83.5x83.5@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"size" : "1024x1024", |
||||||
|
"idiom" : "ios-marketing", |
||||||
|
"filename" : "Icon-App-1024x1024@1x.png", |
||||||
|
"scale" : "1x" |
||||||
|
} |
||||||
|
], |
||||||
|
"info" : { |
||||||
|
"version" : 1, |
||||||
|
"author" : "xcode" |
||||||
|
} |
||||||
|
} |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 564 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 3.5 KiB |
@ -0,0 +1,23 @@ |
|||||||
|
{ |
||||||
|
"images" : [ |
||||||
|
{ |
||||||
|
"idiom" : "universal", |
||||||
|
"filename" : "LaunchImage.png", |
||||||
|
"scale" : "1x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"idiom" : "universal", |
||||||
|
"filename" : "LaunchImage@2x.png", |
||||||
|
"scale" : "2x" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"idiom" : "universal", |
||||||
|
"filename" : "LaunchImage@3x.png", |
||||||
|
"scale" : "3x" |
||||||
|
} |
||||||
|
], |
||||||
|
"info" : { |
||||||
|
"version" : 1, |
||||||
|
"author" : "xcode" |
||||||
|
} |
||||||
|
} |
After Width: | Height: | Size: 68 B |
After Width: | Height: | Size: 68 B |
After Width: | Height: | Size: 68 B |
@ -0,0 +1,5 @@ |
|||||||
|
# Launch Screen Assets |
||||||
|
|
||||||
|
You can customize the launch screen with your own desired assets by replacing the image files in this directory. |
||||||
|
|
||||||
|
You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. |
@ -0,0 +1,37 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
||||||
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12121" systemVersion="16G29" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM"> |
||||||
|
<dependencies> |
||||||
|
<deployment identifier="iOS"/> |
||||||
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/> |
||||||
|
</dependencies> |
||||||
|
<scenes> |
||||||
|
<!--View Controller--> |
||||||
|
<scene sceneID="EHf-IW-A2E"> |
||||||
|
<objects> |
||||||
|
<viewController id="01J-lp-oVM" sceneMemberID="viewController"> |
||||||
|
<layoutGuides> |
||||||
|
<viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/> |
||||||
|
<viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/> |
||||||
|
</layoutGuides> |
||||||
|
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3"> |
||||||
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> |
||||||
|
<subviews> |
||||||
|
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4"> |
||||||
|
</imageView> |
||||||
|
</subviews> |
||||||
|
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
||||||
|
<constraints> |
||||||
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/> |
||||||
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/> |
||||||
|
</constraints> |
||||||
|
</view> |
||||||
|
</viewController> |
||||||
|
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/> |
||||||
|
</objects> |
||||||
|
<point key="canvasLocation" x="53" y="375"/> |
||||||
|
</scene> |
||||||
|
</scenes> |
||||||
|
<resources> |
||||||
|
<image name="LaunchImage" width="168" height="185"/> |
||||||
|
</resources> |
||||||
|
</document> |
@ -0,0 +1,26 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
||||||
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="15F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r"> |
||||||
|
<dependencies> |
||||||
|
<deployment identifier="iOS"/> |
||||||
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/> |
||||||
|
</dependencies> |
||||||
|
<scenes> |
||||||
|
<!--Flutter View Controller--> |
||||||
|
<scene sceneID="tne-QT-ifu"> |
||||||
|
<objects> |
||||||
|
<viewController id="BYZ-38-t0r" customClass="FlutterViewController" sceneMemberID="viewController"> |
||||||
|
<layoutGuides> |
||||||
|
<viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/> |
||||||
|
<viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/> |
||||||
|
</layoutGuides> |
||||||
|
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC"> |
||||||
|
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/> |
||||||
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> |
||||||
|
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> |
||||||
|
</view> |
||||||
|
</viewController> |
||||||
|
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> |
||||||
|
</objects> |
||||||
|
</scene> |
||||||
|
</scenes> |
||||||
|
</document> |
@ -0,0 +1,45 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||||
|
<plist version="1.0"> |
||||||
|
<dict> |
||||||
|
<key>CFBundleDevelopmentRegion</key> |
||||||
|
<string>$(DEVELOPMENT_LANGUAGE)</string> |
||||||
|
<key>CFBundleExecutable</key> |
||||||
|
<string>$(EXECUTABLE_NAME)</string> |
||||||
|
<key>CFBundleIdentifier</key> |
||||||
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> |
||||||
|
<key>CFBundleInfoDictionaryVersion</key> |
||||||
|
<string>6.0</string> |
||||||
|
<key>CFBundleName</key> |
||||||
|
<string>ozgurkon_app</string> |
||||||
|
<key>CFBundlePackageType</key> |
||||||
|
<string>APPL</string> |
||||||
|
<key>CFBundleShortVersionString</key> |
||||||
|
<string>$(FLUTTER_BUILD_NAME)</string> |
||||||
|
<key>CFBundleSignature</key> |
||||||
|
<string>????</string> |
||||||
|
<key>CFBundleVersion</key> |
||||||
|
<string>$(FLUTTER_BUILD_NUMBER)</string> |
||||||
|
<key>LSRequiresIPhoneOS</key> |
||||||
|
<true/> |
||||||
|
<key>UILaunchStoryboardName</key> |
||||||
|
<string>LaunchScreen</string> |
||||||
|
<key>UIMainStoryboardFile</key> |
||||||
|
<string>Main</string> |
||||||
|
<key>UISupportedInterfaceOrientations</key> |
||||||
|
<array> |
||||||
|
<string>UIInterfaceOrientationPortrait</string> |
||||||
|
<string>UIInterfaceOrientationLandscapeLeft</string> |
||||||
|
<string>UIInterfaceOrientationLandscapeRight</string> |
||||||
|
</array> |
||||||
|
<key>UISupportedInterfaceOrientations~ipad</key> |
||||||
|
<array> |
||||||
|
<string>UIInterfaceOrientationPortrait</string> |
||||||
|
<string>UIInterfaceOrientationPortraitUpsideDown</string> |
||||||
|
<string>UIInterfaceOrientationLandscapeLeft</string> |
||||||
|
<string>UIInterfaceOrientationLandscapeRight</string> |
||||||
|
</array> |
||||||
|
<key>UIViewControllerBasedStatusBarAppearance</key> |
||||||
|
<false/> |
||||||
|
</dict> |
||||||
|
</plist> |
@ -0,0 +1 @@ |
|||||||
|
#import "GeneratedPluginRegistrant.h" |
@ -0,0 +1,23 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:material_color_generator/material_color_generator.dart'; |
||||||
|
import 'package:ozgurkon_app/screens/HomePage.dart'; |
||||||
|
|
||||||
|
const ozgurkon_renk = const Color(0xffc03e24); |
||||||
|
|
||||||
|
void main() { |
||||||
|
runApp(MyApp()); |
||||||
|
} |
||||||
|
|
||||||
|
class MyApp extends StatelessWidget { |
||||||
|
// This widget is the root of your application. |
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return MaterialApp( |
||||||
|
title: 'ÖzgürKon', |
||||||
|
theme: ThemeData( |
||||||
|
primarySwatch: generateMaterialColor(color: Color(0xffc03e24)), |
||||||
|
), |
||||||
|
home: HomePage(), |
||||||
|
); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,72 @@ |
|||||||
|
import 'package:about/about.dart'; |
||||||
|
import 'package:flutter/cupertino.dart'; |
||||||
|
import 'package:flutter/foundation.dart'; |
||||||
|
import 'package:flutter/material.dart'; |
||||||
|
|
||||||
|
String appName = "ÖzgürKon"; |
||||||
|
String version = "0.1.1"; |
||||||
|
String buildNumber = "4"; |
||||||
|
|
||||||
|
class MyAbout extends StatelessWidget { |
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
final theme = Theme.of(context); |
||||||
|
final isIos = theme.platform == TargetPlatform.iOS || |
||||||
|
theme.platform == TargetPlatform.macOS; |
||||||
|
|
||||||
|
Widget aboutPage = AboutPage( |
||||||
|
values: { |
||||||
|
'version': version, |
||||||
|
'buildNumber': buildNumber.toString(), |
||||||
|
'year': DateTime.now().year.toString(), |
||||||
|
'author': "Özgür Yazılım Derneği", |
||||||
|
}, |
||||||
|
//title: Text('About'), |
||||||
|
applicationVersion: 'Version {{ version }}, build #{{ buildNumber }}', |
||||||
|
applicationDescription: Text( |
||||||
|
"ÖzgürKon app test", |
||||||
|
textAlign: TextAlign.justify, |
||||||
|
), |
||||||
|
applicationIcon: Image.asset('assets/ozgurkon_disi.png'), |
||||||
|
applicationLegalese: 'Copyright © {{ year }} {{ author }}', |
||||||
|
children: <Widget>[ |
||||||
|
MarkdownPageListTile( |
||||||
|
filename: 'README.md', |
||||||
|
title: Text('View Readme'), |
||||||
|
icon: Icon(Icons.all_inclusive), |
||||||
|
), |
||||||
|
MarkdownPageListTile( |
||||||
|
filename: 'CHANGELOG.md', |
||||||
|
title: Text('View Changelog'), |
||||||
|
icon: Icon(Icons.view_list), |
||||||
|
), |
||||||
|
MarkdownPageListTile( |
||||||
|
filename: 'LICENSE.md', |
||||||
|
title: Text('View License'), |
||||||
|
icon: Icon(Icons.description), |
||||||
|
), |
||||||
|
MarkdownPageListTile( |
||||||
|
filename: 'CONTRIBUTORS.md', |
||||||
|
title: Text('Contributors'), |
||||||
|
icon: Icon(Icons.groups), |
||||||
|
), |
||||||
|
LicensesPageListTile( |
||||||
|
title: Text('Free software Licenses'), |
||||||
|
icon: Icon(Icons.favorite), |
||||||
|
), |
||||||
|
], |
||||||
|
); |
||||||
|
|
||||||
|
if (isIos) { |
||||||
|
return CupertinoApp( |
||||||
|
title: 'About this app', |
||||||
|
home: aboutPage, |
||||||
|
theme: CupertinoThemeData( |
||||||
|
brightness: theme.brightness, |
||||||
|
), |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
return aboutPage; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,24 @@ |
|||||||
|
import 'dart:io'; |
||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:webview_flutter/webview_flutter.dart'; |
||||||
|
|
||||||
|
class WebViewExample extends StatefulWidget { |
||||||
|
@override |
||||||
|
WebViewExampleState createState() => WebViewExampleState(); |
||||||
|
} |
||||||
|
|
||||||
|
class WebViewExampleState extends State<WebViewExample> { |
||||||
|
@override |
||||||
|
void initState() { |
||||||
|
super.initState(); |
||||||
|
// Enable hybrid composition. |
||||||
|
if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView(); |
||||||
|
} |
||||||
|
|
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return WebView( |
||||||
|
initialUrl: 'https://kiwiirc.com/client/chat.freenode.net/%23ozgurkon', |
||||||
|
); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:ozgurkon_app/screens/About.dart'; |
||||||
|
import 'package:ozgurkon_app/screens/Chat.dart'; |
||||||
|
import 'package:ozgurkon_app/widgets/Schedule.dart'; |
||||||
|
|
||||||
|
class HomePage extends StatefulWidget { |
||||||
|
@override |
||||||
|
State<StatefulWidget> createState() { |
||||||
|
return _HomeState(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
class _HomeState extends State<HomePage> { |
||||||
|
int _currentIndex = 0; |
||||||
|
final List<Widget> _children = [ |
||||||
|
PlaceholderWidget(Colors.white), |
||||||
|
MyAbout(), |
||||||
|
WebViewExample() |
||||||
|
]; |
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return Scaffold( |
||||||
|
appBar: AppBar( |
||||||
|
title: Text('ÖzgürKon'), |
||||||
|
), |
||||||
|
body: _children[_currentIndex], // new |
||||||
|
bottomNavigationBar: BottomNavigationBar( |
||||||
|
onTap: onTabTapped, // new |
||||||
|
currentIndex: |
||||||
|
_currentIndex, // this will be set when a new tab is tapped |
||||||
|
items: [ |
||||||
|
BottomNavigationBarItem( |
||||||
|
icon: new Icon(Icons.chat), |
||||||
|
label: 'Chat', |
||||||
|
), |
||||||
|
BottomNavigationBarItem( |
||||||
|
icon: new Icon(Icons.live_tv), |
||||||
|
label: 'Live', |
||||||
|
), |
||||||
|
BottomNavigationBarItem( |
||||||
|
icon: Icon(Icons.date_range), label: 'Schedule') |
||||||
|
], |
||||||
|
), |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
void onTabTapped(int index) { |
||||||
|
setState(() { |
||||||
|
_currentIndex = index; |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,28 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:video_viewer/video_viewer.dart'; |
||||||
|
|
||||||
|
class HLSVideoExample extends StatelessWidget { |
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return FutureBuilder<Map<String, VideoSource>>( |
||||||
|
future: VideoSource.fromM3u8PlaylistUrl( |
||||||
|
"https://sfux-ext.sfux.info/hls/chapter/105/1588724110/1588724110.m3u8", |
||||||
|
formatter: (quality) => |
||||||
|
quality == "Auto" ? "Automatic" : "${quality.split("x").last}p", |
||||||
|
), |
||||||
|
builder: (_, data) { |
||||||
|
return data.hasData |
||||||
|
? VideoViewer( |
||||||
|
source: data.data, |
||||||
|
onFullscreenFixLandscape: true, |
||||||
|
style: VideoViewerStyle( |
||||||
|
thumbnail: Image.network( |
||||||
|
"https://play-lh.googleusercontent.com/aA2iky4PH0REWCcPs9Qym2X7e9koaa1RtY-nKkXQsDVU6Ph25_9GkvVuyhS72bwKhN1P", |
||||||
|
), |
||||||
|
), |
||||||
|
) |
||||||
|
: CircularProgressIndicator(); |
||||||
|
}, |
||||||
|
); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,14 @@ |
|||||||
|
import 'package:flutter/material.dart'; |
||||||
|
|
||||||
|
class PlaceholderWidget extends StatelessWidget { |
||||||
|
final Color color; |
||||||
|
|
||||||
|
PlaceholderWidget(this.color); |
||||||
|
|
||||||
|
@override |
||||||
|
Widget build(BuildContext context) { |
||||||
|
return Container( |
||||||
|
color: color, |
||||||
|
); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,544 @@ |
|||||||
|
# Generated by pub |
||||||
|
# See https://dart.dev/tools/pub/glossary#lockfile |
||||||
|
packages: |
||||||
|
about: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: about |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
args: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: args |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.1" |
||||||
|
async: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: async |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.5.0" |
||||||
|
boolean_selector: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: boolean_selector |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.0" |
||||||
|
characters: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: characters |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.0" |
||||||
|
charcode: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: charcode |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.2.0" |
||||||
|
clock: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: clock |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.0" |
||||||
|
collection: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: collection |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.15.0" |
||||||
|
crypto: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: crypto |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "3.0.1" |
||||||
|
csslib: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: csslib |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.17.0" |
||||||
|
cupertino_icons: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: cupertino_icons |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.3" |
||||||
|
fake_async: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: fake_async |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.2.0" |
||||||
|
ffi: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: ffi |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.1" |
||||||
|
file: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: file |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "6.1.1" |
||||||
|
flutter: |
||||||
|
dependency: "direct main" |
||||||
|
description: flutter |
||||||
|
source: sdk |
||||||
|
version: "0.0.0" |
||||||
|
flutter_markdown: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: flutter_markdown |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.6.2" |
||||||
|
flutter_test: |
||||||
|
dependency: "direct dev" |
||||||
|
description: flutter |
||||||
|
source: sdk |
||||||
|
version: "0.0.0" |
||||||
|
flutter_web_plugins: |
||||||
|
dependency: transitive |
||||||
|
description: flutter |
||||||
|
source: sdk |
||||||
|
version: "0.0.0" |
||||||
|
gesture_x_detector: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: gesture_x_detector |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.0" |
||||||
|
google_fonts: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: google_fonts |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.0" |
||||||
|
helpers: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: helpers |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.3" |
||||||
|
html: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: html |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.15.0" |
||||||
|
http: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: http |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.13.3" |
||||||
|
http_parser: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: http_parser |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "4.0.0" |
||||||
|
js: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: js |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.6.3" |
||||||
|
markdown: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: markdown |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "4.0.0" |
||||||
|
matcher: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: matcher |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.12.10" |
||||||
|
material_color_generator: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: material_color_generator |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.0" |
||||||
|
meta: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: meta |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.3.0" |
||||||
|
nested: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: nested |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.0" |
||||||
|
package_info_plus: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: package_info_plus |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.1" |
||||||
|
package_info_plus_linux: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: package_info_plus_linux |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.2" |
||||||
|
package_info_plus_macos: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: package_info_plus_macos |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.1" |
||||||
|
package_info_plus_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: package_info_plus_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.1" |
||||||
|
package_info_plus_web: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: package_info_plus_web |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.1" |
||||||
|
package_info_plus_windows: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: package_info_plus_windows |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.0.1" |
||||||
|
path: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.8.0" |
||||||
|
path_provider: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path_provider |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.2" |
||||||
|
path_provider_linux: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path_provider_linux |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
path_provider_macos: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path_provider_macos |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
path_provider_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path_provider_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.1" |
||||||
|
path_provider_windows: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: path_provider_windows |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.1" |
||||||
|
pedantic: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: pedantic |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.11.0" |
||||||
|
platform: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: platform |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "3.0.0" |
||||||
|
plugin_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: plugin_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
process: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: process |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "4.2.1" |
||||||
|
provider: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: provider |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "5.0.0" |
||||||
|
shared_preferences: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: shared_preferences |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.6" |
||||||
|
shared_preferences_linux: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: shared_preferences_linux |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
shared_preferences_macos: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: shared_preferences_macos |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
shared_preferences_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: shared_preferences_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
shared_preferences_web: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: shared_preferences_web |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
shared_preferences_windows: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: shared_preferences_windows |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
simple_mustache: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: simple_mustache |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
sky_engine: |
||||||
|
dependency: transitive |
||||||
|
description: flutter |
||||||
|
source: sdk |
||||||
|
version: "0.0.99" |
||||||
|
source_span: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: source_span |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.8.1" |
||||||
|
stack_trace: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: stack_trace |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.10.0" |
||||||
|
stream_channel: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: stream_channel |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.0" |
||||||
|
string_scanner: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: string_scanner |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.1.0" |
||||||
|
term_glyph: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: term_glyph |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.2.0" |
||||||
|
test_api: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: test_api |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.3.0" |
||||||
|
typed_data: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: typed_data |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.3.0" |
||||||
|
universal_html: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: universal_html |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.8" |
||||||
|
universal_io: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: universal_io |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.4" |
||||||
|
url_launcher: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "6.0.6" |
||||||
|
url_launcher_linux: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher_linux |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
url_launcher_macos: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher_macos |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
url_launcher_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.3" |
||||||
|
url_launcher_web: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher_web |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.1" |
||||||
|
url_launcher_windows: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: url_launcher_windows |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.0" |
||||||
|
vector_math: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: vector_math |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.0" |
||||||
|
video_player: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: video_player |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.1.4" |
||||||
|
video_player_platform_interface: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: video_player_platform_interface |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "4.1.0" |
||||||
|
video_player_web: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: video_player_web |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.1" |
||||||
|
video_viewer: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: video_viewer |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "1.2.2" |
||||||
|
webview_flutter: |
||||||
|
dependency: "direct main" |
||||||
|
description: |
||||||
|
name: webview_flutter |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.8" |
||||||
|
win32: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: win32 |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "2.0.5" |
||||||
|
xdg_directories: |
||||||
|
dependency: transitive |
||||||
|
description: |
||||||
|
name: xdg_directories |
||||||
|
url: "https://pub.dartlang.org" |
||||||
|
source: hosted |
||||||
|
version: "0.2.0" |
||||||
|
sdks: |
||||||
|
dart: ">=2.12.0 <3.0.0" |
||||||
|
flutter: ">=2.0.0" |
@ -0,0 +1,90 @@ |
|||||||
|
name: ozgurkon_app |
||||||
|
description: Application for ÖzgürKon event. |
||||||
|
|
||||||
|
# The following line prevents the package from being accidentally published to |
||||||
|
# pub.dev using `pub publish`. This is preferred for private packages. |
||||||
|
publish_to: 'none' # Remove this line if you wish to publish to pub.dev |
||||||
|
|
||||||
|
# The following defines the version and build number for your application. |
||||||
|
# A version number is three numbers separated by dots, like 1.2.43 |
||||||
|
# followed by an optional build number separated by a +. |
||||||
|
# Both the version and the builder number may be overridden in flutter |
||||||
|
# build by specifying --build-name and --build-number, respectively. |
||||||
|
# In Android, build-name is used as versionName while build-number used as versionCode. |
||||||
|
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning |
||||||
|
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. |
||||||
|
# Read more about iOS versioning at |
||||||
|
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html |
||||||
|
version: 0.0.1+1 |
||||||
|
homepage: https://ozgurkon.org |
||||||
|
documentation: https://git.oyd.org.tr/oyd/ozgurkon-app/wiki |
||||||
|
repository: https://git.oyd.org.tr/oyd/ozgurkon-app |
||||||
|
issue_tracker: https://git.oyd.org.tr/oyd/ozgurkon-app/issues |
||||||
|
|
||||||
|
|
||||||
|
environment: |
||||||
|
sdk: ">=2.12.0 <3.0.0" |
||||||
|
|
||||||
|
dependencies: |
||||||
|
flutter: |
||||||
|
sdk: flutter |
||||||
|
|
||||||
|
|
||||||
|
# The following adds the Cupertino Icons font to your application. |
||||||
|
# Use with the CupertinoIcons class for iOS style icons. |
||||||
|
cupertino_icons: ^1.0.2 |
||||||
|
material_color_generator: ^1.1.0 |
||||||
|
google_fonts: ^2.1.0 |
||||||
|
about: ^2.0.0 |
||||||
|
package_info_plus: ^1.0.1 |
||||||
|
shared_preferences: ^2.0.6 |
||||||
|
video_viewer: ^1.2.2 |
||||||
|
webview_flutter: ^2.0.8 |
||||||
|
|
||||||
|
dev_dependencies: |
||||||
|
flutter_test: |
||||||
|
sdk: flutter |
||||||
|
|
||||||
|
# For information on the generic Dart part of this file, see the |
||||||
|
# following page: https://dart.dev/tools/pub/pubspec |
||||||
|
|
||||||
|
# The following section is specific to Flutter. |
||||||
|
flutter: |
||||||
|
|
||||||
|
# The following line ensures that the Material Icons font is |
||||||
|
# included with your application, so that you can use the icons in |
||||||
|
# the material Icons class. |
||||||
|
uses-material-design: true |
||||||
|
|
||||||
|
# To add assets to your application, add an assets section, like this: |
||||||
|
assets: |
||||||
|
- assets/ |
||||||
|
- LICENSE.md |
||||||
|
- CONTRIBUTORS.md |
||||||
|
# - images/a_dot_ham.jpeg |
||||||
|
|
||||||
|
# An image asset can refer to one or more resolution-specific "variants", see |
||||||
|
# https://flutter.dev/assets-and-images/#resolution-aware. |
||||||
|
|
||||||
|
# For details regarding adding assets from package dependencies, see |
||||||
|
# https://flutter.dev/assets-and-images/#from-packages |
||||||
|
|
||||||
|
# To add custom fonts to your application, add a fonts section here, |
||||||
|
# in this "flutter" section. Each entry in this list should have a |
||||||
|
# "family" key with the font family name, and a "fonts" key with a |
||||||
|
# list giving the asset and other descriptors for the font. For |
||||||
|
# example: |
||||||
|
# fonts: |
||||||
|
# - family: Schyler |
||||||
|
# fonts: |
||||||
|
# - asset: fonts/Schyler-Regular.ttf |
||||||
|
# - asset: fonts/Schyler-Italic.ttf |
||||||
|
# style: italic |
||||||
|
# - family: Trajan Pro |
||||||
|
# fonts: |
||||||
|
# - asset: fonts/TrajanPro.ttf |
||||||
|
# - asset: fonts/TrajanPro_Bold.ttf |
||||||
|
# weight: 700 |
||||||
|
# |
||||||
|
# For details regarding fonts from package dependencies, |
||||||
|
# see https://flutter.dev/custom-fonts/#from-packages |
@ -0,0 +1,30 @@ |
|||||||
|
// This is a basic Flutter widget test. |
||||||
|
// |
||||||
|
// To perform an interaction with a widget in your test, use the WidgetTester |
||||||
|
// utility that Flutter provides. For example, you can send tap and scroll |
||||||
|
// gestures. You can also use WidgetTester to find child widgets in the widget |
||||||
|
// tree, read text, and verify that the values of widget properties are correct. |
||||||
|
|
||||||
|
import 'package:flutter/material.dart'; |
||||||
|
import 'package:flutter_test/flutter_test.dart'; |
||||||
|
|
||||||
|
import 'package:ozgurkon_app/main.dart'; |
||||||
|
|
||||||
|
void main() { |
||||||
|
testWidgets('Counter increments smoke test', (WidgetTester tester) async { |
||||||
|
// Build our app and trigger a frame. |
||||||
|
await tester.pumpWidget(MyApp()); |
||||||
|
|
||||||
|
// Verify that our counter starts at 0. |
||||||
|
expect(find.text('0'), findsOneWidget); |
||||||
|
expect(find.text('1'), findsNothing); |
||||||
|
|
||||||
|
// Tap the '+' icon and trigger a frame. |
||||||
|
await tester.tap(find.byIcon(Icons.add)); |
||||||
|
await tester.pump(); |
||||||
|
|
||||||
|
// Verify that our counter has incremented. |
||||||
|
expect(find.text('0'), findsNothing); |
||||||
|
expect(find.text('1'), findsOneWidget); |
||||||
|
}); |
||||||
|
} |
After Width: | Height: | Size: 917 B |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 8.1 KiB |
@ -0,0 +1,98 @@ |
|||||||
|
<!DOCTYPE html> |
||||||
|
<html> |
||||||
|
<head> |
||||||
|
<!-- |
||||||
|
If you are serving your web app in a path other than the root, change the |
||||||
|
href value below to reflect the base path you are serving from. |
||||||
|
|
||||||
|
The path provided below has to start and end with a slash "/" in order for |
||||||
|
it to work correctly. |
||||||
|
|
||||||
|
For more details: |
||||||
|
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base |
||||||
|
--> |
||||||
|
<base href="/"> |
||||||
|
|
||||||
|
<meta charset="UTF-8"> |
||||||
|
<meta content="IE=Edge" http-equiv="X-UA-Compatible"> |
||||||
|
<meta name="description" content="A new Flutter project."> |
||||||
|
|
||||||
|
<!-- iOS meta tags & icons --> |
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes"> |
||||||
|
<meta name="apple-mobile-web-app-status-bar-style" content="black"> |
||||||
|
<meta name="apple-mobile-web-app-title" content="ozgurkon_app"> |
||||||
|
<link rel="apple-touch-icon" href="icons/Icon-192.png"> |
||||||
|
|
||||||
|
<title>ozgurkon_app</title> |
||||||
|
<link rel="manifest" href="manifest.json"> |
||||||
|
</head> |
||||||
|
<body> |
||||||
|
<!-- This script installs service_worker.js to provide PWA functionality to |
||||||
|
application. For more information, see: |
||||||
|
https://developers.google.com/web/fundamentals/primers/service-workers --> |
||||||
|
<script> |
||||||
|
var serviceWorkerVersion = null; |
||||||
|
var scriptLoaded = false; |
||||||
|
function loadMainDartJs() { |
||||||
|
if (scriptLoaded) { |
||||||
|
return; |
||||||
|
} |
||||||
|
scriptLoaded = true; |
||||||
|
var scriptTag = document.createElement('script'); |
||||||
|
scriptTag.src = 'main.dart.js'; |
||||||
|
scriptTag.type = 'application/javascript'; |
||||||
|
document.body.append(scriptTag); |
||||||
|
} |
||||||
|
|
||||||
|
if ('serviceWorker' in navigator) { |
||||||
|
// Service workers are supported. Use them. |
||||||
|
window.addEventListener('load', function () { |
||||||
|
// Wait for registration to finish before dropping the <script> tag. |
||||||
|
// Otherwise, the browser will load the script multiple times, |
||||||
|
// potentially different versions. |
||||||
|
var serviceWorkerUrl = 'flutter_service_worker.js?v=' + serviceWorkerVersion; |
||||||
|
navigator.serviceWorker.register(serviceWorkerUrl) |
||||||
|
.then((reg) => { |
||||||
|
function waitForActivation(serviceWorker) { |
||||||
|
serviceWorker.addEventListener('statechange', () => { |
||||||
|
if (serviceWorker.state == 'activated') { |
||||||
|
console.log('Installed new service worker.'); |
||||||
|
loadMainDartJs(); |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
if (!reg.active && (reg.installing || reg.waiting)) { |
||||||
|
// No active web worker and we have installed or are installing |
||||||
|
// one for the first time. Simply wait for it to activate. |
||||||
|
waitForActivation(reg.installing ?? reg.waiting); |
||||||
|
} else if (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) { |
||||||
|
// When the app updates the serviceWorkerVersion changes, so we |
||||||
|
// need to ask the service worker to update. |
||||||
|
console.log('New service worker available.'); |
||||||
|
reg.update(); |
||||||
|
waitForActivation(reg.installing); |
||||||
|
} else { |
||||||
|
// Existing service worker is still good. |
||||||
|
console.log('Loading app from service worker.'); |
||||||
|
loadMainDartJs(); |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
// If service worker doesn't succeed in a reasonable amount of time, |
||||||
|
// fallback to plaint <script> tag. |
||||||
|
setTimeout(() => { |
||||||
|
if (!scriptLoaded) { |
||||||
|
console.warn( |
||||||
|
'Failed to load app from service worker. Falling back to plain <script> tag.', |
||||||
|
); |
||||||
|
loadMainDartJs(); |
||||||
|
} |
||||||
|
}, 4000); |
||||||
|
}); |
||||||
|
} else { |
||||||
|
// Service workers not supported. Just drop the <script> tag. |
||||||
|
loadMainDartJs(); |
||||||
|
} |
||||||
|
</script> |
||||||
|
</body> |
||||||
|
</html> |
@ -0,0 +1,23 @@ |
|||||||
|
{ |
||||||
|
"name": "ozgurkon_app", |
||||||
|
"short_name": "ozgurkon_app", |
||||||
|
"start_url": ".", |
||||||
|
"display": "standalone", |
||||||
|
"background_color": "#0175C2", |
||||||
|
"theme_color": "#0175C2", |
||||||
|
"description": "A new Flutter project.", |
||||||
|
"orientation": "portrait-primary", |
||||||
|
"prefer_related_applications": false, |
||||||
|
"icons": [ |
||||||
|
{ |
||||||
|
"src": "icons/Icon-192.png", |
||||||
|
"sizes": "192x192", |
||||||
|
"type": "image/png" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"src": "icons/Icon-512.png", |
||||||
|
"sizes": "512x512", |
||||||
|
"type": "image/png" |
||||||
|
} |
||||||
|
] |
||||||
|
} |