mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-07-26 01:44:53 +10:00
Feature: Implement Embedding Links in Titles of all Section Items (#2662)
* feat: add options.showLinkInTitle to baseItemSchema Add itemOptionsSchema with showLinkInTitle boolean property to control whether the website URL is rendered as a hyperlink on the title instead of a separate link at the bottom. The field is optional for backwards compatibility with existing resumes. Co-authored-by: Cursor <cursoragent@cursor.com> * feat: add hideLabelButton prop to URLInput When hideLabelButton is true, the tag/label button is hidden from the URL input. This is used when showLinkInTitle is enabled since the label is not needed when the link is shown in the title. Co-authored-by: Cursor <cursoragent@cursor.com> * feat: create LinkedTitle component for title-as-link rendering Add a reusable component that conditionally renders the title as a hyperlink when showLinkInTitle is true and a website URL is provided. Co-authored-by: Cursor <cursoragent@cursor.com> * feat: add showLinkInTitle option to experience section - Add Switch toggle in experience dialog for showLinkInTitle option - Update URLInput to hide label button when showLinkInTitle is enabled - Use LinkedTitle component in experience-item for conditional link rendering - Hide bottom website link when showLinkInTitle is enabled Co-authored-by: Cursor <cursoragent@cursor.com> * feat: add showLinkInTitle option to all section items - Update education, projects, awards, certifications, publications, volunteer, references, and profiles dialogs with Switch toggle - Add LinkedTitle component usage in all corresponding item components - Conditionally hide bottom website link when showLinkInTitle is enabled - Add hideLabelButton prop to URLInput when showLinkInTitle is enabled Co-authored-by: Cursor <cursoragent@cursor.com> * chore: extract i18n strings for showLinkInTitle feature Add "Show link in title" translation string to all locale catalogs. Co-authored-by: Cursor <cursoragent@cursor.com> * update dependencies, fix an issue with glalie template and non-clickable links, fix better-auth type error * remove unused export --------- Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -7,6 +7,17 @@ export const iconSchema = z
|
||||
"The icon to display for the custom field. Must be a valid icon name from @phosphor-icons/web icon set, or an empty string to hide. Default to '' (empty string) when unsure which icons are available.",
|
||||
);
|
||||
|
||||
export const itemOptionsSchema = z
|
||||
.object({
|
||||
showLinkInTitle: z
|
||||
.boolean()
|
||||
.catch(false)
|
||||
.describe(
|
||||
"If true, the website URL is rendered as a hyperlink on the title instead of a separate link at the bottom.",
|
||||
),
|
||||
})
|
||||
.catch({ showLinkInTitle: false });
|
||||
|
||||
export const urlSchema = z.object({
|
||||
url: z.string().describe("The URL to show as a link. Must be a valid URL with a protocol (http:// or https://)."),
|
||||
label: z.string().describe("The label to display for the URL. Leave blank to display the URL as-is."),
|
||||
@@ -84,6 +95,7 @@ export const summarySchema = z.object({
|
||||
export const baseItemSchema = z.object({
|
||||
id: z.string().describe("The unique identifier for the item. Usually generated as a UUID."),
|
||||
hidden: z.boolean().describe("Whether to hide the item from the resume."),
|
||||
options: itemOptionsSchema.optional().describe("Display options for this item."),
|
||||
});
|
||||
|
||||
export const summaryItemSchema = baseItemSchema.extend({
|
||||
|
||||
Reference in New Issue
Block a user