@foxy.io/elements 1.52.0-beta.3 → 1.52.0

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.
Files changed (91) hide show
  1. package/dist/cdn/foxy-admin-subscription-form.js +1 -1
  2. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  3. package/dist/cdn/foxy-cancellation-form.js +1 -1
  4. package/dist/cdn/foxy-cart-form.js +1 -1
  5. package/dist/cdn/foxy-client-form.js +1 -1
  6. package/dist/cdn/foxy-coupon-form.js +1 -1
  7. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
  8. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  9. package/dist/cdn/foxy-customer-portal.js +1 -1
  10. package/dist/cdn/foxy-customer.js +1 -1
  11. package/dist/cdn/foxy-donation.js +1 -1
  12. package/dist/cdn/foxy-experimental-add-to-cart-builder.js +1 -1
  13. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  14. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  15. package/dist/cdn/foxy-gift-card-form.js +1 -1
  16. package/dist/cdn/foxy-integration-form.js +1 -1
  17. package/dist/cdn/foxy-item-form.js +1 -1
  18. package/dist/cdn/foxy-items-form.js +1 -1
  19. package/dist/cdn/foxy-passkey-form.js +1 -1
  20. package/dist/cdn/foxy-store-form.js +1 -1
  21. package/dist/cdn/foxy-subscription-form.js +1 -1
  22. package/dist/cdn/foxy-template-set-form.js +1 -1
  23. package/dist/cdn/foxy-transaction.js +1 -1
  24. package/dist/cdn/foxy-user-form.js +1 -1
  25. package/dist/cdn/foxy-users-table.js +1 -1
  26. package/dist/cdn/{shared-e2d843ca.js → shared-4314488c.js} +4 -4
  27. package/dist/cdn/{shared-ec015a24.js → shared-a0309d5f.js} +12 -4
  28. package/dist/cdn/shared-b0ff4acd.js +1 -0
  29. package/dist/cdn/{shared-96207bb5.js → shared-fa05c80d.js} +1 -1
  30. package/dist/cdn/translations/applied-coupon-code-form/en.json +4 -3
  31. package/dist/cdn/translations/cart-form/en.json +3 -2
  32. package/dist/cdn/translations/client-form/en.json +68 -52
  33. package/dist/cdn/translations/coupon-form/en.json +24 -20
  34. package/dist/cdn/translations/customer-portal-settings-form/en.json +57 -37
  35. package/dist/cdn/translations/generate-codes-form/en.json +24 -20
  36. package/dist/cdn/translations/gift-card-code-form/en.json +1 -0
  37. package/dist/cdn/translations/gift-card-form/en.json +25 -20
  38. package/dist/cdn/translations/passkey-form/en.json +14 -10
  39. package/dist/cdn/translations/template-set-form/en.json +36 -27
  40. package/dist/cdn/translations/user-form/en.json +52 -32
  41. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.d.ts +0 -3
  42. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.js +12 -27
  43. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.js.map +1 -1
  44. package/dist/elements/public/AppliedCouponCodeForm/index.d.ts +2 -1
  45. package/dist/elements/public/AppliedCouponCodeForm/index.js +2 -1
  46. package/dist/elements/public/AppliedCouponCodeForm/index.js.map +1 -1
  47. package/dist/elements/public/ClientForm/ClientForm.js +29 -17
  48. package/dist/elements/public/ClientForm/ClientForm.js.map +1 -1
  49. package/dist/elements/public/ClientForm/index.d.ts +1 -1
  50. package/dist/elements/public/ClientForm/index.js +1 -1
  51. package/dist/elements/public/ClientForm/index.js.map +1 -1
  52. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.d.ts +8 -3
  53. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js +105 -64
  54. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js.map +1 -1
  55. package/dist/elements/public/CustomerPortalSettingsForm/index.d.ts +2 -1
  56. package/dist/elements/public/CustomerPortalSettingsForm/index.js +2 -1
  57. package/dist/elements/public/CustomerPortalSettingsForm/index.js.map +1 -1
  58. package/dist/elements/public/GenerateCodesForm/GenerateCodesForm.js +14 -7
  59. package/dist/elements/public/GenerateCodesForm/GenerateCodesForm.js.map +1 -1
  60. package/dist/elements/public/GenerateCodesForm/index.d.ts +1 -1
  61. package/dist/elements/public/GenerateCodesForm/index.js +1 -1
  62. package/dist/elements/public/GenerateCodesForm/index.js.map +1 -1
  63. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js +8 -3
  64. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js.map +1 -1
  65. package/dist/elements/public/PasskeyForm/PasskeyForm.d.ts +1 -0
  66. package/dist/elements/public/PasskeyForm/PasskeyForm.js +23 -3
  67. package/dist/elements/public/PasskeyForm/PasskeyForm.js.map +1 -1
  68. package/dist/elements/public/PasskeyForm/index.d.ts +1 -1
  69. package/dist/elements/public/PasskeyForm/index.js +1 -1
  70. package/dist/elements/public/PasskeyForm/index.js.map +1 -1
  71. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +27 -11
  72. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
  73. package/dist/elements/public/TemplateSetForm/index.d.ts +1 -0
  74. package/dist/elements/public/TemplateSetForm/index.js +1 -0
  75. package/dist/elements/public/TemplateSetForm/index.js.map +1 -1
  76. package/dist/elements/public/UserForm/UserForm.d.ts +0 -3
  77. package/dist/elements/public/UserForm/UserForm.js +19 -40
  78. package/dist/elements/public/UserForm/UserForm.js.map +1 -1
  79. package/dist/elements/public/UserForm/index.d.ts +2 -1
  80. package/dist/elements/public/UserForm/index.js +2 -1
  81. package/dist/elements/public/UserForm/index.js.map +1 -1
  82. package/package.json +2 -2
  83. package/dist/cdn/shared-0af553f2.js +0 -1
  84. package/dist/cdn/shared-3d84ef45.js +0 -1
  85. package/dist/cdn/shared-d14a664a.js +0 -9
  86. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.d.ts +0 -17
  87. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js +0 -58
  88. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js.map +0 -1
  89. package/dist/elements/internal/InternalIntegerControl/index.d.ts +0 -4
  90. package/dist/elements/internal/InternalIntegerControl/index.js +0 -6
  91. package/dist/elements/internal/InternalIntegerControl/index.js.map +0 -1
@@ -17,47 +17,67 @@
17
17
  "done": "Copied to clipboard"
18
18
  }
19
19
  },
20
- "first-name": {
21
- "label": "First name",
22
- "placeholder": "Required",
20
+ "general": {
21
+ "label": "",
23
22
  "helper_text": "",
24
- "v8n_required": "Please enter your first name",
25
- "v8n_too_long": "Unfortunately we can't store first names longer than 50 characters"
23
+ "first-name": {
24
+ "label": "First name",
25
+ "placeholder": "Required",
26
+ "helper_text": "",
27
+ "v8n_required": "Please enter your first name",
28
+ "v8n_too_long": "Unfortunately we can't store first names longer than 50 characters"
29
+ },
30
+ "last-name": {
31
+ "label": "Last name",
32
+ "placeholder": "Required",
33
+ "helper_text": "",
34
+ "v8n_required": "Please enter your last name. If you don't have a last name, put any character in this field.",
35
+ "v8n_too_long": "Unfortunately we can't store last names longer than 50 characters"
36
+ }
26
37
  },
27
- "last-name": {
28
- "label": "Last name",
29
- "placeholder": "Required",
38
+ "contact-info": {
39
+ "label": "Contact",
30
40
  "helper_text": "",
31
- "v8n_required": "Please enter your last name. If you don't have a last name, put any character in this field.",
32
- "v8n_too_long": "Unfortunately we can't store last names longer than 50 characters"
33
- },
34
- "email": {
35
- "label": "Email",
36
- "placeholder": "Required",
37
- "helper_text": "This email is your login to Foxy Admin. We'll also send important notifications to this address.",
38
- "v8n_required": "Please enter your email address",
39
- "v8n_invalid_email": "Please enter a valid email address",
40
- "v8n_too_long": "Unfortunately we can't store email addresses longer than 100 characters"
41
+ "email": {
42
+ "label": "Email",
43
+ "placeholder": "Required",
44
+ "helper_text": "",
45
+ "v8n_required": "Please enter your email address",
46
+ "v8n_invalid_email": "Please enter a valid email address",
47
+ "v8n_too_long": "Unfortunately we can't store email addresses longer than 100 characters"
48
+ },
49
+ "phone": {
50
+ "label": "Phone",
51
+ "placeholder": "Optional",
52
+ "helper_text": "",
53
+ "v8n_too_long": "This phone number appears to be too long. Please make sure you entered it correctly."
54
+ }
41
55
  },
42
- "phone": {
43
- "label": "Phone",
44
- "placeholder": "Optional",
45
- "helper_text": "We'll only use this number to contact you about your account.",
46
- "v8n_too_long": "This phone number appears to be too long. Please make sure you entered it correctly."
56
+ "role": {
57
+ "label": "Role",
58
+ "helper_text": "",
59
+ "is-merchant": {
60
+ "label": "Merchant",
61
+ "helper_text": ""
62
+ },
63
+ "is-programmer": {
64
+ "label": "Backend Developer",
65
+ "helper_text": ""
66
+ },
67
+ "is-front-end-developer": {
68
+ "label": "Frontend Developer",
69
+ "helper_text": ""
70
+ },
71
+ "is-designer": {
72
+ "label": "Designer",
73
+ "helper_text": ""
74
+ }
47
75
  },
48
76
  "affiliate-id": {
49
77
  "label": "Affiliate ID",
50
78
  "placeholder": "Optional",
51
79
  "helper_text": "This value can only be set during user creation. Contact us if you need this value changed later."
52
80
  },
53
- "role": {
54
- "label": "Role",
55
- "helper_text": "If you contact us for help, your role will help us understand how to best assist you.",
56
- "option_merchant": "Merchant",
57
- "option_backend_developer": "Backend Developer",
58
- "option_frontend_developer": "Frontend Developer",
59
- "option_designer": "Designer"
60
- },
61
81
  "timestamps": {
62
82
  "date_created": "Created on",
63
83
  "date_modified": "Last updated on",
@@ -82,4 +102,4 @@
82
102
  "loading_busy": "Loading",
83
103
  "loading_error": "Unknown error"
84
104
  }
85
- }
105
+ }
@@ -14,9 +14,6 @@ declare const Base: typeof InternalForm & import("lit-element").Constructor<impo
14
14
  */
15
15
  export declare class AppliedCouponCodeForm extends Base<Data> {
16
16
  static get v8n(): NucleonV8N<Data>;
17
- private readonly __ignoreUsageLimitsOptions;
18
- private readonly __getIgnoreUsageLimitsValue;
19
- private readonly __setIgnoreUsageLimitsValue;
20
17
  get readonlySelector(): BooleanSelector;
21
18
  get hiddenSelector(): BooleanSelector;
22
19
  renderBody(): TemplateResult;
@@ -11,16 +11,6 @@ const Base = TranslatableMixin(InternalForm, NS);
11
11
  * @since 1.21.0
12
12
  */
13
13
  export class AppliedCouponCodeForm extends Base {
14
- constructor() {
15
- super(...arguments);
16
- this.__ignoreUsageLimitsOptions = [{ value: 'checked', label: 'option_checked' }];
17
- this.__getIgnoreUsageLimitsValue = () => {
18
- return this.form.ignore_usage_limits ? ['checked'] : [];
19
- };
20
- this.__setIgnoreUsageLimitsValue = (newValue) => {
21
- this.edit({ ignore_usage_limits: newValue.includes('checked') });
22
- };
23
- }
24
14
  static get v8n() {
25
15
  return [({ code: v }) => !!v || 'code:v8n_required'];
26
16
  }
@@ -34,26 +24,21 @@ export class AppliedCouponCodeForm extends Base {
34
24
  return html `
35
25
  ${this.renderHeader()}
36
26
 
37
- <foxy-internal-text-control
38
- helper-text=${this.t(this.data ? 'code.helper_text_existing' : 'code.helper_text_new')}
39
- infer="code"
40
- >
41
- </foxy-internal-text-control>
27
+ <foxy-internal-summary-control infer="" label="" helper-text="">
28
+ <foxy-internal-text-control
29
+ helper-text=${this.t(this.data ? 'code.helper_text_existing' : 'code.helper_text_new')}
30
+ layout="summary-item"
31
+ infer="code"
32
+ >
33
+ </foxy-internal-text-control>
42
34
 
43
- ${this.data
35
+ ${this.data
44
36
  ? ''
45
37
  : html `
46
- <foxy-internal-checkbox-group-control
47
- infer="ignore-usage-limits"
48
- class="-my-xs"
49
- .getValue=${this.__getIgnoreUsageLimitsValue}
50
- .setValue=${this.__setIgnoreUsageLimitsValue}
51
- .options=${this.__ignoreUsageLimitsOptions}
52
- >
53
- </foxy-internal-checkbox-group-control>
54
- `}
55
-
56
- <!-- -->
38
+ <foxy-internal-switch-control infer="ignore-usage-limits">
39
+ </foxy-internal-switch-control>
40
+ `}
41
+ </foxy-internal-summary-control>
57
42
 
58
43
  ${super.renderBody()}
59
44
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"AppliedCouponCodeForm.js","sourceRoot":"","sources":["../../../../src/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,0BAA0B,CAAC;AACtC,MAAM,IAAI,GAAG,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,OAAO,qBAAsB,SAAQ,IAAU;IAArD;;QAKmB,+BAA0B,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAE7E,gCAA2B,GAAG,GAAG,EAAE;YAClD,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,CAAC,CAAC;QAEe,gCAA2B,GAAG,CAAC,QAAkB,EAAE,EAAE;YACpE,IAAI,CAAC,IAAI,CAAC,EAAE,mBAAmB,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC;IAsCJ,CAAC;IAlDC,MAAM,KAAK,GAAG;QACZ,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC;IACvD,CAAC;IAYD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAChF,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,eAAe,CAAC,cAAc,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,YAAY,EAAE;;;sBAGL,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,sBAAsB,CAAC;;;;;QAKtF,IAAI,CAAC,IAAI;YACT,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,CAAA;;;;0BAIY,IAAI,CAAC,2BAA2B;0BAChC,IAAI,CAAC,2BAA2B;yBACjC,IAAI,CAAC,0BAA0B;;;WAG7C;;;;QAIH,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonV8N } from '../NucleonElement/types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-html';\n\nconst NS = 'applied-coupon-code-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n/**\n * Form element for managing applied coupon codes (`fx:applied_coupon_code`).\n *\n * @element foxy-applied-coupon-code-form\n * @since 1.21.0\n */\nexport class AppliedCouponCodeForm extends Base<Data> {\n static get v8n(): NucleonV8N<Data> {\n return [({ code: v }) => !!v || 'code:v8n_required'];\n }\n\n private readonly __ignoreUsageLimitsOptions = [{ value: 'checked', label: 'option_checked' }];\n\n private readonly __getIgnoreUsageLimitsValue = () => {\n return this.form.ignore_usage_limits ? ['checked'] : [];\n };\n\n private readonly __setIgnoreUsageLimitsValue = (newValue: string[]) => {\n this.edit({ ignore_usage_limits: newValue.includes('checked') });\n };\n\n get readonlySelector(): BooleanSelector {\n return this.data ? new BooleanSelector('not=delete') : super.readonlySelector;\n }\n\n get hiddenSelector(): BooleanSelector {\n return new BooleanSelector(`timestamps ${super.hiddenSelector}`);\n }\n\n renderBody(): TemplateResult {\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-text-control\n helper-text=${this.t(this.data ? 'code.helper_text_existing' : 'code.helper_text_new')}\n infer=\"code\"\n >\n </foxy-internal-text-control>\n\n ${this.data\n ? ''\n : html`\n <foxy-internal-checkbox-group-control\n infer=\"ignore-usage-limits\"\n class=\"-my-xs\"\n .getValue=${this.__getIgnoreUsageLimitsValue}\n .setValue=${this.__setIgnoreUsageLimitsValue}\n .options=${this.__ignoreUsageLimitsOptions}\n >\n </foxy-internal-checkbox-group-control>\n `}\n\n <!-- -->\n\n ${super.renderBody()}\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"AppliedCouponCodeForm.js","sourceRoot":"","sources":["../../../../src/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,0BAA0B,CAAC;AACtC,MAAM,IAAI,GAAG,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,OAAO,qBAAsB,SAAQ,IAAU;IACnD,MAAM,KAAK,GAAG;QACZ,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAChF,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,eAAe,CAAC,cAAc,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,YAAY,EAAE;;;;wBAIH,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,sBAAsB,CAAC;;;;;;UAMtF,IAAI,CAAC,IAAI;YACT,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,CAAA;;;aAGH;;;QAGL,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonV8N } from '../NucleonElement/types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-html';\n\nconst NS = 'applied-coupon-code-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n/**\n * Form element for managing applied coupon codes (`fx:applied_coupon_code`).\n *\n * @element foxy-applied-coupon-code-form\n * @since 1.21.0\n */\nexport class AppliedCouponCodeForm extends Base<Data> {\n static get v8n(): NucleonV8N<Data> {\n return [({ code: v }) => !!v || 'code:v8n_required'];\n }\n\n get readonlySelector(): BooleanSelector {\n return this.data ? new BooleanSelector('not=delete') : super.readonlySelector;\n }\n\n get hiddenSelector(): BooleanSelector {\n return new BooleanSelector(`timestamps ${super.hiddenSelector}`);\n }\n\n renderBody(): TemplateResult {\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"\" label=\"\" helper-text=\"\">\n <foxy-internal-text-control\n helper-text=${this.t(this.data ? 'code.helper_text_existing' : 'code.helper_text_new')}\n layout=\"summary-item\"\n infer=\"code\"\n >\n </foxy-internal-text-control>\n\n ${this.data\n ? ''\n : html`\n <foxy-internal-switch-control infer=\"ignore-usage-limits\">\n </foxy-internal-switch-control>\n `}\n </foxy-internal-summary-control>\n\n ${super.renderBody()}\n `;\n }\n}\n"]}
@@ -1,4 +1,5 @@
1
- import '../../internal/InternalCheckboxGroupControl/index';
1
+ import '../../internal/InternalSummaryControl/index';
2
+ import '../../internal/InternalSwitchControl/index';
2
3
  import '../../internal/InternalTextControl/index';
3
4
  import '../../internal/InternalForm/index';
4
5
  import { AppliedCouponCodeForm } from './AppliedCouponCodeForm';
@@ -1,4 +1,5 @@
1
- import "../../internal/InternalCheckboxGroupControl/index.js";
1
+ import "../../internal/InternalSummaryControl/index.js";
2
+ import "../../internal/InternalSwitchControl/index.js";
2
3
  import "../../internal/InternalTextControl/index.js";
3
4
  import "../../internal/InternalForm/index.js";
4
5
  import { AppliedCouponCodeForm } from "./AppliedCouponCodeForm.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/AppliedCouponCodeForm/index.ts"],"names":[],"mappings":"AAAA,8DAA2D;AAC3D,qDAAkD;AAClD,8CAA2C;AAE3C,OAAO,EAAE,qBAAqB,EAAE,mCAAgC;AAEhE,cAAc,CAAC,MAAM,CAAC,+BAA+B,EAAE,qBAAqB,CAAC,CAAC;AAE9E,OAAO,EAAE,qBAAqB,EAAE,CAAC","sourcesContent":["import '../../internal/InternalCheckboxGroupControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport { AppliedCouponCodeForm } from './AppliedCouponCodeForm';\n\ncustomElements.define('foxy-applied-coupon-code-form', AppliedCouponCodeForm);\n\nexport { AppliedCouponCodeForm };\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/AppliedCouponCodeForm/index.ts"],"names":[],"mappings":"AAAA,wDAAqD;AACrD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,OAAO,EAAE,qBAAqB,EAAE,mCAAgC;AAEhE,cAAc,CAAC,MAAM,CAAC,+BAA+B,EAAE,qBAAqB,CAAC,CAAC;AAE9E,OAAO,EAAE,qBAAqB,EAAE,CAAC","sourcesContent":["import '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalSwitchControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport { AppliedCouponCodeForm } from './AppliedCouponCodeForm';\n\ncustomElements.define('foxy-applied-coupon-code-form', AppliedCouponCodeForm);\n\nexport { AppliedCouponCodeForm };\n"]}
@@ -23,49 +23,61 @@ export class ClientForm extends Base {
23
23
  }
24
24
  }
25
25
  get readonlySelector() {
26
- const alwaysMatch = ['client-secret'];
26
+ const alwaysMatch = ['general:client-secret'];
27
27
  if (this.data || this.in({ busy: 'fetching' }))
28
- alwaysMatch.push('client-id');
28
+ alwaysMatch.push('general:client-id');
29
29
  return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.readonlySelector.toString()}`);
30
30
  }
31
31
  get hiddenSelector() {
32
32
  const alwaysMatch = [];
33
33
  if (!this.data && !this.in({ busy: 'fetching' }))
34
- alwaysMatch.push('client-secret');
34
+ alwaysMatch.push('general:client-secret');
35
35
  return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.hiddenSelector.toString()}`);
36
36
  }
37
37
  renderBody() {
38
38
  return html `
39
39
  ${this.renderHeader()}
40
40
 
41
- <div class="grid grid-cols-2 gap-m">
42
- <foxy-internal-text-control class="col-span-2" infer="client-id">
41
+ <foxy-internal-summary-control infer="general">
42
+ <foxy-internal-text-control layout="summary-item" infer="client-id">
43
43
  </foxy-internal-text-control>
44
44
 
45
- <foxy-internal-text-control class="col-span-2" infer="client-secret">
45
+ <foxy-internal-text-control layout="summary-item" infer="client-secret">
46
46
  </foxy-internal-text-control>
47
47
 
48
- <foxy-internal-text-control class="col-span-2" infer="redirect-uri">
48
+ <foxy-internal-text-control layout="summary-item" infer="redirect-uri">
49
49
  </foxy-internal-text-control>
50
+ </foxy-internal-summary-control>
50
51
 
51
- <foxy-internal-text-control class="col-span-2" infer="project-name">
52
+ <foxy-internal-summary-control infer="project">
53
+ <foxy-internal-text-control layout="summary-item" infer="project-name">
52
54
  </foxy-internal-text-control>
53
55
 
54
- <foxy-internal-text-area-control class="col-span-2" infer="project-description">
55
- </foxy-internal-text-area-control>
56
+ <foxy-internal-text-control layout="summary-item" infer="project-description">
57
+ </foxy-internal-text-control>
58
+ </foxy-internal-summary-control>
59
+
60
+ <foxy-internal-summary-control infer="company">
61
+ <foxy-internal-text-control layout="summary-item" infer="company-name">
62
+ </foxy-internal-text-control>
56
63
 
57
- <foxy-internal-text-control infer="company-name"></foxy-internal-text-control>
58
- <foxy-internal-text-control infer="company-url"></foxy-internal-text-control>
64
+ <foxy-internal-text-control layout="summary-item" infer="company-url">
65
+ </foxy-internal-text-control>
59
66
 
60
- <foxy-internal-text-control class="col-span-2" infer="company-logo">
67
+ <foxy-internal-text-control layout="summary-item" infer="company-logo">
61
68
  </foxy-internal-text-control>
69
+ </foxy-internal-summary-control>
62
70
 
63
- <foxy-internal-text-control class="col-span-2" infer="contact-name">
71
+ <foxy-internal-summary-control infer="contact">
72
+ <foxy-internal-text-control layout="summary-item" infer="contact-name">
64
73
  </foxy-internal-text-control>
65
74
 
66
- <foxy-internal-text-control infer="contact-email"></foxy-internal-text-control>
67
- <foxy-internal-text-control infer="contact-phone"></foxy-internal-text-control>
68
- </div>
75
+ <foxy-internal-text-control layout="summary-item" infer="contact-email">
76
+ </foxy-internal-text-control>
77
+
78
+ <foxy-internal-text-control layout="summary-item" infer="contact-phone">
79
+ </foxy-internal-text-control>
80
+ </foxy-internal-summary-control>
69
81
 
70
82
  ${super.renderBody()}
71
83
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"ClientForm.js","sourceRoot":"","sources":["../../../../src/elements/public/ClientForm/ClientForm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,eAAe,EAAE,sCAAmC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,EAAE,GAAG,aAAa,CAAC;AACzB,MAAM,IAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;AAElE;;;;;GAKG;AACH,MAAM,OAAO,UAAW,SAAQ,IAAU;IACxC,IAAI,qBAAqB;;QACvB,IAAI;YACF,MAAM,GAAG,GAAG,IAAI,GAAG,aAAC,IAAI,CAAC,IAAI,0CAAE,YAAY,mCAAI,EAAE,CAAC,CAAC;YACnD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;SACzD;QAAC,WAAM;YACN,OAAO,KAAK,CAAC,qBAAqB,CAAC;SACpC;IACH,CAAC;IAED,IAAI,gBAAgB;QAClB,MAAM,WAAW,GAAG,CAAC,eAAe,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9E,OAAO,IAAI,eAAe,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,cAAc;QAChB,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpF,OAAO,IAAI,eAAe,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+BnB,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { Data } from './types';\nimport type { TemplateResult } from 'lit-html';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-element';\n\nconst NS = 'client-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for viewing and deleting clients (`fx:client`).\n *\n * @element foxy-client-form\n * @since 1.24.0\n */\nexport class ClientForm extends Base<Data> {\n get headerSubtitleOptions(): Record<string, unknown> {\n try {\n const url = new URL(this.data?.redirect_uri ?? '');\n return { context: 'with_domain', domain: url.hostname };\n } catch {\n return super.headerSubtitleOptions;\n }\n }\n\n get readonlySelector(): BooleanSelector {\n const alwaysMatch = ['client-secret'];\n if (this.data || this.in({ busy: 'fetching' })) alwaysMatch.push('client-id');\n return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.readonlySelector.toString()}`);\n }\n\n get hiddenSelector(): BooleanSelector {\n const alwaysMatch: string[] = [];\n if (!this.data && !this.in({ busy: 'fetching' })) alwaysMatch.push('client-secret');\n return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.hiddenSelector.toString()}`);\n }\n\n renderBody(): TemplateResult {\n return html`\n ${this.renderHeader()}\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control class=\"col-span-2\" infer=\"client-id\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control class=\"col-span-2\" infer=\"client-secret\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control class=\"col-span-2\" infer=\"redirect-uri\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control class=\"col-span-2\" infer=\"project-name\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-area-control class=\"col-span-2\" infer=\"project-description\">\n </foxy-internal-text-area-control>\n\n <foxy-internal-text-control infer=\"company-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"company-url\"></foxy-internal-text-control>\n\n <foxy-internal-text-control class=\"col-span-2\" infer=\"company-logo\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control class=\"col-span-2\" infer=\"contact-name\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control infer=\"contact-email\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"contact-phone\"></foxy-internal-text-control>\n </div>\n\n ${super.renderBody()}\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"ClientForm.js","sourceRoot":"","sources":["../../../../src/elements/public/ClientForm/ClientForm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,eAAe,EAAE,sCAAmC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,EAAE,GAAG,aAAa,CAAC;AACzB,MAAM,IAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;AAElE;;;;;GAKG;AACH,MAAM,OAAO,UAAW,SAAQ,IAAU;IACxC,IAAI,qBAAqB;;QACvB,IAAI;YACF,MAAM,GAAG,GAAG,IAAI,GAAG,aAAC,IAAI,CAAC,IAAI,0CAAE,YAAY,mCAAI,EAAE,CAAC,CAAC;YACnD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;SACzD;QAAC,WAAM;YACN,OAAO,KAAK,CAAC,qBAAqB,CAAC;SACpC;IACH,CAAC;IAED,IAAI,gBAAgB;QAClB,MAAM,WAAW,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtF,OAAO,IAAI,eAAe,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,cAAc;QAChB,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC5F,OAAO,IAAI,eAAe,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2CnB,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { Data } from './types';\nimport type { TemplateResult } from 'lit-html';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-element';\n\nconst NS = 'client-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for viewing and deleting clients (`fx:client`).\n *\n * @element foxy-client-form\n * @since 1.24.0\n */\nexport class ClientForm extends Base<Data> {\n get headerSubtitleOptions(): Record<string, unknown> {\n try {\n const url = new URL(this.data?.redirect_uri ?? '');\n return { context: 'with_domain', domain: url.hostname };\n } catch {\n return super.headerSubtitleOptions;\n }\n }\n\n get readonlySelector(): BooleanSelector {\n const alwaysMatch = ['general:client-secret'];\n if (this.data || this.in({ busy: 'fetching' })) alwaysMatch.push('general:client-id');\n return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.readonlySelector.toString()}`);\n }\n\n get hiddenSelector(): BooleanSelector {\n const alwaysMatch: string[] = [];\n if (!this.data && !this.in({ busy: 'fetching' })) alwaysMatch.push('general:client-secret');\n return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.hiddenSelector.toString()}`);\n }\n\n renderBody(): TemplateResult {\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"general\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"client-id\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"client-secret\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"redirect-uri\">\n </foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"project\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"project-name\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"project-description\">\n </foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"company\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"company-name\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"company-url\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"company-logo\">\n </foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"contact\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"contact-name\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"contact-email\">\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"contact-phone\">\n </foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n ${super.renderBody()}\n `;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import '../../internal/InternalTextAreaControl/index';
1
+ import '../../internal/InternalSummaryControl/index';
2
2
  import '../../internal/InternalTextControl/index';
3
3
  import '../../internal/InternalForm/index';
4
4
  import { ClientForm } from './ClientForm';
@@ -1,4 +1,4 @@
1
- import "../../internal/InternalTextAreaControl/index.js";
1
+ import "../../internal/InternalSummaryControl/index.js";
2
2
  import "../../internal/InternalTextControl/index.js";
3
3
  import "../../internal/InternalForm/index.js";
4
4
  import { ClientForm } from "./ClientForm.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/ClientForm/index.ts"],"names":[],"mappings":"AAAA,yDAAsD;AACtD,qDAAkD;AAClD,8CAA2C;AAE3C,OAAO,EAAE,UAAU,EAAE,wBAAqB;AAE1C,cAAc,CAAC,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,CAAC","sourcesContent":["import '../../internal/InternalTextAreaControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport { ClientForm } from './ClientForm';\n\ncustomElements.define('foxy-client-form', ClientForm);\n\nexport { ClientForm };\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/ClientForm/index.ts"],"names":[],"mappings":"AAAA,wDAAqD;AACrD,qDAAkD;AAClD,8CAA2C;AAE3C,OAAO,EAAE,UAAU,EAAE,wBAAqB;AAE1C,cAAc,CAAC,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,CAAC","sourcesContent":["import '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport { ClientForm } from './ClientForm';\n\ncustomElements.define('foxy-client-form', ClientForm);\n\nexport { ClientForm };\n"]}
@@ -19,9 +19,14 @@ export declare class CustomerPortalSettingsForm extends Base<Data> {
19
19
  private readonly __sessionLifespanInMinutesSetValue;
20
20
  private readonly __allowedOriginsGetValue;
21
21
  private readonly __allowedOriginsSetValue;
22
- private readonly __featuresOptions;
23
- private readonly __featuresGetValue;
24
- private readonly __featuresSetValue;
22
+ private readonly __ssoGetValue;
23
+ private readonly __ssoSetValue;
24
+ private readonly __signUpGetValue;
25
+ private readonly __signUpSetValue;
26
+ private readonly __frequencyModificationGetValue;
27
+ private readonly __frequencyModificationSetValue;
28
+ private readonly __nextDateModificationGetValue;
29
+ private readonly __nextDateModificationSetValue;
25
30
  private readonly __signUpVerificationHcaptchaSiteKeyGetValue;
26
31
  private readonly __signUpVerificationHcaptchaSiteKeySetValue;
27
32
  private readonly __signUpVerificationHcaptchaSecretKeyGetValue;
@@ -61,47 +61,60 @@ export class CustomerPortalSettingsForm extends Base {
61
61
  .filter((v, i, a) => a.indexOf(v) === i),
62
62
  });
63
63
  };
64
- this.__featuresOptions = [
65
- { value: 'sso', label: 'option_sso' },
66
- { value: 'sign-up', label: 'option_sign_up' },
67
- { value: 'frequency-modification', label: 'option_frequency_modification' },
68
- { value: 'next-date-modification', label: 'option_next_date_modification' },
69
- ];
70
- this.__featuresGetValue = () => {
71
- var _a, _b, _c;
72
- const features = [];
73
- if (this.form.sso)
74
- features.push('sso');
75
- if ((_a = this.form.signUp) === null || _a === void 0 ? void 0 : _a.enabled)
76
- features.push('sign-up');
77
- if ((_b = this.form.subscriptions) === null || _b === void 0 ? void 0 : _b.allowNextDateModification)
78
- features.push('next-date-modification');
79
- if ((_c = this.form.subscriptions) === null || _c === void 0 ? void 0 : _c.allowFrequencyModification.length) {
80
- features.push('frequency-modification');
81
- }
82
- return features;
64
+ this.__ssoGetValue = () => {
65
+ var _a;
66
+ return (_a = this.form.sso) !== null && _a !== void 0 ? _a : false;
83
67
  };
84
- this.__featuresSetValue = (features) => {
85
- var _a, _b, _c, _d, _e;
86
- const fmod = (_b = (_a = this.form.subscriptions) === null || _a === void 0 ? void 0 : _a.allowFrequencyModification) !== null && _b !== void 0 ? _b : [];
68
+ this.__ssoSetValue = (value) => {
69
+ this.edit({ sso: value });
70
+ };
71
+ this.__signUpGetValue = () => {
72
+ var _a, _b;
73
+ return (_b = (_a = this.form.signUp) === null || _a === void 0 ? void 0 : _a.enabled) !== null && _b !== void 0 ? _b : false;
74
+ };
75
+ this.__signUpSetValue = (value) => {
76
+ var _a, _b;
87
77
  this.edit({
88
- sso: features.includes('sso'),
89
78
  signUp: {
90
- enabled: features.includes('sign-up'),
91
- verification: (_d = (_c = this.form.signUp) === null || _c === void 0 ? void 0 : _c.verification) !== null && _d !== void 0 ? _d : {
79
+ enabled: value,
80
+ verification: (_b = (_a = this.form.signUp) === null || _a === void 0 ? void 0 : _a.verification) !== null && _b !== void 0 ? _b : {
92
81
  type: 'hcaptcha',
93
82
  siteKey: '',
94
83
  secretKey: '',
95
84
  },
96
85
  },
86
+ });
87
+ };
88
+ this.__frequencyModificationGetValue = () => {
89
+ var _a, _b;
90
+ return ((_b = (_a = this.form.subscriptions) === null || _a === void 0 ? void 0 : _a.allowFrequencyModification.length) !== null && _b !== void 0 ? _b : 0) > 0;
91
+ };
92
+ this.__frequencyModificationSetValue = (value) => {
93
+ var _a, _b, _c, _d;
94
+ const fmod = (_b = (_a = this.form.subscriptions) === null || _a === void 0 ? void 0 : _a.allowFrequencyModification) !== null && _b !== void 0 ? _b : [];
95
+ this.edit({
97
96
  subscriptions: {
98
- allowFrequencyModification: features.includes('frequency-modification')
97
+ allowFrequencyModification: value
99
98
  ? fmod.length === 0
100
99
  ? [{ jsonataQuery: '*', values: [] }]
101
100
  : fmod
102
101
  : [],
103
- allowNextDateModification: features.includes('next-date-modification')
104
- ? ((_e = this.form.subscriptions) === null || _e === void 0 ? void 0 : _e.allowNextDateModification) || []
102
+ allowNextDateModification: (_d = (_c = this.form.subscriptions) === null || _c === void 0 ? void 0 : _c.allowNextDateModification) !== null && _d !== void 0 ? _d : false,
103
+ },
104
+ });
105
+ };
106
+ this.__nextDateModificationGetValue = () => {
107
+ var _a, _b;
108
+ return (_b = (_a = this.form.subscriptions) === null || _a === void 0 ? void 0 : _a.allowNextDateModification) !== null && _b !== void 0 ? _b : false;
109
+ };
110
+ this.__nextDateModificationSetValue = (value) => {
111
+ var _a, _b, _c;
112
+ const fmod = (_b = (_a = this.form.subscriptions) === null || _a === void 0 ? void 0 : _a.allowFrequencyModification) !== null && _b !== void 0 ? _b : [];
113
+ this.edit({
114
+ subscriptions: {
115
+ allowFrequencyModification: fmod,
116
+ allowNextDateModification: value
117
+ ? ((_c = this.form.subscriptions) === null || _c === void 0 ? void 0 : _c.allowNextDateModification) || []
105
118
  : false,
106
119
  },
107
120
  });
@@ -179,7 +192,7 @@ export class CustomerPortalSettingsForm extends Base {
179
192
  var _a, _b, _c;
180
193
  const alwaysMatch = ['header:copy-id', super.hiddenSelector.toString()];
181
194
  if (!((_a = this.form.signUp) === null || _a === void 0 ? void 0 : _a.enabled)) {
182
- alwaysMatch.push('sign-up-verification-hcaptcha-site-key', 'sign-up-verification-hcaptcha-secret-key');
195
+ alwaysMatch.push('hcaptcha');
183
196
  }
184
197
  if (!((_b = this.form.subscriptions) === null || _b === void 0 ? void 0 : _b.allowFrequencyModification.length)) {
185
198
  alwaysMatch.push('subscriptions-allow-frequency-modification');
@@ -200,28 +213,52 @@ export class CustomerPortalSettingsForm extends Base {
200
213
  >
201
214
  </foxy-internal-editable-list-control>
202
215
 
203
- <foxy-internal-checkbox-group-control
204
- infer="features"
205
- theme="vertical"
206
- .getValue=${this.__featuresGetValue}
207
- .setValue=${this.__featuresSetValue}
208
- .options=${this.__featuresOptions}
209
- >
210
- </foxy-internal-checkbox-group-control>
216
+ <foxy-internal-summary-control infer="features">
217
+ <foxy-internal-switch-control
218
+ infer="sso"
219
+ .getValue=${this.__ssoGetValue}
220
+ .setValue=${this.__ssoSetValue}
221
+ ></foxy-internal-switch-control>
211
222
 
212
- <foxy-internal-password-control
213
- infer="sign-up-verification-hcaptcha-site-key"
214
- .getValue=${this.__signUpVerificationHcaptchaSiteKeyGetValue}
215
- .setValue=${this.__signUpVerificationHcaptchaSiteKeySetValue}
216
- >
217
- </foxy-internal-password-control>
223
+ <foxy-internal-switch-control
224
+ infer="sign-up"
225
+ .getValue=${this.__signUpGetValue}
226
+ .setValue=${this.__signUpSetValue}
227
+ >
228
+ </foxy-internal-switch-control>
218
229
 
219
- <foxy-internal-password-control
220
- infer="sign-up-verification-hcaptcha-secret-key"
221
- .getValue=${this.__signUpVerificationHcaptchaSecretKeyGetValue}
222
- .setValue=${this.__signUpVerificationHcaptchaSecretKeySetValue}
223
- >
224
- </foxy-internal-password-control>
230
+ <foxy-internal-switch-control
231
+ infer="frequency-modification"
232
+ .getValue=${this.__frequencyModificationGetValue}
233
+ .setValue=${this.__frequencyModificationSetValue}
234
+ >
235
+ </foxy-internal-switch-control>
236
+
237
+ <foxy-internal-switch-control
238
+ infer="next-date-modification"
239
+ .getValue=${this.__nextDateModificationGetValue}
240
+ .setValue=${this.__nextDateModificationSetValue}
241
+ >
242
+ </foxy-internal-switch-control>
243
+ </foxy-internal-summary-control>
244
+
245
+ <foxy-internal-summary-control infer="hcaptcha">
246
+ <foxy-internal-password-control
247
+ layout="summary-item"
248
+ infer="sign-up-verification-hcaptcha-site-key"
249
+ .getValue=${this.__signUpVerificationHcaptchaSiteKeyGetValue}
250
+ .setValue=${this.__signUpVerificationHcaptchaSiteKeySetValue}
251
+ >
252
+ </foxy-internal-password-control>
253
+
254
+ <foxy-internal-password-control
255
+ layout="summary-item"
256
+ infer="sign-up-verification-hcaptcha-secret-key"
257
+ .getValue=${this.__signUpVerificationHcaptchaSecretKeyGetValue}
258
+ .setValue=${this.__signUpVerificationHcaptchaSecretKeySetValue}
259
+ >
260
+ </foxy-internal-password-control>
261
+ </foxy-internal-summary-control>
225
262
 
226
263
  <foxy-internal-async-list-control
227
264
  first="foxy://${this.virtualHost}/form/subscriptions/allowFrequencyModification"
@@ -243,22 +280,26 @@ export class CustomerPortalSettingsForm extends Base {
243
280
  >
244
281
  </foxy-internal-async-list-control>
245
282
 
246
- <foxy-internal-frequency-control
247
- infer="session-lifespan-in-minutes"
248
- max=""
249
- .getValue=${this.__sessionLifespanInMinutesGetValue}
250
- .setValue=${this.__sessionLifespanInMinutesSetValue}
251
- .options=${this.__sessionLifespanInMinutesOptions}
252
- >
253
- </foxy-internal-frequency-control>
283
+ <foxy-internal-summary-control infer="security">
284
+ <foxy-internal-frequency-control
285
+ layout="summary-item"
286
+ infer="session-lifespan-in-minutes"
287
+ max=""
288
+ .getValue=${this.__sessionLifespanInMinutesGetValue}
289
+ .setValue=${this.__sessionLifespanInMinutesSetValue}
290
+ .options=${this.__sessionLifespanInMinutesOptions}
291
+ >
292
+ </foxy-internal-frequency-control>
254
293
 
255
- <foxy-internal-password-control
256
- property="jwtSharedSecret"
257
- infer="jwt-shared-secret"
258
- show-generator
259
- .generatorOptions=${this.__jwtSecretGeneratorOptions}
260
- >
261
- </foxy-internal-password-control>
294
+ <foxy-internal-password-control
295
+ layout="summary-item"
296
+ property="jwtSharedSecret"
297
+ infer="jwt-shared-secret"
298
+ show-generator
299
+ .generatorOptions=${this.__jwtSecretGeneratorOptions}
300
+ >
301
+ </foxy-internal-password-control>
302
+ </foxy-internal-summary-control>
262
303
 
263
304
  ${super.renderBody()}
264
305
  `;