diff --git a/Sources/HTMLKit/Abstraction/Attributes/BasicAttributes.swift b/Sources/HTMLKit/Abstraction/Attributes/BasicAttributes.swift index 92146f1e..a510e27e 100644 --- a/Sources/HTMLKit/Abstraction/Attributes/BasicAttributes.swift +++ b/Sources/HTMLKit/Abstraction/Attributes/BasicAttributes.swift @@ -97,12 +97,43 @@ extension ActionAttribute where Self: EmptyNode { @_documentation(visibility: internal) public protocol AlternateAttribute: Attribute { - /// The function represents the html-attribute 'alt'. + /// Provide an alternative information /// - /// ```html - /// + /// ```swift + /// Image() + /// .alternate("Lorem ipsum...") /// ``` + /// + /// - Parameter value: The text to describe the image + /// + /// - Returns: The element func alternate(_ value: String) -> Self + + /// Provide an alternative information + /// + /// ```swift + /// Image() + /// .alternate("Lorem ipsum...") + /// ``` + /// + /// - Parameter localizedKey: The string key to be translated + /// - Parameter tableName: The translation table to look in + /// + /// - Returns: The element + func alternate(_ localizedKey: LocalizedStringKey, tableName: String?) -> Self + + /// Provide an alternative information without localization. + /// + /// ```swift + /// Image() + /// .alternate(verbatim: "Lorem ipsum...") + /// ``` + /// + /// - Parameter value: The text to describe the image + /// + /// - Returns: The element + func alternate(verbatim value: String) -> Self + } extension AlternateAttribute where Self: ContentNode { @@ -110,6 +141,10 @@ extension AlternateAttribute where Self: ContentNode { internal func mutate(alternate value: String) -> Self { return self.mutate(key: "alt", value: value) } + + internal func mutate(alternate value: LocalizedString) -> Self { + return self.mutate(key: "alt", value: value) + } } extension AlternateAttribute where Self: EmptyNode { @@ -117,6 +152,10 @@ extension AlternateAttribute where Self: EmptyNode { internal func mutate(alternate value: String) -> Self { return self.mutate(key: "alt", value: value) } + + internal func mutate(alternate value: LocalizedString) -> Self { + return self.mutate(key: "alt", value: value) + } } /// The protocol provides the element with the asynchronously handler. @@ -430,12 +469,45 @@ extension ColumnSpanAttribute where Self: EmptyNode { @_documentation(visibility: internal) public protocol ContentAttribute: Attribute { - /// The function represents the html-attribute 'content'. + /// Supply a value to the associated name. /// - /// ```html - /// + /// ```swift + /// Meta() + /// .name(.description) + /// .content("Lorem ipsum...") /// ``` + /// + /// - Parameter value: The value to describe the name + /// + /// - Returns: The element func content(_ value: String) -> Self + + /// Supply a value to the associated name. + /// + /// ```swift + /// Meta() + /// .name(.description) + /// .content("Lorem ipsum...") + /// ``` + /// + /// - Parameter localizedKey: The string key to be translated + /// - Parameter tableName: The translation table to look in + /// + /// - Returns: The element + func content(_ localizedKey: LocalizedStringKey, tableName: String?) -> Self + + /// Supply a value to the associated name without localization + /// + /// ```swift + /// Meta() + /// .name(.description) + /// .content(verbatim: "Lorem ipsum...") + /// ``` + /// + /// - Parameter value: The value to describe the name + /// + /// - Returns: The element + func content(verbatim value: String) -> Self } extension ContentAttribute where Self: ContentNode { @@ -443,6 +515,10 @@ extension ContentAttribute where Self: ContentNode { internal func mutate(content value: String) -> Self { return self.mutate(key: "content", value: value) } + + internal func mutate(content value: LocalizedString) -> Self { + return self.mutate(key: "content", value: value) + } } extension ContentAttribute where Self: EmptyNode { @@ -450,6 +526,10 @@ extension ContentAttribute where Self: EmptyNode { internal func mutate(content value: String) -> Self { return self.mutate(key: "content", value: value) } + + internal func mutate(content value: LocalizedString) -> Self { + return self.mutate(key: "content", value: value) + } } /// The protocol provides the element with the iseditable handler. @@ -1913,12 +1993,42 @@ extension PingAttribute where Self: EmptyNode { @_documentation(visibility: internal) public protocol PlaceholderAttribute: Attribute { - /// The function represents the html-attribute 'placeholder'. + /// Supply a short hint. /// - /// ```html - /// + /// ```swift + /// Input() + /// .placeholder("Lorem ipsum...") /// ``` + /// + /// - Parameter value: The text to display as a hint + /// + /// - Returns: The element func placeholder(_ value: String) -> Self + + /// Supply a short hint. + /// + /// ```swift + /// Input() + /// .placeholder("Lorem ipsum...") + /// ``` + /// + /// - Parameter localizedKey: The string key to be translated + /// - Parameter tableName: The translation table to look in + /// + /// - Returns: The element + func placeholder(_ localizedKey: LocalizedStringKey, tableName: String?) -> Self + + /// Supply a short hint without localization. + /// + /// ```swift + /// Input() + /// .placeholder(verbatim: "Lorem ipsum...") + /// ``` + /// + /// - Parameter value: The text to display as a hint + /// + /// - Returns: The element + func placeholder(verbatim value: String) -> Self } extension PlaceholderAttribute where Self: ContentNode { @@ -1926,6 +2036,10 @@ extension PlaceholderAttribute where Self: ContentNode { internal func mutate(placeholder value: String) -> Self { return self.mutate(key: "placeholder", value: value) } + + internal func mutate(placeholder value: LocalizedString) -> Self { + return self.mutate(key: "placeholder", value: value) + } } extension PlaceholderAttribute where Self: EmptyNode { @@ -1933,6 +2047,10 @@ extension PlaceholderAttribute where Self: EmptyNode { internal func mutate(placeholder value: String) -> Self { return self.mutate(key: "placeholder", value: value) } + + internal func mutate(placeholder value: LocalizedString) -> Self { + return self.mutate(key: "placeholder", value: value) + } } /// The protocol provides the element with the poster handler. @@ -2645,12 +2763,48 @@ extension TargetAttribute where Self: EmptyNode { @_documentation(visibility: internal) public protocol TitleAttribute: Attribute { - /// The function represents the html-attribute 'title'. + /// Supply extra information about the element. /// - /// ```html - /// + /// ```swift + /// Paragraph { + /// "Lorem ipsum..." + /// } + /// .title("Lorem ipsum") /// ``` + /// + /// - Parameter value: The extra information to display + /// + /// - Returns: The element func title(_ value: String) -> Self + + /// Supply extra information about the element.. + /// + /// ```swift + /// Paragraph { + /// "Lorem ipsum..." + /// } + /// .title("Lorem ipsum") + /// ``` + /// + /// - Parameter localizedKey: The string key to be translated + /// - Parameter tableName: The translation table to look in + /// + /// - Returns: The element + func title(_ localizedKey: LocalizedStringKey, tableName: String?) -> Self + + /// Supply extra information about the element without localization. + /// + /// ```swift + /// Paragraph { + /// "Lorem ipsum..." + /// } + /// .title(verbatim: "Lorem ipsum") + /// ``` + /// + /// - Parameter value: The extra information to display + /// + /// - Returns: The element + func title(verbatim value: String) -> Self } extension TitleAttribute where Self: ContentNode { @@ -2658,6 +2812,10 @@ extension TitleAttribute where Self: ContentNode { internal func mutate(title value: String) -> Self { return self.mutate(key: "title", value: value) } + + internal func mutate(title value: LocalizedString) -> Self { + return self.mutate(key: "title", value: value) + } } extension TitleAttribute where Self: EmptyNode { @@ -2665,6 +2823,10 @@ extension TitleAttribute where Self: EmptyNode { internal func mutate(title value: String) -> Self { return self.mutate(key: "title", value: value) } + + internal func mutate(title value: LocalizedString) -> Self { + return self.mutate(key: "title", value: value) + } } /// The protocol provides the element with the translate handler. @@ -2760,12 +2922,45 @@ extension UseMapAttribute where Self: EmptyNode { @_documentation(visibility: internal) public protocol ValueAttribute: Attribute { - /// The function represents the html-attribute 'value'. + /// Set a initial value for the element. /// - /// ```html - /// + /// ```swift + /// Input() + /// .type(.text) + /// .value("Lorem ipsum...") /// ``` + /// + /// - Parameter value: The initial value + /// + /// - Returns: The element func value(_ value: String) -> Self + + /// Set a initial value for the element. + /// + /// ```swift + /// Input() + /// .type(.text) + /// .value("Lorem ipsum...") + /// ``` + /// + /// - Parameter localizedKey: The string key to be translated + /// - Parameter tableName: The translation table to look in + /// + /// - Returns: The element + func value(_ localizedKey: LocalizedStringKey, tableName: String?) -> Self + + /// Set a initial value for the element without localization. + /// + /// ```swift + /// Input() + /// .type(.text) + /// .value(verbatim: "Lorem ipsum...") + /// ``` + /// + /// - Parameter value: The initial value + /// + /// - Returns: The element + func value(verbatim value: String) -> Self } extension ValueAttribute where Self: ContentNode { @@ -2773,6 +2968,10 @@ extension ValueAttribute where Self: ContentNode { internal func mutate(value: String) -> Self { return self.mutate(key: "value", value: value) } + + internal func mutate(value: LocalizedString) -> Self { + return self.mutate(key: "value", value: value) + } } extension ValueAttribute where Self: EmptyNode { @@ -2780,6 +2979,10 @@ extension ValueAttribute where Self: EmptyNode { internal func mutate(value: String) -> Self { return self.mutate(key: "value", value: value) } + + internal func mutate(value: LocalizedString) -> Self { + return self.mutate(key: "value", value: value) + } } /// The protocol provides the element with the width handler. diff --git a/Sources/HTMLKit/Abstraction/Elements/BasicElements.swift b/Sources/HTMLKit/Abstraction/Elements/BasicElements.swift index 96fa88ff..6eafcb4d 100644 --- a/Sources/HTMLKit/Abstraction/Elements/BasicElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/BasicElements.swift @@ -185,10 +185,19 @@ extension Html: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Html { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Html { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Html { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Html { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/BodyElements.swift b/Sources/HTMLKit/Abstraction/Elements/BodyElements.swift index a5ecb95d..fc4dea0c 100644 --- a/Sources/HTMLKit/Abstraction/Elements/BodyElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/BodyElements.swift @@ -517,9 +517,18 @@ extension Article: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Article { return mutate(title: value) } + + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Article { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Article { + return mutate(title: value) + } public func translate(_ value: Values.Decision) -> Article { return mutate(translate: value.rawValue) @@ -792,9 +801,18 @@ extension Section: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Section { return mutate(title: value) } + + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Section { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Section { + return mutate(title: value) + } public func translate(_ value: Values.Decision) -> Section { return mutate(translate: value.rawValue) @@ -1067,10 +1085,19 @@ extension Navigation: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Navigation { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Navigation { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Navigation { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Navigation { return mutate(translate: value.rawValue) } @@ -1342,10 +1369,19 @@ extension Aside: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Aside { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Aside { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Aside { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Aside { return mutate(translate: value.rawValue) } @@ -1617,10 +1653,19 @@ extension Heading1: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading1 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading1 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading1 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading1 { return mutate(translate: value.rawValue) } @@ -1899,10 +1944,19 @@ extension Heading2: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading2 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading2 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading2 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading2 { return mutate(translate: value.rawValue) } @@ -2181,10 +2235,19 @@ extension Heading3: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading3 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading3 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading3 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading3 { return mutate(translate: value.rawValue) } @@ -2463,10 +2526,19 @@ extension Heading4: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading4 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading4 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading4 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading4 { return mutate(translate: value.rawValue) } @@ -2745,10 +2817,19 @@ extension Heading5: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading5 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading5 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading5 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading5 { return mutate(translate: value.rawValue) } @@ -3027,10 +3108,19 @@ extension Heading6: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Heading6 { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Heading6 { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Heading6 { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Heading6 { return mutate(translate: value.rawValue) } @@ -3309,10 +3399,19 @@ extension HeadingGroup: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttri return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> HeadingGroup { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> HeadingGroup { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> HeadingGroup { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> HeadingGroup { return mutate(translate: value.rawValue) } @@ -3584,10 +3683,19 @@ extension Header: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Header { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Header { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Header { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Header { return mutate(translate: value.rawValue) } @@ -3859,10 +3967,19 @@ extension Footer: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Footer { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Footer { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Footer { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Footer { return mutate(translate: value.rawValue) } @@ -4134,10 +4251,19 @@ extension Address: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Address { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Address { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Address { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Address { return mutate(translate: value.rawValue) } @@ -4409,10 +4535,19 @@ extension Paragraph: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Paragraph { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Paragraph { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Paragraph { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Paragraph { return mutate(translate: value.rawValue) } @@ -4686,10 +4821,19 @@ extension HorizontalRule: GlobalAttributes, GlobalEventAttributes, GlobalAriaAtt return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> HorizontalRule { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> HorizontalRule { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> HorizontalRule { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> HorizontalRule { return mutate(translate: value.rawValue) } @@ -4961,10 +5105,19 @@ extension PreformattedText: GlobalAttributes, GlobalEventAttributes, GlobalAriaA return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> PreformattedText { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> PreformattedText { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> PreformattedText { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> PreformattedText { return mutate(translate: value.rawValue) } @@ -5236,10 +5389,19 @@ extension Blockquote: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Blockquote { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Blockquote { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Blockquote { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Blockquote { return mutate(translate: value.rawValue) } @@ -5522,10 +5684,19 @@ extension OrderedList: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttrib return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> OrderedList { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> OrderedList { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> OrderedList { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> OrderedList { return mutate(translate: value.rawValue) } @@ -5809,10 +5980,19 @@ extension UnorderedList: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttr return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> UnorderedList { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> UnorderedList { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> UnorderedList { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> UnorderedList { return mutate(translate: value.rawValue) } @@ -6084,10 +6264,19 @@ extension Menu: GlobalAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Menu { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Menu { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Menu { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Menu { return mutate(translate: value.rawValue) } @@ -6263,10 +6452,19 @@ extension DescriptionList: GlobalAttributes, GlobalEventAttributes, GlobalAriaAt return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> DescriptionList { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> DescriptionList { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> DescriptionList { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> DescriptionList { return mutate(translate: value.rawValue) } @@ -6538,10 +6736,19 @@ extension Figure: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Figure { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Figure { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Figure { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Figure { return mutate(translate: value.rawValue) } @@ -6813,10 +7020,19 @@ extension Anchor: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Anchor { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Anchor { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Anchor { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Anchor { return mutate(translate: value.rawValue) } @@ -7131,10 +7347,19 @@ extension Emphasize: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Emphasize { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Emphasize { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Emphasize { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Emphasize { return mutate(translate: value.rawValue) } @@ -7406,10 +7631,19 @@ extension Strong: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Strong { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Strong { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Strong { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Strong { return mutate(translate: value.rawValue) } @@ -7681,10 +7915,19 @@ extension Small: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Small { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Small { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Small { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Small { return mutate(translate: value.rawValue) } @@ -7963,10 +8206,19 @@ extension StrikeThrough: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> StrikeThrough { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> StrikeThrough { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> StrikeThrough { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> StrikeThrough { return mutate(translate: value.rawValue) } @@ -8169,10 +8421,19 @@ extension Main: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Main { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Main { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Main { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Main { return mutate(translate: value.rawValue) } @@ -8444,10 +8705,19 @@ extension Search: GlobalAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Search { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Search { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Search { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Search { return mutate(translate: value.rawValue) } @@ -8623,10 +8893,19 @@ extension Division: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Division { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Division { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Division { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Division { return mutate(translate: value.rawValue) } @@ -8898,10 +9177,19 @@ extension Definition: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Definition { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Definition { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Definition { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Definition { return mutate(translate: value.rawValue) } @@ -9173,10 +9461,19 @@ extension Cite: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Cite { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Cite { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Cite { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Cite { return mutate(translate: value.rawValue) } @@ -9448,10 +9745,19 @@ extension ShortQuote: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> ShortQuote { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> ShortQuote { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> ShortQuote { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> ShortQuote { return mutate(translate: value.rawValue) } @@ -9727,10 +10033,19 @@ extension Abbreviation: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttri return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Abbreviation { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Abbreviation { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Abbreviation { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Abbreviation { return mutate(translate: value.rawValue) } @@ -10002,10 +10317,19 @@ extension Ruby: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Ruby { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Ruby { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Ruby { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Ruby { return mutate(translate: value.rawValue) } @@ -10277,10 +10601,19 @@ extension Data: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, V return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Data { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Data { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Data { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Data { return mutate(translate: value.rawValue) } @@ -10298,10 +10631,19 @@ extension Data: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, V return self } + @_disfavoredOverload public func value(_ value: String) -> Data { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Data { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Data { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> Data { return mutate(popover: value.rawValue) } @@ -10556,10 +10898,19 @@ extension Time: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, D return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Time { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Time { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Time { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Time { return mutate(translate: value.rawValue) } @@ -10835,10 +11186,19 @@ extension Code: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Code { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Code { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Code { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Code { return mutate(translate: value.rawValue) } @@ -11122,10 +11482,19 @@ extension Variable: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Variable { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Variable { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Variable { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Variable { return mutate(translate: value.rawValue) } @@ -11397,10 +11766,19 @@ extension SampleOutput: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttri return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> SampleOutput { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> SampleOutput { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> SampleOutput { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> SampleOutput { return mutate(translate: value.rawValue) } @@ -11672,10 +12050,19 @@ extension KeyboardInput: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttr return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> KeyboardInput { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> KeyboardInput { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> KeyboardInput { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> KeyboardInput { return mutate(translate: value.rawValue) } @@ -11946,10 +12333,19 @@ extension Subscript: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Subscript { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Subscript { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Subscript { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Subscript { return mutate(translate: value.rawValue) } @@ -12221,10 +12617,19 @@ extension Superscript: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttrib return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Superscript { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Superscript { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Superscript { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Superscript { return mutate(translate: value.rawValue) } @@ -12496,10 +12901,19 @@ extension Italic: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Italic { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Italic { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Italic { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Italic { return mutate(translate: value.rawValue) } @@ -12778,10 +13192,19 @@ extension Bold: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Bold { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Bold { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Bold { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Bold { return mutate(translate: value.rawValue) } @@ -13060,10 +13483,19 @@ extension Underline: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Underline { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Underline { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Underline { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Underline { return mutate(translate: value.rawValue) } @@ -13342,10 +13774,19 @@ extension Mark: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Mark { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Mark { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Mark { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Mark { return mutate(translate: value.rawValue) } @@ -13617,10 +14058,19 @@ extension Bdi: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Bdi { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Bdi { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Bdi { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Bdi { return mutate(translate: value.rawValue) } @@ -13887,10 +14337,19 @@ extension Bdo: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Bdo { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Bdo { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Bdo { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Bdo { return mutate(translate: value.rawValue) } @@ -14162,10 +14621,19 @@ extension Span: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Span { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Span { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Span { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Span { return mutate(translate: value.rawValue) } @@ -14432,10 +14900,19 @@ extension LineBreak: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> LineBreak { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> LineBreak { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> LineBreak { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> LineBreak { return mutate(translate: value.rawValue) } @@ -14702,10 +15179,19 @@ extension WordBreak: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> WordBreak { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> WordBreak { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> WordBreak { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> WordBreak { return mutate(translate: value.rawValue) } @@ -14977,10 +15463,19 @@ extension InsertedText: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttri return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> InsertedText { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> InsertedText { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> InsertedText { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> InsertedText { return mutate(translate: value.rawValue) } @@ -15260,10 +15755,19 @@ extension DeletedText: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttrib return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> DeletedText { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> DeletedText { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> DeletedText { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> DeletedText { return mutate(translate: value.rawValue) } @@ -15543,10 +16047,19 @@ extension Picture: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Picture { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Picture { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Picture { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Picture { return mutate(translate: value.rawValue) } @@ -15741,10 +16254,19 @@ extension Image: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Image { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Image { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Image { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Image { return mutate(translate: value.rawValue) } @@ -15762,10 +16284,19 @@ extension Image: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return self } + @_disfavoredOverload public func alternate(_ value: String) -> Image { return mutate(alternate: value) } + public func alternate(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Image { + return mutate(alternate: LocalizedString(key: localizedKey, table: tableName)) + } + + public func alternate(verbatim value: String) -> Image { + return mutate(alternate: value) + } + public func source(_ value: String) -> Image { return mutate(source: value) } @@ -16064,10 +16595,19 @@ extension InlineFrame: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttrib return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> InlineFrame { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> InlineFrame { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> InlineFrame { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> InlineFrame { return mutate(translate: value.rawValue) } @@ -16374,10 +16914,19 @@ extension Embed: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Embed { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Embed { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Embed { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Embed { return mutate(translate: value.rawValue) } @@ -16669,10 +17218,19 @@ extension Object: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Object { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Object { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Object { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Object { return mutate(translate: value.rawValue) } @@ -16968,10 +17526,19 @@ extension Video: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Video { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Video { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Video { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Video { return mutate(translate: value.rawValue) } @@ -17302,10 +17869,19 @@ extension Audio: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Audio { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Audio { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Audio { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Audio { return mutate(translate: value.rawValue) } @@ -17619,10 +18195,19 @@ extension Map: GlobalAttributes, GlobalEventAttributes, NameAttribute { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Map { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Map { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Map { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Map { return mutate(translate: value.rawValue) } @@ -17822,10 +18407,19 @@ extension Form: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, A return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Form { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Form { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Form { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Form { return mutate(translate: value.rawValue) } @@ -18139,10 +18733,19 @@ extension DataList: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> DataList { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> DataList { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> DataList { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> DataList { return mutate(translate: value.rawValue) } @@ -18414,10 +19017,19 @@ extension Output: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Output { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Output { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Output { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Output { return mutate(translate: value.rawValue) } @@ -18701,10 +19313,19 @@ extension Progress: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Progress { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Progress { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Progress { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Progress { return mutate(translate: value.rawValue) } @@ -18726,10 +19347,19 @@ extension Progress: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(max: value) } + @_disfavoredOverload public func value(_ value: String) -> Progress { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Progress { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Progress { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> Progress { return mutate(popover: value.rawValue) } @@ -18984,10 +19614,19 @@ extension Meter: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Meter { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Meter { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Meter { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Meter { return mutate(translate: value.rawValue) } @@ -19025,10 +19664,19 @@ extension Meter: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(optimum: value) } + @_disfavoredOverload public func value(_ value: String) -> Meter { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Meter { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Meter { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> Meter { return mutate(popover: value.rawValue) } @@ -19283,10 +19931,19 @@ extension Details: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Details { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Details { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Details { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Details { return mutate(translate: value.rawValue) } @@ -19562,10 +20219,19 @@ extension Dialog: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Dialog { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Dialog { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Dialog { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Dialog { return mutate(translate: value.rawValue) } @@ -19841,10 +20507,19 @@ extension Script: GlobalAttributes, GlobalEventAttributes, AsynchronouslyAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Script { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Script { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Script { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Script { return mutate(translate: value.rawValue) } @@ -20068,10 +20743,19 @@ extension NoScript: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> NoScript { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> NoScript { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> NoScript { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> NoScript { return mutate(translate: value.rawValue) } @@ -20267,10 +20951,19 @@ extension Template: GlobalAttributes, GlobalEventAttributes, ShadowRootModeAttri return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Template { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Template { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Template { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Template { return mutate(translate: value.rawValue) } @@ -20470,10 +21163,19 @@ extension Canvas: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Canvas { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Canvas { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Canvas { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Canvas { return mutate(translate: value.rawValue) } @@ -20753,10 +21455,19 @@ extension Table: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Table { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Table { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Table { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Table { return mutate(translate: value.rawValue) } @@ -21144,10 +21855,19 @@ extension Slot: GlobalAttributes, NameAttribute { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Slot { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Slot { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Slot { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Slot { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/DefinitionElements.swift b/Sources/HTMLKit/Abstraction/Elements/DefinitionElements.swift index 9d68a1f5..8e28e6d6 100644 --- a/Sources/HTMLKit/Abstraction/Elements/DefinitionElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/DefinitionElements.swift @@ -177,9 +177,18 @@ extension TermName: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TermName { return mutate(title: value) } + + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TermName { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TermName { + return mutate(title: value) + } public func translate(_ value: Values.Decision) -> TermName { return mutate(translate: value.rawValue) @@ -452,10 +461,19 @@ extension TermDefinition: GlobalAttributes, GlobalEventAttributes, GlobalAriaAtt return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TermDefinition { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TermDefinition { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TermDefinition { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TermDefinition { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/FigureElements.swift b/Sources/HTMLKit/Abstraction/Elements/FigureElements.swift index 5dad61e4..c2014e4b 100644 --- a/Sources/HTMLKit/Abstraction/Elements/FigureElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/FigureElements.swift @@ -167,10 +167,19 @@ extension FigureCaption: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttr return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> FigureCaption { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> FigureCaption { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> FigureCaption { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> FigureCaption { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/FormElements.swift b/Sources/HTMLKit/Abstraction/Elements/FormElements.swift index 46e79e2a..aac548e2 100644 --- a/Sources/HTMLKit/Abstraction/Elements/FormElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/FormElements.swift @@ -152,10 +152,19 @@ extension Input: GlobalAttributes, GlobalEventAttributes, AcceptAttribute, Alter return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Input { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Input { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Input { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Input { return mutate(translate: value.rawValue) } @@ -177,10 +186,19 @@ extension Input: GlobalAttributes, GlobalEventAttributes, AcceptAttribute, Alter return mutate(accept: value) } + @_disfavoredOverload public func alternate(_ value: String) -> Input { return mutate(alternate: value) } + public func alternate(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Input { + return mutate(alternate: LocalizedString(key: localizedKey, table: tableName)) + } + + public func alternate(verbatim value: String) -> Input { + return mutate(alternate: value) + } + @available(*, deprecated, message: "The autocomplete attribute is actually a enum attribute. You should use autocomplete(_:) instead.") public func hasCompletion(_ value: Bool) -> Input { @@ -269,10 +287,19 @@ extension Input: GlobalAttributes, GlobalEventAttributes, AcceptAttribute, Alter return mutate(pattern: regex) } + @_disfavoredOverload public func placeholder(_ value: String) -> Input { return mutate(placeholder: value) } + public func placeholder(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Input { + return mutate(placeholder: LocalizedString(key: localizedKey, table: tableName)) + } + + public func placeholder(verbatim value: String) -> Input { + return mutate(placeholder: value) + } + public func readonly() -> Input { return mutate(readonly: "readonly") } @@ -319,10 +346,19 @@ extension Input: GlobalAttributes, GlobalEventAttributes, AcceptAttribute, Alter return mutate(type: value.rawValue) } + @_disfavoredOverload public func value(_ value: String) -> Input { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Input { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Input { + return mutate(value: value) + } + public func width(_ size: Int) -> Input { return mutate(width: size) } @@ -513,10 +549,19 @@ extension Label: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Label { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Label { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Label { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Label { return mutate(translate: value.rawValue) } @@ -799,10 +844,19 @@ extension Select: GlobalAttributes, GlobalEventAttributes, AutocompleteAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Select { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Select { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Select { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Select { return mutate(translate: value.rawValue) } @@ -1058,10 +1112,19 @@ extension TextArea: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TextArea { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TextArea { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TextArea { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TextArea { return mutate(translate: value.rawValue) } @@ -1130,10 +1193,19 @@ extension TextArea: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(name: value) } + @_disfavoredOverload public func placeholder(_ value: String) -> TextArea { return mutate(placeholder: value) } + public func placeholder(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TextArea { + return mutate(placeholder: LocalizedString(key: localizedKey, table: tableName)) + } + + public func placeholder(verbatim value: String) -> TextArea { + return mutate(placeholder: value) + } + public func readonly() -> TextArea { return mutate(readonly: "readonly") } @@ -1422,10 +1494,19 @@ extension Button: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Button { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Button { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Button { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Button { return mutate(translate: value.rawValue) } @@ -1472,10 +1553,19 @@ extension Button: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(type: value.rawValue) } + @_disfavoredOverload public func value(_ value: String) -> Button { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Button { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Button { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> Button { return mutate(popover: value.rawValue) } @@ -1745,10 +1835,19 @@ extension Fieldset: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Fieldset { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Fieldset { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Fieldset { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Fieldset { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/HeadElements.swift b/Sources/HTMLKit/Abstraction/Elements/HeadElements.swift index 23801c39..f9e5707a 100644 --- a/Sources/HTMLKit/Abstraction/Elements/HeadElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/HeadElements.swift @@ -157,10 +157,19 @@ extension Title: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Title { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Title { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Title { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Title { return mutate(translate: value.rawValue) } @@ -351,10 +360,19 @@ extension Base: GlobalAttributes, GlobalEventAttributes, ReferenceAttribute, Tar return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Base { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Base { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Base { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Base { return mutate(translate: value.rawValue) } @@ -553,10 +571,19 @@ extension Meta: GlobalAttributes, GlobalEventAttributes, ContentAttribute, NameA return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Meta { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Meta { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Meta { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Meta { return mutate(translate: value.rawValue) } @@ -574,10 +601,19 @@ extension Meta: GlobalAttributes, GlobalEventAttributes, ContentAttribute, NameA return self } + @_disfavoredOverload public func content(_ value: String) -> Meta { return mutate(content: value) } + public func content(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Meta { + return mutate(content: LocalizedString(key: localizedKey, table: tableName)) + } + + public func content(verbatim value: String) -> Meta { + return mutate(content: value) + } + public func name(_ value: Values.Name) -> Meta { return mutate(name: value.rawValue) } @@ -772,10 +808,19 @@ extension Style: GlobalAttributes, GlobalEventAttributes, TypeAttribute, MediaAt return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Style { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Style { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Style { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Style { return mutate(translate: value.rawValue) } @@ -978,10 +1023,19 @@ extension Link: GlobalAttributes, GlobalEventAttributes, ReferenceAttribute, Ref return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Link { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Link { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Link { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Link { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/HtmlElements.swift b/Sources/HTMLKit/Abstraction/Elements/HtmlElements.swift index 08ac4d30..52c1fe60 100644 --- a/Sources/HTMLKit/Abstraction/Elements/HtmlElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/HtmlElements.swift @@ -157,10 +157,19 @@ extension Head: GlobalAttributes, GlobalEventAttributes { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Head { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Head { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Head { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Head { return mutate(translate: value.rawValue) } @@ -356,10 +365,19 @@ extension Body: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, W return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Body { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Body { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Body { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Body { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/InputElements.swift b/Sources/HTMLKit/Abstraction/Elements/InputElements.swift index 0dc157dd..965f7a0e 100644 --- a/Sources/HTMLKit/Abstraction/Elements/InputElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/InputElements.swift @@ -167,10 +167,19 @@ extension OptionGroup: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttrib return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> OptionGroup { return mutate(title: value) } + public func title(verbatim value: String) -> OptionGroup { + return mutate(title: value) + } + + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> OptionGroup { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + public func translate(_ value: Values.Decision) -> OptionGroup { return mutate(translate: value.rawValue) } @@ -459,10 +468,19 @@ extension Option: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Option { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Option { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Option { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Option { return mutate(translate: value.rawValue) } @@ -497,10 +515,19 @@ extension Option: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, return mutate(label: value) } + @_disfavoredOverload public func value(_ value: String) -> Option { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Option { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Option { + return mutate(value: value) + } + public func selected() -> Option { return mutate(selected: "selected") } @@ -761,10 +788,19 @@ extension Legend: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Legend { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Legend { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Legend { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Legend { return mutate(translate: value.rawValue) } @@ -1036,10 +1072,19 @@ extension Summary: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Summary { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Summary { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Summary { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Summary { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/ListElements.swift b/Sources/HTMLKit/Abstraction/Elements/ListElements.swift index 9952af3f..01080234 100644 --- a/Sources/HTMLKit/Abstraction/Elements/ListElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/ListElements.swift @@ -167,10 +167,19 @@ extension ListItem: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> ListItem { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> ListItem { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> ListItem { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> ListItem { return mutate(translate: value.rawValue) } @@ -188,10 +197,19 @@ extension ListItem: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return self } + @_disfavoredOverload public func value(_ value: String) -> ListItem { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> ListItem { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> ListItem { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> ListItem { return mutate(popover: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/MapElements.swift b/Sources/HTMLKit/Abstraction/Elements/MapElements.swift index 8e460a0c..92702733 100644 --- a/Sources/HTMLKit/Abstraction/Elements/MapElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/MapElements.swift @@ -165,10 +165,19 @@ extension Area: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, A return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Area { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Area { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Area { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Area { return mutate(translate: value.rawValue) } @@ -186,10 +195,19 @@ extension Area: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes, A return self } + @_disfavoredOverload public func alternate(_ value: String) -> Area { return mutate(alternate: value) } + public func alternate(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Area { + return mutate(alternate: LocalizedString(key: localizedKey, table: tableName)) + } + + public func alternate(verbatim value: String) -> Area { + return mutate(alternate: value) + } + public func coordinates(_ value: String) -> Area { return mutate(coords: value) } diff --git a/Sources/HTMLKit/Abstraction/Elements/MediaElements.swift b/Sources/HTMLKit/Abstraction/Elements/MediaElements.swift index fc71b0fa..d2476638 100644 --- a/Sources/HTMLKit/Abstraction/Elements/MediaElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/MediaElements.swift @@ -152,10 +152,19 @@ extension Source: GlobalAttributes, GlobalEventAttributes, TypeAttribute, Source return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Source { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Source { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Source { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Source { return mutate(translate: value.rawValue) } @@ -378,10 +387,19 @@ extension Track: GlobalAttributes, GlobalEventAttributes, KindAttribute, SourceA return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Track { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Track { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Track { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Track { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/ObjectElements.swift b/Sources/HTMLKit/Abstraction/Elements/ObjectElements.swift index dc6ba702..69161000 100644 --- a/Sources/HTMLKit/Abstraction/Elements/ObjectElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/ObjectElements.swift @@ -162,10 +162,19 @@ extension Parameter: GlobalAttributes, GlobalEventAttributes, NameAttribute, Val return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Parameter { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Parameter { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Parameter { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Parameter { return mutate(translate: value.rawValue) } @@ -187,10 +196,19 @@ extension Parameter: GlobalAttributes, GlobalEventAttributes, NameAttribute, Val return mutate(name: value) } + @_disfavoredOverload public func value(_ value: String) -> Parameter { return mutate(value: value) } + public func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Parameter { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + public func value(verbatim value: String) -> Parameter { + return mutate(value: value) + } + public func popover(_ value: Values.Popover.State) -> Parameter { return mutate(popover: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/RubyElements.swift b/Sources/HTMLKit/Abstraction/Elements/RubyElements.swift index 4fdd69b0..1b7bd198 100644 --- a/Sources/HTMLKit/Abstraction/Elements/RubyElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/RubyElements.swift @@ -177,10 +177,19 @@ extension RubyText: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> RubyText { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> RubyText { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> RubyText { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> RubyText { return mutate(translate: value.rawValue) } @@ -452,10 +461,19 @@ extension RubyPronunciation: GlobalAttributes, GlobalEventAttributes, GlobalAria return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> RubyPronunciation { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> RubyPronunciation { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> RubyPronunciation { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> RubyPronunciation { return mutate(translate: value.rawValue) } diff --git a/Sources/HTMLKit/Abstraction/Elements/TableElements.swift b/Sources/HTMLKit/Abstraction/Elements/TableElements.swift index b50f90c6..95a9ad83 100644 --- a/Sources/HTMLKit/Abstraction/Elements/TableElements.swift +++ b/Sources/HTMLKit/Abstraction/Elements/TableElements.swift @@ -237,10 +237,19 @@ extension Caption: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttributes return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Caption { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Caption { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Caption { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Caption { return mutate(translate: value.rawValue) } @@ -512,10 +521,19 @@ extension ColumnGroup: GlobalAttributes, GlobalEventAttributes, SpanAttribute { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> ColumnGroup { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> ColumnGroup { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> ColumnGroup { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> ColumnGroup { return mutate(translate: value.rawValue) } @@ -723,10 +741,19 @@ extension Column: GlobalAttributes, GlobalEventAttributes, SpanAttribute { return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> Column { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Column { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> Column { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> Column { return mutate(translate: value.rawValue) } @@ -926,10 +953,19 @@ extension TableBody: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TableBody { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TableBody { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TableBody { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TableBody { return mutate(translate: value.rawValue) } @@ -1209,10 +1245,19 @@ extension TableHead: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TableHead { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TableHead { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TableHead { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TableHead { return mutate(translate: value.rawValue) } @@ -1492,10 +1537,19 @@ extension TableFoot: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribut return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TableFoot { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TableFoot { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TableFoot { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TableFoot { return mutate(translate: value.rawValue) } @@ -1767,10 +1821,19 @@ extension TableRow: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> TableRow { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> TableRow { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> TableRow { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> TableRow { return mutate(translate: value.rawValue) } @@ -2050,10 +2113,19 @@ extension DataCell: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribute return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> DataCell { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> DataCell { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> DataCell { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> DataCell { return mutate(translate: value.rawValue) } @@ -2337,10 +2409,19 @@ extension HeaderCell: GlobalAttributes, GlobalEventAttributes, GlobalAriaAttribu return mutate(tabindex: value) } + @_disfavoredOverload public func title(_ value: String) -> HeaderCell { return mutate(title: value) } + public func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> HeaderCell { + return mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + public func title(verbatim value: String) -> HeaderCell { + return mutate(title: value) + } + public func translate(_ value: Values.Decision) -> HeaderCell { return mutate(translate: value.rawValue) } diff --git a/Tests/HTMLKitTests/AttributesTests.swift b/Tests/HTMLKitTests/AttributesTests.swift index 1f594fed..2e15b11f 100644 --- a/Tests/HTMLKitTests/AttributesTests.swift +++ b/Tests/HTMLKitTests/AttributesTests.swift @@ -134,10 +134,19 @@ final class AttributesTests: XCTestCase { return self.mutate(tabindex: value) } + @_disfavoredOverload func title(_ value: String) -> Tag { return self.mutate(title: value) } + func title(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Tag { + return self.mutate(title: LocalizedString(key: localizedKey, table: tableName)) + } + + func title(verbatim value: String) -> Tag { + return self.mutate(title: value) + } + func translate(_ value: Values.Decision) -> Tag { return self.mutate(translate: value.rawValue) } @@ -150,10 +159,19 @@ final class AttributesTests: XCTestCase { return self.mutate(action: value) } + @_disfavoredOverload func alternate(_ value: String) -> Tag { return self.mutate(alternate: value) } + func alternate(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Tag { + return mutate(alternate: LocalizedString(key: localizedKey, table: tableName)) + } + + func alternate(verbatim value: String) -> Tag { + return self.mutate(alternate: value) + } + func asynchronously() -> Tag { return self.mutate(async: "async") } @@ -209,7 +227,15 @@ final class AttributesTests: XCTestCase { } func content(_ value: String) -> Tag { - return self.mutate(content: value) + return mutate(content: value) + } + + public func content(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Tag { + return mutate(content: LocalizedString(key: localizedKey, table: tableName)) + } + + public func content(verbatim value: String) -> Tag { + return mutate(content: value) } func controls() -> Tag { @@ -382,10 +408,19 @@ final class AttributesTests: XCTestCase { return self.mutate(ping: value) } + @_disfavoredOverload func placeholder(_ value: String) -> Tag { return self.mutate(placeholder: value) } + func placeholder(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Tag { + return self.mutate(placeholder: LocalizedString(key: localizedKey, table: tableName)) + } + + func placeholder(verbatim value: String) -> Tag { + return self.mutate(placeholder: value) + } + func playInline(_ condition: Bool = true) -> Tag { if condition { @@ -513,8 +548,17 @@ final class AttributesTests: XCTestCase { return self.mutate(type: value) } + @_disfavoredOverload func value(_ value: String) -> Tag { - return self.mutate(value: value) + return mutate(value: value) + } + + func value(_ localizedKey: LocalizedStringKey, tableName: String? = nil) -> Tag { + return mutate(value: LocalizedString(key: localizedKey, table: tableName)) + } + + func value(verbatim value: String) -> Tag { + return mutate(value: value) } func width(_ size: Int) -> Tag { @@ -2124,6 +2168,19 @@ final class AttributesTests: XCTestCase { ) } + func testValueAttribute() throws { + + let view = TestView { + Tag {}.value("value") + } + + XCTAssertEqual(try renderer.render(view: view), + """ + + """ + ) + } + func testBlockingAttribute() throws { let view = TestView { diff --git a/Tests/HTMLKitTests/LocalizationTests.swift b/Tests/HTMLKitTests/LocalizationTests.swift index c7b5eb91..1c2bc69e 100644 --- a/Tests/HTMLKitTests/LocalizationTests.swift +++ b/Tests/HTMLKitTests/LocalizationTests.swift @@ -30,6 +30,43 @@ final class LocalizationTests: XCTestCase { ) } + /// Tests the localization of a attribute + /// + /// The test expects the key to exist in the default translation table and to be rendered correctly. + func testLocalizationAttribute() throws { + + struct TestView: View { + + let placeholder = "hello.world" + + var body: Content { + Input() + .placeholder("hello.world", tableName: nil) + .alternate(LocalizedStringKey("hello.world")) + .value(LocalizedStringKey("hello.world"), tableName: "web") + .title("hello.world", tableName: "mobile") + Meta() + .content("hello.world") + Input() + .placeholder(verbatim: "hello.world") + .alternate(verbatim: "hello.world") + .value(verbatim: placeholder) + .title(verbatim: "hello.world") + TextArea {} + .placeholder(placeholder) + } + } + + XCTAssertEqual(try renderer!.render(view: TestView()), + """ + \ + \ + \ + + """ + ) + } + /// Tests the localization of string interpolation /// /// The test expects the key to exist in the default translation table and to be correctly formatted