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.8
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