@sula-tech/webcomponents 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/cjs/{index-BtkenDV1.js → index-Bbryl0vg.js} +30 -4
  2. package/dist/cjs/index-Bbryl0vg.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{sula-avatar_14.cjs.entry.js → sula-avatar_18.cjs.entry.js} +386 -48
  5. package/dist/cjs/sula-avatar_18.cjs.entry.js.map +1 -0
  6. package/dist/cjs/webcomponents.cjs.js +2 -2
  7. package/dist/collection/collection-manifest.json +5 -1
  8. package/dist/collection/components/sula-button/sula-button.css +1 -1
  9. package/dist/collection/components/sula-button/sula-button.js +66 -6
  10. package/dist/collection/components/sula-button/sula-button.js.map +1 -1
  11. package/dist/collection/components/sula-button/sula-button.stories.js +260 -97
  12. package/dist/collection/components/sula-button/sula-button.stories.js.map +1 -1
  13. package/dist/collection/components/sula-checkbox/sula-checkbox.js +3 -3
  14. package/dist/collection/components/sula-chip/sula-chip.css +1 -1
  15. package/dist/collection/components/sula-chip/sula-chip.js +3 -3
  16. package/dist/collection/components/sula-dropdown/sula-dropdown.css +1 -0
  17. package/dist/collection/components/sula-dropdown/sula-dropdown.js +275 -0
  18. package/dist/collection/components/sula-dropdown/sula-dropdown.js.map +1 -0
  19. package/dist/collection/components/sula-dropdown/sula-dropdown.stories.js +155 -0
  20. package/dist/collection/components/sula-dropdown/sula-dropdown.stories.js.map +1 -0
  21. package/dist/collection/components/sula-icon/sula-icon.css +1 -1
  22. package/dist/collection/components/sula-icon/sula-icon.js +1 -1
  23. package/dist/collection/components/sula-loader/sula-loader.css +1 -1
  24. package/dist/collection/components/sula-loader/sula-loader.js +1 -1
  25. package/dist/collection/components/sula-menu-select-list/sula-menu-select-list.css +1 -1
  26. package/dist/collection/components/sula-menu-select-list/sula-menu-select-list.js +29 -1
  27. package/dist/collection/components/sula-menu-select-list/sula-menu-select-list.js.map +1 -1
  28. package/dist/collection/components/sula-progress-bar/model/sula-progress-bar.model.js +15 -0
  29. package/dist/collection/components/sula-progress-bar/model/sula-progress-bar.model.js.map +1 -0
  30. package/dist/collection/components/sula-progress-bar/sula-progress-bar.css +1 -0
  31. package/dist/collection/components/sula-progress-bar/sula-progress-bar.js +213 -0
  32. package/dist/collection/components/sula-progress-bar/sula-progress-bar.js.map +1 -0
  33. package/dist/collection/components/sula-progress-bar/sula-progress.stories.js +172 -0
  34. package/dist/collection/components/sula-progress-bar/sula-progress.stories.js.map +1 -0
  35. package/dist/collection/components/sula-radio-button/sula-radio-button.js +2 -2
  36. package/dist/collection/components/sula-search-bar/model/sula-search.bar-model.js +6 -0
  37. package/dist/collection/components/sula-search-bar/model/sula-search.bar-model.js.map +1 -0
  38. package/dist/collection/components/sula-search-bar/sula-search-bar.css +1 -0
  39. package/dist/collection/components/sula-search-bar/sula-search-bar.js +240 -0
  40. package/dist/collection/components/sula-search-bar/sula-search-bar.js.map +1 -0
  41. package/dist/collection/components/sula-search-bar/sula-search-bar.stories.js +119 -0
  42. package/dist/collection/components/sula-search-bar/sula-search-bar.stories.js.map +1 -0
  43. package/dist/collection/components/sula-switch/sula-switch.js +4 -4
  44. package/dist/collection/components/sula-tag/sula-tag.js +3 -3
  45. package/dist/collection/components/sula-textarea/sula-textarea.js +6 -6
  46. package/dist/collection/components/sula-textfield/sula-textfield.js +2 -2
  47. package/dist/collection/components/sula-tiles/sula-tiles.js +1 -1
  48. package/dist/collection/components/sula-timeline-list/model/sula-timeline-list.model.js +7 -0
  49. package/dist/collection/components/sula-timeline-list/model/sula-timeline-list.model.js.map +1 -0
  50. package/dist/collection/components/sula-timeline-list/sula-timeline-list.css +1 -0
  51. package/dist/collection/components/sula-timeline-list/sula-timeline-list.js +123 -0
  52. package/dist/collection/components/sula-timeline-list/sula-timeline-list.js.map +1 -0
  53. package/dist/collection/components/sula-timeline-list/sula-timeline-list.stories.js +217 -0
  54. package/dist/collection/components/sula-timeline-list/sula-timeline-list.stories.js.map +1 -0
  55. package/dist/components/index.js +20 -2
  56. package/dist/components/index.js.map +1 -1
  57. package/dist/components/{p-DJGFqp8r.js → p-BNtk_d_S.js} +14 -5
  58. package/dist/components/p-BNtk_d_S.js.map +1 -0
  59. package/dist/components/p-CYBZuKr6.js +27129 -0
  60. package/dist/components/p-CYBZuKr6.js.map +1 -0
  61. package/dist/components/{p-CEU3PNQs.js → p-DULnDBOY.js} +4 -4
  62. package/dist/components/{p-CEU3PNQs.js.map → p-DULnDBOY.js.map} +1 -1
  63. package/dist/components/sula-avatar.js +1 -1
  64. package/dist/components/sula-badge.js +1 -1
  65. package/dist/components/sula-button.js +38 -9
  66. package/dist/components/sula-button.js.map +1 -1
  67. package/dist/components/sula-checkbox.js +4 -4
  68. package/dist/components/sula-chip.js +6 -6
  69. package/dist/components/sula-chip.js.map +1 -1
  70. package/dist/components/sula-dropdown.d.ts +11 -0
  71. package/dist/components/sula-dropdown.js +137 -0
  72. package/dist/components/sula-dropdown.js.map +1 -0
  73. package/dist/components/sula-icon.js +1 -1
  74. package/dist/components/sula-loader.js +1 -27124
  75. package/dist/components/sula-loader.js.map +1 -1
  76. package/dist/components/sula-menu-select-list.js +1 -1
  77. package/dist/components/sula-progress-bar.d.ts +11 -0
  78. package/dist/components/sula-progress-bar.js +122 -0
  79. package/dist/components/sula-progress-bar.js.map +1 -0
  80. package/dist/components/sula-radio-button.js +2 -2
  81. package/dist/components/sula-search-bar.d.ts +11 -0
  82. package/dist/components/sula-search-bar.js +104 -0
  83. package/dist/components/sula-search-bar.js.map +1 -0
  84. package/dist/components/sula-switch.js +4 -4
  85. package/dist/components/sula-tag.js +4 -4
  86. package/dist/components/sula-textarea.js +6 -6
  87. package/dist/components/sula-textfield.js +3 -3
  88. package/dist/components/sula-tiles.js +2 -2
  89. package/dist/components/sula-timeline-list.d.ts +11 -0
  90. package/dist/components/sula-timeline-list.js +101 -0
  91. package/dist/components/sula-timeline-list.js.map +1 -0
  92. package/dist/esm/{index-Yyeke16a.js → index-or7qTZgT.js} +30 -4
  93. package/dist/esm/index-or7qTZgT.js.map +1 -0
  94. package/dist/esm/loader.js +3 -3
  95. package/dist/esm/{sula-avatar_14.entry.js → sula-avatar_18.entry.js} +383 -49
  96. package/dist/esm/sula-avatar_18.entry.js.map +1 -0
  97. package/dist/esm/webcomponents.js +3 -3
  98. package/dist/types/components/sula-button/sula-button.d.ts +11 -1
  99. package/dist/types/components/sula-button/sula-button.stories.d.ts +124 -33
  100. package/dist/types/components/sula-dropdown/sula-dropdown.d.ts +49 -0
  101. package/dist/types/components/sula-dropdown/sula-dropdown.stories.d.ts +68 -0
  102. package/dist/types/components/sula-menu-select-list/sula-menu-select-list.d.ts +4 -0
  103. package/dist/types/components/sula-progress-bar/model/sula-progress-bar.model.d.ts +12 -0
  104. package/dist/types/components/sula-progress-bar/sula-progress-bar.d.ts +33 -0
  105. package/dist/types/components/sula-progress-bar/sula-progress.stories.d.ts +84 -0
  106. package/dist/types/components/sula-search-bar/model/sula-search.bar-model.d.ts +4 -0
  107. package/dist/types/components/sula-search-bar/sula-search-bar.d.ts +50 -0
  108. package/dist/types/components/sula-search-bar/sula-search-bar.stories.d.ts +84 -0
  109. package/dist/types/components/sula-timeline-list/model/sula-timeline-list.model.d.ts +16 -0
  110. package/dist/types/components/sula-timeline-list/sula-timeline-list.d.ts +17 -0
  111. package/dist/types/components/sula-timeline-list/sula-timeline-list.stories.d.ts +47 -0
  112. package/dist/types/components.d.ts +315 -0
  113. package/dist/webcomponents/{p-5ba79323.entry.js → p-2a133394.entry.js} +3656 -3167
  114. package/dist/webcomponents/p-2a133394.entry.js.map +1 -0
  115. package/dist/webcomponents/{p-Yyeke16a.js → p-or7qTZgT.js} +229 -204
  116. package/dist/webcomponents/p-or7qTZgT.js.map +1 -0
  117. package/dist/webcomponents/webcomponents.esm.js +50 -18
  118. package/package.json +1 -1
  119. package/readme.md +79 -19
  120. package/dist/cjs/index-BtkenDV1.js.map +0 -1
  121. package/dist/cjs/sula-avatar.sula-badge.sula-button.sula-checkbox.sula-chip.sula-icon.sula-loader.sula-menu-select-list.sula-radio-button.sula-switch.sula-tag.sula-textarea.sula-textfield.sula-tiles.entry.cjs.js.map +0 -1
  122. package/dist/cjs/sula-avatar_14.cjs.entry.js.map +0 -1
  123. package/dist/components/p-DJGFqp8r.js.map +0 -1
  124. package/dist/esm/index-Yyeke16a.js.map +0 -1
  125. package/dist/esm/sula-avatar.sula-badge.sula-button.sula-checkbox.sula-chip.sula-icon.sula-loader.sula-menu-select-list.sula-radio-button.sula-switch.sula-tag.sula-textarea.sula-textfield.sula-tiles.entry.js.map +0 -1
  126. package/dist/esm/sula-avatar_14.entry.js.map +0 -1
  127. package/dist/webcomponents/p-5ba79323.entry.js.map +0 -1
  128. package/dist/webcomponents/p-Yyeke16a.js.map +0 -1
  129. package/dist/webcomponents/sula-avatar.sula-badge.sula-button.sula-checkbox.sula-chip.sula-icon.sula-loader.sula-menu-select-list.sula-radio-button.sula-switch.sula-tag.sula-textarea.sula-textfield.sula-tiles.entry.esm.js.map +0 -1
@@ -0,0 +1,172 @@
1
+ import { SulaProgressBarAppearance, SulaProgressBarState } from "./model/sula-progress-bar.model";
2
+ export default {
3
+ title: 'Components/sula-progress-bar',
4
+ tags: ['autodocs'],
5
+ argTypes: {
6
+ appearance: {
7
+ control: { type: 'select' },
8
+ options: Object.values(SulaProgressBarAppearance),
9
+ defaultValue: SulaProgressBarAppearance.Primary,
10
+ description: 'The style of the progress bar',
11
+ type: {
12
+ required: false,
13
+ },
14
+ },
15
+ state: {
16
+ control: { type: 'select' },
17
+ options: Object.values(SulaProgressBarState),
18
+ defaultValue: SulaProgressBarState.Default,
19
+ description: 'The state of the progress bar',
20
+ type: {
21
+ required: false,
22
+ },
23
+ },
24
+ topLabel: {
25
+ control: 'text',
26
+ defaultValue: 'Progress Label',
27
+ description: 'The label displayed at the top of the progress bar',
28
+ type: {
29
+ required: false,
30
+ },
31
+ },
32
+ bottomLabel: {
33
+ control: 'text',
34
+ defaultValue: 'Bottom Label',
35
+ description: 'The label displayed at the bottom of the progress bar',
36
+ type: {
37
+ required: false,
38
+ },
39
+ },
40
+ progress: {
41
+ control: { type: 'range', min: 0, max: 100, step: 1 },
42
+ defaultValue: 50,
43
+ description: 'The progress value of the progress bar (0-100)',
44
+ type: {
45
+ required: false,
46
+ },
47
+ },
48
+ showProgress: {
49
+ control: 'boolean',
50
+ defaultValue: true,
51
+ description: 'Show progress percentage',
52
+ type: {
53
+ required: false,
54
+ },
55
+ },
56
+ },
57
+ parameters: {
58
+ docs: {
59
+ description: {
60
+ component: 'O componente Progress bar Sula Design System é utilizado para comunicar o progresso de uma ação em andamento. Sua aplicação pode ser feita junto ao componente de loader.',
61
+ },
62
+ },
63
+ },
64
+ };
65
+ const Template = args => {
66
+ const container = document.createElement('div');
67
+ container.style.margin = '20px';
68
+ container.style.width = '400px'; // Define uma largura fixa para melhor visualização
69
+ const el = document.createElement('sula-progress-bar');
70
+ el.setAttribute('appearance', args.appearance);
71
+ el.setAttribute('state', args.state);
72
+ if (args.topLabel)
73
+ el.setAttribute('top-label', args.topLabel);
74
+ if (args.bottomLabel)
75
+ el.setAttribute('bottom-label', args.bottomLabel);
76
+ if (args.progress !== undefined)
77
+ el.setAttribute('progress', args.progress.toString());
78
+ el.setAttribute('show-progress', args.showProgress.toString());
79
+ container.appendChild(el);
80
+ return container;
81
+ };
82
+ export const Default = Template.bind({});
83
+ Default.args = {
84
+ appearance: SulaProgressBarAppearance.Primary,
85
+ state: SulaProgressBarState.Default,
86
+ topLabel: 'Loading Progress',
87
+ bottomLabel: 'Please wait...',
88
+ progress: 65,
89
+ showProgress: true,
90
+ };
91
+ export const Secondary = Template.bind({});
92
+ Secondary.args = {
93
+ appearance: SulaProgressBarAppearance.Secondary,
94
+ state: SulaProgressBarState.Default,
95
+ topLabel: 'Secondary Progress',
96
+ bottomLabel: 'Processing data',
97
+ progress: 40,
98
+ showProgress: true,
99
+ };
100
+ export const OnPrimary = Template.bind({});
101
+ OnPrimary.args = {
102
+ appearance: SulaProgressBarAppearance.OnPrimary,
103
+ state: SulaProgressBarState.Default,
104
+ topLabel: 'On Primary Background',
105
+ bottomLabel: 'Upload in progress',
106
+ progress: 80,
107
+ showProgress: true,
108
+ };
109
+ export const Success = Template.bind({});
110
+ Success.args = {
111
+ appearance: SulaProgressBarAppearance.Success,
112
+ state: SulaProgressBarState.Success,
113
+ topLabel: 'Task Completed',
114
+ bottomLabel: 'Successfully finished!',
115
+ progress: 100,
116
+ showProgress: true,
117
+ };
118
+ export const Error = Template.bind({});
119
+ Error.args = {
120
+ appearance: SulaProgressBarAppearance.Error,
121
+ state: SulaProgressBarState.Error,
122
+ topLabel: 'Task Failed',
123
+ bottomLabel: 'An error occurred',
124
+ progress: 75,
125
+ showProgress: true,
126
+ };
127
+ export const WithoutProgress = Template.bind({});
128
+ WithoutProgress.args = {
129
+ appearance: SulaProgressBarAppearance.Primary,
130
+ state: SulaProgressBarState.Default,
131
+ topLabel: 'Hidden Progress',
132
+ bottomLabel: 'Progress percentage hidden',
133
+ progress: 45,
134
+ showProgress: false,
135
+ };
136
+ export const MinimalProgress = Template.bind({});
137
+ MinimalProgress.args = {
138
+ appearance: SulaProgressBarAppearance.Primary,
139
+ state: SulaProgressBarState.Default,
140
+ topLabel: 'Just Started',
141
+ bottomLabel: 'Beginning process',
142
+ progress: 5,
143
+ showProgress: true,
144
+ };
145
+ export const AlmostComplete = Template.bind({});
146
+ AlmostComplete.args = {
147
+ appearance: SulaProgressBarAppearance.Primary,
148
+ state: SulaProgressBarState.Default,
149
+ topLabel: 'Almost Done',
150
+ bottomLabel: 'Finalizing...',
151
+ progress: 95,
152
+ showProgress: true,
153
+ };
154
+ export const NoLabels = Template.bind({});
155
+ NoLabels.args = {
156
+ appearance: SulaProgressBarAppearance.Primary,
157
+ state: SulaProgressBarState.Default,
158
+ topLabel: '',
159
+ bottomLabel: '',
160
+ progress: 60,
161
+ showProgress: true,
162
+ };
163
+ export const SuccessAppearanceDefault = Template.bind({});
164
+ SuccessAppearanceDefault.args = {
165
+ appearance: SulaProgressBarAppearance.Success,
166
+ state: SulaProgressBarState.Default,
167
+ topLabel: 'Success Style',
168
+ bottomLabel: 'With default state',
169
+ progress: 70,
170
+ showProgress: true,
171
+ };
172
+ //# sourceMappingURL=sula-progress.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sula-progress.stories.js","sourceRoot":"","sources":["../../../src/components/sula-progress-bar/sula-progress.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { SulaProgressBarAppearance, SulaProgressBarState } from './model/sula-progress-bar.model';\n\nexport default {\n title: 'Components/sula-progress-bar',\n tags: ['autodocs'],\n argTypes: {\n appearance: {\n control: { type: 'select' },\n options: Object.values(SulaProgressBarAppearance),\n defaultValue: SulaProgressBarAppearance.Primary,\n description: 'The style of the progress bar',\n type: {\n required: false,\n },\n },\n state: {\n control: { type: 'select' },\n options: Object.values(SulaProgressBarState),\n defaultValue: SulaProgressBarState.Default,\n description: 'The state of the progress bar',\n type: {\n required: false,\n },\n },\n topLabel: {\n control: 'text',\n defaultValue: 'Progress Label',\n description: 'The label displayed at the top of the progress bar',\n type: {\n required: false,\n },\n },\n bottomLabel: {\n control: 'text',\n defaultValue: 'Bottom Label',\n description: 'The label displayed at the bottom of the progress bar',\n type: {\n required: false,\n },\n },\n progress: {\n control: { type: 'range', min: 0, max: 100, step: 1 },\n defaultValue: 50,\n description: 'The progress value of the progress bar (0-100)',\n type: {\n required: false,\n },\n },\n showProgress: {\n control: 'boolean',\n defaultValue: true,\n description: 'Show progress percentage',\n type: {\n required: false,\n },\n },\n },\n parameters: {\n docs: {\n description: {\n component:\n 'O componente Progress bar Sula Design System é utilizado para comunicar o progresso de uma ação em andamento. Sua aplicação pode ser feita junto ao componente de loader.',\n },\n },\n },\n};\n\nconst Template = args => {\n const container = document.createElement('div');\n container.style.margin = '20px';\n container.style.width = '400px'; // Define uma largura fixa para melhor visualização\n\n const el = document.createElement('sula-progress-bar');\n\n el.setAttribute('appearance', args.appearance);\n el.setAttribute('state', args.state);\n if (args.topLabel) el.setAttribute('top-label', args.topLabel);\n if (args.bottomLabel) el.setAttribute('bottom-label', args.bottomLabel);\n if (args.progress !== undefined) el.setAttribute('progress', args.progress.toString());\n el.setAttribute('show-progress', args.showProgress.toString());\n\n container.appendChild(el);\n\n return container;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n appearance: SulaProgressBarAppearance.Primary,\n state: SulaProgressBarState.Default,\n topLabel: 'Loading Progress',\n bottomLabel: 'Please wait...',\n progress: 65,\n showProgress: true,\n};\n\nexport const Secondary = Template.bind({});\nSecondary.args = {\n appearance: SulaProgressBarAppearance.Secondary,\n state: SulaProgressBarState.Default,\n topLabel: 'Secondary Progress',\n bottomLabel: 'Processing data',\n progress: 40,\n showProgress: true,\n};\n\nexport const OnPrimary = Template.bind({});\nOnPrimary.args = {\n appearance: SulaProgressBarAppearance.OnPrimary,\n state: SulaProgressBarState.Default,\n topLabel: 'On Primary Background',\n bottomLabel: 'Upload in progress',\n progress: 80,\n showProgress: true,\n};\n\nexport const Success = Template.bind({});\nSuccess.args = {\n appearance: SulaProgressBarAppearance.Success,\n state: SulaProgressBarState.Success,\n topLabel: 'Task Completed',\n bottomLabel: 'Successfully finished!',\n progress: 100,\n showProgress: true,\n};\n\nexport const Error = Template.bind({});\nError.args = {\n appearance: SulaProgressBarAppearance.Error,\n state: SulaProgressBarState.Error,\n topLabel: 'Task Failed',\n bottomLabel: 'An error occurred',\n progress: 75,\n showProgress: true,\n};\n\nexport const WithoutProgress = Template.bind({});\nWithoutProgress.args = {\n appearance: SulaProgressBarAppearance.Primary,\n state: SulaProgressBarState.Default,\n topLabel: 'Hidden Progress',\n bottomLabel: 'Progress percentage hidden',\n progress: 45,\n showProgress: false,\n};\n\nexport const MinimalProgress = Template.bind({});\nMinimalProgress.args = {\n appearance: SulaProgressBarAppearance.Primary,\n state: SulaProgressBarState.Default,\n topLabel: 'Just Started',\n bottomLabel: 'Beginning process',\n progress: 5,\n showProgress: true,\n};\n\nexport const AlmostComplete = Template.bind({});\nAlmostComplete.args = {\n appearance: SulaProgressBarAppearance.Primary,\n state: SulaProgressBarState.Default,\n topLabel: 'Almost Done',\n bottomLabel: 'Finalizing...',\n progress: 95,\n showProgress: true,\n};\n\nexport const NoLabels = Template.bind({});\nNoLabels.args = {\n appearance: SulaProgressBarAppearance.Primary,\n state: SulaProgressBarState.Default,\n topLabel: '',\n bottomLabel: '',\n progress: 60,\n showProgress: true,\n};\n\nexport const SuccessAppearanceDefault = Template.bind({});\nSuccessAppearanceDefault.args = {\n appearance: SulaProgressBarAppearance.Success,\n state: SulaProgressBarState.Default,\n topLabel: 'Success Style',\n bottomLabel: 'With default state',\n progress: 70,\n showProgress: true,\n};\n"]}
@@ -34,14 +34,14 @@ export class SulaRadioButton {
34
34
  };
35
35
  }
36
36
  render() {
37
- return (h(Host, { key: '5e6d32905685f79fb6a56bb22fbe457eec04874e' }, h("div", { key: '7f3dcb3f71edcedbc54565dcaf60c90a2ea9e1a2', class: { 'w-fit': true, 'flex items-center': !!this.label }, onClick: this.handleClick }, h("div", { key: '1e1679902289efaacab3123b17518fcc47102b0f', class: {
37
+ return (h(Host, { key: 'd2899b9a6aeb8d81ecb0eb28c4d415b42ad75af5' }, h("div", { key: 'db1003e3d7923491bad2bd7c2cf2871dd87874f0', class: { 'w-fit': true, 'flex items-center': !!this.label }, onClick: this.handleClick }, h("div", { key: 'f1cff2e9d20cfd0e369cfdcd490bc265a8de2fa9', class: {
38
38
  'w-[30px] h-[30px] rounded-full flex justify-center items-center outline-none': true,
39
39
  'active:bg-states-empty-bg-pressed cursor-pointer': !this.disabled,
40
40
  'bg-brand-primary': this.checked,
41
41
  'border border-line-input': !this.checked,
42
42
  'container-focus': this.radioIsFocus,
43
43
  'bg-states-bg-disabled border-2 border-states-bg-disabled cursor-not-allowed': this.disabled,
44
- }, tabIndex: 0, onFocus: this.handleFocus, onBlur: this.handleFocusOut }, this.checked && h("div", { key: '432be610a630997a939e3695a053a5fade13e109', class: "bg-transparent border-2 border-negative-negative-1 w-[18px] h-[18px] rounded-full" })), this.label && h("label", { key: '193035c8d746f073ab4ebfec2cca7fab87fe5dac', class: { 'ml-16 text-base text-text-primary': true, 'cursor-pointer': !this.disabled } }, this.label))));
44
+ }, tabIndex: 0, onFocus: this.handleFocus, onBlur: this.handleFocusOut }, this.checked && h("div", { key: 'd5353979e7fd4481fc6c6964360b2a5cc682dff8', class: "bg-transparent border-2 border-negative-negative-1 w-[18px] h-[18px] rounded-full" })), this.label && h("label", { key: 'fdadebd9a83092780405798b1fb1797325b08b82', class: { 'ml-16 text-base text-text-primary': true, 'cursor-pointer': !this.disabled } }, this.label))));
45
45
  }
46
46
  static get is() { return "sula-radio-button"; }
47
47
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,6 @@
1
+ export var SulaSearchBarStyle;
2
+ (function (SulaSearchBarStyle) {
3
+ SulaSearchBarStyle["Default"] = "default";
4
+ SulaSearchBarStyle["Highlight"] = "highlight";
5
+ })(SulaSearchBarStyle || (SulaSearchBarStyle = {}));
6
+ //# sourceMappingURL=sula-search.bar-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sula-search.bar-model.js","sourceRoot":"","sources":["../../../../src/components/sula-search-bar/model/sula-search.bar-model.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,6CAAuB,CAAA;AACzB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B","sourcesContent":["export enum SulaSearchBarStyle {\n Default = 'default',\n Highlight = 'highlight',\n}\n"]}
@@ -0,0 +1 @@
1
+ *,:after,:before{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: ;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}.outline{outline-style:solid}:host{display:block}.search-bar-shadow{box-shadow:0 4px 19.7px 0 rgba(0,0,0,.059)}.search-bar-focus{outline:2px solid var(--color-feedback-informational)!important;outline-offset:2px!important}:root{--color-green-50:#f1f9f4;--color-green-100:#e6f4ed;--color-green-200:#cae7d8;--color-green-300:#a0d4b8;--color-green-400:#68bb8e;--color-green-500:#04843f;--color-green-600:#037236;--color-green-700:#03632f;--color-green-800:#035428;--color-green-900:#024521;--color-green-950:#02361a;--color-red-50:#fef6f6;--color-red-100:#fde8e8;--color-red-200:#fad1d1;--color-red-300:#f7abab;--color-red-400:#f17474;--color-red-500:#c80505;--color-red-600:#b30404;--color-red-700:#9f0404;--color-red-800:#860303;--color-red-900:#6d0303;--color-red-950:#500202;--color-yellow-50:#fdf4e7;--color-yellow-100:#fcedd9;--color-yellow-200:#fae0bd;--color-yellow-300:#f6c788;--color-yellow-400:#f3b159;--color-yellow-500:#ef9928;--color-yellow-600:#e49226;--color-yellow-700:#d17e10;--color-yellow-800:#b46d0e;--color-yellow-900:#93590b;--color-yellow-950:#683f08;--color-orange-50:#fef4f1;--color-orange-100:#fde8e2;--color-orange-200:#fbd2c6;--color-orange-300:#f8b4a0;--color-orange-400:#f58e70;--color-orange-500:#f05223;--color-orange-600:#ea4210;--color-orange-700:#d23b0e;--color-orange-800:#b5330c;--color-orange-900:#942a0a;--color-orange-950:#691e07;--color-blue-50:#ecf0f9;--color-blue-100:#dde3f4;--color-blue-200:#b2c2e5;--color-blue-300:#7994d2;--color-blue-400:#4066bf;--color-blue-500:#001e64;--color-blue-600:#001c5c;--color-blue-700:#00174c;--color-blue-800:#00123d;--color-blue-900:#000f33;--color-blue-950:#000d2b;--color-ambar-50:#fff6eb;--color-ambar-100:#ffefdc;--color-ambar-200:#fedfb9;--color-ambar-300:#fdca8b;--color-ambar-400:#fdb359;--color-ambar-500:#fc9c26;--color-ambar-600:#ec8403;--color-ambar-700:#d87803;--color-ambar-800:#ba6803;--color-ambar-900:#975402;--color-ambar-950:#6a3b01;--color-gray-50:#fff;--color-gray-100:#f4f4f4;--color-gray-200:#e6e6e6;--color-gray-300:#c3c3c3;--color-gray-400:#b9b9b9;--color-gray-500:#949494;--color-gray-600:#737373;--color-gray-700:#5c5c5c;--color-gray-800:#323232;--color-gray-900:#292929;--color-gray-950:#141414;--color-white-opacity-50:#ffffff0d;--color-white-opacity-100:#ffffff1a;--color-white-opacity-200:#ffffff26;--color-white-opacity-300:#ffffff45;--color-white-opacity-400:#ffffff5c;--color-white-opacity-500:#ffffff80;--color-white-opacity-600:#ffffff8c;--color-white-opacity-700:#ffffffa3;--color-white-opacity-800:#ffffffba;--color-white-opacity-900:#fffc;--color-white-opacity-950:#ffffffe8;--color-ciano-50:#f1f6fe;--color-ciano-100:#dfeafc;--color-ciano-200:#c3d9f9;--color-ciano-300:#90b9f4;--color-ciano-400:#5d98ee;--color-ciano-500:#1769e0;--color-ciano-600:#155fcb;--color-ciano-700:#1355b4;--color-ciano-800:#104899;--color-ciano-900:#0d3b7d;--color-ciano-950:#0a2e61;--color-extra-color-blue-light:#e7f0f4;--color-extra-color-blue-dark:#162931;--color-black-opacity-50:#14141405;--color-black-opacity-100:#1414141a;--color-black-opacity-200:#14141426;--color-black-opacity-300:#14141445;--color-black-opacity-400:#1414145c;--color-black-opacity-500:#14141480;--color-black-opacity-600:#1414148c;--color-black-opacity-700:#141414a3;--color-black-opacity-800:#141414ba;--color-black-opacity-900:#141414cc;--color-black-opacity-950:#141414e8;--color-feedback-success:#04843f;--color-feedback-error:#c80505;--color-feedback-informational:#1355b4;--color-feedback-alert:#ef9928;--color-brand-primary:#f05223;--color-brand-secondary:#001c5c;--color-brand-tertiary-1:#1769e0;--color-brand-tertiary-2:#fc9c26;--color-surface-body:#fff;--color-surface-on-body:#f4f4f4;--color-surface-on-body-blue:#e7f0f4;--color-surface-on-body-brand:#fff6eb;--color-surface-on-body-feedback-success:#e6f4ed;--color-surface-on-body-feedback-error:#fde8e8;--color-surface-on-body-feedback-alert:#fdf4e7;--color-surface-on-body-feedback-info:#dfeafc;--color-text-brand:#f05223;--color-text-primary:#323232;--color-text-secondary:#5c5c5c;--color-text-disabled:#949494;--color-text-link:#1355b4;--color-states-empty-bg-hover:#1414141a;--color-states-empty-bg-pressed:#14141426;--color-states-bg-disabled:#14141405;--color-states-bg-focus:#1355b4;--color-states-primary-hover:#ea4210;--color-states-primary-pressed:#d23b0e;--color-states-danger-hover:#b30404;--color-states-danger-pressed:#9f0404;--color-states-negative-hover:#e6e6e6;--color-states-negative-pressed:#c3c3c3;--color-icon-primary:#5c5c5c;--color-icon-secondary:#fff;--color-icon-tertiary:#b30404;--color-icon-disabled:#b9b9b9;--color-neutral-neutral-1:#fff;--color-neutral-neutral-2:#f4f4f4;--color-neutral-neutral-3:#b9b9b9;--color-neutral-neutral-4:#949494;--color-neutral-neutral-5:#737373;--color-neutral-neutral-6:#5c5c5c;--color-neutral-neutral-7:#323232;--color-neutral-neutral-8:#292929;--color-negative-negative-1:#fff;--color-negative-negative-2:#323232;--color-opacity-body:#fffc;--color-opacity-on-body:#14141405;--color-opacity-overlay:#1414148c;--color-opacity-on-overlay:#ffffff1a;--color-line-input:#949494;--color-line-general-strong:#c3c3c3;--color-line-general:#e6e6e6}.static{position:static}.flex{display:flex}.h-44{height:2.75rem}.w-full{width:100%}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.space-x-12>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.rounded-xxl{border-radius:18.75rem}.border{border-width:1px}.border-none{border-style:none}.border-surface-on-body{border-color:var(--color-surface-on-body)}.bg-surface-body{background-color:var(--color-surface-body)}.bg-surface-on-body{background-color:var(--color-surface-on-body)}.bg-transparent{background-color:transparent}.px-16{padding-left:1rem;padding-right:1rem}.text-2xl{font-size:1.5rem;line-height:2rem}.leading-6{line-height:1.5rem}.text-icon-primary{color:var(--color-icon-primary)}.text-text-primary{color:var(--color-text-primary)}.caret-brand-primary{caret-color:var(--color-brand-primary)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:bg-states-empty-bg-hover:hover{background-color:var(--color-states-empty-bg-hover)}.group:hover .group-hover\:text-brand-primary{color:var(--color-brand-primary)}
@@ -0,0 +1,240 @@
1
+ import { Host, h } from "@stencil/core";
2
+ import { SulaSearchBarStyle } from "./model/sula-search.bar-model";
3
+ export class SulaSearchBar {
4
+ constructor() {
5
+ /**
6
+ * Search bar style
7
+ */
8
+ this.searchBarStyle = SulaSearchBarStyle.Default;
9
+ this.isFocused = false;
10
+ this.textValue = '';
11
+ this.handleInputFocus = () => {
12
+ this.isFocused = true;
13
+ this.inputElement.focus();
14
+ this.focusedOn.emit();
15
+ };
16
+ this.handleInputBlur = () => {
17
+ this.isFocused = false;
18
+ this.inputElement.blur();
19
+ this.focusedOut.emit();
20
+ };
21
+ this.handleRightIconClick = (event) => {
22
+ this.rightIconClicked.emit();
23
+ event.stopPropagation();
24
+ event.preventDefault();
25
+ };
26
+ this.handleValueChanges = (event) => {
27
+ const newValue = event.target.value;
28
+ this.textValue = newValue;
29
+ this.value = newValue;
30
+ this.valueChanged.emit(newValue);
31
+ };
32
+ }
33
+ componentWillLoad() {
34
+ if (this.value && this.value.trim().length > 0) {
35
+ this.textValue = this.value;
36
+ }
37
+ }
38
+ getStyleClass() {
39
+ const style = {
40
+ [SulaSearchBarStyle.Default]: 'bg-surface-on-body hover:bg-states-empty-bg-hover',
41
+ [SulaSearchBarStyle.Highlight]: 'bg-surface-body search-bar-shadow border border-surface-on-body',
42
+ };
43
+ return style[this.searchBarStyle];
44
+ }
45
+ render() {
46
+ return (h(Host, { key: 'd4d90e7c772577043a926f5c4da9940cb5540fb9' }, h("div", { key: '9d99122174667fca977c37e3cd707571f2fb5d54', class: {
47
+ 'flex flex-row items-center space-x-12 px-16 rounded-xxl h-44 caret-brand-primary outline-none group': true,
48
+ [this.getStyleClass()]: true,
49
+ 'search-bar-focus': this.isFocused,
50
+ }, tabIndex: 0, onFocus: this.handleInputFocus, onClick: this.handleInputFocus }, !this.isFocused && this.leftIcon && (h("div", { key: 'c95b9cdde31fcae4c990a9b1fd31e26354925903', class: "flex justify-center items-center leading-6" }, h("sula-icon", { key: '7c8087041097973cbef0a2b694c80e17545b1667', icon: this.leftIcon, customClass: "text-2xl text-icon-primary group-hover:text-brand-primary" }))), h("input", { key: 'a637dbc3e075bd9262140adf932ec828b5c2c4eb', ref: node => (this.inputElement = node), type: "text", class: "outline-none border-none w-full bg-transparent text-text-primary", placeholder: this.placeholder, onBlur: this.handleInputBlur, value: this.textValue, onInput: this.handleValueChanges }), this.rightIcon && (h("div", { key: '76c21444a58564a0fdcb741f38623005d2c445b5', class: "flex justify-center items-center leading-6 cursor-pointer", onClick: this.handleRightIconClick, onMouseDown: e => e.preventDefault() }, h("sula-icon", { key: '9e10c4ead0b0563277e0ddf0e0cf6e9ee79171f8', icon: this.rightIcon, customClass: "text-2xl text-icon-primary" }))))));
51
+ }
52
+ static get is() { return "sula-search-bar"; }
53
+ static get encapsulation() { return "shadow"; }
54
+ static get originalStyleUrls() {
55
+ return {
56
+ "$": ["sula-search-bar.scss"]
57
+ };
58
+ }
59
+ static get styleUrls() {
60
+ return {
61
+ "$": ["sula-search-bar.css"]
62
+ };
63
+ }
64
+ static get properties() {
65
+ return {
66
+ "value": {
67
+ "type": "string",
68
+ "attribute": "value",
69
+ "mutable": true,
70
+ "complexType": {
71
+ "original": "string",
72
+ "resolved": "string",
73
+ "references": {}
74
+ },
75
+ "required": false,
76
+ "optional": true,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": "Value for the search bar."
80
+ },
81
+ "getter": false,
82
+ "setter": false,
83
+ "reflect": false
84
+ },
85
+ "searchBarStyle": {
86
+ "type": "string",
87
+ "attribute": "search-bar-style",
88
+ "mutable": true,
89
+ "complexType": {
90
+ "original": "SulaSearchBarStyle",
91
+ "resolved": "SulaSearchBarStyle.Default | SulaSearchBarStyle.Highlight",
92
+ "references": {
93
+ "SulaSearchBarStyle": {
94
+ "location": "import",
95
+ "path": "./model/sula-search.bar-model",
96
+ "id": "src/components/sula-search-bar/model/sula-search.bar-model.ts::SulaSearchBarStyle"
97
+ }
98
+ }
99
+ },
100
+ "required": false,
101
+ "optional": false,
102
+ "docs": {
103
+ "tags": [],
104
+ "text": "Search bar style"
105
+ },
106
+ "getter": false,
107
+ "setter": false,
108
+ "reflect": false,
109
+ "defaultValue": "SulaSearchBarStyle.Default"
110
+ },
111
+ "placeholder": {
112
+ "type": "string",
113
+ "attribute": "placeholder",
114
+ "mutable": true,
115
+ "complexType": {
116
+ "original": "string",
117
+ "resolved": "string",
118
+ "references": {}
119
+ },
120
+ "required": false,
121
+ "optional": false,
122
+ "docs": {
123
+ "tags": [],
124
+ "text": "Search bar placeholder"
125
+ },
126
+ "getter": false,
127
+ "setter": false,
128
+ "reflect": false
129
+ },
130
+ "leftIcon": {
131
+ "type": "string",
132
+ "attribute": "left-icon",
133
+ "mutable": true,
134
+ "complexType": {
135
+ "original": "string",
136
+ "resolved": "string",
137
+ "references": {}
138
+ },
139
+ "required": false,
140
+ "optional": false,
141
+ "docs": {
142
+ "tags": [],
143
+ "text": "Search bar left icon"
144
+ },
145
+ "getter": false,
146
+ "setter": false,
147
+ "reflect": false
148
+ },
149
+ "rightIcon": {
150
+ "type": "string",
151
+ "attribute": "right-icon",
152
+ "mutable": true,
153
+ "complexType": {
154
+ "original": "string",
155
+ "resolved": "string",
156
+ "references": {}
157
+ },
158
+ "required": false,
159
+ "optional": false,
160
+ "docs": {
161
+ "tags": [],
162
+ "text": "Search bar right icon"
163
+ },
164
+ "getter": false,
165
+ "setter": false,
166
+ "reflect": false
167
+ }
168
+ };
169
+ }
170
+ static get states() {
171
+ return {
172
+ "isFocused": {},
173
+ "textValue": {}
174
+ };
175
+ }
176
+ static get events() {
177
+ return [{
178
+ "method": "valueChanged",
179
+ "name": "valueChanged",
180
+ "bubbles": true,
181
+ "cancelable": true,
182
+ "composed": true,
183
+ "docs": {
184
+ "tags": [],
185
+ "text": "Event emitted when search bar value changes."
186
+ },
187
+ "complexType": {
188
+ "original": "string",
189
+ "resolved": "string",
190
+ "references": {}
191
+ }
192
+ }, {
193
+ "method": "focusedOn",
194
+ "name": "focusedOn",
195
+ "bubbles": true,
196
+ "cancelable": true,
197
+ "composed": true,
198
+ "docs": {
199
+ "tags": [],
200
+ "text": "Event emitted when search bar is focused."
201
+ },
202
+ "complexType": {
203
+ "original": "void",
204
+ "resolved": "void",
205
+ "references": {}
206
+ }
207
+ }, {
208
+ "method": "focusedOut",
209
+ "name": "focusedOut",
210
+ "bubbles": true,
211
+ "cancelable": true,
212
+ "composed": true,
213
+ "docs": {
214
+ "tags": [],
215
+ "text": "Event emitted when search bar is focused out."
216
+ },
217
+ "complexType": {
218
+ "original": "void",
219
+ "resolved": "void",
220
+ "references": {}
221
+ }
222
+ }, {
223
+ "method": "rightIconClicked",
224
+ "name": "rightIconClicked",
225
+ "bubbles": true,
226
+ "cancelable": true,
227
+ "composed": true,
228
+ "docs": {
229
+ "tags": [],
230
+ "text": "Event emitted when right icon is clicked"
231
+ },
232
+ "complexType": {
233
+ "original": "void",
234
+ "resolved": "void",
235
+ "references": {}
236
+ }
237
+ }];
238
+ }
239
+ }
240
+ //# sourceMappingURL=sula-search-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sula-search-bar.js","sourceRoot":"","sources":["../../../src/components/sula-search-bar/sula-search-bar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Event, EventEmitter, Host, Prop, State, h } from '@stencil/core';\nimport { SulaSearchBarStyle } from './model/sula-search.bar-model';\n\n@Component({\n tag: 'sula-search-bar',\n styleUrl: 'sula-search-bar.scss',\n shadow: true,\n})\nexport class SulaSearchBar {\n /**\n * Value for the search bar.\n */\n @Prop({ mutable: true })\n value?: string;\n\n /**\n * Search bar style\n */\n @Prop({ mutable: true })\n searchBarStyle: SulaSearchBarStyle = SulaSearchBarStyle.Default;\n\n /**\n * Search bar placeholder\n */\n @Prop({ mutable: true })\n placeholder: string;\n\n /**\n * Search bar left icon\n */\n @Prop({ mutable: true })\n leftIcon: string;\n\n /**\n * Search bar right icon\n */\n @Prop({ mutable: true })\n rightIcon: string;\n\n /**\n * Event emitted when search bar value changes.\n */\n @Event()\n valueChanged: EventEmitter<string>;\n\n /**\n * Event emitted when search bar is focused.\n */\n @Event()\n focusedOn: EventEmitter<void>;\n\n /**\n * Event emitted when search bar is focused out.\n */\n @Event()\n focusedOut: EventEmitter<void>;\n\n /**\n * Event emitted when right icon is clicked\n */\n @Event()\n rightIconClicked: EventEmitter<void>;\n\n @State()\n isFocused = false;\n\n @State()\n textValue: string = '';\n\n inputElement: HTMLInputElement;\n\n componentWillLoad() {\n if (this.value && this.value.trim().length > 0) {\n this.textValue = this.value;\n }\n }\n\n getStyleClass() {\n const style = {\n [SulaSearchBarStyle.Default]: 'bg-surface-on-body hover:bg-states-empty-bg-hover',\n [SulaSearchBarStyle.Highlight]: 'bg-surface-body search-bar-shadow border border-surface-on-body',\n };\n\n return style[this.searchBarStyle];\n }\n\n handleInputFocus = () => {\n this.isFocused = true;\n this.inputElement.focus();\n this.focusedOn.emit();\n };\n\n handleInputBlur = () => {\n this.isFocused = false;\n this.inputElement.blur();\n this.focusedOut.emit();\n };\n\n handleRightIconClick = (event: MouseEvent) => {\n this.rightIconClicked.emit();\n\n event.stopPropagation();\n event.preventDefault();\n };\n\n handleValueChanges = (event: InputEvent) => {\n const newValue = (event.target as HTMLTextAreaElement).value;\n this.textValue = newValue;\n this.value = newValue;\n\n this.valueChanged.emit(newValue);\n };\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'flex flex-row items-center space-x-12 px-16 rounded-xxl h-44 caret-brand-primary outline-none group': true,\n [this.getStyleClass()]: true,\n 'search-bar-focus': this.isFocused,\n }}\n tabIndex={0}\n onFocus={this.handleInputFocus}\n onClick={this.handleInputFocus}\n >\n {!this.isFocused && this.leftIcon && (\n <div class=\"flex justify-center items-center leading-6\">\n <sula-icon icon={this.leftIcon} customClass=\"text-2xl text-icon-primary group-hover:text-brand-primary\"></sula-icon>\n </div>\n )}\n\n <input\n ref={node => (this.inputElement = node)}\n type=\"text\"\n class=\"outline-none border-none w-full bg-transparent text-text-primary\"\n placeholder={this.placeholder}\n onBlur={this.handleInputBlur}\n value={this.textValue}\n onInput={this.handleValueChanges}\n />\n\n {this.rightIcon && (\n <div class=\"flex justify-center items-center leading-6 cursor-pointer\" onClick={this.handleRightIconClick} onMouseDown={e => e.preventDefault()}>\n <sula-icon icon={this.rightIcon} customClass=\"text-2xl text-icon-primary\"></sula-icon>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,119 @@
1
+ import { SulaSearchBarStyle } from "./model/sula-search.bar-model";
2
+ export default {
3
+ title: 'Components/sula-search-bar',
4
+ tags: ['autodocs'],
5
+ argTypes: {
6
+ value: {
7
+ control: 'text',
8
+ defaultValue: '',
9
+ description: 'Value for the search bar',
10
+ type: {
11
+ required: false,
12
+ },
13
+ },
14
+ searchBarStyle: {
15
+ control: { type: 'select' },
16
+ options: Object.values(SulaSearchBarStyle),
17
+ defaultValue: SulaSearchBarStyle.Default,
18
+ description: 'The search bar style',
19
+ type: {
20
+ required: false,
21
+ },
22
+ },
23
+ placeholder: {
24
+ control: 'text',
25
+ defaultValue: 'Pesquisar...',
26
+ description: 'The search bar placeholder',
27
+ type: {
28
+ required: false,
29
+ },
30
+ },
31
+ leftIcon: {
32
+ control: 'text',
33
+ defaultValue: 'ph ph-magnifying-glass',
34
+ description: 'The search bar left icon',
35
+ type: {
36
+ required: false,
37
+ },
38
+ },
39
+ rightIcon: {
40
+ control: 'text',
41
+ defaultValue: 'ph ph-x',
42
+ description: 'The search bar right icon',
43
+ type: {
44
+ required: false,
45
+ },
46
+ },
47
+ valueChanged: {
48
+ action: 'valueChanged',
49
+ description: 'Evento emitido quando o valor da busca muda',
50
+ },
51
+ focusedOn: {
52
+ action: 'focusedOn',
53
+ description: 'Evento emitido quando a barra de busca recebe foco',
54
+ },
55
+ focusedOut: {
56
+ action: 'focusedOut',
57
+ description: 'Evento emitido quando a barra de busca perde foco',
58
+ },
59
+ rightIconClicked: {
60
+ action: 'rightIconClicked',
61
+ description: 'Evento emitido quando o ícone da direita é clicado',
62
+ },
63
+ },
64
+ parameters: {
65
+ docs: {
66
+ description: {
67
+ component: 'O componente Search Bar do Sula Design System é utilizado para implementar funcionalidades de busca em aplicações. Suporta diferentes estilos, ícones personalizáveis e eventos para interação completa.',
68
+ },
69
+ },
70
+ },
71
+ };
72
+ const Template = args => {
73
+ const container = document.createElement('div');
74
+ container.style.maxWidth = '400px';
75
+ container.style.margin = '20px';
76
+ const el = document.createElement('sula-search-bar');
77
+ if (args.value)
78
+ el.setAttribute('value', args.value);
79
+ el.setAttribute('search-bar-style', args.searchBarStyle);
80
+ if (args.placeholder)
81
+ el.setAttribute('placeholder', args.placeholder);
82
+ if (args.leftIcon)
83
+ el.setAttribute('left-icon', args.leftIcon);
84
+ if (args.rightIcon)
85
+ el.setAttribute('right-icon', args.rightIcon);
86
+ el.addEventListener('valueChanged', args.valueChanged);
87
+ el.addEventListener('focusedOn', args.focusedOn);
88
+ el.addEventListener('focusedOut', args.focusedOut);
89
+ el.addEventListener('rightIconClicked', args.rightIconClicked);
90
+ container.appendChild(el);
91
+ return container;
92
+ };
93
+ export const Default = Template.bind({});
94
+ Default.args = {
95
+ value: '',
96
+ searchBarStyle: SulaSearchBarStyle.Default,
97
+ placeholder: 'Pesquisar...',
98
+ leftIcon: 'ph ph-magnifying-glass',
99
+ rightIcon: '',
100
+ };
101
+ export const WithValue = Template.bind({});
102
+ WithValue.args = Object.assign(Object.assign({}, Default.args), { value: 'Texto de busca' });
103
+ export const WithRightIcon = Template.bind({});
104
+ WithRightIcon.args = Object.assign(Object.assign({}, Default.args), { rightIcon: 'ph ph-x' });
105
+ export const HighlightStyle = Template.bind({});
106
+ HighlightStyle.args = Object.assign(Object.assign({}, Default.args), { searchBarStyle: SulaSearchBarStyle.Highlight });
107
+ export const WithoutLeftIcon = Template.bind({});
108
+ WithoutLeftIcon.args = Object.assign(Object.assign({}, Default.args), { leftIcon: '', placeholder: 'Busca sem ícone esquerdo' });
109
+ export const WithBothIcons = Template.bind({});
110
+ WithBothIcons.args = Object.assign(Object.assign({}, Default.args), { leftIcon: 'ph ph-magnifying-glass', rightIcon: 'ph ph-x', placeholder: 'Busca com ambos ícones' });
111
+ export const CustomPlaceholder = Template.bind({});
112
+ CustomPlaceholder.args = Object.assign(Object.assign({}, Default.args), { placeholder: 'Digite para buscar produtos...' });
113
+ export const HighlightWithIcons = Template.bind({});
114
+ HighlightWithIcons.args = Object.assign(Object.assign({}, Default.args), { searchBarStyle: SulaSearchBarStyle.Highlight, leftIcon: 'ph ph-magnifying-glass', rightIcon: 'ph ph-x' });
115
+ export const CustomIcons = Template.bind({});
116
+ CustomIcons.args = Object.assign(Object.assign({}, Default.args), { leftIcon: 'ph ph-funnel', rightIcon: 'ph ph-sliders', placeholder: 'Filtrar resultados...' });
117
+ export const WithValueAndRightIcon = Template.bind({});
118
+ WithValueAndRightIcon.args = Object.assign(Object.assign({}, Default.args), { value: 'Texto de busca', rightIcon: 'ph ph-x' });
119
+ //# sourceMappingURL=sula-search-bar.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sula-search-bar.stories.js","sourceRoot":"","sources":["../../../src/components/sula-search-bar/sula-search-bar.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import { SulaSearchBarStyle } from './model/sula-search.bar-model';\n\nexport default {\n title: 'Components/sula-search-bar',\n tags: ['autodocs'],\n argTypes: {\n value: {\n control: 'text',\n defaultValue: '',\n description: 'Value for the search bar',\n type: {\n required: false,\n },\n },\n searchBarStyle: {\n control: { type: 'select' },\n options: Object.values(SulaSearchBarStyle),\n defaultValue: SulaSearchBarStyle.Default,\n description: 'The search bar style',\n type: {\n required: false,\n },\n },\n placeholder: {\n control: 'text',\n defaultValue: 'Pesquisar...',\n description: 'The search bar placeholder',\n type: {\n required: false,\n },\n },\n leftIcon: {\n control: 'text',\n defaultValue: 'ph ph-magnifying-glass',\n description: 'The search bar left icon',\n type: {\n required: false,\n },\n },\n rightIcon: {\n control: 'text',\n defaultValue: 'ph ph-x',\n description: 'The search bar right icon',\n type: {\n required: false,\n },\n },\n valueChanged: {\n action: 'valueChanged',\n description: 'Evento emitido quando o valor da busca muda',\n },\n focusedOn: {\n action: 'focusedOn',\n description: 'Evento emitido quando a barra de busca recebe foco',\n },\n focusedOut: {\n action: 'focusedOut',\n description: 'Evento emitido quando a barra de busca perde foco',\n },\n rightIconClicked: {\n action: 'rightIconClicked',\n description: 'Evento emitido quando o ícone da direita é clicado',\n },\n },\n parameters: {\n docs: {\n description: {\n component:\n 'O componente Search Bar do Sula Design System é utilizado para implementar funcionalidades de busca em aplicações. Suporta diferentes estilos, ícones personalizáveis e eventos para interação completa.',\n },\n },\n },\n};\n\nconst Template = args => {\n const container = document.createElement('div');\n container.style.maxWidth = '400px';\n container.style.margin = '20px';\n\n const el = document.createElement('sula-search-bar');\n\n if (args.value) el.setAttribute('value', args.value);\n el.setAttribute('search-bar-style', args.searchBarStyle);\n if (args.placeholder) el.setAttribute('placeholder', args.placeholder);\n if (args.leftIcon) el.setAttribute('left-icon', args.leftIcon);\n if (args.rightIcon) el.setAttribute('right-icon', args.rightIcon);\n\n el.addEventListener('valueChanged', args.valueChanged);\n el.addEventListener('focusedOn', args.focusedOn);\n el.addEventListener('focusedOut', args.focusedOut);\n el.addEventListener('rightIconClicked', args.rightIconClicked);\n\n container.appendChild(el);\n\n return container;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n value: '',\n searchBarStyle: SulaSearchBarStyle.Default,\n placeholder: 'Pesquisar...',\n leftIcon: 'ph ph-magnifying-glass',\n rightIcon: '',\n};\n\nexport const WithValue = Template.bind({});\nWithValue.args = {\n ...Default.args,\n value: 'Texto de busca',\n};\n\nexport const WithRightIcon = Template.bind({});\nWithRightIcon.args = {\n ...Default.args,\n rightIcon: 'ph ph-x',\n};\n\nexport const HighlightStyle = Template.bind({});\nHighlightStyle.args = {\n ...Default.args,\n searchBarStyle: SulaSearchBarStyle.Highlight,\n};\n\nexport const WithoutLeftIcon = Template.bind({});\nWithoutLeftIcon.args = {\n ...Default.args,\n leftIcon: '',\n placeholder: 'Busca sem ícone esquerdo',\n};\n\nexport const WithBothIcons = Template.bind({});\nWithBothIcons.args = {\n ...Default.args,\n leftIcon: 'ph ph-magnifying-glass',\n rightIcon: 'ph ph-x',\n placeholder: 'Busca com ambos ícones',\n};\n\nexport const CustomPlaceholder = Template.bind({});\nCustomPlaceholder.args = {\n ...Default.args,\n placeholder: 'Digite para buscar produtos...',\n};\n\nexport const HighlightWithIcons = Template.bind({});\nHighlightWithIcons.args = {\n ...Default.args,\n searchBarStyle: SulaSearchBarStyle.Highlight,\n leftIcon: 'ph ph-magnifying-glass',\n rightIcon: 'ph ph-x',\n};\n\nexport const CustomIcons = Template.bind({});\nCustomIcons.args = {\n ...Default.args,\n leftIcon: 'ph ph-funnel',\n rightIcon: 'ph ph-sliders',\n placeholder: 'Filtrar resultados...',\n};\n\nexport const WithValueAndRightIcon = Template.bind({});\nWithValueAndRightIcon.args = {\n ...Default.args,\n value: 'Texto de busca',\n rightIcon: 'ph ph-x',\n};\n"]}