@plutonhq/core-frontend 0.1.18 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,16 +9,16 @@ import x from "../../common/form/NumberInput/NumberInput.js";
9
9
  import f from "../../common/form/Select/Select.js";
10
10
  import { shouldDisplayStorageField as w } from "../../../utils/helpers.js";
11
11
  import I from "../../common/form/PasswordField/PasswordField.js";
12
- const L = ({ fields: m, onUpdate: o, settings: l, errors: v = {} }) => {
12
+ const L = ({ fields: i, onUpdate: o, settings: l, errors: v = {} }) => {
13
13
  const [c, p] = T({});
14
14
  return N(() => {
15
15
  const e = {};
16
- m.forEach((r) => {
16
+ i.forEach((r) => {
17
17
  r.allowCustom && r.fieldType === "select" && (e[r.value] = l[r.value] === "custom" || c[r.value] || !1);
18
18
  }), p(e);
19
- }, [m]), /* @__PURE__ */ s(b, { children: [
20
- m.map((e) => {
21
- if (!w(e, l, m))
19
+ }, [i]), /* @__PURE__ */ s(b, { children: [
20
+ i.map((e) => {
21
+ if (!w(e, l, i))
22
22
  return null;
23
23
  const r = e.description + `
24
24
  ` + (e.default ? `Default: ${e.default}` : ""), n = e.label + (e.required ? "*" : "");
@@ -34,7 +34,7 @@ const L = ({ fields: m, onUpdate: o, settings: l, errors: v = {} }) => {
34
34
  error: v[e.value] || ""
35
35
  }
36
36
  ) }, e.value);
37
- if (e.authFieldType && ["input", "string"].includes(e.fieldType))
37
+ if (e.fieldType === "password")
38
38
  return /* @__PURE__ */ u("div", { className: t.field, children: /* @__PURE__ */ u(
39
39
  I,
40
40
  {
@@ -98,7 +98,7 @@ const L = ({ fields: m, onUpdate: o, settings: l, errors: v = {} }) => {
98
98
  }
99
99
  ) }, e.value);
100
100
  if (e.fieldType === "select" && e.options) {
101
- const a = e.options.find((i) => i.value === "custom");
101
+ const a = e.options.find((m) => m.value === "custom");
102
102
  return /* @__PURE__ */ u(b, { children: /* @__PURE__ */ s("div", { className: t.field, children: [
103
103
  /* @__PURE__ */ u(
104
104
  f,
@@ -107,11 +107,11 @@ const L = ({ fields: m, onUpdate: o, settings: l, errors: v = {} }) => {
107
107
  options: e.options,
108
108
  fieldValue: c[e.value] && (a != null && a.value) ? a == null ? void 0 : a.value : l[e.value] || "",
109
109
  hint: r,
110
- onUpdate: (i) => {
110
+ onUpdate: (m) => {
111
111
  e.allowCustom && p((y) => ({
112
112
  ...y,
113
- [e.value]: i === "custom"
114
- })), o({ ...l, [e.value]: i });
113
+ [e.value]: m === "custom"
114
+ })), o({ ...l, [e.value]: m });
115
115
  },
116
116
  error: v[e.value] || "",
117
117
  inline: !0
@@ -123,7 +123,7 @@ const L = ({ fields: m, onUpdate: o, settings: l, errors: v = {} }) => {
123
123
  label: (a == null ? void 0 : a.label) || "Insert Custom",
124
124
  inline: !0,
125
125
  fieldValue: l[e.value] || "",
126
- onUpdate: (i) => o({ ...l, [e.value]: i }),
126
+ onUpdate: (m) => o({ ...l, [e.value]: m }),
127
127
  error: v[e.value] || ""
128
128
  }
129
129
  ) }, e.value)
@@ -1 +1 @@
1
- {"version":3,"file":"StorageSettings.js","sources":["../../../../src/components/Storage/StorageSettings/StorageSettings.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\r\nimport Input from '../../common/form/Input/Input';\r\nimport Tristate from '../../common/form/Tristate/Tristate';\r\nimport SizePicker from '../../common/form/SizePicker/SizePicker';\r\nimport Toggle from '../../common/form/Toggle/Toggle';\r\nimport { storageOptionField } from '../../../@types/storages';\r\nimport classes from './StorageSettings.module.scss';\r\nimport NumberInput from '../../common/form/NumberInput/NumberInput';\r\nimport Select from '../../common/form/Select/Select';\r\nimport { shouldDisplayStorageField } from '../../../utils/helpers';\r\nimport PasswordField from '../../common/form/PasswordField/PasswordField';\r\n\r\ntype StorageSettingsProps = {\r\n fields: storageOptionField[];\r\n settings: Record<string, string | number | boolean>;\r\n errors?: Record<string, string>;\r\n onUpdate: (newSettings: StorageSettingsProps['settings']) => void;\r\n};\r\n\r\nconst StorageSettings = ({ fields, onUpdate, settings, errors = {} }: StorageSettingsProps) => {\r\n const [customFieldsActive, setCustomFieldsActive] = useState<Record<string, boolean>>({});\r\n\r\n // Initialize the custom fields state when settings change\r\n useEffect(() => {\r\n const initialCustomFields: Record<string, boolean> = {};\r\n\r\n fields.forEach((field) => {\r\n if (field.allowCustom && field.fieldType === 'select') {\r\n // Check if this field previously had custom selected\r\n initialCustomFields[field.value] = settings[field.value] === 'custom' || customFieldsActive[field.value] || false;\r\n }\r\n });\r\n\r\n setCustomFieldsActive(initialCustomFields);\r\n }, [fields]);\r\n return (\r\n <>\r\n {fields.map((field) => {\r\n // Skip rendering if conditions aren't met\r\n if (!shouldDisplayStorageField(field, settings, fields)) {\r\n return null;\r\n }\r\n const hint = field.description + '\\n' + (field.default ? `Default: ${field.default}` : '');\r\n const fieldLabel = field.label + (field.required ? '*' : '');\r\n if (field.fieldType === 'bool') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Toggle\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as boolean) || false}\r\n onUpdate={(newVal: boolean) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.authFieldType && ['input', 'string'].includes(field.fieldType)) {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <PasswordField\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (['input', 'string', 'time', 'duration', 'encoding', 'bits', 'spaceseplist', 'commaseplist'].includes(field.fieldType)) {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Input\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n\r\n if (field.fieldType === 'int') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <NumberInput\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as number) || ''}\r\n hint={hint}\r\n onUpdate={(newVal) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'tristate') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Tristate\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n options={[\r\n { label: 'On', value: 'true' },\r\n { label: 'Off', value: 'false' },\r\n { label: 'Unset', value: 'unset' },\r\n ]}\r\n hint={hint}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'sizesuffix') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <SizePicker\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n hint={hint}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'select' && field.options) {\r\n const customField = field.options.find((o) => o.value === 'custom');\r\n return (\r\n <>\r\n <div key={field.value} className={classes.field}>\r\n <Select\r\n label={fieldLabel}\r\n options={field.options}\r\n fieldValue={\r\n customFieldsActive[field.value] && customField?.value ? customField?.value : (settings[field.value] as string) || ''\r\n }\r\n hint={hint}\r\n onUpdate={(newVal: string) => {\r\n if (field.allowCustom) {\r\n setCustomFieldsActive((prev) => ({\r\n ...prev,\r\n [field.value]: newVal === 'custom',\r\n }));\r\n }\r\n onUpdate({ ...settings, [field.value]: newVal });\r\n }}\r\n error={errors[field.value] || ''}\r\n inline={true}\r\n />\r\n {field.allowCustom && customFieldsActive[field.value] && (\r\n <div key={field.value} className={classes.field} style={{ margin: '20px 0' }}>\r\n <Input\r\n label={customField?.label || 'Insert Custom'}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n );\r\n }\r\n return null;\r\n })}{' '}\r\n </>\r\n );\r\n};\r\nexport default StorageSettings;\r\n"],"names":["StorageSettings","fields","onUpdate","settings","errors","customFieldsActive","setCustomFieldsActive","useState","useEffect","initialCustomFields","field","jsxs","Fragment","shouldDisplayStorageField","hint","fieldLabel","jsx","classes","Toggle","newVal","PasswordField","Input","NumberInput","Tristate","SizePicker","customField","o","Select","prev"],"mappings":"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"}
1
+ {"version":3,"file":"StorageSettings.js","sources":["../../../../src/components/Storage/StorageSettings/StorageSettings.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\r\nimport Input from '../../common/form/Input/Input';\r\nimport Tristate from '../../common/form/Tristate/Tristate';\r\nimport SizePicker from '../../common/form/SizePicker/SizePicker';\r\nimport Toggle from '../../common/form/Toggle/Toggle';\r\nimport { storageOptionField } from '../../../@types/storages';\r\nimport classes from './StorageSettings.module.scss';\r\nimport NumberInput from '../../common/form/NumberInput/NumberInput';\r\nimport Select from '../../common/form/Select/Select';\r\nimport { shouldDisplayStorageField } from '../../../utils/helpers';\r\nimport PasswordField from '../../common/form/PasswordField/PasswordField';\r\n\r\ntype StorageSettingsProps = {\r\n fields: storageOptionField[];\r\n settings: Record<string, string | number | boolean>;\r\n errors?: Record<string, string>;\r\n onUpdate: (newSettings: StorageSettingsProps['settings']) => void;\r\n};\r\n\r\nconst StorageSettings = ({ fields, onUpdate, settings, errors = {} }: StorageSettingsProps) => {\r\n const [customFieldsActive, setCustomFieldsActive] = useState<Record<string, boolean>>({});\r\n\r\n // Initialize the custom fields state when settings change\r\n useEffect(() => {\r\n const initialCustomFields: Record<string, boolean> = {};\r\n\r\n fields.forEach((field) => {\r\n if (field.allowCustom && field.fieldType === 'select') {\r\n // Check if this field previously had custom selected\r\n initialCustomFields[field.value] = settings[field.value] === 'custom' || customFieldsActive[field.value] || false;\r\n }\r\n });\r\n\r\n setCustomFieldsActive(initialCustomFields);\r\n }, [fields]);\r\n return (\r\n <>\r\n {fields.map((field) => {\r\n // Skip rendering if conditions aren't met\r\n if (!shouldDisplayStorageField(field, settings, fields)) {\r\n return null;\r\n }\r\n const hint = field.description + '\\n' + (field.default ? `Default: ${field.default}` : '');\r\n const fieldLabel = field.label + (field.required ? '*' : '');\r\n if (field.fieldType === 'bool') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Toggle\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as boolean) || false}\r\n onUpdate={(newVal: boolean) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'password') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <PasswordField\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (['input', 'string', 'time', 'duration', 'encoding', 'bits', 'spaceseplist', 'commaseplist'].includes(field.fieldType)) {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Input\r\n label={fieldLabel}\r\n inline={true}\r\n hint={hint}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n\r\n if (field.fieldType === 'int') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <NumberInput\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as number) || ''}\r\n hint={hint}\r\n onUpdate={(newVal) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'tristate') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <Tristate\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n options={[\r\n { label: 'On', value: 'true' },\r\n { label: 'Off', value: 'false' },\r\n { label: 'Unset', value: 'unset' },\r\n ]}\r\n hint={hint}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'sizesuffix') {\r\n return (\r\n <div key={field.value} className={classes.field}>\r\n <SizePicker\r\n label={fieldLabel}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n hint={hint}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n />\r\n </div>\r\n );\r\n }\r\n if (field.fieldType === 'select' && field.options) {\r\n const customField = field.options.find((o) => o.value === 'custom');\r\n return (\r\n <>\r\n <div key={field.value} className={classes.field}>\r\n <Select\r\n label={fieldLabel}\r\n options={field.options}\r\n fieldValue={\r\n customFieldsActive[field.value] && customField?.value ? customField?.value : (settings[field.value] as string) || ''\r\n }\r\n hint={hint}\r\n onUpdate={(newVal: string) => {\r\n if (field.allowCustom) {\r\n setCustomFieldsActive((prev) => ({\r\n ...prev,\r\n [field.value]: newVal === 'custom',\r\n }));\r\n }\r\n onUpdate({ ...settings, [field.value]: newVal });\r\n }}\r\n error={errors[field.value] || ''}\r\n inline={true}\r\n />\r\n {field.allowCustom && customFieldsActive[field.value] && (\r\n <div key={field.value} className={classes.field} style={{ margin: '20px 0' }}>\r\n <Input\r\n label={customField?.label || 'Insert Custom'}\r\n inline={true}\r\n fieldValue={(settings[field.value] as string) || ''}\r\n onUpdate={(newVal: string) => onUpdate({ ...settings, [field.value]: newVal })}\r\n error={errors[field.value] || ''}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n );\r\n }\r\n return null;\r\n })}{' '}\r\n </>\r\n );\r\n};\r\nexport default StorageSettings;\r\n"],"names":["StorageSettings","fields","onUpdate","settings","errors","customFieldsActive","setCustomFieldsActive","useState","useEffect","initialCustomFields","field","jsxs","Fragment","shouldDisplayStorageField","hint","fieldLabel","jsx","classes","Toggle","newVal","PasswordField","Input","NumberInput","Tristate","SizePicker","customField","o","Select","prev"],"mappings":";;;;;;;;;;;AAmBA,MAAMA,IAAkB,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,UAAAC,GAAU,QAAAC,IAAS,CAAA,QAA+B;AAC5F,QAAM,CAACC,GAAoBC,CAAqB,IAAIC,EAAkC,CAAA,CAAE;AAGxF,SAAAC,EAAU,MAAM;AACb,UAAMC,IAA+C,CAAA;AAErD,IAAAR,EAAO,QAAQ,CAACS,MAAU;AACvB,MAAIA,EAAM,eAAeA,EAAM,cAAc,aAE1CD,EAAoBC,EAAM,KAAK,IAAIP,EAASO,EAAM,KAAK,MAAM,YAAYL,EAAmBK,EAAM,KAAK,KAAK;AAAA,IAElH,CAAC,GAEDJ,EAAsBG,CAAmB;AAAA,EAC5C,GAAG,CAACR,CAAM,CAAC,GAER,gBAAAU,EAAAC,GAAA,EACI,UAAA;AAAA,IAAAX,EAAO,IAAI,CAACS,MAAU;AAEpB,UAAI,CAACG,EAA0BH,GAAOP,GAAUF,CAAM;AACnD,eAAO;AAEV,YAAMa,IAAOJ,EAAM,cAAc;AAAA,KAAQA,EAAM,UAAU,YAAYA,EAAM,OAAO,KAAK,KACjFK,IAAaL,EAAM,SAASA,EAAM,WAAW,MAAM;AACzD,UAAIA,EAAM,cAAc;AACrB,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACE;AAAA,UAAA;AAAA,YACE,OAAOH;AAAA,YACP,QAAQ;AAAA,YACR,MAAAD;AAAA,YACA,YAAaX,EAASO,EAAM,KAAK,KAAiB;AAAA,YAClD,UAAU,CAACS,MAAoBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,YAC9E,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,UAAA;AAAA,QAAA,EACjC,GAROA,EAAM,KAShB;AAGN,UAAIA,EAAM,cAAc;AACrB,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACI;AAAA,UAAA;AAAA,YACE,OAAOL;AAAA,YACP,QAAQ;AAAA,YACR,MAAAD;AAAA,YACA,YAAaX,EAASO,EAAM,KAAK,KAAgB;AAAA,YACjD,UAAU,CAACS,MAAmBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,YAC7E,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,UAAA;AAAA,QAAA,EACjC,GAROA,EAAM,KAShB;AAGN,UAAI,CAAC,SAAS,UAAU,QAAQ,YAAY,YAAY,QAAQ,gBAAgB,cAAc,EAAE,SAASA,EAAM,SAAS;AACrH,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,OAAON;AAAA,YACP,QAAQ;AAAA,YACR,MAAAD;AAAA,YACA,YAAaX,EAASO,EAAM,KAAK,KAAgB;AAAA,YACjD,UAAU,CAACS,MAAmBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,YAC7E,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,UAAA;AAAA,QAAA,EACjC,GAROA,EAAM,KAShB;AAIN,UAAIA,EAAM,cAAc;AACrB,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACM;AAAA,UAAA;AAAA,YACE,OAAOP;AAAA,YACP,QAAQ;AAAA,YACR,YAAaZ,EAASO,EAAM,KAAK,KAAgB;AAAA,YACjD,MAAAI;AAAA,YACA,UAAU,CAACK,MAAWjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,YACrE,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,UAAA;AAAA,QAAA,EACjC,GAROA,EAAM,KAShB;AAGN,UAAIA,EAAM,cAAc;AACrB,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACO;AAAA,UAAA;AAAA,YACE,OAAOR;AAAA,YACP,QAAQ;AAAA,YACR,YAAaZ,EAASO,EAAM,KAAK,KAAgB;AAAA,YACjD,SAAS;AAAA,cACN,EAAE,OAAO,MAAM,OAAO,OAAA;AAAA,cACtB,EAAE,OAAO,OAAO,OAAO,QAAA;AAAA,cACvB,EAAE,OAAO,SAAS,OAAO,QAAA;AAAA,YAAQ;AAAA,YAEpC,MAAAI;AAAA,YACA,UAAU,CAACK,MAAmBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,EAAA,CAAQ;AAAA,UAAA;AAAA,QAAA,EAChF,GAZOT,EAAM,KAahB;AAGN,UAAIA,EAAM,cAAc;AACrB,eACG,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OACvC,UAAA,gBAAAD;AAAA,UAACQ;AAAA,UAAA;AAAA,YACE,OAAOT;AAAA,YACP,QAAQ;AAAA,YACR,YAAaZ,EAASO,EAAM,KAAK,KAAgB;AAAA,YACjD,MAAAI;AAAA,YACA,UAAU,CAACK,MAAmBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,EAAA,CAAQ;AAAA,UAAA;AAAA,QAAA,EAChF,GAPOT,EAAM,KAQhB;AAGN,UAAIA,EAAM,cAAc,YAAYA,EAAM,SAAS;AAChD,cAAMe,IAAcf,EAAM,QAAQ,KAAK,CAACgB,MAAMA,EAAE,UAAU,QAAQ;AAClE,eACG,gBAAAV,EAAAJ,GAAA,EACG,UAAA,gBAAAD,EAAC,OAAA,EAAsB,WAAWM,EAAQ,OACvC,UAAA;AAAA,UAAA,gBAAAD;AAAA,YAACW;AAAA,YAAA;AAAA,cACE,OAAOZ;AAAA,cACP,SAASL,EAAM;AAAA,cACf,YACGL,EAAmBK,EAAM,KAAK,MAAKe,KAAA,QAAAA,EAAa,SAAQA,KAAA,gBAAAA,EAAa,QAAStB,EAASO,EAAM,KAAK,KAAgB;AAAA,cAErH,MAAAI;AAAA,cACA,UAAU,CAACK,MAAmB;AAC3B,gBAAIT,EAAM,eACPJ,EAAsB,CAACsB,OAAU;AAAA,kBAC9B,GAAGA;AAAA,kBACH,CAAClB,EAAM,KAAK,GAAGS,MAAW;AAAA,gBAAA,EAC3B,GAELjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,cAClD;AAAA,cACA,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,cAC9B,QAAQ;AAAA,YAAA;AAAA,UAAA;AAAA,UAEVA,EAAM,eAAeL,EAAmBK,EAAM,KAAK,KACjD,gBAAAM,EAAC,OAAA,EAAsB,WAAWC,EAAQ,OAAO,OAAO,EAAE,QAAQ,YAC/D,UAAA,gBAAAD;AAAA,YAACK;AAAA,YAAA;AAAA,cACE,QAAOI,KAAA,gBAAAA,EAAa,UAAS;AAAA,cAC7B,QAAQ;AAAA,cACR,YAAatB,EAASO,EAAM,KAAK,KAAgB;AAAA,cACjD,UAAU,CAACS,MAAmBjB,EAAS,EAAE,GAAGC,GAAU,CAACO,EAAM,KAAK,GAAGS,GAAQ;AAAA,cAC7E,OAAOf,EAAOM,EAAM,KAAK,KAAK;AAAA,YAAA;AAAA,UAAA,EACjC,GAPOA,EAAM,KAQhB;AAAA,QAAA,KA7BIA,EAAM,KA+BhB,GACH;AAAA,MAEN;AACA,aAAO;AAAA,IACV,CAAC;AAAA,IAAG;AAAA,EAAA,GACP;AAEN;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@plutonhq/core-frontend",
3
3
  "description": "Pluton Core Frontend Library",
4
- "version": "0.1.18",
4
+ "version": "0.1.20",
5
5
  "author": "Plutonhq",
6
6
  "license": "Apache-2.0",
7
7
  "publishConfig": {
@@ -56,7 +56,7 @@ const StorageSettings = ({ fields, onUpdate, settings, errors = {} }: StorageSet
56
56
  </div>
57
57
  );
58
58
  }
59
- if (field.authFieldType && ['input', 'string'].includes(field.fieldType)) {
59
+ if (field.fieldType === 'password') {
60
60
  return (
61
61
  <div key={field.value} className={classes.field}>
62
62
  <PasswordField