@foxy.io/elements 1.23.0-beta.4 → 1.24.0-beta.1

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 (216) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +2 -2
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-api-browser.js +1 -1
  6. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  8. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  9. package/dist/cdn/foxy-attribute-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-form.js +1 -1
  11. package/dist/cdn/foxy-cancellation-form.js +1 -1
  12. package/dist/cdn/foxy-cart-card.js +1 -1
  13. package/dist/cdn/foxy-cart-form.js +1 -1
  14. package/dist/cdn/foxy-client-card.js +1 -0
  15. package/dist/cdn/foxy-client-form.js +1 -0
  16. package/dist/cdn/foxy-collection-page.js +1 -1
  17. package/dist/cdn/foxy-collection-pages.js +1 -1
  18. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  19. package/dist/cdn/foxy-coupon-card.js +1 -1
  20. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  21. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  22. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  23. package/dist/cdn/foxy-coupon-form.js +1 -1
  24. package/dist/cdn/foxy-custom-field-card.js +1 -1
  25. package/dist/cdn/foxy-custom-field-form.js +1 -1
  26. package/dist/cdn/foxy-customer-card.js +1 -1
  27. package/dist/cdn/foxy-customer-form.js +1 -1
  28. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  29. package/dist/cdn/foxy-customer-portal.js +1 -1
  30. package/dist/cdn/foxy-customer.js +1 -1
  31. package/dist/cdn/foxy-customers-table.js +1 -1
  32. package/dist/cdn/foxy-discount-builder.js +1 -1
  33. package/dist/cdn/foxy-discount-card.js +1 -1
  34. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  35. package/dist/cdn/foxy-donation.js +1 -1
  36. package/dist/cdn/foxy-downloadable-card.js +1 -1
  37. package/dist/cdn/foxy-downloadable-form.js +1 -1
  38. package/dist/cdn/foxy-email-template-card.js +1 -1
  39. package/dist/cdn/foxy-email-template-form.js +1 -1
  40. package/dist/cdn/foxy-error-entry-card.js +1 -1
  41. package/dist/cdn/foxy-form-dialog.js +1 -1
  42. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  43. package/dist/cdn/foxy-gift-card-card.js +1 -1
  44. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  45. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  46. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  47. package/dist/cdn/foxy-gift-card-form.js +1 -1
  48. package/dist/cdn/foxy-i18n-editor.js +1 -1
  49. package/dist/cdn/foxy-i18n.js +1 -1
  50. package/dist/cdn/foxy-integration-card.js +1 -1
  51. package/dist/cdn/foxy-integration-form.js +1 -1
  52. package/dist/cdn/foxy-item-card.js +1 -1
  53. package/dist/cdn/foxy-item-category-card.js +1 -1
  54. package/dist/cdn/foxy-item-category-form.js +1 -1
  55. package/dist/cdn/foxy-item-form.js +1 -1
  56. package/dist/cdn/foxy-item-option-card.js +1 -1
  57. package/dist/cdn/foxy-item-option-form.js +1 -1
  58. package/dist/cdn/foxy-items-form.js +1 -1
  59. package/dist/cdn/foxy-pagination.js +1 -1
  60. package/dist/cdn/foxy-passkey-card.js +1 -0
  61. package/dist/cdn/foxy-passkey-form.js +1 -0
  62. package/dist/cdn/foxy-payment-card.js +1 -1
  63. package/dist/cdn/foxy-payment-method-card.js +1 -1
  64. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  65. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  66. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  67. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  68. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  69. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  70. package/dist/cdn/foxy-query-builder.js +1 -1
  71. package/dist/cdn/foxy-report-form.js +1 -1
  72. package/dist/cdn/foxy-reports-table.js +1 -1
  73. package/dist/cdn/foxy-shipment-card.js +1 -1
  74. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  75. package/dist/cdn/foxy-sign-in-form.js +1 -1
  76. package/dist/cdn/foxy-spinner.js +1 -1
  77. package/dist/cdn/foxy-store-card.js +1 -1
  78. package/dist/cdn/foxy-store-form.js +1 -1
  79. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  80. package/dist/cdn/foxy-subscription-card.js +1 -1
  81. package/dist/cdn/foxy-subscription-form.js +3 -3
  82. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  83. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  84. package/dist/cdn/foxy-table.js +1 -1
  85. package/dist/cdn/foxy-tax-card.js +1 -1
  86. package/dist/cdn/foxy-tax-form.js +1 -1
  87. package/dist/cdn/foxy-template-config-form.js +1 -1
  88. package/dist/cdn/foxy-template-form.js +1 -1
  89. package/dist/cdn/foxy-template-set-card.js +1 -1
  90. package/dist/cdn/foxy-template-set-form.js +1 -1
  91. package/dist/cdn/foxy-transaction-card.js +1 -1
  92. package/dist/cdn/foxy-transaction.js +1 -1
  93. package/dist/cdn/foxy-transactions-table.js +1 -1
  94. package/dist/cdn/foxy-user-card.js +1 -1
  95. package/dist/cdn/foxy-user-form.js +1 -1
  96. package/dist/cdn/foxy-users-table.js +1 -1
  97. package/dist/cdn/foxy-webhook-card.js +1 -1
  98. package/dist/cdn/foxy-webhook-form.js +1 -1
  99. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  100. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  101. package/dist/cdn/{shared-3a252ccd.js → shared-049782e9.js} +1 -1
  102. package/dist/cdn/{shared-cd096e97.js → shared-0b5d50ce.js} +1 -1
  103. package/dist/cdn/shared-12931460.js +1 -0
  104. package/dist/cdn/{shared-8349938a.js → shared-14ca3629.js} +1 -1
  105. package/dist/cdn/{shared-23923638.js → shared-15517503.js} +1 -1
  106. package/dist/cdn/{shared-c40d85dc.js → shared-1add7ad8.js} +1 -1
  107. package/dist/cdn/{shared-f3f5e87e.js → shared-1e866f0d.js} +1 -1
  108. package/dist/cdn/{shared-8b73191b.js → shared-1fe6fb5d.js} +1 -1
  109. package/dist/cdn/{shared-d493355a.js → shared-2084b156.js} +1 -1
  110. package/dist/cdn/{shared-5dd31b4e.js → shared-2b1da608.js} +1 -1
  111. package/dist/cdn/{shared-cb6f2388.js → shared-3b92a24f.js} +1 -1
  112. package/dist/cdn/{shared-6b53ef85.js → shared-427496b1.js} +2 -2
  113. package/dist/cdn/{shared-6eb7dc77.js → shared-432ae505.js} +1 -1
  114. package/dist/cdn/{shared-7a290f36.js → shared-47915d1c.js} +1 -1
  115. package/dist/cdn/{shared-380db651.js → shared-4b870dd4.js} +1 -1
  116. package/dist/cdn/{shared-ad396f3c.js → shared-4b9546a9.js} +1 -1
  117. package/dist/cdn/{shared-6f465111.js → shared-4c7106a1.js} +1 -1
  118. package/dist/cdn/{shared-939fc890.js → shared-4e03da46.js} +1 -1
  119. package/dist/cdn/{shared-6fb923d5.js → shared-4f999ef4.js} +1 -1
  120. package/dist/cdn/{shared-1e5292a1.js → shared-4fd4a4d5.js} +1 -1
  121. package/dist/cdn/{shared-61a510d8.js → shared-52d27d8c.js} +1 -1
  122. package/dist/cdn/{shared-dcbaa1c5.js → shared-538d1b55.js} +1 -1
  123. package/dist/cdn/{shared-7bf46d6d.js → shared-5816e5e2.js} +1 -1
  124. package/dist/cdn/{shared-eb4b4597.js → shared-58197bb8.js} +1 -1
  125. package/dist/cdn/{shared-a6518411.js → shared-58c3cfdd.js} +1 -1
  126. package/dist/cdn/{shared-4db2c7b1.js → shared-5cd8b9a2.js} +3 -3
  127. package/dist/cdn/{shared-86768244.js → shared-5db24486.js} +1 -1
  128. package/dist/cdn/shared-5e5784f4.js +1 -0
  129. package/dist/cdn/{shared-ca58ef47.js → shared-63bee480.js} +1 -1
  130. package/dist/cdn/{shared-85bc54a6.js → shared-67fe293e.js} +1 -1
  131. package/dist/cdn/{shared-3a82d3f5.js → shared-689612d6.js} +1 -1
  132. package/dist/cdn/{shared-e28f16db.js → shared-6f373aa7.js} +1 -1
  133. package/dist/cdn/{shared-068480a3.js → shared-7996b565.js} +1 -1
  134. package/dist/cdn/{shared-c3c67413.js → shared-7a386999.js} +1 -1
  135. package/dist/cdn/{shared-39761436.js → shared-7a5338f3.js} +1 -1
  136. package/dist/cdn/{shared-6bfa699d.js → shared-7f9147ce.js} +1 -1
  137. package/dist/cdn/{shared-4c9f96ec.js → shared-88455d27.js} +1 -1
  138. package/dist/cdn/{shared-03b39ec4.js → shared-8a671339.js} +1 -1
  139. package/dist/cdn/{shared-0543c6e0.js → shared-8e83d3b5.js} +1 -1
  140. package/dist/cdn/{shared-e6066f46.js → shared-8ed26326.js} +1 -1
  141. package/dist/cdn/{shared-bd81cc08.js → shared-919a9e3e.js} +1 -1
  142. package/dist/cdn/{shared-16b542bc.js → shared-95f9f57d.js} +1 -1
  143. package/dist/cdn/{shared-e5c19ea3.js → shared-964cc4a1.js} +1 -1
  144. package/dist/cdn/{shared-0c02b4ee.js → shared-99440d56.js} +1 -1
  145. package/dist/cdn/{shared-9048c076.js → shared-a6a5bf97.js} +1 -1
  146. package/dist/cdn/{shared-53fee01f.js → shared-ae0df6b9.js} +1 -1
  147. package/dist/cdn/{shared-43520428.js → shared-b7d2ce09.js} +1 -1
  148. package/dist/cdn/{shared-aeec3cab.js → shared-cf05ab20.js} +1 -1
  149. package/dist/cdn/{shared-0dc1d012.js → shared-d09de321.js} +1 -1
  150. package/dist/cdn/{shared-4abfda9b.js → shared-d8052238.js} +1 -1
  151. package/dist/cdn/{shared-b95ef318.js → shared-e62effb6.js} +1 -1
  152. package/dist/cdn/{shared-2756a4f0.js → shared-eac3b80a.js} +1 -1
  153. package/dist/cdn/{shared-7c5754a4.js → shared-f4561476.js} +1 -1
  154. package/dist/cdn/{shared-b88e35b7.js → shared-f7469049.js} +1 -1
  155. package/dist/cdn/{shared-08ff9a8d.js → shared-f7fc8f00.js} +1 -1
  156. package/dist/cdn/{shared-ee13d1a6.js → shared-fae8bf5d.js} +1 -1
  157. package/dist/cdn/{shared-bb009254.js → shared-ff45081a.js} +1 -1
  158. package/dist/cdn/{shared-fbfb0943.js → shared-ffb7548e.js} +1 -1
  159. package/dist/cdn/translations/client-card/en.json +10 -0
  160. package/dist/cdn/translations/client-form/en.json +74 -0
  161. package/dist/cdn/translations/passkey-card/en.json +9 -0
  162. package/dist/cdn/translations/passkey-form/en.json +34 -0
  163. package/dist/elements/private/Dialog/Dialog.js +10 -1
  164. package/dist/elements/private/Dialog/Dialog.js.map +1 -1
  165. package/dist/elements/public/ClientCard/ClientCard.d.ts +17 -0
  166. package/dist/elements/public/ClientCard/ClientCard.js +46 -0
  167. package/dist/elements/public/ClientCard/ClientCard.js.map +1 -0
  168. package/dist/elements/public/ClientCard/index.d.ts +3 -0
  169. package/dist/elements/public/ClientCard/index.js +5 -0
  170. package/dist/elements/public/ClientCard/index.js.map +1 -0
  171. package/dist/elements/public/ClientCard/types.d.ts +3 -0
  172. package/dist/elements/public/ClientCard/types.js +2 -0
  173. package/dist/elements/public/ClientCard/types.js.map +1 -0
  174. package/dist/elements/public/ClientForm/ClientForm.d.ts +62 -0
  175. package/dist/elements/public/ClientForm/ClientForm.js +108 -0
  176. package/dist/elements/public/ClientForm/ClientForm.js.map +1 -0
  177. package/dist/elements/public/ClientForm/index.d.ts +5 -0
  178. package/dist/elements/public/ClientForm/index.js +7 -0
  179. package/dist/elements/public/ClientForm/index.js.map +1 -0
  180. package/dist/elements/public/ClientForm/types.d.ts +35 -0
  181. package/dist/elements/public/ClientForm/types.js +2 -0
  182. package/dist/elements/public/ClientForm/types.js.map +1 -0
  183. package/dist/elements/public/PasskeyCard/PasskeyCard.d.ts +22 -0
  184. package/dist/elements/public/PasskeyCard/PasskeyCard.js +42 -0
  185. package/dist/elements/public/PasskeyCard/PasskeyCard.js.map +1 -0
  186. package/dist/elements/public/PasskeyCard/index.d.ts +3 -0
  187. package/dist/elements/public/PasskeyCard/index.js +5 -0
  188. package/dist/elements/public/PasskeyCard/index.js.map +1 -0
  189. package/dist/elements/public/PasskeyCard/types.d.ts +33 -0
  190. package/dist/elements/public/PasskeyCard/types.js +2 -0
  191. package/dist/elements/public/PasskeyCard/types.js.map +1 -0
  192. package/dist/elements/public/PasskeyForm/PasskeyForm.d.ts +36 -0
  193. package/dist/elements/public/PasskeyForm/PasskeyForm.js +52 -0
  194. package/dist/elements/public/PasskeyForm/PasskeyForm.js.map +1 -0
  195. package/dist/elements/public/PasskeyForm/index.d.ts +6 -0
  196. package/dist/elements/public/PasskeyForm/index.js +8 -0
  197. package/dist/elements/public/PasskeyForm/index.js.map +1 -0
  198. package/dist/elements/public/PasskeyForm/types.d.ts +17 -0
  199. package/dist/elements/public/PasskeyForm/types.js +2 -0
  200. package/dist/elements/public/PasskeyForm/types.js.map +1 -0
  201. package/dist/elements/public/WebhookCard/WebhookCard.js +5 -17
  202. package/dist/elements/public/WebhookCard/WebhookCard.js.map +1 -1
  203. package/dist/elements/public/WebhookCard/index.d.ts +0 -2
  204. package/dist/elements/public/WebhookCard/index.js +0 -2
  205. package/dist/elements/public/WebhookCard/index.js.map +1 -1
  206. package/dist/elements/public/index.d.ts +4 -0
  207. package/dist/elements/public/index.defined.d.ts +4 -0
  208. package/dist/elements/public/index.defined.js +4 -0
  209. package/dist/elements/public/index.defined.js.map +1 -1
  210. package/dist/elements/public/index.js +4 -0
  211. package/dist/elements/public/index.js.map +1 -1
  212. package/dist/mixins/themeable.js +4 -0
  213. package/dist/mixins/themeable.js.map +1 -1
  214. package/package.json +3 -2
  215. package/dist/cdn/shared-49d978e1.js +0 -1
  216. package/dist/cdn/shared-9e60ef60.js +0 -1
@@ -0,0 +1,62 @@
1
+ import type { Data, Templates } from './types';
2
+ import type { TemplateResult } from 'lit-html';
3
+ import { BooleanSelector } from '@foxy.io/sdk/core';
4
+ import { InternalForm } from '../../internal/InternalForm/InternalForm';
5
+ declare const Base: typeof InternalForm & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
6
+ defaultNS: string;
7
+ };
8
+ /**
9
+ * Form element for viewing and deleting clients (`fx:client`).
10
+ *
11
+ * @slot client-id:before
12
+ * @slot client-id:after
13
+ *
14
+ * @slot client-secret:before
15
+ * @slot client-secret:after
16
+ *
17
+ * @slot redirect-uri:before
18
+ * @slot redirect-uri:after
19
+ *
20
+ * @slot project-name:before
21
+ * @slot project-name:after
22
+ *
23
+ * @slot project-description:before
24
+ * @slot project-description:after
25
+ *
26
+ * @slot company-name:before
27
+ * @slot company-name:after
28
+ *
29
+ * @slot company-url:before
30
+ * @slot company-url:after
31
+ *
32
+ * @slot company-logo:before
33
+ * @slot company-logo:after
34
+ *
35
+ * @slot contact-name:before
36
+ * @slot contact-name:after
37
+ *
38
+ * @slot contact-email:before
39
+ * @slot contact-email:after
40
+ *
41
+ * @slot contact-phone:before
42
+ * @slot contact-phone:after
43
+ *
44
+ * @slot timestamps:before
45
+ * @slot timestamps:after
46
+ *
47
+ * @slot create:before
48
+ * @slot create:after
49
+ *
50
+ * @slot delete:before
51
+ * @slot delete:after
52
+ *
53
+ * @element foxy-client-form
54
+ * @since 1.24.0
55
+ */
56
+ export declare class ClientForm extends Base<Data> {
57
+ templates: Templates;
58
+ get readonlySelector(): BooleanSelector;
59
+ get hiddenSelector(): BooleanSelector;
60
+ renderBody(): TemplateResult;
61
+ }
62
+ export {};
@@ -0,0 +1,108 @@
1
+ import { TranslatableMixin } from "../../../mixins/translatable.js";
2
+ import { ResponsiveMixin } from "../../../mixins/responsive.js";
3
+ import { BooleanSelector } from '@foxy.io/sdk/core';
4
+ import { InternalForm } from "../../internal/InternalForm/InternalForm.js";
5
+ import { html } from 'lit-element';
6
+ const NS = 'client-form';
7
+ const Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));
8
+ /**
9
+ * Form element for viewing and deleting clients (`fx:client`).
10
+ *
11
+ * @slot client-id:before
12
+ * @slot client-id:after
13
+ *
14
+ * @slot client-secret:before
15
+ * @slot client-secret:after
16
+ *
17
+ * @slot redirect-uri:before
18
+ * @slot redirect-uri:after
19
+ *
20
+ * @slot project-name:before
21
+ * @slot project-name:after
22
+ *
23
+ * @slot project-description:before
24
+ * @slot project-description:after
25
+ *
26
+ * @slot company-name:before
27
+ * @slot company-name:after
28
+ *
29
+ * @slot company-url:before
30
+ * @slot company-url:after
31
+ *
32
+ * @slot company-logo:before
33
+ * @slot company-logo:after
34
+ *
35
+ * @slot contact-name:before
36
+ * @slot contact-name:after
37
+ *
38
+ * @slot contact-email:before
39
+ * @slot contact-email:after
40
+ *
41
+ * @slot contact-phone:before
42
+ * @slot contact-phone:after
43
+ *
44
+ * @slot timestamps:before
45
+ * @slot timestamps:after
46
+ *
47
+ * @slot create:before
48
+ * @slot create:after
49
+ *
50
+ * @slot delete:before
51
+ * @slot delete:after
52
+ *
53
+ * @element foxy-client-form
54
+ * @since 1.24.0
55
+ */
56
+ export class ClientForm extends Base {
57
+ constructor() {
58
+ super(...arguments);
59
+ this.templates = {};
60
+ }
61
+ get readonlySelector() {
62
+ const alwaysMatch = ['client-secret'];
63
+ if (this.data || this.in({ busy: 'fetching' }))
64
+ alwaysMatch.push('client-id');
65
+ return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.readonlySelector.toString()}`);
66
+ }
67
+ get hiddenSelector() {
68
+ const alwaysMatch = [];
69
+ if (!this.data && !this.in({ busy: 'fetching' }))
70
+ alwaysMatch.push('client-secret');
71
+ return new BooleanSelector(`${alwaysMatch.join(' ')} ${super.hiddenSelector.toString()}`);
72
+ }
73
+ renderBody() {
74
+ return html `
75
+ <div class="grid grid-cols-2 gap-m">
76
+ <foxy-internal-text-control class="col-span-2" infer="client-id">
77
+ </foxy-internal-text-control>
78
+
79
+ <foxy-internal-text-control class="col-span-2" infer="client-secret">
80
+ </foxy-internal-text-control>
81
+
82
+ <foxy-internal-text-control class="col-span-2" infer="redirect-uri">
83
+ </foxy-internal-text-control>
84
+
85
+ <foxy-internal-text-control class="col-span-2" infer="project-name">
86
+ </foxy-internal-text-control>
87
+
88
+ <foxy-internal-text-area-control class="col-span-2" infer="project-description">
89
+ </foxy-internal-text-area-control>
90
+
91
+ <foxy-internal-text-control infer="company-name"></foxy-internal-text-control>
92
+ <foxy-internal-text-control infer="company-url"></foxy-internal-text-control>
93
+
94
+ <foxy-internal-text-control class="col-span-2" infer="company-logo">
95
+ </foxy-internal-text-control>
96
+
97
+ <foxy-internal-text-control class="col-span-2" infer="contact-name">
98
+ </foxy-internal-text-control>
99
+
100
+ <foxy-internal-text-control infer="contact-email"></foxy-internal-text-control>
101
+ <foxy-internal-text-control infer="contact-phone"></foxy-internal-text-control>
102
+ </div>
103
+
104
+ ${super.renderBody()}
105
+ `;
106
+ }
107
+ }
108
+ //# sourceMappingURL=ClientForm.js.map
@@ -0,0 +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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,OAAO,UAAW,SAAQ,IAAU;IAA1C;;QACE,cAAS,GAAc,EAAE,CAAC;IAgD5B,CAAC;IA9CC,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8BP,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { Data, Templates } 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 * @slot client-id:before\n * @slot client-id:after\n *\n * @slot client-secret:before\n * @slot client-secret:after\n *\n * @slot redirect-uri:before\n * @slot redirect-uri:after\n *\n * @slot project-name:before\n * @slot project-name:after\n *\n * @slot project-description:before\n * @slot project-description:after\n *\n * @slot company-name:before\n * @slot company-name:after\n *\n * @slot company-url:before\n * @slot company-url:after\n *\n * @slot company-logo:before\n * @slot company-logo:after\n *\n * @slot contact-name:before\n * @slot contact-name:after\n *\n * @slot contact-email:before\n * @slot contact-email:after\n *\n * @slot contact-phone:before\n * @slot contact-phone:after\n *\n * @slot timestamps:before\n * @slot timestamps:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @element foxy-client-form\n * @since 1.24.0\n */\nexport class ClientForm extends Base<Data> {\n templates: Templates = {};\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 <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"]}
@@ -0,0 +1,5 @@
1
+ import '../../internal/InternalTextAreaControl/index';
2
+ import '../../internal/InternalTextControl/index';
3
+ import '../../internal/InternalForm/index';
4
+ import { ClientForm } from './ClientForm';
5
+ export { ClientForm };
@@ -0,0 +1,7 @@
1
+ import "../../internal/InternalTextAreaControl/index.js";
2
+ import "../../internal/InternalTextControl/index.js";
3
+ import "../../internal/InternalForm/index.js";
4
+ import { ClientForm } from "./ClientForm.js";
5
+ customElements.define('foxy-client-form', ClientForm);
6
+ export { ClientForm };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +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"]}
@@ -0,0 +1,35 @@
1
+ import type { ClientForm } from './ClientForm';
2
+ import type { Renderer } from '../../../mixins/configurable';
3
+ import type { Resource } from '@foxy.io/sdk/core';
4
+ import type { Rels } from '@foxy.io/sdk/backend';
5
+ export declare type Data = Resource<Rels.Client>;
6
+ export declare type Templates = {
7
+ 'client-id:before'?: Renderer<ClientForm>;
8
+ 'client-id:after'?: Renderer<ClientForm>;
9
+ 'client-secret:before'?: Renderer<ClientForm>;
10
+ 'client-secret:after'?: Renderer<ClientForm>;
11
+ 'redirect-uri:before'?: Renderer<ClientForm>;
12
+ 'redirect-uri:after'?: Renderer<ClientForm>;
13
+ 'project-name:before'?: Renderer<ClientForm>;
14
+ 'project-name:after'?: Renderer<ClientForm>;
15
+ 'project-description:before'?: Renderer<ClientForm>;
16
+ 'project-description:after'?: Renderer<ClientForm>;
17
+ 'company-name:before'?: Renderer<ClientForm>;
18
+ 'company-name:after'?: Renderer<ClientForm>;
19
+ 'company-url:before'?: Renderer<ClientForm>;
20
+ 'company-url:after'?: Renderer<ClientForm>;
21
+ 'company-logo:before'?: Renderer<ClientForm>;
22
+ 'company-logo:after'?: Renderer<ClientForm>;
23
+ 'contact-name:before'?: Renderer<ClientForm>;
24
+ 'contact-name:after'?: Renderer<ClientForm>;
25
+ 'contact-email:before'?: Renderer<ClientForm>;
26
+ 'contact-email:after'?: Renderer<ClientForm>;
27
+ 'contact-phone:before'?: Renderer<ClientForm>;
28
+ 'contact-phone:after'?: Renderer<ClientForm>;
29
+ 'timestamps:before'?: Renderer<ClientForm>;
30
+ 'timestamps:after'?: Renderer<ClientForm>;
31
+ 'create:before'?: Renderer<ClientForm>;
32
+ 'create:after'?: Renderer<ClientForm>;
33
+ 'delete:before'?: Renderer<ClientForm>;
34
+ 'delete:after'?: Renderer<ClientForm>;
35
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/elements/public/ClientForm/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ClientForm } from './ClientForm';\nimport type { Renderer } from '../../../mixins/configurable';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nexport type Data = Resource<Rels.Client>;\n\nexport type Templates = {\n 'client-id:before'?: Renderer<ClientForm>;\n 'client-id:after'?: Renderer<ClientForm>;\n 'client-secret:before'?: Renderer<ClientForm>;\n 'client-secret:after'?: Renderer<ClientForm>;\n 'redirect-uri:before'?: Renderer<ClientForm>;\n 'redirect-uri:after'?: Renderer<ClientForm>;\n 'project-name:before'?: Renderer<ClientForm>;\n 'project-name:after'?: Renderer<ClientForm>;\n 'project-description:before'?: Renderer<ClientForm>;\n 'project-description:after'?: Renderer<ClientForm>;\n 'company-name:before'?: Renderer<ClientForm>;\n 'company-name:after'?: Renderer<ClientForm>;\n 'company-url:before'?: Renderer<ClientForm>;\n 'company-url:after'?: Renderer<ClientForm>;\n 'company-logo:before'?: Renderer<ClientForm>;\n 'company-logo:after'?: Renderer<ClientForm>;\n 'contact-name:before'?: Renderer<ClientForm>;\n 'contact-name:after'?: Renderer<ClientForm>;\n 'contact-email:before'?: Renderer<ClientForm>;\n 'contact-email:after'?: Renderer<ClientForm>;\n 'contact-phone:before'?: Renderer<ClientForm>;\n 'contact-phone:after'?: Renderer<ClientForm>;\n 'timestamps:before'?: Renderer<ClientForm>;\n 'timestamps:after'?: Renderer<ClientForm>;\n 'create:before'?: Renderer<ClientForm>;\n 'create:after'?: Renderer<ClientForm>;\n 'delete:before'?: Renderer<ClientForm>;\n 'delete:after'?: Renderer<ClientForm>;\n};\n"]}
@@ -0,0 +1,22 @@
1
+ import type { TemplateResult } from 'lit-element';
2
+ import type { Data } from './types';
3
+ import { TwoLineCard } from '../CustomFieldCard/TwoLineCard';
4
+ declare const Base: typeof TwoLineCard & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
5
+ defaultNS: string;
6
+ };
7
+ /**
8
+ * Basic card displaying a saved passkey.
9
+ *
10
+ * @slot title:before
11
+ * @slot title:after
12
+ *
13
+ * @slot subtitle:before
14
+ * @slot subtitle:after
15
+ *
16
+ * @element foxy-passkey-card
17
+ * @since 1.24.0
18
+ */
19
+ export declare class PasskeyCard extends Base<Data> {
20
+ renderBody(): TemplateResult;
21
+ }
22
+ export {};
@@ -0,0 +1,42 @@
1
+ import { TranslatableMixin } from "../../../mixins/translatable.js";
2
+ import { TwoLineCard } from "../CustomFieldCard/TwoLineCard.js";
3
+ import { html } from 'lit-html';
4
+ import uainfer from 'uainfer/src/uainfer.js';
5
+ const NS = 'passkey-card';
6
+ const Base = TranslatableMixin(TwoLineCard, NS);
7
+ /**
8
+ * Basic card displaying a saved passkey.
9
+ *
10
+ * @slot title:before
11
+ * @slot title:after
12
+ *
13
+ * @slot subtitle:before
14
+ * @slot subtitle:after
15
+ *
16
+ * @element foxy-passkey-card
17
+ * @since 1.24.0
18
+ */
19
+ export class PasskeyCard extends Base {
20
+ renderBody() {
21
+ return super.renderBody({
22
+ title: data => html `${data.credential_id}`,
23
+ subtitle: data => {
24
+ let options;
25
+ let key;
26
+ if (data.last_login_date && data.last_login_ua) {
27
+ options = {
28
+ last_login_date: new Date(data.last_login_date),
29
+ last_login_ua: uainfer.analyze(data.last_login_ua).toString(),
30
+ };
31
+ key = 'subtitle';
32
+ }
33
+ else {
34
+ options = {};
35
+ key = 'subtitle_no_data';
36
+ }
37
+ return html `<foxy-i18n infer="" key=${key} .options=${options}></foxy-i18n>`;
38
+ },
39
+ });
40
+ }
41
+ }
42
+ //# sourceMappingURL=PasskeyCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasskeyCard.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyCard/PasskeyCard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,WAAW,EAAE,0CAAuC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAE7C,MAAM,EAAE,GAAG,cAAc,CAAC;AAC1B,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,WAAY,SAAQ,IAAU;IACzC,UAAU;QACR,OAAO,KAAK,CAAC,UAAU,CAAC;YACtB,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,aAAa,EAAE;YAC1C,QAAQ,EAAE,IAAI,CAAC,EAAE;gBACf,IAAI,OAAY,CAAC;gBACjB,IAAI,GAAW,CAAC;gBAEhB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,EAAE;oBAC9C,OAAO,GAAG;wBACR,eAAe,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;wBAC/C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;qBAC9D,CAAC;oBACF,GAAG,GAAG,UAAU,CAAC;iBAClB;qBAAM;oBACL,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,GAAG,kBAAkB,CAAC;iBAC1B;gBAED,OAAO,IAAI,CAAA,2BAA2B,GAAG,aAAa,OAAO,eAAe,CAAC;YAC/E,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import type { TemplateResult } from 'lit-element';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { TwoLineCard } from '../CustomFieldCard/TwoLineCard';\nimport { html } from 'lit-html';\n\nimport uainfer from 'uainfer/src/uainfer.js';\n\nconst NS = 'passkey-card';\nconst Base = TranslatableMixin(TwoLineCard, NS);\n\n/**\n * Basic card displaying a saved passkey.\n *\n * @slot title:before\n * @slot title:after\n *\n * @slot subtitle:before\n * @slot subtitle:after\n *\n * @element foxy-passkey-card\n * @since 1.24.0\n */\nexport class PasskeyCard extends Base<Data> {\n renderBody(): TemplateResult {\n return super.renderBody({\n title: data => html`${data.credential_id}`,\n subtitle: data => {\n let options: any;\n let key: string;\n\n if (data.last_login_date && data.last_login_ua) {\n options = {\n last_login_date: new Date(data.last_login_date),\n last_login_ua: uainfer.analyze(data.last_login_ua).toString(),\n };\n key = 'subtitle';\n } else {\n options = {};\n key = 'subtitle_no_data';\n }\n\n return html`<foxy-i18n infer=\"\" key=${key} .options=${options}></foxy-i18n>`;\n },\n });\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import '../../internal/InternalCard/index';
2
+ import { PasskeyCard } from './PasskeyCard';
3
+ export { PasskeyCard };
@@ -0,0 +1,5 @@
1
+ import "../../internal/InternalCard/index.js";
2
+ import { PasskeyCard } from "./PasskeyCard.js";
3
+ customElements.define('foxy-passkey-card', PasskeyCard);
4
+ export { PasskeyCard };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyCard/index.ts"],"names":[],"mappings":"AAAA,8CAA2C;AAE3C,OAAO,EAAE,WAAW,EAAE,yBAAsB;AAE5C,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,CAAC","sourcesContent":["import '../../internal/InternalCard/index';\n\nimport { PasskeyCard } from './PasskeyCard';\n\ncustomElements.define('foxy-passkey-card', PasskeyCard);\n\nexport { PasskeyCard };\n"]}
@@ -0,0 +1,33 @@
1
+ import type { CollectionGraphLinks, CollectionGraphProps } from '@foxy.io/sdk/dist/types/core/defaults';
2
+ import type { Graph, Resource } from '@foxy.io/sdk/core';
3
+ import type { PasskeyCard } from './PasskeyCard';
4
+ import type { Renderer } from '../../../mixins/configurable';
5
+ import type { Rels } from '@foxy.io/sdk/backend';
6
+ export interface Passkeys extends Graph {
7
+ curie: 'fx:passkeys';
8
+ links: CollectionGraphLinks<Passkeys>;
9
+ props: CollectionGraphProps;
10
+ child: Passkey;
11
+ }
12
+ export interface Passkey extends Graph {
13
+ curie: 'fx:passkey';
14
+ links: {
15
+ 'self': Passkey;
16
+ 'fx:user': Rels.User;
17
+ 'fx:passkeys': Passkeys;
18
+ };
19
+ props: {
20
+ last_login_date: string | null;
21
+ last_login_ua: string | null;
22
+ credential_id: string;
23
+ date_created: string | null;
24
+ date_modified: string | null;
25
+ };
26
+ }
27
+ export declare type Data = Resource<Passkey>;
28
+ export declare type Templates = {
29
+ 'title:before'?: Renderer<PasskeyCard>;
30
+ 'title:after'?: Renderer<PasskeyCard>;
31
+ 'subtitle:before'?: Renderer<PasskeyCard>;
32
+ 'subtitle:after'?: Renderer<PasskeyCard>;
33
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyCard/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n CollectionGraphLinks,\n CollectionGraphProps,\n} from '@foxy.io/sdk/dist/types/core/defaults';\n\nimport type { Graph, Resource } from '@foxy.io/sdk/core';\nimport type { PasskeyCard } from './PasskeyCard';\nimport type { Renderer } from '../../../mixins/configurable';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nexport interface Passkeys extends Graph {\n curie: 'fx:passkeys';\n links: CollectionGraphLinks<Passkeys>;\n props: CollectionGraphProps;\n child: Passkey;\n}\n\nexport interface Passkey extends Graph {\n curie: 'fx:passkey';\n links: {\n 'self': Passkey;\n 'fx:user': Rels.User;\n 'fx:passkeys': Passkeys;\n };\n props: {\n last_login_date: string | null;\n last_login_ua: string | null;\n credential_id: string;\n date_created: string | null;\n date_modified: string | null;\n };\n}\n\nexport type Data = Resource<Passkey>;\n\nexport type Templates = {\n 'title:before'?: Renderer<PasskeyCard>;\n 'title:after'?: Renderer<PasskeyCard>;\n 'subtitle:before'?: Renderer<PasskeyCard>;\n 'subtitle:after'?: Renderer<PasskeyCard>;\n};\n"]}
@@ -0,0 +1,36 @@
1
+ import type { TemplateResult } from 'lit-html';
2
+ import type { Data } from './types';
3
+ import { InternalForm } from '../../internal/InternalForm/InternalForm';
4
+ import { BooleanSelector } from '@foxy.io/sdk/core';
5
+ declare const Base: typeof InternalForm & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
6
+ defaultNS: string;
7
+ };
8
+ /**
9
+ * Form element for viewing and deleting passkeys (`fx:passkey`).
10
+ *
11
+ * @slot credential-id:before
12
+ * @slot credential-id:after
13
+ *
14
+ * @slot last-login-date:before
15
+ * @slot last-login-date:after
16
+ *
17
+ * @slot last-login-ua:before
18
+ * @slot last-login-ua:after
19
+ *
20
+ * @slot timestamps:before
21
+ * @slot timestamps:after
22
+ *
23
+ * @slot create:before
24
+ * @slot create:after
25
+ *
26
+ * @slot delete:before
27
+ * @slot delete:after
28
+ *
29
+ * @element foxy-passkey-form
30
+ * @since 1.24.0
31
+ */
32
+ export declare class PasskeyForm extends Base<Data> {
33
+ get readonlySelector(): BooleanSelector;
34
+ renderBody(): TemplateResult;
35
+ }
36
+ export {};
@@ -0,0 +1,52 @@
1
+ import { TranslatableMixin } from "../../../mixins/translatable.js";
2
+ import { ResponsiveMixin } from "../../../mixins/responsive.js";
3
+ import { InternalForm } from "../../internal/InternalForm/InternalForm.js";
4
+ import { html } from 'lit-element';
5
+ import { BooleanSelector } from '@foxy.io/sdk/core';
6
+ const NS = 'passkey-form';
7
+ const Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));
8
+ /**
9
+ * Form element for viewing and deleting passkeys (`fx:passkey`).
10
+ *
11
+ * @slot credential-id:before
12
+ * @slot credential-id:after
13
+ *
14
+ * @slot last-login-date:before
15
+ * @slot last-login-date:after
16
+ *
17
+ * @slot last-login-ua:before
18
+ * @slot last-login-ua:after
19
+ *
20
+ * @slot timestamps:before
21
+ * @slot timestamps:after
22
+ *
23
+ * @slot create:before
24
+ * @slot create:after
25
+ *
26
+ * @slot delete:before
27
+ * @slot delete:after
28
+ *
29
+ * @element foxy-passkey-form
30
+ * @since 1.24.0
31
+ */
32
+ export class PasskeyForm extends Base {
33
+ get readonlySelector() {
34
+ return new BooleanSelector(`credential-id last-login-date last-login-ua ${super.readonlySelector.toString()}`);
35
+ }
36
+ renderBody() {
37
+ if (!this.data) {
38
+ return html `
39
+ <div class="p-xl flex items-center justify-center">
40
+ <foxy-spinner infer="spinner" state="empty" layout="vertical"></foxy-spinner>
41
+ </div>
42
+ `;
43
+ }
44
+ return html `
45
+ <foxy-internal-text-control infer="credential-id"></foxy-internal-text-control>
46
+ <foxy-internal-text-control infer="last-login-date"></foxy-internal-text-control>
47
+ <foxy-internal-text-area-control infer="last-login-ua"></foxy-internal-text-area-control>
48
+ ${super.renderBody()}
49
+ `;
50
+ }
51
+ }
52
+ //# sourceMappingURL=PasskeyForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasskeyForm.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyForm/PasskeyForm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,eAAe,EAAE,sCAAmC;AAC7D,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,EAAE,GAAG,cAAc,CAAC;AAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,OAAO,WAAY,SAAQ,IAAU;IACzC,IAAI,gBAAgB;QAClB,OAAO,IAAI,eAAe,CACxB,+CAA+C,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CACnF,CAAC;IACJ,CAAC;IAED,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO,IAAI,CAAA;;;;OAIV,CAAC;SACH;QAED,OAAO,IAAI,CAAA;;;;QAIP,KAAK,CAAC,UAAU,EAAE;KACrB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Data } from './types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-element';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\n\nconst NS = 'passkey-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for viewing and deleting passkeys (`fx:passkey`).\n *\n * @slot credential-id:before\n * @slot credential-id:after\n *\n * @slot last-login-date:before\n * @slot last-login-date:after\n *\n * @slot last-login-ua:before\n * @slot last-login-ua:after\n *\n * @slot timestamps:before\n * @slot timestamps:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @element foxy-passkey-form\n * @since 1.24.0\n */\nexport class PasskeyForm extends Base<Data> {\n get readonlySelector(): BooleanSelector {\n return new BooleanSelector(\n `credential-id last-login-date last-login-ua ${super.readonlySelector.toString()}`\n );\n }\n\n renderBody(): TemplateResult {\n if (!this.data) {\n return html`\n <div class=\"p-xl flex items-center justify-center\">\n <foxy-spinner infer=\"spinner\" state=\"empty\" layout=\"vertical\"></foxy-spinner>\n </div>\n `;\n }\n\n return html`\n <foxy-internal-text-control infer=\"credential-id\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"last-login-date\"></foxy-internal-text-control>\n <foxy-internal-text-area-control infer=\"last-login-ua\"></foxy-internal-text-area-control>\n ${super.renderBody()}\n `;\n }\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import '../../internal/InternalTextAreaControl/index';
2
+ import '../../internal/InternalTextControl/index';
3
+ import '../../internal/InternalForm/index';
4
+ import '../Spinner/index';
5
+ import { PasskeyForm } from './PasskeyForm';
6
+ export { PasskeyForm };
@@ -0,0 +1,8 @@
1
+ import "../../internal/InternalTextAreaControl/index.js";
2
+ import "../../internal/InternalTextControl/index.js";
3
+ import "../../internal/InternalForm/index.js";
4
+ import "../Spinner/index.js";
5
+ import { PasskeyForm } from "./PasskeyForm.js";
6
+ customElements.define('foxy-passkey-form', PasskeyForm);
7
+ export { PasskeyForm };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyForm/index.ts"],"names":[],"mappings":"AAAA,yDAAsD;AACtD,qDAAkD;AAClD,8CAA2C;AAC3C,6BAA0B;AAE1B,OAAO,EAAE,WAAW,EAAE,yBAAsB;AAE5C,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,CAAC","sourcesContent":["import '../../internal/InternalTextAreaControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\nimport '../Spinner/index';\n\nimport { PasskeyForm } from './PasskeyForm';\n\ncustomElements.define('foxy-passkey-form', PasskeyForm);\n\nexport { PasskeyForm };\n"]}
@@ -0,0 +1,17 @@
1
+ import type { PasskeyForm } from './PasskeyForm';
2
+ import type { Renderer } from '../../../mixins/configurable';
3
+ export type { Data } from '../PasskeyCard/types';
4
+ export declare type Templates = {
5
+ 'credential-id:before'?: Renderer<PasskeyForm>;
6
+ 'credential-id:after'?: Renderer<PasskeyForm>;
7
+ 'last-login-date:before'?: Renderer<PasskeyForm>;
8
+ 'last-login-date:after'?: Renderer<PasskeyForm>;
9
+ 'last-login-ua:before'?: Renderer<PasskeyForm>;
10
+ 'last-login-ua:after'?: Renderer<PasskeyForm>;
11
+ 'timestamps:before'?: Renderer<PasskeyForm>;
12
+ 'timestamps:after'?: Renderer<PasskeyForm>;
13
+ 'create:before'?: Renderer<PasskeyForm>;
14
+ 'create:after'?: Renderer<PasskeyForm>;
15
+ 'delete:before'?: Renderer<PasskeyForm>;
16
+ 'delete:after'?: Renderer<PasskeyForm>;
17
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/elements/public/PasskeyForm/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { PasskeyForm } from './PasskeyForm';\nimport type { Renderer } from '../../../mixins/configurable';\n\nexport type { Data } from '../PasskeyCard/types';\n\nexport type Templates = {\n 'credential-id:before'?: Renderer<PasskeyForm>;\n 'credential-id:after'?: Renderer<PasskeyForm>;\n 'last-login-date:before'?: Renderer<PasskeyForm>;\n 'last-login-date:after'?: Renderer<PasskeyForm>;\n 'last-login-ua:before'?: Renderer<PasskeyForm>;\n 'last-login-ua:after'?: Renderer<PasskeyForm>;\n 'timestamps:before'?: Renderer<PasskeyForm>;\n 'timestamps:after'?: Renderer<PasskeyForm>;\n 'create:before'?: Renderer<PasskeyForm>;\n 'create:after'?: Renderer<PasskeyForm>;\n 'delete:before'?: Renderer<PasskeyForm>;\n 'delete:after'?: Renderer<PasskeyForm>;\n};\n"]}
@@ -11,24 +11,12 @@ export class WebhookCard extends TranslatableMixin(InternalCard, 'webhook-card')
11
11
  renderBody() {
12
12
  var _a, _b, _c, _d;
13
13
  return html `
14
- <div class="grid grid-cols-1 gap-s leading-none">
15
- <p class="flex justify-between items-center font-medium">
16
- <span class="truncate">${(_a = this.data) === null || _a === void 0 ? void 0 : _a.name}&ZeroWidthSpace;</span>
17
- <span class="uppercase inline-block text-xs bg-contrast-5 rounded p-xs flex-shrink-0">
18
- ${(_b = this.data) === null || _b === void 0 ? void 0 : _b.format}&ZeroWidthSpace;
19
- </span>
14
+ <div class="grid grid-cols-1 leading-s -my-xs">
15
+ <p class="text-m truncate text-body font-medium">${(_a = this.data) === null || _a === void 0 ? void 0 : _a.name}&ZeroWidthSpace;</p>
16
+ <p class="text-s truncate text-secondary">${(_b = this.data) === null || _b === void 0 ? void 0 : _b.url}&ZeroWidthSpace;</p>
17
+ <p class="text-s truncate text-tertiary">
18
+ ${(_c = this.data) === null || _c === void 0 ? void 0 : _c.format} &bull; ${(_d = this.data) === null || _d === void 0 ? void 0 : _d.event_resource}&ZeroWidthSpace;
20
19
  </p>
21
-
22
- <div class="flex items-center gap-s text-secondary">
23
- <iron-icon class="icon-inline flex-shrink-0" icon="icons:language"></iron-icon>
24
- <p class="truncate">${(_c = this.data) === null || _c === void 0 ? void 0 : _c.url}&ZeroWidthSpace;</p>
25
- </div>
26
-
27
- <div class="flex items-center gap-s text-secondary">
28
- <iron-icon class="icon-inline flex-shrink-0" icon="icons:settings-input-antenna">
29
- </iron-icon>
30
- <p class="truncate">${(_d = this.data) === null || _d === void 0 ? void 0 : _d.event_resource}&ZeroWidthSpace;</p>
31
- </div>
32
20
  </div>
33
21
  `;
34
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WebhookCard.js","sourceRoot":"","sources":["../../../../src/elements/public/WebhookCard/WebhookCard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AAEjE;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,iBAAiB,CAAC,YAAY,EAAE,cAAc,CAAO;IACpF,UAAU;;QACR,OAAO,IAAI,CAAA;;;mCAGoB,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI;;cAEpC,MAAA,IAAI,CAAC,IAAI,0CAAE,MAAM;;;;;;gCAMC,MAAA,IAAI,CAAC,IAAI,0CAAE,GAAG;;;;;;gCAMd,MAAA,IAAI,CAAC,IAAI,0CAAE,cAAc;;;KAGpD,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Data } from './types';\n\nimport { InternalCard } from '../../internal/InternalCard/InternalCard';\nimport { html } from 'lit-html';\nimport { TranslatableMixin } from '../../../mixins/translatable';\n\n/**\n * Basic card displaying webhook (`fx:webhook`) info.\n *\n * @element foxy-webhook-card\n * @since 1.17.0\n */\nexport class WebhookCard extends TranslatableMixin(InternalCard, 'webhook-card')<Data> {\n renderBody(): TemplateResult {\n return html`\n <div class=\"grid grid-cols-1 gap-s leading-none\">\n <p class=\"flex justify-between items-center font-medium\">\n <span class=\"truncate\">${this.data?.name}&ZeroWidthSpace;</span>\n <span class=\"uppercase inline-block text-xs bg-contrast-5 rounded p-xs flex-shrink-0\">\n ${this.data?.format}&ZeroWidthSpace;\n </span>\n </p>\n\n <div class=\"flex items-center gap-s text-secondary\">\n <iron-icon class=\"icon-inline flex-shrink-0\" icon=\"icons:language\"></iron-icon>\n <p class=\"truncate\">${this.data?.url}&ZeroWidthSpace;</p>\n </div>\n\n <div class=\"flex items-center gap-s text-secondary\">\n <iron-icon class=\"icon-inline flex-shrink-0\" icon=\"icons:settings-input-antenna\">\n </iron-icon>\n <p class=\"truncate\">${this.data?.event_resource}&ZeroWidthSpace;</p>\n </div>\n </div>\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"WebhookCard.js","sourceRoot":"","sources":["../../../../src/elements/public/WebhookCard/WebhookCard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,oDAAiD;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AAEjE;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,iBAAiB,CAAC,YAAY,EAAE,cAAc,CAAO;IACpF,UAAU;;QACR,OAAO,IAAI,CAAA;;2DAE4C,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI;oDACtB,MAAA,IAAI,CAAC,IAAI,0CAAE,GAAG;;YAEtD,MAAA,IAAI,CAAC,IAAI,0CAAE,MAAM,WAAW,MAAA,IAAI,CAAC,IAAI,0CAAE,cAAc;;;KAG5D,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Data } from './types';\n\nimport { InternalCard } from '../../internal/InternalCard/InternalCard';\nimport { html } from 'lit-html';\nimport { TranslatableMixin } from '../../../mixins/translatable';\n\n/**\n * Basic card displaying webhook (`fx:webhook`) info.\n *\n * @element foxy-webhook-card\n * @since 1.17.0\n */\nexport class WebhookCard extends TranslatableMixin(InternalCard, 'webhook-card')<Data> {\n renderBody(): TemplateResult {\n return html`\n <div class=\"grid grid-cols-1 leading-s -my-xs\">\n <p class=\"text-m truncate text-body font-medium\">${this.data?.name}&ZeroWidthSpace;</p>\n <p class=\"text-s truncate text-secondary\">${this.data?.url}&ZeroWidthSpace;</p>\n <p class=\"text-s truncate text-tertiary\">\n ${this.data?.format} &bull; ${this.data?.event_resource}&ZeroWidthSpace;\n </p>\n </div>\n `;\n }\n}\n"]}
@@ -1,5 +1,3 @@
1
- import '@polymer/iron-icons';
2
- import '@polymer/iron-icon';
3
1
  import '../../internal/InternalCard/index';
4
2
  import { WebhookCard } from './WebhookCard';
5
3
  export { WebhookCard };
@@ -1,5 +1,3 @@
1
- import '@polymer/iron-icons';
2
- import '@polymer/iron-icon';
3
1
  import "../../internal/InternalCard/index.js";
4
2
  import { WebhookCard } from "./WebhookCard.js";
5
3
  customElements.define('foxy-webhook-card', WebhookCard);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/WebhookCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,oBAAoB,CAAC;AAE5B,8CAA2C;AAE3C,OAAO,EAAE,WAAW,EAAE,yBAAsB;AAE5C,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,CAAC","sourcesContent":["import '@polymer/iron-icons';\nimport '@polymer/iron-icon';\n\nimport '../../internal/InternalCard/index';\n\nimport { WebhookCard } from './WebhookCard';\n\ncustomElements.define('foxy-webhook-card', WebhookCard);\n\nexport { WebhookCard };\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/WebhookCard/index.ts"],"names":[],"mappings":"AAAA,8CAA2C;AAE3C,OAAO,EAAE,WAAW,EAAE,yBAAsB;AAE5C,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,CAAC","sourcesContent":["import '../../internal/InternalCard/index';\n\nimport { WebhookCard } from './WebhookCard';\n\ncustomElements.define('foxy-webhook-card', WebhookCard);\n\nexport { WebhookCard };\n"]}
@@ -11,6 +11,8 @@ export { AttributeForm } from './AttributeForm/AttributeForm';
11
11
  export { CancellationForm } from './CancellationForm/CancellationForm';
12
12
  export { CartCard } from './CartCard/CartCard';
13
13
  export { CartForm } from './CartForm/CartForm';
14
+ export { ClientCard } from './ClientCard/ClientCard';
15
+ export { ClientForm } from './ClientForm/ClientForm';
14
16
  export { CollectionPage } from './CollectionPage/CollectionPage';
15
17
  export { CollectionPages } from './CollectionPages/CollectionPages';
16
18
  export { CopyToClipboard } from './CopyToClipboard/CopyToClipboard';
@@ -59,6 +61,8 @@ export { ItemOptionForm } from './ItemOptionForm/ItemOptionForm';
59
61
  export { ItemsForm, Item } from './ItemsForm/ItemsForm';
60
62
  export { NucleonElement } from './NucleonElement/NucleonElement';
61
63
  export { Pagination } from './Pagination/Pagination';
64
+ export { PasskeyCard } from './PasskeyCard/PasskeyCard';
65
+ export { PasskeyForm } from './PasskeyForm/PasskeyForm';
62
66
  export { PaymentCard } from './PaymentCard/PaymentCard';
63
67
  export { ShipmentCard } from './ShipmentCard/ShipmentCard';
64
68
  export { ShippingMethodCard } from './ShippingMethodCard/ShippingMethodCard';