Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stage Release #2989

Merged
merged 44 commits into from
Oct 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
e69736b
Enhancment/Grant app permissions to new system roles (#2863)
agalin920 Jul 22, 2024
7398833
[Content] Do not show edit template for datasets (#2870)
finnar-bin Jul 23, 2024
8d30954
Schema rules limit file type for media field (#2867)
agalin920 Jul 23, 2024
4d91e56
[Content] Do not show the model as a breadcrumb item when in multipag…
finnar-bin Jul 23, 2024
dc88b71
Fix/table sort by display date field by accounting for empty date val…
agalin920 Jul 23, 2024
b9acd99
Reference createdAt timestamp outside of history object (#2868)
agalin920 Jul 24, 2024
1727581
[Schema | Content] Currency field revamp (#2873)
finnar-bin Jul 25, 2024
bae5cea
[Schema] Currency field vqa updates (#2883)
finnar-bin Jul 26, 2024
8c0f3ac
vqa fixes media schema rules (#2890)
agalin920 Jul 29, 2024
88613eb
[Content] Show image placeholder in publish modal dialog (#2888)
finnar-bin Jul 30, 2024
f3271c2
Hide publish based on permissions on code app (#2887)
agalin920 Jul 30, 2024
361736c
[Content] Do not store pinned columns to local storage (#2892)
finnar-bin Jul 30, 2024
b88aa66
[Content] Multipage table advanced sorting (#2884)
finnar-bin Jul 31, 2024
d49cc5f
[Content] Filter button icon update & show api endpoints on hover (#2…
finnar-bin Jul 31, 2024
379c957
[Content] Only show publish actions when dropdown selection has chang…
finnar-bin Jul 31, 2024
21fc276
[Media] File replacement (#2849)
finnar-bin Aug 1, 2024
2362709
media rules vqa (#2904)
agalin920 Aug 1, 2024
4b76474
[Content] Remove replace file option for non-zesty media files (#2905)
finnar-bin Aug 1, 2024
13cf24f
[Content] Show that table is sorted in Last Saved desc when no other …
finnar-bin Aug 6, 2024
adf7fff
[Content | Schema] Do not show site-generators api options for datase…
finnar-bin Aug 13, 2024
bf53d0f
Fix/Prevent safari focus issue when manipulating cursor position on i…
agalin920 Aug 14, 2024
247ac75
Check granular role permissions for specific resources (#2899)
agalin920 Aug 14, 2024
b977c64
[Content] Enable duo mode when x-frame-options is set to either null …
finnar-bin Aug 26, 2024
ebf62ab
[Content] Resolve relational field zuids with the actual field values…
finnar-bin Aug 27, 2024
fa740c1
[Content] SEO tab revamp Phase 1 (#2927)
finnar-bin Aug 27, 2024
ded9c19
Update ga4 endpoint to use analytics api. (#2765)
allenpigar Aug 28, 2024
6a1497a
[Content] SEO tab revamp VQA fixes (#2940)
finnar-bin Sep 3, 2024
7295c9d
Chore/resolve stage conflicts (#2941)
finnar-bin Sep 4, 2024
0e73d48
[Content] Skip url path part validation for datasets (#2945)
finnar-bin Sep 4, 2024
0f7225e
Fix/Retain to value (#2934)
agalin920 Sep 5, 2024
fd65103
Update apps beta url (#2953)
agalin920 Sep 11, 2024
d714d8a
[Content] TC and OG fields support and updated logic for OG Image (#2…
finnar-bin Sep 11, 2024
fc29e45
[Content] Prevent head tags tab height overflow (#2952)
finnar-bin Sep 12, 2024
04fad47
enable fullscreen freestyle (#2956)
agalin920 Sep 12, 2024
ca3b436
[Content] Check referrer policy & cotent security policy setting for …
finnar-bin Sep 18, 2024
ea55995
[Content] SEO tab VQA updates (#2959)
finnar-bin Sep 20, 2024
104efea
[Content] SEO tab VQA 2 updates (#2965)
finnar-bin Sep 24, 2024
088c5c8
[Chore] Bump material version (#2970)
finnar-bin Sep 25, 2024
3fa1041
Filter out fields that are not set as listed (#2954)
agalin920 Sep 25, 2024
f7064e2
[Content] AI assistant update for SEO and content item fields (#2960)
finnar-bin Sep 26, 2024
1f71116
[Content] SEO Tab width and card header text update (#2982)
finnar-bin Sep 27, 2024
37e0ee5
Remove meta desc validation on dataset items (#2988)
finnar-bin Oct 1, 2024
fc4c24d
[Content] Resolve VQA comments for the AI updates (#2990)
finnar-bin Oct 2, 2024
dcf4278
[Chore] Resolve dev/stage conflicts (#2995)
finnar-bin Oct 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
67 changes: 67 additions & 0 deletions cypress/e2e/content/actions.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,13 @@ describe("Actions in content editor", () => {
});

cy.get("input[name=title]", { timeout: 5000 }).click().type(timestamp);

cy.getBySelector("ManualMetaFlow").click();

cy.getBySelector("metaDescription")
.find("textarea")
.first()
.type(timestamp);
cy.getBySelector("CreateItemSaveButton").click();

cy.contains("Created Item", { timeout: 5000 }).should("exist");
Expand Down Expand Up @@ -267,4 +274,64 @@ describe("Actions in content editor", () => {
// }).should("exist");
// // cy.contains("The item has been purged from the CDN cache", { timeout: 5000 }).should("exist");
// });

it("Creates a new content item using AI-generated data", () => {
cy.waitOn("/v1/content/models*", () => {
cy.waitOn("/v1/content/models/*/fields?showDeleted=true", () => {
cy.visit("/content/6-a1a600-k0b6f0/new");
});
});

cy.intercept("/ai").as("ai");
cy.wait(5000);

// Generate AI content for single line text
cy.get("#12-0c3934-8dz720").find("[data-cy='AIOpen']").click();
cy.getBySelector("AITopicField").type("biking");
cy.getBySelector("AIAudienceField").type("young adults");
cy.getBySelector("AIGenerate").click();

cy.wait("@ai");

cy.getBySelector("AIApprove").click();

// Generate AI content for wysiwyg
cy.get("#12-717920-6z46t7").find("[data-cy='AIOpen']").click();
cy.getBySelector("AITopicField").type("biking");
cy.getBySelector("AIAudienceField").type("young adults");
cy.getBySelector("AIGenerate").click();

cy.wait("@ai");

cy.getBySelector("AIApprove").click();

// Select AI-assisted metadata generation flow
cy.getBySelector("ManualMetaFlow").click();

// Generate AI content for meta title
cy.getBySelector("metaTitle").find("input").clear();
cy.getBySelector("metaTitle").find("[data-cy='AIOpen']").click();
cy.getBySelector("AIGenerate").click();

cy.wait("@ai");

cy.getBySelector("AISuggestion1").click();
cy.getBySelector("AIApprove").click();

// Generate AI content for meta description
cy.getBySelector("metaDescription")
.find("textarea[name='metaDescription']")
.clear({ force: true });
cy.getBySelector("metaDescription").find("[data-cy='AIOpen']").click();
cy.getBySelector("AIGenerate").click();

cy.wait("@ai");

cy.getBySelector("AISuggestion1").click();
cy.getBySelector("AIApprove").click();

cy.getBySelector("CreateItemSaveButton").click();

cy.contains("Created Item", { timeout: 5000 }).should("exist");
});
});
2 changes: 1 addition & 1 deletion cypress/e2e/content/analyticsDashboard.spec.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
describe("Analytics dashboard", () => {
before(() => {
cy.waitOn("*getPropertyList*", () => {
cy.waitOn("*properties*", () => {
cy.visit("/content");
});
});
Expand Down
2 changes: 1 addition & 1 deletion cypress/e2e/content/content.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ describe("Content Specs", () => {
});

it("Currency Field", () => {
cy.get("#12-b35c68-jd1s8s input[type=number]")
cy.get("#12-b35c68-jd1s8s input")
.focus()
.clear()
.type("100.00")
Expand Down
2 changes: 1 addition & 1 deletion cypress/e2e/content/singlePageAnalytics.spec.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
describe("Single Page Analytics", () => {
before(() => {
cy.waitOn("*getPropertyList*", () => {
cy.waitOn("*properties*", () => {
cy.visit("/content/6-a1a600-k0b6f0/7-a1be38-1b42ht/analytics");
});
});
Expand Down
40 changes: 40 additions & 0 deletions cypress/e2e/schema/field.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,14 @@ const SELECTORS = {
FIELD_SELECT_MEDIA: "FieldItem_images",
FIELD_SELECT_BOOLEAN: "FieldItem_yes_no",
FIELD_SELECT_ONE_TO_ONE: "FieldItem_one_to_one",
FIELD_SELECT_CURRENCY: "FieldItem_currency",
MEDIA_CHECKBOX_LIMIT: "MediaCheckbox_limit",
MEDIA_CHECKBOX_LOCK: "MediaCheckbox_group_id",
DROPDOWN_ADD_OPTION: "DropdownAddOption",
DROPDOWN_DELETE_OPTION: "DeleteOption",
AUTOCOMPLETE_MODEL_ZUID: "Autocomplete_relatedModelZUID",
AUTOCOMPLETE_FIELED_ZUID: "Autocomplete_relatedFieldZUID",
AUTOCOMPLETE_FIELD_CURRENCY: "Autocomplete_currency",
INPUT_LABEL: "FieldFormInput_label",
INPUT_NAME: "FieldFormInput_name",
INPUT_OPTION_LABEL: "OptionLabel",
Expand Down Expand Up @@ -357,6 +359,44 @@ describe("Schema: Fields", () => {
cy.getBySelector(`Field_${fieldName}`).should("exist");
});

it("Creates a currency field", () => {
cy.intercept("**/fields?showDeleted=true").as("getFields");

const fieldLabel = `Currency ${timestamp}`;
const fieldName = `currency_${timestamp}`;

// Open the add field modal
cy.getBySelector(SELECTORS.ADD_FIELD_BTN).should("exist").click();
cy.getBySelector(SELECTORS.ADD_FIELD_MODAL).should("exist");

// Select one-to-one relationship field
cy.getBySelector(SELECTORS.FIELD_SELECT_CURRENCY).should("exist").click();

// Select default currency
cy.getBySelector(SELECTORS.AUTOCOMPLETE_FIELD_CURRENCY).type("phil");
cy.get("[role=listbox] [role=option]").first().click();

// Fill up fields
cy.getBySelector(SELECTORS.INPUT_LABEL).should("exist").type(fieldLabel);

// Navigate to rules tab and add default value
cy.getBySelector(SELECTORS.RULES_TAB_BTN).click();
// click on the default value checkbox
cy.getBySelector(SELECTORS.DEFAULT_VALUE_CHECKBOX).click();
// enter a default value
cy.getBySelector(SELECTORS.DEFAULT_VALUE_INPUT).type("1000.50");
// Verify default currency
cy.getBySelector(SELECTORS.DEFAULT_VALUE_INPUT).contains("PHP");
// Click done
cy.getBySelector(SELECTORS.SAVE_FIELD_BUTTON).should("exist").click();
cy.getBySelector(SELECTORS.ADD_FIELD_MODAL).should("not.exist");

cy.wait("@getFields");

// Check if field exists
cy.getBySelector(`Field_${fieldName}`).should("exist");
});

it("Creates a field via add another field button", () => {
cy.intercept("**/fields?showDeleted=true").as("getFields");

Expand Down
15 changes: 7 additions & 8 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
"@tinymce/tinymce-react": "^4.3.0",
"@welldone-software/why-did-you-render": "^6.1.1",
"@zesty-io/core": "1.10.0",
"@zesty-io/material": "^0.15.2",
"@zesty-io/material": "^0.15.5",
"chart.js": "^3.8.0",
"chartjs-adapter-moment": "^1.0.1",
"chartjs-plugin-datalabels": "^2.0.0",
Expand Down
Loading
Loading