ory_client/models/
ui_node_input_attributes.rs

1/*
2 * Ory APIs
3 *
4 * # Introduction Documentation for all public and administrative Ory APIs. Administrative APIs can only be accessed with a valid Personal Access Token. Public APIs are mostly used in browsers.  ## SDKs This document describes the APIs available in the Ory Network. The APIs are available as SDKs for the following languages:  | Language       | Download SDK                                                     | Documentation                                                                        | | -------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------ | | Dart           | [pub.dev](https://pub.dev/packages/ory_client)                   | [README](https://github.com/ory/sdk/blob/master/clients/client/dart/README.md)       | | .NET           | [nuget.org](https://www.nuget.org/packages/Ory.Client/)          | [README](https://github.com/ory/sdk/blob/master/clients/client/dotnet/README.md)     | | Elixir         | [hex.pm](https://hex.pm/packages/ory_client)                     | [README](https://github.com/ory/sdk/blob/master/clients/client/elixir/README.md)     | | Go             | [github.com](https://github.com/ory/client-go)                   | [README](https://github.com/ory/sdk/blob/master/clients/client/go/README.md)         | | Java           | [maven.org](https://search.maven.org/artifact/sh.ory/ory-client) | [README](https://github.com/ory/sdk/blob/master/clients/client/java/README.md)       | | JavaScript     | [npmjs.com](https://www.npmjs.com/package/@ory/client)           | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript/README.md) | | JavaScript (With fetch) | [npmjs.com](https://www.npmjs.com/package/@ory/client-fetch)           | [README](https://github.com/ory/sdk/blob/master/clients/client/typescript-fetch/README.md) |  | PHP            | [packagist.org](https://packagist.org/packages/ory/client)       | [README](https://github.com/ory/sdk/blob/master/clients/client/php/README.md)        | | Python         | [pypi.org](https://pypi.org/project/ory-client/)                 | [README](https://github.com/ory/sdk/blob/master/clients/client/python/README.md)     | | Ruby           | [rubygems.org](https://rubygems.org/gems/ory-client)             | [README](https://github.com/ory/sdk/blob/master/clients/client/ruby/README.md)       | | Rust           | [crates.io](https://crates.io/crates/ory-client)                 | [README](https://github.com/ory/sdk/blob/master/clients/client/rust/README.md)       | 
5 *
6 * The version of the OpenAPI document: v1.22.7
7 * Contact: support@ory.sh
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// UiNodeInputAttributes : InputAttributes represents the attributes of an input node
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct UiNodeInputAttributes {
17    /// The autocomplete attribute for the input. email InputAttributeAutocompleteEmail tel InputAttributeAutocompleteTel url InputAttributeAutocompleteUrl current-password InputAttributeAutocompleteCurrentPassword new-password InputAttributeAutocompleteNewPassword one-time-code InputAttributeAutocompleteOneTimeCode username webauthn InputAttributeAutocompleteUsernameWebauthn
18    #[serde(rename = "autocomplete", skip_serializing_if = "Option::is_none")]
19    pub autocomplete: Option<AutocompleteEnum>,
20    /// Sets the input's disabled field to true or false.
21    #[serde(rename = "disabled")]
22    pub disabled: bool,
23    #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
24    pub label: Option<Box<models::UiText>>,
25    /// MaxLength may contain the input's maximum length.
26    #[serde(rename = "maxlength", skip_serializing_if = "Option::is_none")]
27    pub maxlength: Option<i64>,
28    /// The input's element name.
29    #[serde(rename = "name")]
30    pub name: String,
31    /// NodeType represents this node's types. It is a mirror of `node.type` and is primarily used to allow compatibility with OpenAPI 3.0.  In this struct it technically always is \"input\". text Text input Input img Image a Anchor script Script div Division
32    #[serde(rename = "node_type")]
33    pub node_type: NodeTypeEnum,
34    /// OnClick may contain javascript which should be executed on click. This is primarily used for WebAuthn.  Deprecated: Using OnClick requires the use of eval() which is a security risk. Use OnClickTrigger instead.
35    #[serde(rename = "onclick", skip_serializing_if = "Option::is_none")]
36    pub onclick: Option<String>,
37    /// OnClickTrigger may contain a WebAuthn trigger which should be executed on click.  The trigger maps to a JavaScript function provided by Ory, which triggers actions such as PassKey registration or login. oryWebAuthnRegistration WebAuthnTriggersWebAuthnRegistration oryWebAuthnLogin WebAuthnTriggersWebAuthnLogin oryPasskeyLogin WebAuthnTriggersPasskeyLogin oryPasskeyLoginAutocompleteInit WebAuthnTriggersPasskeyLoginAutocompleteInit oryPasskeyRegistration WebAuthnTriggersPasskeyRegistration oryPasskeySettingsRegistration WebAuthnTriggersPasskeySettingsRegistration
38    #[serde(rename = "onclickTrigger", skip_serializing_if = "Option::is_none")]
39    pub onclick_trigger: Option<OnclickTriggerEnum>,
40    /// OnLoad may contain javascript which should be executed on load. This is primarily used for WebAuthn.  Deprecated: Using OnLoad requires the use of eval() which is a security risk. Use OnLoadTrigger instead.
41    #[serde(rename = "onload", skip_serializing_if = "Option::is_none")]
42    pub onload: Option<String>,
43    /// OnLoadTrigger may contain a WebAuthn trigger which should be executed on load.  The trigger maps to a JavaScript function provided by Ory, which triggers actions such as PassKey registration or login. oryWebAuthnRegistration WebAuthnTriggersWebAuthnRegistration oryWebAuthnLogin WebAuthnTriggersWebAuthnLogin oryPasskeyLogin WebAuthnTriggersPasskeyLogin oryPasskeyLoginAutocompleteInit WebAuthnTriggersPasskeyLoginAutocompleteInit oryPasskeyRegistration WebAuthnTriggersPasskeyRegistration oryPasskeySettingsRegistration WebAuthnTriggersPasskeySettingsRegistration
44    #[serde(rename = "onloadTrigger", skip_serializing_if = "Option::is_none")]
45    pub onload_trigger: Option<OnloadTriggerEnum>,
46    /// The input's pattern.
47    #[serde(rename = "pattern", skip_serializing_if = "Option::is_none")]
48    pub pattern: Option<String>,
49    /// Mark this input field as required.
50    #[serde(rename = "required", skip_serializing_if = "Option::is_none")]
51    pub required: Option<bool>,
52    /// The input's element type. text InputAttributeTypeText password InputAttributeTypePassword number InputAttributeTypeNumber checkbox InputAttributeTypeCheckbox hidden InputAttributeTypeHidden email InputAttributeTypeEmail tel InputAttributeTypeTel submit InputAttributeTypeSubmit button InputAttributeTypeButton datetime-local InputAttributeTypeDateTimeLocal date InputAttributeTypeDate url InputAttributeTypeURI
53    #[serde(rename = "type")]
54    pub r#type: TypeEnum,
55    /// The input's value.
56    #[serde(rename = "value", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
57    pub value: Option<Option<serde_json::Value>>,
58}
59
60impl UiNodeInputAttributes {
61    /// InputAttributes represents the attributes of an input node
62    pub fn new(disabled: bool, name: String, node_type: NodeTypeEnum, r#type: TypeEnum) -> UiNodeInputAttributes {
63        UiNodeInputAttributes {
64            autocomplete: None,
65            disabled,
66            label: None,
67            maxlength: None,
68            name,
69            node_type,
70            onclick: None,
71            onclick_trigger: None,
72            onload: None,
73            onload_trigger: None,
74            pattern: None,
75            required: None,
76            r#type,
77            value: None,
78        }
79    }
80}
81/// The autocomplete attribute for the input. email InputAttributeAutocompleteEmail tel InputAttributeAutocompleteTel url InputAttributeAutocompleteUrl current-password InputAttributeAutocompleteCurrentPassword new-password InputAttributeAutocompleteNewPassword one-time-code InputAttributeAutocompleteOneTimeCode username webauthn InputAttributeAutocompleteUsernameWebauthn
82#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
83pub enum AutocompleteEnum {
84    #[serde(rename = "email")]
85    Email,
86    #[serde(rename = "tel")]
87    Tel,
88    #[serde(rename = "url")]
89    Url,
90    #[serde(rename = "current-password")]
91    CurrentPassword,
92    #[serde(rename = "new-password")]
93    NewPassword,
94    #[serde(rename = "one-time-code")]
95    OneTimeCode,
96    #[serde(rename = "username webauthn")]
97    UsernameWebauthn,
98}
99
100impl Default for AutocompleteEnum {
101    fn default() -> AutocompleteEnum {
102        Self::Email
103    }
104}
105/// NodeType represents this node's types. It is a mirror of `node.type` and is primarily used to allow compatibility with OpenAPI 3.0.  In this struct it technically always is \"input\". text Text input Input img Image a Anchor script Script div Division
106#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
107pub enum NodeTypeEnum {
108    #[serde(rename = "input")]
109    Input,
110}
111
112impl Default for NodeTypeEnum {
113    fn default() -> NodeTypeEnum {
114        Self::Input
115    }
116}
117/// OnClickTrigger may contain a WebAuthn trigger which should be executed on click.  The trigger maps to a JavaScript function provided by Ory, which triggers actions such as PassKey registration or login. oryWebAuthnRegistration WebAuthnTriggersWebAuthnRegistration oryWebAuthnLogin WebAuthnTriggersWebAuthnLogin oryPasskeyLogin WebAuthnTriggersPasskeyLogin oryPasskeyLoginAutocompleteInit WebAuthnTriggersPasskeyLoginAutocompleteInit oryPasskeyRegistration WebAuthnTriggersPasskeyRegistration oryPasskeySettingsRegistration WebAuthnTriggersPasskeySettingsRegistration
118#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
119pub enum OnclickTriggerEnum {
120    #[serde(rename = "oryWebAuthnRegistration")]
121    OryWebAuthnRegistration,
122    #[serde(rename = "oryWebAuthnLogin")]
123    OryWebAuthnLogin,
124    #[serde(rename = "oryPasskeyLogin")]
125    OryPasskeyLogin,
126    #[serde(rename = "oryPasskeyLoginAutocompleteInit")]
127    OryPasskeyLoginAutocompleteInit,
128    #[serde(rename = "oryPasskeyRegistration")]
129    OryPasskeyRegistration,
130    #[serde(rename = "oryPasskeySettingsRegistration")]
131    OryPasskeySettingsRegistration,
132}
133
134impl Default for OnclickTriggerEnum {
135    fn default() -> OnclickTriggerEnum {
136        Self::OryWebAuthnRegistration
137    }
138}
139/// OnLoadTrigger may contain a WebAuthn trigger which should be executed on load.  The trigger maps to a JavaScript function provided by Ory, which triggers actions such as PassKey registration or login. oryWebAuthnRegistration WebAuthnTriggersWebAuthnRegistration oryWebAuthnLogin WebAuthnTriggersWebAuthnLogin oryPasskeyLogin WebAuthnTriggersPasskeyLogin oryPasskeyLoginAutocompleteInit WebAuthnTriggersPasskeyLoginAutocompleteInit oryPasskeyRegistration WebAuthnTriggersPasskeyRegistration oryPasskeySettingsRegistration WebAuthnTriggersPasskeySettingsRegistration
140#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
141pub enum OnloadTriggerEnum {
142    #[serde(rename = "oryWebAuthnRegistration")]
143    OryWebAuthnRegistration,
144    #[serde(rename = "oryWebAuthnLogin")]
145    OryWebAuthnLogin,
146    #[serde(rename = "oryPasskeyLogin")]
147    OryPasskeyLogin,
148    #[serde(rename = "oryPasskeyLoginAutocompleteInit")]
149    OryPasskeyLoginAutocompleteInit,
150    #[serde(rename = "oryPasskeyRegistration")]
151    OryPasskeyRegistration,
152    #[serde(rename = "oryPasskeySettingsRegistration")]
153    OryPasskeySettingsRegistration,
154}
155
156impl Default for OnloadTriggerEnum {
157    fn default() -> OnloadTriggerEnum {
158        Self::OryWebAuthnRegistration
159    }
160}
161/// The input's element type. text InputAttributeTypeText password InputAttributeTypePassword number InputAttributeTypeNumber checkbox InputAttributeTypeCheckbox hidden InputAttributeTypeHidden email InputAttributeTypeEmail tel InputAttributeTypeTel submit InputAttributeTypeSubmit button InputAttributeTypeButton datetime-local InputAttributeTypeDateTimeLocal date InputAttributeTypeDate url InputAttributeTypeURI
162#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
163pub enum TypeEnum {
164    #[serde(rename = "text")]
165    Text,
166    #[serde(rename = "password")]
167    Password,
168    #[serde(rename = "number")]
169    Number,
170    #[serde(rename = "checkbox")]
171    Checkbox,
172    #[serde(rename = "hidden")]
173    Hidden,
174    #[serde(rename = "email")]
175    Email,
176    #[serde(rename = "tel")]
177    Tel,
178    #[serde(rename = "submit")]
179    Submit,
180    #[serde(rename = "button")]
181    Button,
182    #[serde(rename = "datetime-local")]
183    DatetimeLocal,
184    #[serde(rename = "date")]
185    Date,
186    #[serde(rename = "url")]
187    Url,
188}
189
190impl Default for TypeEnum {
191    fn default() -> TypeEnum {
192        Self::Text
193    }
194}
195