diff --git a/.gitignore b/.gitignore
index c0c193f..9f0bb74 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,7 +20,6 @@ amplify/.config/local-*
amplify/logs
amplify/mock-data
amplify/backend/amplify-meta.json
-amplify/backend/awscloudformation
amplify/backend/.temp
build/
dist/
@@ -34,25 +33,4 @@ amplify-gradle-config.json
amplifytools.xcconfig
.secret-*
**.sample
-#amplify-do-not-edit-end
-
-#amplify-do-not-edit-begin
-amplify/\#current-cloud-backend
-amplify/.config/local-*
-amplify/logs
-amplify/mock-data
-amplify/backend/amplify-meta.json
-amplify/backend/.temp
-build/
-dist/
-node_modules/
-aws-exports.js
-awsconfiguration.json
-amplifyconfiguration.json
-amplifyconfiguration.dart
-amplify-build-config.json
-amplify-gradle-config.json
-amplifytools.xcconfig
-.secret-*
-**.sample
-#amplify-do-not-edit-end
+#amplify-do-not-edit-end
diff --git a/.idea/misc.xml b/.idea/misc.xml
index b22f299..2002d91 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -18,6 +18,9 @@
+
+
+
diff --git a/amplify/backend/analytics/ThriftyOWUjV/parameters.json b/amplify/backend/analytics/ThriftyOWUjV/parameters.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/analytics/ThriftyOWUjV/pinpoint-cloudformation-template.json b/amplify/backend/analytics/ThriftyOWUjV/pinpoint-cloudformation-template.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/api/thrifty/cli-inputs.json b/amplify/backend/api/thrifty/cli-inputs.json
old mode 100644
new mode 100755
index c4199c3..8619fe6
--- a/amplify/backend/api/thrifty/cli-inputs.json
+++ b/amplify/backend/api/thrifty/cli-inputs.json
@@ -12,7 +12,7 @@
}
},
"apiName": "thrifty",
- "gqlSchemaPath": "/tmp/amplify-1fac80fc-70ea-4f02-9b3e-a61e0e82577b/amplify/backend/api/thrifty/schema.graphql",
+ "gqlSchemaPath": "/tmp/amplify-b38aed8f-cc0e-48c1-ab26-b93ee968bf10/amplify/backend/api/thrifty/schema.graphql",
"additionalAuthTypes": [
{
"mode": "API_KEY",
diff --git a/amplify/backend/api/thrifty/parameters.json b/amplify/backend/api/thrifty/parameters.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/api/thrifty/resolvers/README.md b/amplify/backend/api/thrifty/resolvers/README.md
old mode 100644
new mode 100755
diff --git a/amplify/backend/api/thrifty/schema.graphql b/amplify/backend/api/thrifty/schema.graphql
old mode 100644
new mode 100755
index 2f8d608..27ddccd
--- a/amplify/backend/api/thrifty/schema.graphql
+++ b/amplify/backend/api/thrifty/schema.graphql
@@ -1,3 +1,19 @@
+type Favorite @model @auth(rules: [{allow: private}]) @key(name: "byUser", fields: ["userID"]) {
+ id: ID!
+ titleFav: String!
+ imageFav: String!
+ priceFav: String!
+ sizeFav: String!
+ categoryFav: String!
+ userID: ID
+}
+
+type User @model @auth(rules: [{allow: private}]) {
+ id: ID!
+ email: String!
+ Favorite: [Favorite] @connection(keyName: "byUser", fields: ["id"])
+}
+
type Category @model @auth(rules: [{allow: private}]) {
id: ID!
name: String!
@@ -12,5 +28,6 @@ type Product @model @auth(rules: [{allow: private}]) @key(name: "byCategory", fi
size: String!
color: String!
categoryID: ID
+ image: String!
}
\ No newline at end of file
diff --git a/amplify/backend/api/thrifty/stacks/CustomResources.json b/amplify/backend/api/thrifty/stacks/CustomResources.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/api/thrifty/transform.conf.json b/amplify/backend/api/thrifty/transform.conf.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/auth/thrifty21f6c364/parameters.json b/amplify/backend/auth/thrifty21f6c364/parameters.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/auth/thrifty21f6c364/thrifty21f6c364-cloudformation-template.yml b/amplify/backend/auth/thrifty21f6c364/thrifty21f6c364-cloudformation-template.yml
old mode 100644
new mode 100755
diff --git a/amplify/backend/backend-config.json b/amplify/backend/backend-config.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/storage/SSDStorage/parameters.json b/amplify/backend/storage/SSDStorage/parameters.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/storage/SSDStorage/s3-cloudformation-template.json b/amplify/backend/storage/SSDStorage/s3-cloudformation-template.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/storage/SSDStorage/storage-params.json b/amplify/backend/storage/SSDStorage/storage-params.json
old mode 100644
new mode 100755
diff --git a/amplify/backend/tags.json b/amplify/backend/tags.json
old mode 100644
new mode 100755
diff --git a/amplify/cli.json b/amplify/cli.json
old mode 100644
new mode 100755
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 7161f63..ffce0ff 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,41 +1,45 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/amplifyframework/datastore/generated/model/AmplifyModelProvider.java b/app/src/main/java/com/amplifyframework/datastore/generated/model/AmplifyModelProvider.java
index 008f8d9..c7a5842 100644
--- a/app/src/main/java/com/amplifyframework/datastore/generated/model/AmplifyModelProvider.java
+++ b/app/src/main/java/com/amplifyframework/datastore/generated/model/AmplifyModelProvider.java
@@ -13,7 +13,7 @@
*/
public final class AmplifyModelProvider implements ModelProvider {
- private static final String AMPLIFY_MODEL_VERSION = "fccdd8bbe737f1d4f95aa5a65535d183";
+ private static final String AMPLIFY_MODEL_VERSION = "1c29971a13d9fcd249685dddf076b501";
private static AmplifyModelProvider amplifyGeneratedModelInstance;
private AmplifyModelProvider() {
@@ -34,7 +34,7 @@ public static AmplifyModelProvider getInstance() {
@Override
public Set> models() {
final Set> modifiableSet = new HashSet<>(
- Arrays.>asList(Category.class, Product.class)
+ Arrays.>asList(Favorite.class, User.class, Category.class, Product.class)
);
return Immutable.of(modifiableSet);
diff --git a/app/src/main/java/com/amplifyframework/datastore/generated/model/Favorite.java b/app/src/main/java/com/amplifyframework/datastore/generated/model/Favorite.java
new file mode 100644
index 0000000..4d856a9
--- /dev/null
+++ b/app/src/main/java/com/amplifyframework/datastore/generated/model/Favorite.java
@@ -0,0 +1,325 @@
+package com.amplifyframework.datastore.generated.model;
+
+import com.amplifyframework.core.model.temporal.Temporal;
+
+import java.util.List;
+import java.util.UUID;
+import java.util.Objects;
+
+import androidx.core.util.ObjectsCompat;
+
+import com.amplifyframework.core.model.AuthStrategy;
+import com.amplifyframework.core.model.Model;
+import com.amplifyframework.core.model.ModelOperation;
+import com.amplifyframework.core.model.annotations.AuthRule;
+import com.amplifyframework.core.model.annotations.Index;
+import com.amplifyframework.core.model.annotations.ModelConfig;
+import com.amplifyframework.core.model.annotations.ModelField;
+import com.amplifyframework.core.model.query.predicate.QueryField;
+
+import static com.amplifyframework.core.model.query.predicate.QueryField.field;
+
+/** This is an auto generated class representing the Favorite type in your schema. */
+@SuppressWarnings("all")
+@ModelConfig(pluralName = "Favorites", authRules = {
+ @AuthRule(allow = AuthStrategy.PRIVATE, operations = { ModelOperation.CREATE, ModelOperation.UPDATE, ModelOperation.DELETE, ModelOperation.READ })
+})
+@Index(name = "byUser", fields = {"userID"})
+public final class Favorite implements Model {
+ public static final QueryField ID = field("Favorite", "id");
+ public static final QueryField TITLE_FAV = field("Favorite", "titleFav");
+ public static final QueryField IMAGE_FAV = field("Favorite", "imageFav");
+ public static final QueryField PRICE_FAV = field("Favorite", "priceFav");
+ public static final QueryField SIZE_FAV = field("Favorite", "sizeFav");
+ public static final QueryField CATEGORY_FAV = field("Favorite", "categoryFav");
+ public static final QueryField USER_ID = field("Favorite", "userID");
+ private final @ModelField(targetType="ID", isRequired = true) String id;
+ private final @ModelField(targetType="String", isRequired = true) String titleFav;
+ private final @ModelField(targetType="String", isRequired = true) String imageFav;
+ private final @ModelField(targetType="String", isRequired = true) String priceFav;
+ private final @ModelField(targetType="String", isRequired = true) String sizeFav;
+ private final @ModelField(targetType="String", isRequired = true) String categoryFav;
+ private final @ModelField(targetType="ID") String userID;
+ private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime createdAt;
+ private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime updatedAt;
+ public String getId() {
+ return id;
+ }
+
+ public String getTitleFav() {
+ return titleFav;
+ }
+
+ public String getImageFav() {
+ return imageFav;
+ }
+
+ public String getPriceFav() {
+ return priceFav;
+ }
+
+ public String getSizeFav() {
+ return sizeFav;
+ }
+
+ public String getCategoryFav() {
+ return categoryFav;
+ }
+
+ public String getUserId() {
+ return userID;
+ }
+
+ public Temporal.DateTime getCreatedAt() {
+ return createdAt;
+ }
+
+ public Temporal.DateTime getUpdatedAt() {
+ return updatedAt;
+ }
+
+ public Favorite(String id, String titleFav, String imageFav, String priceFav, String sizeFav, String categoryFav, String userID) {
+ this.id = id;
+ this.titleFav = titleFav;
+ this.imageFav = imageFav;
+ this.priceFav = priceFav;
+ this.sizeFav = sizeFav;
+ this.categoryFav = categoryFav;
+ this.userID = userID;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ } else if(obj == null || getClass() != obj.getClass()) {
+ return false;
+ } else {
+ Favorite favorite = (Favorite) obj;
+ return ObjectsCompat.equals(getId(), favorite.getId()) &&
+ ObjectsCompat.equals(getTitleFav(), favorite.getTitleFav()) &&
+ ObjectsCompat.equals(getImageFav(), favorite.getImageFav()) &&
+ ObjectsCompat.equals(getPriceFav(), favorite.getPriceFav()) &&
+ ObjectsCompat.equals(getSizeFav(), favorite.getSizeFav()) &&
+ ObjectsCompat.equals(getCategoryFav(), favorite.getCategoryFav()) &&
+ ObjectsCompat.equals(getUserId(), favorite.getUserId()) &&
+ ObjectsCompat.equals(getCreatedAt(), favorite.getCreatedAt()) &&
+ ObjectsCompat.equals(getUpdatedAt(), favorite.getUpdatedAt());
+ }
+ }
+
+ @Override
+ public int hashCode() {
+ return new StringBuilder()
+ .append(getId())
+ .append(getTitleFav())
+ .append(getImageFav())
+ .append(getPriceFav())
+ .append(getSizeFav())
+ .append(getCategoryFav())
+ .append(getUserId())
+ .append(getCreatedAt())
+ .append(getUpdatedAt())
+ .toString()
+ .hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return new StringBuilder()
+ .append("Favorite {")
+ .append("id=" + String.valueOf(getId()) + ", ")
+ .append("titleFav=" + String.valueOf(getTitleFav()) + ", ")
+ .append("imageFav=" + String.valueOf(getImageFav()) + ", ")
+ .append("priceFav=" + String.valueOf(getPriceFav()) + ", ")
+ .append("sizeFav=" + String.valueOf(getSizeFav()) + ", ")
+ .append("categoryFav=" + String.valueOf(getCategoryFav()) + ", ")
+ .append("userID=" + String.valueOf(getUserId()) + ", ")
+ .append("createdAt=" + String.valueOf(getCreatedAt()) + ", ")
+ .append("updatedAt=" + String.valueOf(getUpdatedAt()))
+ .append("}")
+ .toString();
+ }
+
+ public static TitleFavStep builder() {
+ return new Builder();
+ }
+
+ /**
+ * WARNING: This method should not be used to build an instance of this object for a CREATE mutation.
+ * This is a convenience method to return an instance of the object with only its ID populated
+ * to be used in the context of a parameter in a delete mutation or referencing a foreign key
+ * in a relationship.
+ * @param id the id of the existing item this instance will represent
+ * @return an instance of this model with only ID populated
+ */
+ public static Favorite justId(String id) {
+ return new Favorite(
+ id,
+ null,
+ null,
+ null,
+ null,
+ null,
+ null
+ );
+ }
+
+ public CopyOfBuilder copyOfBuilder() {
+ return new CopyOfBuilder(id,
+ titleFav,
+ imageFav,
+ priceFav,
+ sizeFav,
+ categoryFav,
+ userID);
+ }
+ public interface TitleFavStep {
+ ImageFavStep titleFav(String titleFav);
+ }
+
+
+ public interface ImageFavStep {
+ PriceFavStep imageFav(String imageFav);
+ }
+
+
+ public interface PriceFavStep {
+ SizeFavStep priceFav(String priceFav);
+ }
+
+
+ public interface SizeFavStep {
+ CategoryFavStep sizeFav(String sizeFav);
+ }
+
+
+ public interface CategoryFavStep {
+ BuildStep categoryFav(String categoryFav);
+ }
+
+
+ public interface BuildStep {
+ Favorite build();
+ BuildStep id(String id);
+ BuildStep userId(String userId);
+ }
+
+
+ public static class Builder implements TitleFavStep, ImageFavStep, PriceFavStep, SizeFavStep, CategoryFavStep, BuildStep {
+ private String id;
+ private String titleFav;
+ private String imageFav;
+ private String priceFav;
+ private String sizeFav;
+ private String categoryFav;
+ private String userID;
+ @Override
+ public Favorite build() {
+ String id = this.id != null ? this.id : UUID.randomUUID().toString();
+
+ return new Favorite(
+ id,
+ titleFav,
+ imageFav,
+ priceFav,
+ sizeFav,
+ categoryFav,
+ userID);
+ }
+
+ @Override
+ public ImageFavStep titleFav(String titleFav) {
+ Objects.requireNonNull(titleFav);
+ this.titleFav = titleFav;
+ return this;
+ }
+
+ @Override
+ public PriceFavStep imageFav(String imageFav) {
+ Objects.requireNonNull(imageFav);
+ this.imageFav = imageFav;
+ return this;
+ }
+
+ @Override
+ public SizeFavStep priceFav(String priceFav) {
+ Objects.requireNonNull(priceFav);
+ this.priceFav = priceFav;
+ return this;
+ }
+
+ @Override
+ public CategoryFavStep sizeFav(String sizeFav) {
+ Objects.requireNonNull(sizeFav);
+ this.sizeFav = sizeFav;
+ return this;
+ }
+
+ @Override
+ public BuildStep categoryFav(String categoryFav) {
+ Objects.requireNonNull(categoryFav);
+ this.categoryFav = categoryFav;
+ return this;
+ }
+
+ @Override
+ public BuildStep userId(String userId) {
+ this.userID = userId;
+ return this;
+ }
+
+ /**
+ * @param id id
+ * @return Current Builder instance, for fluent method chaining
+ */
+ public BuildStep id(String id) {
+ this.id = id;
+ return this;
+ }
+ }
+
+
+ public final class CopyOfBuilder extends Builder {
+ private CopyOfBuilder(String id, String titleFav, String imageFav, String priceFav, String sizeFav, String categoryFav, String userId) {
+ super.id(id);
+ super.titleFav(titleFav)
+ .imageFav(imageFav)
+ .priceFav(priceFav)
+ .sizeFav(sizeFav)
+ .categoryFav(categoryFav)
+ .userId(userId);
+ }
+
+ @Override
+ public CopyOfBuilder titleFav(String titleFav) {
+ return (CopyOfBuilder) super.titleFav(titleFav);
+ }
+
+ @Override
+ public CopyOfBuilder imageFav(String imageFav) {
+ return (CopyOfBuilder) super.imageFav(imageFav);
+ }
+
+ @Override
+ public CopyOfBuilder priceFav(String priceFav) {
+ return (CopyOfBuilder) super.priceFav(priceFav);
+ }
+
+ @Override
+ public CopyOfBuilder sizeFav(String sizeFav) {
+ return (CopyOfBuilder) super.sizeFav(sizeFav);
+ }
+
+ @Override
+ public CopyOfBuilder categoryFav(String categoryFav) {
+ return (CopyOfBuilder) super.categoryFav(categoryFav);
+ }
+
+ @Override
+ public CopyOfBuilder userId(String userId) {
+ return (CopyOfBuilder) super.userId(userId);
+ }
+ }
+
+}
diff --git a/app/src/main/java/com/amplifyframework/datastore/generated/model/Product.java b/app/src/main/java/com/amplifyframework/datastore/generated/model/Product.java
index b7c3b83..0cc6a03 100644
--- a/app/src/main/java/com/amplifyframework/datastore/generated/model/Product.java
+++ b/app/src/main/java/com/amplifyframework/datastore/generated/model/Product.java
@@ -33,6 +33,7 @@ public final class Product implements Model {
public static final QueryField SIZE = field("Product", "size");
public static final QueryField COLOR = field("Product", "color");
public static final QueryField CATEGORY_ID = field("Product", "categoryID");
+ public static final QueryField IMAGE = field("Product", "image");
private final @ModelField(targetType="ID", isRequired = true) String id;
private final @ModelField(targetType="String", isRequired = true) String title;
private final @ModelField(targetType="String", isRequired = true) String description;
@@ -40,6 +41,7 @@ public final class Product implements Model {
private final @ModelField(targetType="String", isRequired = true) String size;
private final @ModelField(targetType="String", isRequired = true) String color;
private final @ModelField(targetType="ID") String categoryID;
+ private final @ModelField(targetType="String", isRequired = true) String image;
private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime createdAt;
private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime updatedAt;
public String getId() {
@@ -70,6 +72,10 @@ public String getCategoryId() {
return categoryID;
}
+ public String getImage() {
+ return image;
+ }
+
public Temporal.DateTime getCreatedAt() {
return createdAt;
}
@@ -78,7 +84,7 @@ public Temporal.DateTime getUpdatedAt() {
return updatedAt;
}
- private Product(String id, String title, String description, String price, String size, String color, String categoryID) {
+ private Product(String id, String title, String description, String price, String size, String color, String categoryID, String image) {
this.id = id;
this.title = title;
this.description = description;
@@ -86,6 +92,7 @@ private Product(String id, String title, String description, String price, Strin
this.size = size;
this.color = color;
this.categoryID = categoryID;
+ this.image = image;
}
@Override
@@ -103,6 +110,7 @@ public boolean equals(Object obj) {
ObjectsCompat.equals(getSize(), product.getSize()) &&
ObjectsCompat.equals(getColor(), product.getColor()) &&
ObjectsCompat.equals(getCategoryId(), product.getCategoryId()) &&
+ ObjectsCompat.equals(getImage(), product.getImage()) &&
ObjectsCompat.equals(getCreatedAt(), product.getCreatedAt()) &&
ObjectsCompat.equals(getUpdatedAt(), product.getUpdatedAt());
}
@@ -118,6 +126,7 @@ public int hashCode() {
.append(getSize())
.append(getColor())
.append(getCategoryId())
+ .append(getImage())
.append(getCreatedAt())
.append(getUpdatedAt())
.toString()
@@ -135,6 +144,7 @@ public String toString() {
.append("size=" + String.valueOf(getSize()) + ", ")
.append("color=" + String.valueOf(getColor()) + ", ")
.append("categoryID=" + String.valueOf(getCategoryId()) + ", ")
+ .append("image=" + String.valueOf(getImage()) + ", ")
.append("createdAt=" + String.valueOf(getCreatedAt()) + ", ")
.append("updatedAt=" + String.valueOf(getUpdatedAt()))
.append("}")
@@ -161,6 +171,7 @@ public static Product justId(String id) {
null,
null,
null,
+ null,
null
);
}
@@ -172,7 +183,8 @@ public CopyOfBuilder copyOfBuilder() {
price,
size,
color,
- categoryID);
+ categoryID,
+ image);
}
public interface TitleStep {
DescriptionStep title(String title);
@@ -195,7 +207,12 @@ public interface SizeStep {
public interface ColorStep {
- BuildStep color(String color);
+ ImageStep color(String color);
+ }
+
+
+ public interface ImageStep {
+ BuildStep image(String image);
}
@@ -206,13 +223,14 @@ public interface BuildStep {
}
- public static class Builder implements TitleStep, DescriptionStep, PriceStep, SizeStep, ColorStep, BuildStep {
+ public static class Builder implements TitleStep, DescriptionStep, PriceStep, SizeStep, ColorStep, ImageStep, BuildStep {
private String id;
private String title;
private String description;
private String price;
private String size;
private String color;
+ private String image;
private String categoryID;
@Override
public Product build() {
@@ -225,7 +243,8 @@ public Product build() {
price,
size,
color,
- categoryID);
+ categoryID,
+ image);
}
@Override
@@ -257,12 +276,19 @@ public ColorStep size(String size) {
}
@Override
- public BuildStep color(String color) {
+ public ImageStep color(String color) {
Objects.requireNonNull(color);
this.color = color;
return this;
}
+ @Override
+ public BuildStep image(String image) {
+ Objects.requireNonNull(image);
+ this.image = image;
+ return this;
+ }
+
@Override
public BuildStep categoryId(String categoryId) {
this.categoryID = categoryId;
@@ -281,13 +307,14 @@ public BuildStep id(String id) {
public final class CopyOfBuilder extends Builder {
- private CopyOfBuilder(String id, String title, String description, String price, String size, String color, String categoryId) {
+ private CopyOfBuilder(String id, String title, String description, String price, String size, String color, String categoryId, String image) {
super.id(id);
super.title(title)
.description(description)
.price(price)
.size(size)
.color(color)
+ .image(image)
.categoryId(categoryId);
}
@@ -316,6 +343,11 @@ public CopyOfBuilder color(String color) {
return (CopyOfBuilder) super.color(color);
}
+ @Override
+ public CopyOfBuilder image(String image) {
+ return (CopyOfBuilder) super.image(image);
+ }
+
@Override
public CopyOfBuilder categoryId(String categoryId) {
return (CopyOfBuilder) super.categoryId(categoryId);
diff --git a/app/src/main/java/com/amplifyframework/datastore/generated/model/User.java b/app/src/main/java/com/amplifyframework/datastore/generated/model/User.java
new file mode 100644
index 0000000..5e33a2e
--- /dev/null
+++ b/app/src/main/java/com/amplifyframework/datastore/generated/model/User.java
@@ -0,0 +1,175 @@
+package com.amplifyframework.datastore.generated.model;
+
+import com.amplifyframework.core.model.annotations.HasMany;
+import com.amplifyframework.core.model.temporal.Temporal;
+
+import java.util.List;
+import java.util.UUID;
+import java.util.Objects;
+
+import androidx.core.util.ObjectsCompat;
+
+import com.amplifyframework.core.model.AuthStrategy;
+import com.amplifyframework.core.model.Model;
+import com.amplifyframework.core.model.ModelOperation;
+import com.amplifyframework.core.model.annotations.AuthRule;
+import com.amplifyframework.core.model.annotations.Index;
+import com.amplifyframework.core.model.annotations.ModelConfig;
+import com.amplifyframework.core.model.annotations.ModelField;
+import com.amplifyframework.core.model.query.predicate.QueryField;
+
+import static com.amplifyframework.core.model.query.predicate.QueryField.field;
+
+/** This is an auto generated class representing the User type in your schema. */
+@SuppressWarnings("all")
+@ModelConfig(pluralName = "Users", authRules = {
+ @AuthRule(allow = AuthStrategy.PRIVATE, operations = { ModelOperation.CREATE, ModelOperation.UPDATE, ModelOperation.DELETE, ModelOperation.READ })
+})
+public final class User implements Model {
+ public static final QueryField ID = field("User", "id");
+ public static final QueryField EMAIL = field("User", "email");
+ private final @ModelField(targetType="ID", isRequired = true) String id;
+ private final @ModelField(targetType="String", isRequired = true) String email;
+ private final @ModelField(targetType="Favorite") @HasMany(associatedWith = "userID", type = Favorite.class) List Favorite = null;
+ private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime createdAt;
+ private @ModelField(targetType="AWSDateTime", isReadOnly = true) Temporal.DateTime updatedAt;
+ public String getId() {
+ return id;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public List getFavorite() {
+ return Favorite;
+ }
+
+ public Temporal.DateTime getCreatedAt() {
+ return createdAt;
+ }
+
+ public Temporal.DateTime getUpdatedAt() {
+ return updatedAt;
+ }
+
+ private User(String id, String email) {
+ this.id = id;
+ this.email = email;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ } else if(obj == null || getClass() != obj.getClass()) {
+ return false;
+ } else {
+ User user = (User) obj;
+ return ObjectsCompat.equals(getId(), user.getId()) &&
+ ObjectsCompat.equals(getEmail(), user.getEmail()) &&
+ ObjectsCompat.equals(getCreatedAt(), user.getCreatedAt()) &&
+ ObjectsCompat.equals(getUpdatedAt(), user.getUpdatedAt());
+ }
+ }
+
+ @Override
+ public int hashCode() {
+ return new StringBuilder()
+ .append(getId())
+ .append(getEmail())
+ .append(getCreatedAt())
+ .append(getUpdatedAt())
+ .toString()
+ .hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return new StringBuilder()
+ .append("User {")
+ .append("id=" + String.valueOf(getId()) + ", ")
+ .append("email=" + String.valueOf(getEmail()) + ", ")
+ .append("createdAt=" + String.valueOf(getCreatedAt()) + ", ")
+ .append("updatedAt=" + String.valueOf(getUpdatedAt()))
+ .append("}")
+ .toString();
+ }
+
+ public static EmailStep builder() {
+ return new Builder();
+ }
+
+ /**
+ * WARNING: This method should not be used to build an instance of this object for a CREATE mutation.
+ * This is a convenience method to return an instance of the object with only its ID populated
+ * to be used in the context of a parameter in a delete mutation or referencing a foreign key
+ * in a relationship.
+ * @param id the id of the existing item this instance will represent
+ * @return an instance of this model with only ID populated
+ */
+ public static User justId(String id) {
+ return new User(
+ id,
+ null
+ );
+ }
+
+ public CopyOfBuilder copyOfBuilder() {
+ return new CopyOfBuilder(id,
+ email);
+ }
+ public interface EmailStep {
+ BuildStep email(String email);
+ }
+
+
+ public interface BuildStep {
+ User build();
+ BuildStep id(String id);
+ }
+
+
+ public static class Builder implements EmailStep, BuildStep {
+ private String id;
+ private String email;
+ @Override
+ public User build() {
+ String id = this.id != null ? this.id : UUID.randomUUID().toString();
+
+ return new User(
+ id,
+ email);
+ }
+
+ @Override
+ public BuildStep email(String email) {
+ Objects.requireNonNull(email);
+ this.email = email;
+ return this;
+ }
+
+ /**
+ * @param id id
+ * @return Current Builder instance, for fluent method chaining
+ */
+ public BuildStep id(String id) {
+ this.id = id;
+ return this;
+ }
+ }
+
+
+ public final class CopyOfBuilder extends Builder {
+ private CopyOfBuilder(String id, String email) {
+ super.id(id);
+ super.email(email);
+ }
+
+ @Override
+ public CopyOfBuilder email(String email) {
+ return (CopyOfBuilder) super.email(email);
+ }
+ }
+
+}
diff --git a/app/src/main/java/com/example/thrifty/Admin.java b/app/src/main/java/com/example/thrifty/Admin.java
index 687ad2f..5b211bd 100644
--- a/app/src/main/java/com/example/thrifty/Admin.java
+++ b/app/src/main/java/com/example/thrifty/Admin.java
@@ -25,6 +25,7 @@
public class Admin extends AppCompatActivity {
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -103,6 +104,7 @@ public void onClick(View v) {
.price(setprice)
.size(setsize)
.color(setcolor)
+ .image("lol")
.categoryId(setcategory)
.build();
diff --git a/app/src/main/java/com/example/thrifty/FavoriteActivity.java b/app/src/main/java/com/example/thrifty/FavoriteActivity.java
new file mode 100644
index 0000000..a714969
--- /dev/null
+++ b/app/src/main/java/com/example/thrifty/FavoriteActivity.java
@@ -0,0 +1,14 @@
+package com.example.thrifty;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+import android.os.Bundle;
+
+public class FavoriteActivity extends AppCompatActivity {
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_favorite);
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/thrifty/MainActivity.java b/app/src/main/java/com/example/thrifty/MainActivity.java
index eec583e..42fc807 100644
--- a/app/src/main/java/com/example/thrifty/MainActivity.java
+++ b/app/src/main/java/com/example/thrifty/MainActivity.java
@@ -23,18 +23,23 @@
import android.util.Log;
import android.widget.Button;
+import android.widget.TextView;
+import android.widget.Toast;
import android.widget.Toolbar;
import com.amazonaws.mobileconnectors.pinpoint.PinpointManager;
import com.amplifyframework.AmplifyException;
import com.amplifyframework.analytics.pinpoint.AWSPinpointAnalyticsPlugin;
import com.amplifyframework.api.aws.AWSApiPlugin;
+import com.amplifyframework.api.graphql.model.ModelMutation;
import com.amplifyframework.api.graphql.model.ModelQuery;
import com.amplifyframework.auth.cognito.AWSCognitoAuthPlugin;
import com.amplifyframework.core.Amplify;
import com.amplifyframework.datastore.AWSDataStorePlugin;
+import com.amplifyframework.datastore.generated.model.Favorite;
import com.amplifyframework.datastore.generated.model.Product;
import com.amplifyframework.storage.s3.AWSS3StoragePlugin;
+import com.example.thrifty.adapters.FavoriteAdapter;
import com.example.thrifty.adapters.NewItemsAdapter;
import com.example.thrifty.adapters.PopularItemsAdapter;
import com.example.thrifty.adapters.SuggestedItemsAdapter;
@@ -46,7 +51,7 @@
import java.util.List;
-public class MainActivity extends AppCompatActivity {
+public class MainActivity extends AppCompatActivity {
private List NewProduct = new ArrayList<>();
private List PopularProduct = new ArrayList<>();
@@ -57,6 +62,7 @@ public class MainActivity extends AppCompatActivity {
NewItemsAdapter newItemsAdapter;
SuggestedItemsAdapter suggestedItemsAdapter;
PopularItemsAdapter popularItemsAdapter;
+ FavoriteAdapter favoriteAdapter;
public static PinpointManager getPinpointManager(Context applicationContext) {
return null;
@@ -68,6 +74,7 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
+// favMethod();
MainMenuFragment mainMenuFragment = new MainMenuFragment();
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
// toolbar.setNavigationIcon(R.drawable.ic_baseline_arrow_back_ios_new_24);
@@ -94,18 +101,17 @@ public void onClick(View v) {
initRecyclerViews();
-
-findViewById(R.id.admin).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Intent intent = new Intent(MainActivity.this, Admin.class);
- startActivity(intent);
+ findViewById(R.id.admin).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Intent intent = new Intent(MainActivity.this, Admin.class);
+ startActivity(intent);
+ }
+ });
}
-});
- }
- public void bottomNav(){
+ public void bottomNav() {
BottomNavigationView bottomNavigationView = findViewById(R.id.bottomNavigationView);
bottomNavigationView.setSelectedItemId(R.id.homeNav);
BottomNavigationItemView homeNav = findViewById(R.id.homeNav);
@@ -116,34 +122,34 @@ public void bottomNav(){
search.setOnClickListener(view -> {
Intent intent = new Intent(getApplicationContext(), SearchActivity.class);
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK| Intent.FLAG_ACTIVITY_NEW_TASK);
+ intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
});
homeNav.setOnClickListener(view -> {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK| Intent.FLAG_ACTIVITY_NEW_TASK);
+ intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
});
}
- private void initRecyclerViews(){
+ private void initRecyclerViews() {
newItemRecView = findViewById(R.id.newItemsRecView);
suggestedRecView = findViewById(R.id.suggestedRecView);
popularRecView = findViewById(R.id.popularRecView);
// newItemRecView.setAdapter(newItemsAdapter);
- newItemRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(),RecyclerView.HORIZONTAL,false));
+ newItemRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(), RecyclerView.HORIZONTAL, false));
suggestedRecView.setAdapter(suggestedItemsAdapter);
- suggestedRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(), RecyclerView.HORIZONTAL,false));
+ suggestedRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(), RecyclerView.HORIZONTAL, false));
popularRecView.setAdapter(popularItemsAdapter);
- popularRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(),RecyclerView.HORIZONTAL,false));
+ popularRecView.setLayoutManager(new LinearLayoutManager(getApplicationContext(), RecyclerView.HORIZONTAL, false));
- newItemRecView.setAdapter(new NewItemsAdapter(NewProduct , MainActivity.this));
+ newItemRecView.setAdapter(new NewItemsAdapter(NewProduct, MainActivity.this));
Handler handler = new Handler(Looper.myLooper(), new Handler.Callback() {
@SuppressLint("NotifyDataSetChanged")
@Override
@@ -154,7 +160,7 @@ public boolean handleMessage(@NonNull Message message) {
});
- popularRecView.setAdapter(new NewItemsAdapter(PopularProduct , MainActivity.this));
+ popularRecView.setAdapter(new NewItemsAdapter(PopularProduct, MainActivity.this));
Handler popularhandler = new Handler(Looper.myLooper(), new Handler.Callback() {
@SuppressLint("NotifyDataSetChanged")
@Override
@@ -164,7 +170,7 @@ public boolean handleMessage(@NonNull Message message) {
}
});
- suggestedRecView.setAdapter(new NewItemsAdapter(SuggestProduct , MainActivity.this));
+ suggestedRecView.setAdapter(new NewItemsAdapter(SuggestProduct, MainActivity.this));
Handler suggesthandler = new Handler(Looper.myLooper(), new Handler.Callback() {
@SuppressLint("NotifyDataSetChanged")
@Override
@@ -178,14 +184,13 @@ public boolean handleMessage(@NonNull Message message) {
ModelQuery.list(Product.class),
response -> {
for (Product todo : response.getData()) {
- NewProduct.add(todo);
+ NewProduct.add(todo);
}
handler.sendEmptyMessage(1);
}, error -> Log.e("MyAmplifyApp", "Query failure", error)
);
-
Amplify.API.query(
ModelQuery.list(Product.class),
response -> {
@@ -216,9 +221,9 @@ protected void onResume() {
stopButton.setVisibility(View.GONE);
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(MainActivity.this);
String email1 = sharedPreferences.getString("email", "Your email");
- if (email1.equals("hebaalmomani1998@gmail.com")){
+ if (email1.equals("na25wal@yahoo.com")) {
stopButton.setVisibility(View.VISIBLE);
}
}
-
+
}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/thrifty/Splash.java b/app/src/main/java/com/example/thrifty/Splash.java
index dac8789..c634580 100644
--- a/app/src/main/java/com/example/thrifty/Splash.java
+++ b/app/src/main/java/com/example/thrifty/Splash.java
@@ -1,12 +1,12 @@
package com.example.thrifty;
-import androidx.appcompat.app.AppCompatActivity;
-
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
+import com.example.thrifty.auth.Signin;
+
public class Splash extends Activity {
/** Duration of wait **/
@@ -24,7 +24,7 @@ public void onCreate(Bundle icicle) {
@Override
public void run() {
/* Create an Intent that will start the Menu-Activity. */
- Intent mainIntent = new Intent(Splash.this,MainActivity.class);
+ Intent mainIntent = new Intent(Splash.this, Signin.class);
Splash.this.startActivity(mainIntent);
Splash.this.finish();
}
diff --git a/app/src/main/java/com/example/thrifty/adapters/FavoriteAdapter.java b/app/src/main/java/com/example/thrifty/adapters/FavoriteAdapter.java
new file mode 100644
index 0000000..5de526a
--- /dev/null
+++ b/app/src/main/java/com/example/thrifty/adapters/FavoriteAdapter.java
@@ -0,0 +1,72 @@
+package com.example.thrifty.adapters;
+
+import android.annotation.SuppressLint;
+import android.content.Intent;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.amplifyframework.datastore.generated.model.Favorite;
+import com.example.thrifty.MainActivity;
+import com.example.thrifty.R;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+public class FavoriteAdapter extends RecyclerView.Adapter {
+ List favoriteList = new ArrayList<>();
+
+ public FavoriteAdapter(List favoriteList, MainActivity mainActivity){
+ this.favoriteList = favoriteList;
+ }
+
+
+ @NonNull
+ @Override
+ public NewItemsHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+ View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_layout, parent , false);
+ return new FavoriteAdapter.NewItemsHolder(view);
+ }
+
+ @Override
+ public void onBindViewHolder(@NonNull NewItemsHolder holder, @SuppressLint("RecyclerView") int position) {
+ holder.Favorite = favoriteList.get(position);
+ TextView title = holder.itemView.findViewById(R.id.titlefrag1);
+ TextView category = holder.itemView.findViewById(R.id.categoryfrag);
+
+ title.setText(holder.Favorite.getTitleFav());
+ category.setText(holder.Favorite.getCategoryFav());
+
+
+ holder.itemView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Intent goToDetails = new Intent(view.getContext(), MainActivity.class);
+ goToDetails.putExtra("Title",favoriteList.get(position).getTitleFav());
+ goToDetails.putExtra("category",favoriteList.get(position).getCategoryFav());
+
+ view.getContext().startActivity(goToDetails);
+ }
+ });
+ }
+
+
+ @Override
+ public int getItemCount() {
+ return favoriteList.size();
+ }
+
+ public static class NewItemsHolder extends RecyclerView.ViewHolder{
+ public Favorite Favorite;
+ public View itemView;
+ public NewItemsHolder(@NonNull View itemView) {
+ super(itemView);
+ this.itemView = itemView;
+ }
+ }
+}
diff --git a/app/src/main/java/com/example/thrifty/adapters/NewItemsAdapter.java b/app/src/main/java/com/example/thrifty/adapters/NewItemsAdapter.java
index 7a6490b..5afd6cf 100644
--- a/app/src/main/java/com/example/thrifty/adapters/NewItemsAdapter.java
+++ b/app/src/main/java/com/example/thrifty/adapters/NewItemsAdapter.java
@@ -2,14 +2,20 @@
import android.annotation.SuppressLint;
import android.content.Intent;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.Button;
import android.widget.TextView;
+import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
+import com.amplifyframework.api.graphql.model.ModelMutation;
+import com.amplifyframework.core.Amplify;
+import com.amplifyframework.datastore.generated.model.Favorite;
import com.amplifyframework.datastore.generated.model.Product;
import java.util.ArrayList;
@@ -45,6 +51,37 @@ public void onBindViewHolder(@NonNull NewItemsHolder holder, @SuppressLint("Recy
title.setText(holder.product.getTitle());
category.setText(holder.product.getCategoryId());
+ Button favButtons = holder.itemView.findViewById(R.id.favButton);
+ favButtons.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ TextView name = holder.itemView.findViewById(R.id.titlefrag1);
+ TextView category = holder.itemView.findViewById(R.id.categoryfrag);
+// TextView email = findViewById(R.id.editTextTextPersonName6);
+
+ String nameFav = name.getText().toString();
+ String categoryFav = category.getText().toString();
+// String emailFav = email.getText().toString();
+
+ Favorite favorite = new Favorite.Builder()
+ .titleFav(nameFav)
+ .imageFav("categoryFav")
+ .priceFav("15")
+ .sizeFav("15")
+ .categoryFav(categoryFav)
+ .userId("emailFav")
+ .build();
+ Log.i("Favorie","kkkkkkkkkkkkkkkkkkk"+favorite);
+
+ Amplify.API.mutate(
+ ModelMutation.create(favorite),
+ response -> Log.i("MyAmplifyApp", "Added Todo with id: " + response.getData().getId()),
+ error -> Log.e("MyAmplifyApp", "Create failed", error)
+ );
+
+ Toast.makeText(view.getContext(), "add to fav", Toast.LENGTH_SHORT).show();
+ }
+ });
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
diff --git a/app/src/main/java/com/example/thrifty/ConfirmationPage.java b/app/src/main/java/com/example/thrifty/auth/ConfirmationPage.java
similarity index 90%
rename from app/src/main/java/com/example/thrifty/ConfirmationPage.java
rename to app/src/main/java/com/example/thrifty/auth/ConfirmationPage.java
index 16e8a6d..c2cf617 100644
--- a/app/src/main/java/com/example/thrifty/ConfirmationPage.java
+++ b/app/src/main/java/com/example/thrifty/auth/ConfirmationPage.java
@@ -1,4 +1,4 @@
-package com.example.thrifty;
+package com.example.thrifty.auth;
import androidx.appcompat.app.AppCompatActivity;
@@ -10,10 +10,9 @@
import android.widget.EditText;
import android.widget.Toolbar;
-import com.amplifyframework.AmplifyException;
-import com.amplifyframework.api.aws.AWSApiPlugin;
-import com.amplifyframework.auth.cognito.AWSCognitoAuthPlugin;
import com.amplifyframework.core.Amplify;
+import com.example.thrifty.MainActivity;
+import com.example.thrifty.R;
public class ConfirmationPage extends AppCompatActivity {
@@ -49,7 +48,7 @@ public void onClick(View v) {
error -> Log.e("AuthQuickstart", error.toString())
);
- Intent intent = new Intent(ConfirmationPage.this,MainActivity.class);
+ Intent intent = new Intent(ConfirmationPage.this, MainActivity.class);
startActivity(intent);
}
});
diff --git a/app/src/main/java/com/example/thrifty/Signin.java b/app/src/main/java/com/example/thrifty/auth/Signin.java
similarity index 96%
rename from app/src/main/java/com/example/thrifty/Signin.java
rename to app/src/main/java/com/example/thrifty/auth/Signin.java
index f2d89df..2a3c42f 100644
--- a/app/src/main/java/com/example/thrifty/Signin.java
+++ b/app/src/main/java/com/example/thrifty/auth/Signin.java
@@ -1,4 +1,4 @@
-package com.example.thrifty;
+package com.example.thrifty.auth;
import androidx.appcompat.app.AppCompatActivity;
@@ -8,11 +8,9 @@
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.util.Log;
-import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
-import android.widget.Toast;
import android.widget.Toolbar;
import com.amplifyframework.AmplifyException;
@@ -20,6 +18,8 @@
import com.amplifyframework.auth.cognito.AWSCognitoAuthPlugin;
import com.amplifyframework.core.Amplify;
import com.amplifyframework.storage.s3.AWSS3StoragePlugin;
+import com.example.thrifty.MainActivity;
+import com.example.thrifty.R;
public class Signin extends AppCompatActivity {
public static final String TAG = "SignIn";
diff --git a/app/src/main/java/com/example/thrifty/Signup.java b/app/src/main/java/com/example/thrifty/auth/Signup.java
similarity index 97%
rename from app/src/main/java/com/example/thrifty/Signup.java
rename to app/src/main/java/com/example/thrifty/auth/Signup.java
index b7b6a94..5e6f670 100644
--- a/app/src/main/java/com/example/thrifty/Signup.java
+++ b/app/src/main/java/com/example/thrifty/auth/Signup.java
@@ -1,4 +1,4 @@
-package com.example.thrifty;
+package com.example.thrifty.auth;
import androidx.appcompat.app.AppCompatActivity;
@@ -18,6 +18,8 @@
import com.amplifyframework.auth.options.AuthSignUpOptions;
import com.amplifyframework.core.Amplify;
import com.amplifyframework.storage.s3.AWSS3StoragePlugin;
+import com.example.thrifty.MainActivity;
+import com.example.thrifty.R;
public class Signup extends AppCompatActivity {
public static final String TAG = "SignUp";
diff --git a/app/src/main/res/layout/activity_confirmation_page.xml b/app/src/main/res/layout/activity_confirmation_page.xml
index a933453..8389d3e 100644
--- a/app/src/main/res/layout/activity_confirmation_page.xml
+++ b/app/src/main/res/layout/activity_confirmation_page.xml
@@ -4,7 +4,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".ConfirmationPage">
+ tools:context=".auth.ConfirmationPage">
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_signin.xml b/app/src/main/res/layout/activity_signin.xml
index 50ba7d4..5cc8540 100644
--- a/app/src/main/res/layout/activity_signin.xml
+++ b/app/src/main/res/layout/activity_signin.xml
@@ -4,7 +4,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".Signin">
+ tools:context=".auth.Signin">
+ tools:context=".auth.Signup">
@@ -58,7 +58,7 @@
android:text="category" />