mountain-ui 1.0.2 → 1.0.4

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 (135) hide show
  1. package/README.md +10 -8
  2. package/index.d.ts +34 -0
  3. package/index.js +23 -25
  4. package/package.json +5 -2
  5. package/src/lib/registry/entityRegistry/components/EntityButton.svelte +8 -8
  6. package/src/lib/registry/entityRegistry/components/EntityCard.svelte +14 -14
  7. package/src/lib/registry/entityRegistry/components/EntityForm.svelte +6 -6
  8. package/src/lib/registry/entityRegistry/components/FieldButton copy.svelte +4 -4
  9. package/src/lib/registry/entityRegistry/components/FieldButton.svelte +4 -4
  10. package/src/lib/registry/entityRegistry/components/FieldCard.svelte +18 -20
  11. package/src/lib/registry/entityRegistry/components/FieldIcon.svelte +33 -14
  12. package/src/lib/registry/entityRegistry/components/FieldInput.svelte +24 -13
  13. package/src/lib/registry/entityRegistry/components/FieldIsRequiredIcon.svelte +37 -15
  14. package/src/lib/registry/entityRegistry/components/FieldIsSecretIcon.svelte +27 -12
  15. package/src/lib/registry/entityRegistry/components/FieldIsUniqueIcon.svelte +31 -14
  16. package/src/lib/registry/entityRegistry/components/FormCtx.svelte +2 -4
  17. package/src/lib/registry/entityRegistry/components/LinkIcon.svelte +25 -13
  18. package/src/lib/registry/entityRegistry/createEntity.js +34 -36
  19. package/src/lib/registry/entityRegistry/registry.svelte.js +70 -112
  20. package/src/lib/registry/fieldTypeRegistry/components/FieldTypeButton.svelte +7 -6
  21. package/src/lib/registry/fieldTypeRegistry/components/FieldTypeCard.svelte +6 -5
  22. package/src/lib/registry/fieldTypeRegistry/components/FieldTypeIcon.svelte +5 -5
  23. package/src/lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte +5 -5
  24. package/src/lib/registry/fieldTypeRegistry/components/Label.svelte +6 -6
  25. package/src/lib/registry/fieldTypeRegistry/components/Line.svelte +1 -1
  26. package/src/lib/registry/fieldTypeRegistry/createFieldType.js +25 -25
  27. package/src/lib/registry/fieldTypeRegistry/fieldTypes/FieldTypeCard.svelte +7 -8
  28. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Lines/Button.svelte +4 -6
  29. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Lines/Card.svelte +2 -2
  30. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Lines/Icon.svelte +12 -3
  31. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Lines/index.js +27 -26
  32. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Button.svelte +4 -6
  33. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Card.svelte +2 -2
  34. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Icon.svelte +8 -2
  35. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Input/Input.svelte +16 -17
  36. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Input/LinkCard.svelte +32 -39
  37. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Input/LinkCardSelection.svelte +44 -56
  38. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Input/utils.js +19 -21
  39. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/index.js +26 -26
  40. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Primary/Button.svelte +4 -6
  41. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Primary/Card.svelte +2 -2
  42. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Primary/Icon.svelte +13 -4
  43. package/src/lib/registry/fieldTypeRegistry/fieldTypes/Primary/index.js +26 -25
  44. package/src/lib/registry/fieldTypeRegistry/fieldTypes/calculation/CalculationColumn/Card.svelte +2 -2
  45. package/src/lib/registry/fieldTypeRegistry/fieldTypes/calculation/CalculationColumn/Icon.svelte +28 -7
  46. package/src/lib/registry/fieldTypeRegistry/fieldTypes/calculation/CalculationColumn/index.js +26 -26
  47. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListCheckbox/Card.svelte +2 -2
  48. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListCheckbox/Icon.svelte +8 -2
  49. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListCheckbox/index.js +26 -28
  50. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListRadio/Card.svelte +2 -2
  51. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListRadio/Icon.svelte +8 -2
  52. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListRadio/Input.svelte +49 -52
  53. package/src/lib/registry/fieldTypeRegistry/fieldTypes/list/ListRadio/index.js +41 -41
  54. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/NumberInt/Card.svelte +2 -2
  55. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/NumberInt/Icon.svelte +12 -3
  56. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/NumberInt/Input.svelte +7 -11
  57. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/NumberInt/index.js +30 -30
  58. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/FieldTypeInputFloat.svelte +1 -1
  59. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatDefault/Card.svelte +2 -2
  60. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatDefault/Icon.svelte +17 -5
  61. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatDefault/Input.svelte +9 -10
  62. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatDefault/index.js +30 -30
  63. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPercent/Card.svelte +2 -2
  64. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPercent/Icon.svelte +16 -4
  65. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPercent/Input.svelte +9 -11
  66. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPercent/index.js +30 -30
  67. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPrice/Card.svelte +2 -2
  68. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPrice/Icon.svelte +12 -3
  69. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPrice/Input.svelte +9 -11
  70. package/src/lib/registry/fieldTypeRegistry/fieldTypes/number/float/NumberFloatPrice/index.js +30 -30
  71. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/TextTextarea/Card.svelte +2 -2
  72. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/TextTextarea/Icon.svelte +24 -6
  73. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/TextTextarea/Input.svelte +12 -5
  74. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/TextTextarea/index.js +26 -28
  75. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/FieldTypeInputText.svelte +0 -1
  76. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharDefault/Card.svelte +2 -2
  77. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharDefault/Icon.svelte +24 -6
  78. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharDefault/Input.svelte +7 -10
  79. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharDefault/index.js +26 -27
  80. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharEmail/Card.svelte +2 -2
  81. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharEmail/Icon.svelte +8 -2
  82. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharEmail/Input.svelte +7 -10
  83. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharEmail/index.js +26 -27
  84. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPassword/Card.svelte +2 -2
  85. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPassword/Icon.svelte +20 -5
  86. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPassword/Input.svelte +35 -33
  87. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPassword/index.js +26 -27
  88. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPhone/Card.svelte +2 -2
  89. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPhone/Icon.svelte +4 -1
  90. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPhone/Input.svelte +5 -8
  91. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharPhone/index.js +26 -27
  92. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharUrl/Card.svelte +2 -2
  93. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharUrl/Icon.svelte +20 -5
  94. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharUrl/Input.svelte +4 -7
  95. package/src/lib/registry/fieldTypeRegistry/fieldTypes/text/varchar/TextVarcharUrl/index.js +26 -27
  96. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeCreatedAt/Card.svelte +2 -2
  97. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeCreatedAt/Icon.svelte +36 -9
  98. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeCreatedAt/index.js +25 -27
  99. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDate/Card.svelte +2 -2
  100. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDate/Icon.svelte +40 -10
  101. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDate/Input.svelte +7 -10
  102. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDate/index.js +26 -28
  103. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDatetime/Card.svelte +2 -2
  104. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDatetime/Icon.svelte +36 -9
  105. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDatetime/Input.svelte +7 -10
  106. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDatetime/index.js +26 -28
  107. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDay/Card.svelte +2 -2
  108. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDay/Icon.svelte +40 -10
  109. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDay/Input.svelte +7 -10
  110. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDay/index.js +26 -28
  111. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeHour/Card.svelte +2 -2
  112. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeHour/Icon.svelte +8 -2
  113. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeHour/Input.svelte +7 -10
  114. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeHour/index.js +26 -28
  115. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonth/Card.svelte +2 -2
  116. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonth/Icon.svelte +40 -10
  117. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonth/Input.svelte +7 -10
  118. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonth/index.js +26 -28
  119. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonthOfYear/Card.svelte +2 -2
  120. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonthOfYear/Icon.svelte +40 -10
  121. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonthOfYear/Input.svelte +7 -10
  122. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeMonthOfYear/index.js +26 -28
  123. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeUpdatedAt/Card.svelte +2 -2
  124. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeUpdatedAt/Icon.svelte +36 -9
  125. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeUpdatedAt/index.js +25 -27
  126. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeYear/Card.svelte +2 -2
  127. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeYear/Icon.svelte +40 -10
  128. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeYear/Input.svelte +7 -10
  129. package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeYear/index.js +26 -28
  130. package/src/lib/registry/fieldTypeRegistry/registerDefaultFieldTypes.js +58 -59
  131. package/src/lib/registry/fieldTypeRegistry/registry.svelte.js +30 -59
  132. package/src/routes/+layout.svelte +4 -4
  133. package/src/routes/global.css +172 -162
  134. package/src/routes/login/+page.svelte +58 -35
  135. package/src/routes/registry/fieldRegistry.svelte.js +17 -29
package/README.md CHANGED
@@ -22,11 +22,11 @@ npm install mountain-ui
22
22
  ### Basic Usage
23
23
 
24
24
  ```javascript
25
- import {
26
- fieldTypeRegistry,
27
- entityRegistry,
28
- registerDefaultFieldTypes,
29
- EntityForm
25
+ import {
26
+ fieldTypeRegistry,
27
+ entityRegistry,
28
+ registerDefaultFieldTypes,
29
+ EntityForm
30
30
  } from 'mountain-ui';
31
31
 
32
32
  // Register default field types
@@ -39,6 +39,7 @@ import EntityForm from 'mountain-ui/EntityForm.svelte';
39
39
  ## Components
40
40
 
41
41
  ### Field Type Components
42
+
42
43
  - `FieldTypeIcon` - Icon for field types
43
44
  - `FieldTypeButton` - Button component for field types
44
45
  - `FieldTypeCard` - Card display for field types
@@ -47,6 +48,7 @@ import EntityForm from 'mountain-ui/EntityForm.svelte';
47
48
  - `Line` - Line separator component
48
49
 
49
50
  ### Entity Components
51
+
50
52
  - `EntityButton` - Button for entity actions
51
53
  - `EntityCard` - Card display for entities
52
54
  - `EntityForm` - Complete form for entity data
@@ -69,9 +71,9 @@ import { fieldTypeRegistry, createFieldType } from 'mountain-ui';
69
71
 
70
72
  // Create custom field type
71
73
  const customFieldType = createFieldType({
72
- id: 'custom',
73
- name: 'Custom Field',
74
- icon: 'icon-path'
74
+ id: 'custom',
75
+ name: 'Custom Field',
76
+ icon: 'icon-path'
75
77
  });
76
78
 
77
79
  // Register it
package/index.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ // ============================================
2
+ // Field Type Registry
3
+ // ============================================
4
+ export { fieldTypeRegistry } from './src/lib/registry/fieldTypeRegistry/registry.svelte.js';
5
+ export { createFieldType } from './src/lib/registry/fieldTypeRegistry/createFieldType.js';
6
+ export { registerDefaultFieldTypes } from './src/lib/registry/fieldTypeRegistry/registerDefaultFieldTypes.js';
7
+
8
+ // Field Type Registry Components
9
+ export { default as FieldTypeIcon } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeIcon.svelte';
10
+ export { default as FieldTypeButton } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeButton.svelte';
11
+ export { default as FieldTypeCard } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeCard.svelte';
12
+ export { default as FieldTypeInput } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte';
13
+ export { default as Label } from './src/lib/registry/fieldTypeRegistry/components/Label.svelte';
14
+ export { default as Line } from './src/lib/registry/fieldTypeRegistry/components/Line.svelte';
15
+
16
+ // ============================================
17
+ // Entity Registry
18
+ // ============================================
19
+ export { entityRegistry } from './src/lib/registry/entityRegistry/registry.svelte.js';
20
+ export { createEntity } from './src/lib/registry/entityRegistry/createEntity.js';
21
+
22
+ // Entity Registry Components
23
+ export { default as EntityButton } from './src/lib/registry/entityRegistry/components/EntityButton.svelte';
24
+ export { default as EntityCard } from './src/lib/registry/entityRegistry/components/EntityCard.svelte';
25
+ export { default as EntityForm } from './src/lib/registry/entityRegistry/components/EntityForm.svelte';
26
+ export { default as FieldButton } from './src/lib/registry/entityRegistry/components/FieldButton.svelte';
27
+ export { default as FieldCard } from './src/lib/registry/entityRegistry/components/FieldCard.svelte';
28
+ export { default as FieldIcon } from './src/lib/registry/entityRegistry/components/FieldIcon.svelte';
29
+ export { default as FieldInput } from './src/lib/registry/entityRegistry/components/FieldInput.svelte';
30
+ export { default as FieldIsRequiredIcon } from './src/lib/registry/entityRegistry/components/FieldIsRequiredIcon.svelte';
31
+ export { default as FieldIsSecretIcon } from './src/lib/registry/entityRegistry/components/FieldIsSecretIcon.svelte';
32
+ export { default as FieldIsUniqueIcon } from './src/lib/registry/entityRegistry/components/FieldIsUniqueIcon.svelte';
33
+ export { default as FormCtx } from './src/lib/registry/entityRegistry/components/FormCtx.svelte';
34
+ export { default as LinkIcon } from './src/lib/registry/entityRegistry/components/LinkIcon.svelte';
package/index.js CHANGED
@@ -1,36 +1,34 @@
1
1
  // ============================================
2
2
  // Field Type Registry
3
3
  // ============================================
4
- export { fieldTypeRegistry } from "./src/lib/registry/fieldTypeRegistry/registry.svelte.js"
5
- export { createFieldType } from "./src/lib/registry/fieldTypeRegistry/createFieldType.js"
6
- export { registerDefaultFieldTypes } from "./src/lib/registry/fieldTypeRegistry/registerDefaultFieldTypes.js"
4
+ export { fieldTypeRegistry } from './src/lib/registry/fieldTypeRegistry/registry.svelte.js';
5
+ export { createFieldType } from './src/lib/registry/fieldTypeRegistry/createFieldType.js';
6
+ export { registerDefaultFieldTypes } from './src/lib/registry/fieldTypeRegistry/registerDefaultFieldTypes.js';
7
7
 
8
8
  // Field Type Registry Components
9
- export { default as FieldTypeIcon } from "./src/lib/registry/fieldTypeRegistry/components/FieldTypeIcon.svelte"
10
- export { default as FieldTypeButton } from "./src/lib/registry/fieldTypeRegistry/components/FieldTypeButton.svelte"
11
- export { default as FieldTypeCard } from "./src/lib/registry/fieldTypeRegistry/components/FieldTypeCard.svelte"
12
- export { default as FieldTypeInput } from "./src/lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte"
13
- export { default as Label } from "./src/lib/registry/fieldTypeRegistry/components/Label.svelte"
14
- export { default as Line } from "./src/lib/registry/fieldTypeRegistry/components/Line.svelte"
9
+ export { default as FieldTypeIcon } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeIcon.svelte';
10
+ export { default as FieldTypeButton } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeButton.svelte';
11
+ export { default as FieldTypeCard } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeCard.svelte';
12
+ export { default as FieldTypeInput } from './src/lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte';
13
+ export { default as Label } from './src/lib/registry/fieldTypeRegistry/components/Label.svelte';
14
+ export { default as Line } from './src/lib/registry/fieldTypeRegistry/components/Line.svelte';
15
15
 
16
16
  // ============================================
17
17
  // Entity Registry
18
18
  // ============================================
19
- export { entityRegistry } from "./src/lib/registry/entityRegistry/registry.svelte.js"
20
- export { createEntity } from "./src/lib/registry/entityRegistry/createEntity.js"
19
+ export { entityRegistry } from './src/lib/registry/entityRegistry/registry.svelte.js';
20
+ export { createEntity } from './src/lib/registry/entityRegistry/createEntity.js';
21
21
 
22
22
  // Entity Registry Components
23
- export { default as EntityButton } from "./src/lib/registry/entityRegistry/components/EntityButton.svelte"
24
- export { default as EntityCard } from "./src/lib/registry/entityRegistry/components/EntityCard.svelte"
25
- export { default as EntityForm } from "./src/lib/registry/entityRegistry/components/EntityForm.svelte"
26
- export { default as FieldButton } from "./src/lib/registry/entityRegistry/components/FieldButton.svelte"
27
- export { default as FieldCard } from "./src/lib/registry/entityRegistry/components/FieldCard.svelte"
28
- export { default as FieldIcon } from "./src/lib/registry/entityRegistry/components/FieldIcon.svelte"
29
- export { default as FieldInput } from "./src/lib/registry/entityRegistry/components/FieldInput.svelte"
30
- export { default as FieldIsRequiredIcon } from "./src/lib/registry/entityRegistry/components/FieldIsRequiredIcon.svelte"
31
- export { default as FieldIsSecretIcon } from "./src/lib/registry/entityRegistry/components/FieldIsSecretIcon.svelte"
32
- export { default as FieldIsUniqueIcon } from "./src/lib/registry/entityRegistry/components/FieldIsUniqueIcon.svelte"
33
- export { default as FormCtx } from "./src/lib/registry/entityRegistry/components/FormCtx.svelte"
34
- export { default as LinkIcon } from "./src/lib/registry/entityRegistry/components/LinkIcon.svelte"
35
-
36
-
23
+ export { default as EntityButton } from './src/lib/registry/entityRegistry/components/EntityButton.svelte';
24
+ export { default as EntityCard } from './src/lib/registry/entityRegistry/components/EntityCard.svelte';
25
+ export { default as EntityForm } from './src/lib/registry/entityRegistry/components/EntityForm.svelte';
26
+ export { default as FieldButton } from './src/lib/registry/entityRegistry/components/FieldButton.svelte';
27
+ export { default as FieldCard } from './src/lib/registry/entityRegistry/components/FieldCard.svelte';
28
+ export { default as FieldIcon } from './src/lib/registry/entityRegistry/components/FieldIcon.svelte';
29
+ export { default as FieldInput } from './src/lib/registry/entityRegistry/components/FieldInput.svelte';
30
+ export { default as FieldIsRequiredIcon } from './src/lib/registry/entityRegistry/components/FieldIsRequiredIcon.svelte';
31
+ export { default as FieldIsSecretIcon } from './src/lib/registry/entityRegistry/components/FieldIsSecretIcon.svelte';
32
+ export { default as FieldIsUniqueIcon } from './src/lib/registry/entityRegistry/components/FieldIsUniqueIcon.svelte';
33
+ export { default as FormCtx } from './src/lib/registry/entityRegistry/components/FormCtx.svelte';
34
+ export { default as LinkIcon } from './src/lib/registry/entityRegistry/components/LinkIcon.svelte';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mountain-ui",
3
3
  "private": false,
4
- "version": "1.0.2",
4
+ "version": "1.0.4",
5
5
  "description": "A comprehensive UI component library for ERP systems with field types, entities, and registry management built with Svelte",
6
6
  "type": "module",
7
7
  "module": "dist/index.js",
@@ -11,7 +11,9 @@
11
11
  "exports": {
12
12
  ".": {
13
13
  "import": "./dist/index.js",
14
- "types": "./dist/index.d.ts"
14
+ "require": "./index.js",
15
+ "types": "./index.d.ts",
16
+ "svelte": "./index.js"
15
17
  },
16
18
  "./package.json": "./package.json"
17
19
  },
@@ -19,6 +21,7 @@
19
21
  "dist",
20
22
  "src",
21
23
  "index.js",
24
+ "index.d.ts",
22
25
  "README.md",
23
26
  "LICENSE"
24
27
  ],
@@ -1,14 +1,14 @@
1
1
  <script>
2
- import { Button } from "hamzus-ui";
3
- import { entityRegistry } from "../registry.svelte";
2
+ import { Button } from 'hamzus-ui';
3
+ import { entityRegistry } from '../registry.svelte';
4
4
 
5
- let {id, variant="ghost",...props} = $props()
5
+ let { id, variant = 'ghost', ...props } = $props();
6
6
 
7
- const entity = entityRegistry.get(id)
7
+ const entity = entityRegistry.get(id);
8
8
  </script>
9
9
 
10
10
  {#if entity}
11
- <Button {...props} {variant}>
12
- <h5>{entity.plural_name}</h5>
13
- </Button>
14
- {/if}
11
+ <Button {...props} {variant}>
12
+ <h5>{entity.plural_name}</h5>
13
+ </Button>
14
+ {/if}
@@ -18,12 +18,12 @@
18
18
  <h5>{entity.fields.length}</h5>
19
19
  <FieldIcon color="var(--font-2)" size="16px"></FieldIcon>
20
20
  </div>
21
- {#if entity.fields.find(f=>f.type ==="link")}
22
- <div class="field">
23
- <h5>{entity.fields.filter(f=>f.type ==="link").length}</h5>
24
- <LinkIcon color="var(--font-2)" size="16px"></LinkIcon>
25
- </div>
26
- {/if}
21
+ {#if entity.fields.find((f) => f.type === 'link')}
22
+ <div class="field">
23
+ <h5>{entity.fields.filter((f) => f.type === 'link').length}</h5>
24
+ <LinkIcon color="var(--font-2)" size="16px"></LinkIcon>
25
+ </div>
26
+ {/if}
27
27
  </div>
28
28
  <h6>/{entity.slug}</h6>
29
29
  </div>
@@ -44,15 +44,15 @@
44
44
  column-gap: var(--pad-xxl);
45
45
  }
46
46
 
47
- .card .field {
48
- display: flex;
49
- align-items: center;
50
- column-gap: var(--pad-xs);
51
- }
47
+ .card .field {
48
+ display: flex;
49
+ align-items: center;
50
+ column-gap: var(--pad-xs);
51
+ }
52
52
 
53
- .card h3 {
54
- text-transform: capitalize;
55
- }
53
+ .card h3 {
54
+ text-transform: capitalize;
55
+ }
56
56
 
57
57
  .card h5 {
58
58
  color: var(--font-1);
@@ -13,8 +13,8 @@
13
13
  </script>
14
14
 
15
15
  {#if $entity}
16
- <Form style="width:100%">
17
- <div class="form">
16
+ <Form style="width:100%">
17
+ <div class="form">
18
18
  <FormCtx bind:ctx bind:detailsCtx>
19
19
  {#each $entity.fields as field}
20
20
  <FieldInput
@@ -22,11 +22,11 @@
22
22
  {ctx}
23
23
  onChangeDetails={(value) => {
24
24
  detailsCtx[field.id] = value;
25
- detailsCtx={...detailsCtx}
25
+ detailsCtx = { ...detailsCtx };
26
26
  }}
27
27
  onChange={(value) => {
28
28
  ctx[field.id] = value;
29
- ctx={...ctx}
29
+ ctx = { ...ctx };
30
30
  }}
31
31
  id={field.id}
32
32
  entityId={$entity.id}
@@ -77,8 +77,8 @@
77
77
  </Button>
78
78
  </div>
79
79
  </FormCtx>
80
- </div>
81
- </Form>
80
+ </div>
81
+ </Form>
82
82
  {/if}
83
83
 
84
84
  <style>
@@ -14,9 +14,9 @@
14
14
 
15
15
  {#if $field}
16
16
  <Button {variant} {...props}>
17
- <FieldTypeIcon type={$field.type}></FieldTypeIcon>
18
- <h4>{$field.name}</h4>
19
-
17
+ <FieldTypeIcon type={$field.type}></FieldTypeIcon>
18
+ <h4>{$field.name}</h4>
19
+
20
20
  <div class="icons">
21
21
  {#if $field.is_secret}
22
22
  <FieldIsSecretIcon></FieldIsSecretIcon>
@@ -36,6 +36,6 @@
36
36
  display: flex;
37
37
  align-items: center;
38
38
  column-gap: var(--pad-m);
39
- margin-left: auto;
39
+ margin-left: auto;
40
40
  }
41
41
  </style>
@@ -14,9 +14,9 @@
14
14
 
15
15
  {#if $field}
16
16
  <Button {variant} {...props}>
17
- <FieldTypeIcon type={$field.type}></FieldTypeIcon>
18
- <h4>{$field.name}</h4>
19
-
17
+ <FieldTypeIcon type={$field.type}></FieldTypeIcon>
18
+ <h4>{$field.name}</h4>
19
+
20
20
  <div class="icons">
21
21
  {#if $field.is_secret}
22
22
  <FieldIsSecretIcon></FieldIsSecretIcon>
@@ -36,6 +36,6 @@
36
36
  display: flex;
37
37
  align-items: center;
38
38
  column-gap: var(--pad-m);
39
- margin-left: auto;
39
+ margin-left: auto;
40
40
  }
41
41
  </style>
@@ -16,21 +16,21 @@
16
16
  <Button {variant} {...props}>
17
17
  <div class="card">
18
18
  <div class="top">
19
- <FieldTypeIcon type={$field.type}></FieldTypeIcon>
20
- <h4>{$field.name}</h4>
21
- </div>
19
+ <FieldTypeIcon type={$field.type}></FieldTypeIcon>
20
+ <h4>{$field.name}</h4>
21
+ </div>
22
22
  <div class="icons">
23
23
  {#if $field.is_secret}
24
24
  <FieldIsSecretIcon></FieldIsSecretIcon>
25
- <h5 style="color: var(--red);">secret</h5>
25
+ <h5 style="color: var(--red);">secret</h5>
26
26
  {/if}
27
27
  {#if $field.is_unique}
28
28
  <FieldIsUniqueIcon></FieldIsUniqueIcon>
29
- <h5 style="color: var(--green);">unique</h5>
29
+ <h5 style="color: var(--green);">unique</h5>
30
30
  {/if}
31
31
  {#if $field.is_required}
32
32
  <FieldIsRequiredIcon></FieldIsRequiredIcon>
33
- <h5 style="color: var(--red);">requis</h5>
33
+ <h5 style="color: var(--red);">requis</h5>
34
34
  {/if}
35
35
  </div>
36
36
  </div>
@@ -38,23 +38,21 @@
38
38
  {/if}
39
39
 
40
40
  <style>
41
-
42
-
43
41
  .card {
44
- display: flex;
45
- flex-direction: column;
46
- row-gap: var(--pad-xs);
42
+ display: flex;
43
+ flex-direction: column;
44
+ row-gap: var(--pad-xs);
47
45
  padding: var(--pad-m) var(--pad-m) var(--pad-m) 0;
48
46
  }
49
47
 
50
- .icons,
51
- .top {
52
- display: flex;
53
- align-items: center;
54
- column-gap: var(--pad-m);
55
- }
48
+ .icons,
49
+ .top {
50
+ display: flex;
51
+ align-items: center;
52
+ column-gap: var(--pad-m);
53
+ }
56
54
 
57
- .top :global(svg path) {
58
- fill: var(--font-2);
59
- }
55
+ .top :global(svg path) {
56
+ fill: var(--font-2);
57
+ }
60
58
  </style>
@@ -1,21 +1,40 @@
1
1
  <script>
2
- let {size = "24px", color="var(--font-1)"} = $props()
2
+ let { size = '24px', color = 'var(--font-1)' } = $props();
3
3
  </script>
4
4
 
5
- <svg style="--size:{size};--color:{color};" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
6
- <path d="M11.02 20.25H7.5C6.75 20.25 6.2 20.22 5.73 20.15C2.4 19.78 1.75 17.8 1.75 14.5V9.5C1.75 6.2 2.41 4.21 5.76 3.84C6.2 3.78 6.75 3.75 7.5 3.75H10.96C11.37 3.75 11.71 4.09 11.71 4.5C11.71 4.91 11.37 5.25 10.96 5.25H7.5C6.82 5.25 6.34 5.28 5.95 5.33C3.92 5.55 3.25 6.19 3.25 9.5V14.5C3.25 17.81 3.92 18.44 5.92 18.67C6.34 18.73 6.82 18.75 7.5 18.75H11.02C11.43 18.75 11.77 19.09 11.77 19.5C11.77 19.91 11.43 20.25 11.02 20.25Z" fill="#292D32"/>
7
- <path d="M16.4995 20.25H15.0195C14.6095 20.25 14.2695 19.91 14.2695 19.5C14.2695 19.09 14.6095 18.75 15.0195 18.75H16.4995C17.1795 18.75 17.6595 18.72 18.0495 18.67C20.0795 18.45 20.7495 17.81 20.7495 14.5V9.5C20.7495 6.19 20.0795 5.56 18.0795 5.33C17.6595 5.27 17.1795 5.25 16.4995 5.25H15.0195C14.6095 5.25 14.2695 4.91 14.2695 4.5C14.2695 4.09 14.6095 3.75 15.0195 3.75H16.4995C17.2495 3.75 17.7995 3.78 18.2695 3.85C21.5995 4.22 22.2495 6.2 22.2495 9.5V14.5C22.2495 17.8 21.5895 19.79 18.2395 20.16C17.7995 20.22 17.2495 20.25 16.4995 20.25Z" fill="#292D32"/>
8
- <path d="M15 22.75C14.59 22.75 14.25 22.41 14.25 22V2C14.25 1.59 14.59 1.25 15 1.25C15.41 1.25 15.75 1.59 15.75 2V22C15.75 22.41 15.41 22.75 15 22.75Z" fill="#292D32"/>
9
- <path d="M8 16.25C7.59 16.25 7.25 15.91 7.25 15.5V8.5C7.25 8.09 7.59 7.75 8 7.75C8.41 7.75 8.75 8.09 8.75 8.5V15.5C8.75 15.91 8.41 16.25 8 16.25Z" fill="#292D32"/>
5
+ <svg
6
+ style="--size:{size};--color:{color};"
7
+ width="24"
8
+ height="24"
9
+ viewBox="0 0 24 24"
10
+ fill="none"
11
+ xmlns="http://www.w3.org/2000/svg"
12
+ >
13
+ <path
14
+ d="M11.02 20.25H7.5C6.75 20.25 6.2 20.22 5.73 20.15C2.4 19.78 1.75 17.8 1.75 14.5V9.5C1.75 6.2 2.41 4.21 5.76 3.84C6.2 3.78 6.75 3.75 7.5 3.75H10.96C11.37 3.75 11.71 4.09 11.71 4.5C11.71 4.91 11.37 5.25 10.96 5.25H7.5C6.82 5.25 6.34 5.28 5.95 5.33C3.92 5.55 3.25 6.19 3.25 9.5V14.5C3.25 17.81 3.92 18.44 5.92 18.67C6.34 18.73 6.82 18.75 7.5 18.75H11.02C11.43 18.75 11.77 19.09 11.77 19.5C11.77 19.91 11.43 20.25 11.02 20.25Z"
15
+ fill="#292D32"
16
+ />
17
+ <path
18
+ d="M16.4995 20.25H15.0195C14.6095 20.25 14.2695 19.91 14.2695 19.5C14.2695 19.09 14.6095 18.75 15.0195 18.75H16.4995C17.1795 18.75 17.6595 18.72 18.0495 18.67C20.0795 18.45 20.7495 17.81 20.7495 14.5V9.5C20.7495 6.19 20.0795 5.56 18.0795 5.33C17.6595 5.27 17.1795 5.25 16.4995 5.25H15.0195C14.6095 5.25 14.2695 4.91 14.2695 4.5C14.2695 4.09 14.6095 3.75 15.0195 3.75H16.4995C17.2495 3.75 17.7995 3.78 18.2695 3.85C21.5995 4.22 22.2495 6.2 22.2495 9.5V14.5C22.2495 17.8 21.5895 19.79 18.2395 20.16C17.7995 20.22 17.2495 20.25 16.4995 20.25Z"
19
+ fill="#292D32"
20
+ />
21
+ <path
22
+ d="M15 22.75C14.59 22.75 14.25 22.41 14.25 22V2C14.25 1.59 14.59 1.25 15 1.25C15.41 1.25 15.75 1.59 15.75 2V22C15.75 22.41 15.41 22.75 15 22.75Z"
23
+ fill="#292D32"
24
+ />
25
+ <path
26
+ d="M8 16.25C7.59 16.25 7.25 15.91 7.25 15.5V8.5C7.25 8.09 7.59 7.75 8 7.75C8.41 7.75 8.75 8.09 8.75 8.5V15.5C8.75 15.91 8.41 16.25 8 16.25Z"
27
+ fill="#292D32"
28
+ />
10
29
  </svg>
11
30
 
12
31
  <style>
13
- svg {
14
- width: var(--size);
15
- height: auto;
16
- aspect-ratio: 1/1;
17
- }
18
- svg path {
19
- fill: var(--color);
20
- }
32
+ svg {
33
+ width: var(--size);
34
+ height: auto;
35
+ aspect-ratio: 1/1;
36
+ }
37
+ svg path {
38
+ fill: var(--color);
39
+ }
21
40
  </style>
@@ -1,23 +1,34 @@
1
1
  <script>
2
- import FieldTypeInput from "$lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte";
3
- import { entityRegistry } from "../registry.svelte";
2
+ import FieldTypeInput from '$lib/registry/fieldTypeRegistry/components/FieldTypeInput.svelte';
3
+ import { entityRegistry } from '../registry.svelte';
4
4
 
5
- let { id, entityId = null, onChange=()=>{}, onChangeDetails=()=>{}, ...props } = $props();
5
+ let { id, entityId = null, onChange = () => {}, onChangeDetails = () => {}, ...props } = $props();
6
6
 
7
7
  const field = entityRegistry.selectField(id, entityId);
8
8
 
9
- let value = $state("")
9
+ let value = $state('');
10
10
 
11
- function handleChange(newVal) {
12
- value = newVal
13
- onChange(value)
14
- }
15
- function handleChangeDetails(newVal) {
16
- onChangeDetails(newVal)
17
- }
11
+ function handleChange(newVal) {
12
+ value = newVal;
13
+ onChange(value);
14
+ }
15
+ function handleChangeDetails(newVal) {
16
+ onChangeDetails(newVal);
17
+ }
18
18
  </script>
19
19
 
20
-
21
20
  {#if $field}
22
- <FieldTypeInput {...props} id={$field.id} entity_id={$field.entity_id} label={$field.name} {...$field.props} onChange={handleChange} onChangeDetails={handleChangeDetails} type={$field.type} required={$field.is_required} secret={$field.is_secret} unique={$field.is_unique}></FieldTypeInput>
21
+ <FieldTypeInput
22
+ {...props}
23
+ id={$field.id}
24
+ entity_id={$field.entity_id}
25
+ label={$field.name}
26
+ {...$field.props}
27
+ onChange={handleChange}
28
+ onChangeDetails={handleChangeDetails}
29
+ type={$field.type}
30
+ required={$field.is_required}
31
+ secret={$field.is_secret}
32
+ unique={$field.is_unique}
33
+ ></FieldTypeInput>
23
34
  {/if}
@@ -1,22 +1,44 @@
1
1
  <script>
2
- let {size = "18px", color="var(--red)"} = $props()
2
+ let { size = '18px', color = 'var(--red)' } = $props();
3
3
  </script>
4
+
4
5
  <!-- style="--size:{size};--color:{color};" -->
5
- <svg style="--size:{size};--color:{color};" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
6
- <path d="M16.42 7.95012C18.86 10.3901 18.86 14.3501 16.42 16.7901C13.98 19.2301 10.02 19.2301 7.58 16.7901C5.14 14.3501 5.14 10.3901 7.58 7.95012C10.02 5.51012 13.98 5.51012 16.42 7.95012Z" fill="#FF383C"/>
7
- <path opacity="0.4" d="M8.24906 22.3899C8.15906 22.3899 8.05906 22.3699 7.96906 22.3399C5.71906 21.4399 3.89905 19.8499 2.67905 17.7499C1.49905 15.6999 1.02905 13.3799 1.33905 11.0199C1.38905 10.6099 1.77905 10.3199 2.17905 10.3699C2.58905 10.4199 2.87904 10.7999 2.82904 11.2099C2.56904 13.2299 2.96907 15.2299 3.97907 16.9899C5.01907 18.7899 6.58905 20.1599 8.51905 20.9299C8.89905 21.0899 9.08906 21.5198 8.93906 21.9098C8.82906 22.2098 8.53906 22.3899 8.24906 22.3899Z" fill="#FF383C"/>
8
- <path opacity="0.4" d="M5.84961 5.22986C5.62961 5.22986 5.40961 5.12988 5.25961 4.93988C4.99961 4.60988 5.05962 4.13989 5.38962 3.88989C7.29962 2.39989 9.57961 1.60986 11.9996 1.60986C14.3596 1.60986 16.6096 2.36988 18.4996 3.80988C18.8296 4.05988 18.8896 4.52986 18.6396 4.85986C18.3896 5.18986 17.9196 5.24988 17.5896 4.99988C15.9696 3.75988 14.0396 3.10986 11.9996 3.10986C9.91961 3.10986 7.9496 3.78989 6.3096 5.06989C6.1696 5.17989 6.00961 5.22986 5.84961 5.22986Z" fill="#FF383C"/>
9
- <path opacity="0.4" d="M15.7507 22.3901C15.4507 22.3901 15.1707 22.2101 15.0507 21.9201C14.9007 21.5401 15.0807 21.1001 15.4707 20.9401C17.4007 20.1601 18.9707 18.8001 20.0107 17.0001C21.0307 15.2401 21.4307 13.2401 21.1607 11.2201C21.1107 10.8101 21.4007 10.4301 21.8107 10.3801C22.2107 10.3301 22.6007 10.6201 22.6507 11.0301C22.9507 13.3801 22.4907 15.7101 21.3107 17.7601C20.1007 19.8601 18.2707 21.4401 16.0207 22.3501C15.9407 22.3701 15.8507 22.3901 15.7507 22.3901Z" fill="#FF383C"/>
6
+ <svg
7
+ style="--size:{size};--color:{color};"
8
+ width="24"
9
+ height="24"
10
+ viewBox="0 0 24 24"
11
+ fill="none"
12
+ xmlns="http://www.w3.org/2000/svg"
13
+ >
14
+ <path
15
+ d="M16.42 7.95012C18.86 10.3901 18.86 14.3501 16.42 16.7901C13.98 19.2301 10.02 19.2301 7.58 16.7901C5.14 14.3501 5.14 10.3901 7.58 7.95012C10.02 5.51012 13.98 5.51012 16.42 7.95012Z"
16
+ fill="#FF383C"
17
+ />
18
+ <path
19
+ opacity="0.4"
20
+ d="M8.24906 22.3899C8.15906 22.3899 8.05906 22.3699 7.96906 22.3399C5.71906 21.4399 3.89905 19.8499 2.67905 17.7499C1.49905 15.6999 1.02905 13.3799 1.33905 11.0199C1.38905 10.6099 1.77905 10.3199 2.17905 10.3699C2.58905 10.4199 2.87904 10.7999 2.82904 11.2099C2.56904 13.2299 2.96907 15.2299 3.97907 16.9899C5.01907 18.7899 6.58905 20.1599 8.51905 20.9299C8.89905 21.0899 9.08906 21.5198 8.93906 21.9098C8.82906 22.2098 8.53906 22.3899 8.24906 22.3899Z"
21
+ fill="#FF383C"
22
+ />
23
+ <path
24
+ opacity="0.4"
25
+ d="M5.84961 5.22986C5.62961 5.22986 5.40961 5.12988 5.25961 4.93988C4.99961 4.60988 5.05962 4.13989 5.38962 3.88989C7.29962 2.39989 9.57961 1.60986 11.9996 1.60986C14.3596 1.60986 16.6096 2.36988 18.4996 3.80988C18.8296 4.05988 18.8896 4.52986 18.6396 4.85986C18.3896 5.18986 17.9196 5.24988 17.5896 4.99988C15.9696 3.75988 14.0396 3.10986 11.9996 3.10986C9.91961 3.10986 7.9496 3.78989 6.3096 5.06989C6.1696 5.17989 6.00961 5.22986 5.84961 5.22986Z"
26
+ fill="#FF383C"
27
+ />
28
+ <path
29
+ opacity="0.4"
30
+ d="M15.7507 22.3901C15.4507 22.3901 15.1707 22.2101 15.0507 21.9201C14.9007 21.5401 15.0807 21.1001 15.4707 20.9401C17.4007 20.1601 18.9707 18.8001 20.0107 17.0001C21.0307 15.2401 21.4307 13.2401 21.1607 11.2201C21.1107 10.8101 21.4007 10.4301 21.8107 10.3801C22.2107 10.3301 22.6007 10.6201 22.6507 11.0301C22.9507 13.3801 22.4907 15.7101 21.3107 17.7601C20.1007 19.8601 18.2707 21.4401 16.0207 22.3501C15.9407 22.3701 15.8507 22.3901 15.7507 22.3901Z"
31
+ fill="#FF383C"
32
+ />
10
33
  </svg>
11
34
 
12
-
13
35
  <style>
14
- svg {
15
- width: var(--size);
16
- height: auto;
17
- aspect-ratio: 1/1;
18
- }
19
- svg path {
20
- fill: var(--color);
21
- }
36
+ svg {
37
+ width: var(--size);
38
+ height: auto;
39
+ aspect-ratio: 1/1;
40
+ }
41
+ svg path {
42
+ fill: var(--color);
43
+ }
22
44
  </style>
@@ -1,19 +1,34 @@
1
1
  <script>
2
- let {size = "18px", color="var(--red)"} = $props()
2
+ let { size = '18px', color = 'var(--red)' } = $props();
3
3
  </script>
4
+
4
5
  <!-- style="--size:{size};--color:{color};" -->
5
- <svg style="--size:{size};--color:{color};" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
6
- <path opacity="0.4" d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" fill="#FF383C"/>
7
- <path d="M15.7491 10.73V10C15.7491 9.07 15.7491 6.25 11.9991 6.25C8.24915 6.25 8.24915 9.07 8.24915 10V10.73C7.02915 11 6.61914 11.79 6.61914 13.5V14.5C6.61914 16.7 7.29915 17.38 9.49915 17.38H14.4991C16.6991 17.38 17.3792 16.7 17.3792 14.5V13.5C17.3792 11.79 16.9691 11 15.7491 10.73ZM11.9991 15.1C11.3891 15.1 10.8992 14.61 10.8992 14C10.8992 13.39 11.3891 12.9 11.9991 12.9C12.6091 12.9 13.0991 13.39 13.0991 14C13.0991 14.61 12.6091 15.1 11.9991 15.1ZM14.2491 10.62H9.74915V10C9.74915 8.54 10.1091 7.75 11.9991 7.75C13.8891 7.75 14.2491 8.54 14.2491 10V10.62Z" fill="#FF383C"/>
6
+ <svg
7
+ style="--size:{size};--color:{color};"
8
+ width="24"
9
+ height="24"
10
+ viewBox="0 0 24 24"
11
+ fill="none"
12
+ xmlns="http://www.w3.org/2000/svg"
13
+ >
14
+ <path
15
+ opacity="0.4"
16
+ d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z"
17
+ fill="#FF383C"
18
+ />
19
+ <path
20
+ d="M15.7491 10.73V10C15.7491 9.07 15.7491 6.25 11.9991 6.25C8.24915 6.25 8.24915 9.07 8.24915 10V10.73C7.02915 11 6.61914 11.79 6.61914 13.5V14.5C6.61914 16.7 7.29915 17.38 9.49915 17.38H14.4991C16.6991 17.38 17.3792 16.7 17.3792 14.5V13.5C17.3792 11.79 16.9691 11 15.7491 10.73ZM11.9991 15.1C11.3891 15.1 10.8992 14.61 10.8992 14C10.8992 13.39 11.3891 12.9 11.9991 12.9C12.6091 12.9 13.0991 13.39 13.0991 14C13.0991 14.61 12.6091 15.1 11.9991 15.1ZM14.2491 10.62H9.74915V10C9.74915 8.54 10.1091 7.75 11.9991 7.75C13.8891 7.75 14.2491 8.54 14.2491 10V10.62Z"
21
+ fill="#FF383C"
22
+ />
8
23
  </svg>
9
24
 
10
25
  <style>
11
- svg {
12
- width: var(--size);
13
- height: auto;
14
- aspect-ratio: 1/1;
15
- }
16
- svg path {
17
- fill: var(--color);
18
- }
26
+ svg {
27
+ width: var(--size);
28
+ height: auto;
29
+ aspect-ratio: 1/1;
30
+ }
31
+ svg path {
32
+ fill: var(--color);
33
+ }
19
34
  </style>