@sealcode/sealgen 0.19.14 → 0.19.15

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.
@@ -0,0 +1,5 @@
1
+ import { Controller } from "stimulus";
2
+ export default class extends Controller<HTMLButtonElement> {
3
+ getInput(): HTMLInputElement;
4
+ generate(): void;
5
+ }
@@ -1,31 +1,32 @@
1
- export { FormControl } from "./form-control.js";
2
- export { FormFieldControl } from "./form-field-control.js";
3
- export { EditableCollectionSubset } from "./editable-collection-subset.js";
4
- export { Frame } from "./frame.js";
1
+ export * from "./autocomplete.js";
2
+ export * from "./big-radio-group.js";
3
+ export * from "./checkbox-group.js";
4
+ export * from "./checkbox.js";
5
5
  export { CheckboxedListInput } from "./checkboxed-list-input.js";
6
+ export * from "./collapsible-checkbox-group.js";
7
+ export * from "./collapsible-field-group.js";
8
+ export * from "./derived-frame.js";
9
+ export * from "./derived.js";
6
10
  export * from "./dropdown.js";
7
- export * from "./single-reference.js";
8
- export { SimpleInput } from "./simple-input.js";
11
+ export { EditableCollectionSubset } from "./editable-collection-subset.js";
12
+ export { FieldGroup } from "./field-group.js";
13
+ export * from "./file.js";
14
+ export { FormControl } from "./form-control.js";
15
+ export { FormFieldControl } from "./form-field-control.js";
9
16
  export { FormHeader } from "./form-header.js";
10
17
  export { FormParagraph } from "./form-paragraph.js";
11
- export { HTML } from "./html.js";
18
+ export { Frame } from "./frame.js";
12
19
  export { HiddenInput } from "./hidden-input.js";
13
- export { Textarea } from "./textarea.js";
14
- export { FieldGroup } from "./field-group.js";
15
- export * from "./derived.js";
16
- export * from "./derived-frame.js";
17
- export * from "./tickable.js";
18
- export * from "./checkbox.js";
19
- export * from "./radio.js";
20
- export * from "./big-radio-group.js";
21
- export * from "./checkbox-group.js";
22
- export * from "./collapsible-field-group.js";
23
- export * from "./collapsible-checkbox-group.js";
24
- export * from "./autocomplete.js";
25
- export * from "./file.js";
20
+ export { HTML } from "./html.js";
26
21
  export * from "./image.js";
27
22
  export * from "./multiple-files.js";
28
- export * from "./number.js";
29
23
  export * from "./multiple-images.js";
24
+ export * from "./number.js";
25
+ export * from "./password-with-generator.js";
26
+ export * from "./radio.js";
27
+ export { SimpleInput } from "./simple-input.js";
28
+ export * from "./single-reference.js";
29
+ export { Textarea } from "./textarea.js";
30
+ export * from "./tickable.js";
30
31
  export * from "./array.js";
31
32
  export * from "./table.js";
@@ -0,0 +1,6 @@
1
+ import { FormField } from "../../index.js";
2
+ import { SimpleInput } from "./simple-input.js";
3
+ export declare class PasswordWithGenerator extends SimpleInput {
4
+ constructor(field: FormField);
5
+ preInput(): Promise<string>;
6
+ }
@@ -0,0 +1,24 @@
1
+ import { Controller } from "stimulus";
2
+ function generatePassword() {
3
+ const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";
4
+ let password = "";
5
+ for (let i = 0; i < 8; i++) {
6
+ password += chars.charAt(Math.floor(Math.random() * chars.length));
7
+ }
8
+ return password;
9
+ }
10
+ class password_generate_button_stimulus_default extends Controller {
11
+ getInput() {
12
+ return this.element.parentElement.querySelector(
13
+ "input"
14
+ );
15
+ }
16
+ generate() {
17
+ this.getInput().value = generatePassword();
18
+ this.getInput().setAttribute("type", "text");
19
+ }
20
+ }
21
+ export {
22
+ password_generate_button_stimulus_default as default
23
+ };
24
+ //# sourceMappingURL=password-generate-button.stimulus.js.map
@@ -1,32 +1,33 @@
1
- import { FormControl } from "./form-control.js";
2
- import { FormFieldControl } from "./form-field-control.js";
3
- import { EditableCollectionSubset } from "./editable-collection-subset.js";
4
- import { Frame } from "./frame.js";
1
+ export * from "./autocomplete.js";
2
+ export * from "./big-radio-group.js";
3
+ export * from "./checkbox-group.js";
4
+ export * from "./checkbox.js";
5
5
  import { CheckboxedListInput } from "./checkboxed-list-input.js";
6
+ export * from "./collapsible-checkbox-group.js";
7
+ export * from "./collapsible-field-group.js";
8
+ export * from "./derived-frame.js";
9
+ export * from "./derived.js";
6
10
  export * from "./dropdown.js";
7
- export * from "./single-reference.js";
8
- import { SimpleInput } from "./simple-input.js";
11
+ import { EditableCollectionSubset } from "./editable-collection-subset.js";
12
+ import { FieldGroup } from "./field-group.js";
13
+ export * from "./file.js";
14
+ import { FormControl } from "./form-control.js";
15
+ import { FormFieldControl } from "./form-field-control.js";
9
16
  import { FormHeader } from "./form-header.js";
10
17
  import { FormParagraph } from "./form-paragraph.js";
11
- import { HTML } from "./html.js";
18
+ import { Frame } from "./frame.js";
12
19
  import { HiddenInput } from "./hidden-input.js";
13
- import { Textarea } from "./textarea.js";
14
- import { FieldGroup } from "./field-group.js";
15
- export * from "./derived.js";
16
- export * from "./derived-frame.js";
17
- export * from "./tickable.js";
18
- export * from "./checkbox.js";
19
- export * from "./radio.js";
20
- export * from "./big-radio-group.js";
21
- export * from "./checkbox-group.js";
22
- export * from "./collapsible-field-group.js";
23
- export * from "./collapsible-checkbox-group.js";
24
- export * from "./autocomplete.js";
25
- export * from "./file.js";
20
+ import { HTML } from "./html.js";
26
21
  export * from "./image.js";
27
22
  export * from "./multiple-files.js";
28
- export * from "./number.js";
29
23
  export * from "./multiple-images.js";
24
+ export * from "./number.js";
25
+ export * from "./password-with-generator.js";
26
+ export * from "./radio.js";
27
+ import { SimpleInput } from "./simple-input.js";
28
+ export * from "./single-reference.js";
29
+ import { Textarea } from "./textarea.js";
30
+ export * from "./tickable.js";
30
31
  export * from "./array.js";
31
32
  export * from "./table.js";
32
33
  export {
@@ -0,0 +1,21 @@
1
+ import { SimpleInput } from "./simple-input.js";
2
+ class PasswordWithGenerator extends SimpleInput {
3
+ constructor(field) {
4
+ super(field, { type: "password" });
5
+ }
6
+ async preInput() {
7
+ return (
8
+ /* HTML */
9
+ `<button
10
+ data-controller="password-generate-button"
11
+ data-action="password-generate-button#generate"
12
+ >
13
+ Generate
14
+ </button>`
15
+ );
16
+ }
17
+ }
18
+ export {
19
+ PasswordWithGenerator
20
+ };
21
+ //# sourceMappingURL=password-with-generator.js.map
@@ -5,7 +5,7 @@ const defaults = {
5
5
  import type {FormDataValue} from "@sealcode/sealgen";`,
6
6
  get_fields: `()=>(<const>{ password: new Fields.Password(true) })`,
7
7
  get_controls: `
8
- ()=><const>[new Controls.SimpleInput(fields.password, {
8
+ (fields: ReturnType<typeof getFields>)=>[new Controls.SimpleInput(fields.password, {
9
9
  label: "Password:",
10
10
  type: "password",
11
11
  })]`,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sealcode/sealgen",
3
- "version": "0.19.14",
3
+ "version": "0.19.15",
4
4
  "description": "Module to automate adding routes and collections to a sealious application",
5
5
  "main": "lib/index.js",
6
6
  "type": "module",
@@ -0,0 +1,25 @@
1
+ /// <reference lib="dom" />
2
+ import { Controller } from "stimulus";
3
+
4
+ function generatePassword() {
5
+ const chars =
6
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";
7
+ let password = "";
8
+ for (let i = 0; i < 8; i++) {
9
+ password += chars.charAt(Math.floor(Math.random() * chars.length));
10
+ }
11
+ return password;
12
+ }
13
+
14
+ export default class extends Controller<HTMLButtonElement> {
15
+ getInput(): HTMLInputElement {
16
+ return this.element.parentElement!.querySelector(
17
+ "input"
18
+ ) as HTMLInputElement;
19
+ }
20
+
21
+ generate() {
22
+ this.getInput().value = generatePassword();
23
+ this.getInput().setAttribute("type", "text");
24
+ }
25
+ }
@@ -1,32 +1,33 @@
1
- export { FormControl } from "./form-control.js";
2
- export { FormFieldControl } from "./form-field-control.js";
3
- export { EditableCollectionSubset } from "./editable-collection-subset.js";
4
- export { Frame } from "./frame.js";
1
+ export * from "./autocomplete.js";
2
+ export * from "./big-radio-group.js";
3
+ export * from "./checkbox-group.js";
4
+ export * from "./checkbox.js";
5
5
  export { CheckboxedListInput } from "./checkboxed-list-input.js";
6
+ export * from "./collapsible-checkbox-group.js";
7
+ export * from "./collapsible-field-group.js";
8
+ export * from "./derived-frame.js";
9
+ export * from "./derived.js";
6
10
  export * from "./dropdown.js";
7
- export * from "./single-reference.js";
8
- export { SimpleInput } from "./simple-input.js";
11
+ export { EditableCollectionSubset } from "./editable-collection-subset.js";
12
+ export { FieldGroup } from "./field-group.js";
13
+ export * from "./file.js";
14
+ export { FormControl } from "./form-control.js";
15
+ export { FormFieldControl } from "./form-field-control.js";
9
16
  export { FormHeader } from "./form-header.js";
10
17
  export { FormParagraph } from "./form-paragraph.js";
11
- export { HTML } from "./html.js";
18
+ export { Frame } from "./frame.js";
12
19
  export { HiddenInput } from "./hidden-input.js";
13
- export { Textarea } from "./textarea.js";
14
- export { FieldGroup } from "./field-group.js";
15
- export * from "./derived.js";
16
- export * from "./derived-frame.js";
17
- export * from "./tickable.js";
18
- export * from "./checkbox.js";
19
- export * from "./radio.js";
20
- export * from "./big-radio-group.js";
21
- export * from "./checkbox-group.js";
22
- export * from "./collapsible-field-group.js";
23
- export * from "./collapsible-checkbox-group.js";
24
- export * from "./autocomplete.js";
25
- export * from "./file.js";
20
+ export { HTML } from "./html.js";
26
21
  export * from "./image.js";
27
22
  export * from "./multiple-files.js";
28
- export * from "./number.js";
29
23
  export * from "./multiple-images.js";
24
+ export * from "./number.js";
25
+ export * from "./password-with-generator.js";
26
+ export * from "./radio.js";
27
+ export { SimpleInput } from "./simple-input.js";
28
+ export * from "./single-reference.js";
29
+ export { Textarea } from "./textarea.js";
30
+ export * from "./tickable.js";
30
31
  // export * from "./reverse-single-reference";
31
32
  export * from "./array.js";
32
33
  export * from "./table.js";
@@ -0,0 +1,17 @@
1
+ import { FormField } from "../../index.js";
2
+ import { SimpleInput } from "./simple-input.js";
3
+
4
+ export class PasswordWithGenerator extends SimpleInput {
5
+ constructor(field: FormField) {
6
+ super(field, { type: "password" });
7
+ }
8
+
9
+ async preInput() {
10
+ return /* HTML */ `<button
11
+ data-controller="password-generate-button"
12
+ data-action="password-generate-button#generate"
13
+ >
14
+ Generate
15
+ </button>`;
16
+ }
17
+ }
@@ -6,7 +6,7 @@ const defaults = {
6
6
  import type {FormDataValue} from "@sealcode/sealgen";`,
7
7
  get_fields: `()=>(<const>{ password: new Fields.Password(true) })`,
8
8
  get_controls: `
9
- ()=><const>[new Controls.SimpleInput(fields.password, {
9
+ (fields: ReturnType<typeof getFields>)=>[new Controls.SimpleInput(fields.password, {
10
10
  label: "Password:",
11
11
  type: "password",
12
12
  })]`,