@platformatic/ui-components 0.1.124 → 0.1.126

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 (176) hide show
  1. package/dist/assets/index-78f54889.js +206 -0
  2. package/dist/assets/index-89e9ad97.css +1 -0
  3. package/dist/index.html +2 -2
  4. package/dist/main.css +0 -10
  5. package/fonts/Inter/Inter-VariableFont_slnt,wght.ttf +0 -0
  6. package/fonts/Inter/OFL.txt +93 -0
  7. package/fonts/Inter/README.txt +72 -0
  8. package/fonts/Inter/static/Inter-Black.ttf +0 -0
  9. package/fonts/Inter/static/Inter-Bold.ttf +0 -0
  10. package/fonts/Inter/static/Inter-ExtraBold.ttf +0 -0
  11. package/fonts/Inter/static/Inter-ExtraLight.ttf +0 -0
  12. package/fonts/Inter/static/Inter-Light.ttf +0 -0
  13. package/fonts/Inter/static/Inter-Medium.ttf +0 -0
  14. package/fonts/Inter/static/Inter-Regular.ttf +0 -0
  15. package/fonts/Inter/static/Inter-SemiBold.ttf +0 -0
  16. package/fonts/Inter/static/Inter-Thin.ttf +0 -0
  17. package/fonts/{Montserrat/fonts.css → fonts.css} +7 -0
  18. package/index.js +8 -0
  19. package/package.json +1 -1
  20. package/src/components/BorderedBox.jsx +25 -6
  21. package/src/components/BorderedBox.module.css +3 -0
  22. package/src/components/Common.module.css +34 -3
  23. package/src/components/HorizontalSeparator.jsx +2 -1
  24. package/src/components/HorizontalSeparator.module.css +19 -0
  25. package/src/components/LoadingSpinnerV2.jsx +56 -0
  26. package/src/components/LoadingSpinnerV2.module.css +8 -0
  27. package/src/components/Modal.jsx +36 -3
  28. package/src/components/Modal.module.css +9 -1
  29. package/src/components/ModalDirectional.jsx +83 -0
  30. package/src/components/ModalDirectional.module.css +38 -0
  31. package/src/components/PlatformaticIcon.jsx +20 -5
  32. package/src/components/SearchBarV2.jsx +120 -0
  33. package/src/components/SearchBarV2.module.css +28 -0
  34. package/src/components/TabbedWindowV2.jsx +82 -0
  35. package/src/components/TabbedWindowV2.module.css +17 -0
  36. package/src/components/VerticalSeparator.jsx +18 -6
  37. package/src/components/VerticalSeparator.module.css +3 -0
  38. package/src/components/constants.js +10 -2
  39. package/src/components/forms/Field.jsx +29 -8
  40. package/src/components/forms/Field.module.css +7 -1
  41. package/src/components/forms/Input.jsx +73 -8
  42. package/src/components/forms/Input.module.css +8 -3
  43. package/src/components/forms/Select.jsx +98 -20
  44. package/src/components/forms/Select.module.css +17 -6
  45. package/src/components/forms/ToggleSwitch.jsx +11 -5
  46. package/src/components/forms/ToggleSwitch.module.css +2 -2
  47. package/src/components/icons/AddIcon.jsx +12 -5
  48. package/src/components/icons/AlertIcon.jsx +12 -5
  49. package/src/components/icons/AllInOneIcon.jsx +12 -5
  50. package/src/components/icons/ApiCloudIcon.jsx +12 -5
  51. package/src/components/icons/ApiEmptyIcon.jsx +12 -5
  52. package/src/components/icons/ApiIcon.jsx +12 -5
  53. package/src/components/icons/ApiIconClosed.jsx +10 -4
  54. package/src/components/icons/ApiPerformanceIcon.jsx +12 -5
  55. package/src/components/icons/AppEmptyIcon.jsx +12 -5
  56. package/src/components/icons/AppIcon.jsx +12 -5
  57. package/src/components/icons/AppListIcon.jsx +12 -5
  58. package/src/components/icons/AppWorkspace.jsx +5 -2
  59. package/src/components/icons/ApplicationTypeIcon.jsx +12 -5
  60. package/src/components/icons/ArrowDownFullIcon.jsx +12 -5
  61. package/src/components/icons/ArrowDownIcon.jsx +12 -5
  62. package/src/components/icons/ArrowLeftIcon.jsx +12 -5
  63. package/src/components/icons/ArrowLongLeftIcon.jsx +84 -0
  64. package/src/components/icons/ArrowLongRightIcon.jsx +12 -5
  65. package/src/components/icons/ArrowRightIcon.jsx +12 -5
  66. package/src/components/icons/ArrowUpIcon.jsx +12 -5
  67. package/src/components/icons/BellIcon.jsx +12 -5
  68. package/src/components/icons/BillingIcon.jsx +12 -5
  69. package/src/components/icons/Calendar1DayIcon.jsx +12 -5
  70. package/src/components/icons/Calendar7DaysIcon.jsx +12 -5
  71. package/src/components/icons/CalendarIcon.jsx +12 -5
  72. package/src/components/icons/CheckListIcon.jsx +12 -5
  73. package/src/components/icons/CircleAddIcon.jsx +12 -5
  74. package/src/components/icons/CircleArrowLeftIcon.jsx +12 -5
  75. package/src/components/icons/CircleArrowRightIcon.jsx +12 -5
  76. package/src/components/icons/CircleCheckMarkButtonIcon.jsx +7 -3
  77. package/src/components/icons/CircleCheckMarkFullIcon.jsx +12 -5
  78. package/src/components/icons/CircleCheckMarkIcon.jsx +10 -4
  79. package/src/components/icons/CircleCloseHoverIcon.jsx +12 -5
  80. package/src/components/icons/CircleCloseIcon.jsx +12 -5
  81. package/src/components/icons/CircleCopyPasteIcon.jsx +12 -5
  82. package/src/components/icons/CircleDownloadIcon.jsx +12 -5
  83. package/src/components/icons/CircleEditIcon.jsx +12 -5
  84. package/src/components/icons/CircleExclamationIcon.jsx +5 -2
  85. package/src/components/icons/CircleFullIcon.jsx +12 -5
  86. package/src/components/icons/CircleGearIcon.jsx +12 -5
  87. package/src/components/icons/CircleRestartIcon.jsx +12 -5
  88. package/src/components/icons/CircleSubtractIcon.jsx +12 -5
  89. package/src/components/icons/CircleTwoArrowsDownIcon.jsx +12 -5
  90. package/src/components/icons/CircleTwoArrowsUpIcon.jsx +12 -5
  91. package/src/components/icons/CloseIcon.jsx +12 -5
  92. package/src/components/icons/CloudIcon.jsx +12 -5
  93. package/src/components/icons/ConfigureDatabaseIcon.jsx +12 -5
  94. package/src/components/icons/CopyPasteIcon.jsx +12 -5
  95. package/src/components/icons/CreatingAppIcon.jsx +12 -5
  96. package/src/components/icons/CreditCardIcon.jsx +12 -5
  97. package/src/components/icons/DatabaseIcon.jsx +12 -5
  98. package/src/components/icons/DatabaseMigrationIcon.jsx +12 -5
  99. package/src/components/icons/DepencenciesReloadIcon.jsx +12 -5
  100. package/src/components/icons/EditDocumentIcon.jsx +12 -5
  101. package/src/components/icons/EditIcon.jsx +12 -5
  102. package/src/components/icons/EnlargeIcon.jsx +12 -5
  103. package/src/components/icons/EntryIcon.jsx +12 -5
  104. package/src/components/icons/ExpandIcon.jsx +92 -0
  105. package/src/components/icons/ExploreDocIcon.jsx +12 -5
  106. package/src/components/icons/EyeClosedIcon.jsx +12 -5
  107. package/src/components/icons/EyeOpenedIcon.jsx +12 -5
  108. package/src/components/icons/FolderIcon.jsx +83 -0
  109. package/src/components/icons/FoldersIcon.jsx +86 -0
  110. package/src/components/icons/GearIcon.jsx +12 -5
  111. package/src/components/icons/GenerationLoadingIcon.jsx +12 -5
  112. package/src/components/icons/GitHubRepo2Icon.jsx +12 -5
  113. package/src/components/icons/GitHubRepoIcon.jsx +12 -5
  114. package/src/components/icons/GiveOwnershipIcon.jsx +12 -5
  115. package/src/components/icons/GraphQLIcon.jsx +12 -5
  116. package/src/components/icons/Icons.module.css +7 -2
  117. package/src/components/icons/ImportApplicationIcon.jsx +12 -5
  118. package/src/components/icons/KeyIcon.jsx +12 -5
  119. package/src/components/icons/LabelIcon.jsx +12 -5
  120. package/src/components/icons/LayersIcon.jsx +12 -5
  121. package/src/components/icons/LensIcon.jsx +12 -5
  122. package/src/components/icons/LiveIcon.jsx +12 -5
  123. package/src/components/icons/LoadingAppIcon.jsx +12 -5
  124. package/src/components/icons/LogOutIcon.jsx +5 -2
  125. package/src/components/icons/MetricsIcon.jsx +12 -5
  126. package/src/components/icons/MetricsLoadingIcon.jsx +12 -5
  127. package/src/components/icons/NameAppIcon.jsx +12 -5
  128. package/src/components/icons/OrganizationIcon.jsx +12 -5
  129. package/src/components/icons/OutOfBoxGraphQLIcon.jsx +12 -5
  130. package/src/components/icons/PlatformaticComposerIcon.jsx +12 -5
  131. package/src/components/icons/PlatformaticDBIcon.jsx +12 -5
  132. package/src/components/icons/PlatformaticRuntimeIcon.jsx +12 -5
  133. package/src/components/icons/PlatformaticServiceIcon.jsx +12 -5
  134. package/src/components/icons/PlayIcon.jsx +12 -5
  135. package/src/components/icons/PreviewPRIcon.jsx +12 -5
  136. package/src/components/icons/PullRequestIcon.jsx +12 -5
  137. package/src/components/icons/PullRequestLoadingIcon.jsx +12 -5
  138. package/src/components/icons/RequestOwnershipIcon.jsx +12 -5
  139. package/src/components/icons/RestartIcon.jsx +12 -5
  140. package/src/components/icons/RocketIcon.jsx +12 -5
  141. package/src/components/icons/RunningIcon.jsx +12 -5
  142. package/src/components/icons/SendIcon.jsx +12 -5
  143. package/src/components/icons/ServiceIcon.jsx +12 -5
  144. package/src/components/icons/SlotIcon.jsx +12 -5
  145. package/src/components/icons/SocialDiscordIcon.jsx +12 -5
  146. package/src/components/icons/SocialGitHubIcon.jsx +12 -5
  147. package/src/components/icons/SocialGitLabIcon.jsx +12 -5
  148. package/src/components/icons/SocialLinkedInIcon.jsx +12 -5
  149. package/src/components/icons/SocialNPMIcon.jsx +12 -5
  150. package/src/components/icons/SocialXIcon.jsx +12 -5
  151. package/src/components/icons/SortableIcon.jsx +93 -0
  152. package/src/components/icons/StackablesPluginIcon.jsx +134 -0
  153. package/src/components/icons/StackablesTemplateIcon.jsx +133 -0
  154. package/src/components/icons/StopIcon.jsx +12 -5
  155. package/src/components/icons/SwitchIcon.jsx +12 -5
  156. package/src/components/icons/TeamsIcon.jsx +12 -5
  157. package/src/components/icons/TerminalIcon.jsx +12 -5
  158. package/src/components/icons/TrashIcon.jsx +95 -0
  159. package/src/components/icons/TwoUsersIcon.jsx +12 -5
  160. package/src/components/icons/UpgradeIcon.jsx +12 -5
  161. package/src/components/icons/UserIcon.jsx +12 -5
  162. package/src/components/icons/UserRemoveIcon.jsx +5 -2
  163. package/src/components/icons/UserRoleIcon.jsx +5 -2
  164. package/src/components/icons/WorkspaceDynamicIcon.jsx +12 -5
  165. package/src/components/icons/WorkspaceEmptyIcon.jsx +12 -5
  166. package/src/components/icons/WorkspaceFailIcon.jsx +12 -5
  167. package/src/components/icons/WorkspaceGitHubIcon.jsx +12 -5
  168. package/src/components/icons/WorkspaceLoadingIcon.jsx +12 -5
  169. package/src/components/icons/WorkspaceReadyIcon.jsx +12 -5
  170. package/src/components/icons/WorkspaceStaticIcon.jsx +12 -5
  171. package/src/components/icons/index.js +23 -7
  172. package/src/stories/ModalDirectional.stories.jsx +45 -0
  173. package/src/stories/forms/Select.stories.jsx +33 -1
  174. package/tailwind.config.cjs +5 -2
  175. package/dist/assets/index-3a61658e.css +0 -1
  176. package/dist/assets/index-8f6ac36c.js +0 -206
@@ -0,0 +1,95 @@
1
+ import * as React from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import styles from './Icons.module.css'
4
+ import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
+
6
+ const TrashIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
11
+ let icon = <></>
12
+
13
+ switch (size) {
14
+ case SMALL:
15
+ icon = (
16
+ <svg
17
+ width={16}
18
+ height={16}
19
+ viewBox='0 0 16 16'
20
+ fill='none'
21
+ xmlns='http://www.w3.org/2000/svg'
22
+ className={className}
23
+ >
24
+ <path d='M4.08381 6.50611C4.03861 5.92502 4.49795 5.42857 5.0808 5.42857H10.9192C11.502 5.42857 11.9614 5.92502 11.9162 6.50611L11.4051 13.0775C11.3646 13.5982 10.9303 14 10.4081 14H5.59191C5.0697 14 4.63541 13.5982 4.59492 13.0775L4.08381 6.50611Z' stroke='none' />
25
+ <path d='M4 3.71429L12 3.71429' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
26
+ <path d='M9.60015 3.71429C9.60015 2.76751 8.8838 2 8.00015 2C7.11649 2 6.40015 2.76751 6.40015 3.71429' stroke='none' />
27
+ <path d='M5.6001 7.14285L6.4001 12.2857M10.4001 7.14285L10.0001 12.2857M8.0001 7.14285V12.2857' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
28
+
29
+ </svg>
30
+ )
31
+ break
32
+ case MEDIUM:
33
+ icon = (
34
+ <svg
35
+ width={24}
36
+ height={24}
37
+ viewBox='0 0 24 24'
38
+ fill='none'
39
+ xmlns='http://www.w3.org/2000/svg'
40
+ className={className}
41
+ >
42
+ <path d='M6.08381 9.2204C6.03861 8.63931 6.49795 8.14286 7.0808 8.14286H16.9192C17.502 8.14286 17.9614 8.63931 17.9162 9.2204L17.0717 20.0775C17.0313 20.5982 16.597 21 16.0748 21H7.92524C7.40303 21 6.96875 20.5982 6.92825 20.0775L6.08381 9.2204Z' stroke='none' strokeWidth={1.5} />
43
+ <path d='M6 5.57143L18 5.57143' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
44
+ <path d='M14.4001 5.57143C14.4001 4.15127 13.3256 3 12.0001 3C10.6746 3 9.6001 4.15127 9.6001 5.57143' stroke='none' strokeWidth={1.5} />
45
+ <path d='M8.40015 10.7143L9.60015 18.4286M15.6001 10.7143L15.0001 18.4286M12.0001 10.7143V18.4286' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
46
+ </svg>
47
+ )
48
+ break
49
+ case LARGE:
50
+ icon = (
51
+ <svg
52
+ width={40}
53
+ height={40}
54
+ viewBox='0 0 40 40'
55
+ fill='none'
56
+ xmlns='http://www.w3.org/2000/svg'
57
+ className={className}
58
+ >
59
+ <path d='M10.0838 14.649C10.0386 14.0679 10.498 13.5714 11.0808 13.5714H28.9192C29.5021 13.5714 29.9614 14.0679 29.9162 14.649L28.4051 34.0775C28.3646 34.5982 27.9303 35 27.4081 35H12.5919C12.0697 35 11.6354 34.5982 11.5949 34.0775L10.0838 14.649Z' stroke='none' strokeWidth={2} />
60
+ <path d='M10 9.28571L30 9.28571' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
61
+ <path d='M24.0002 9.28571C24.0002 6.91878 22.2094 5 20.0002 5C17.7911 5 16.0002 6.91878 16.0002 9.28571' stroke='none' strokeWidth={2} />
62
+ <path d='M14.0002 17.8571L16.0002 30.7143M26.0002 17.8571L25.0002 30.7143M20.0002 17.8571V30.7143' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
63
+
64
+ </svg>
65
+ )
66
+ break
67
+
68
+ default:
69
+ break
70
+ }
71
+ return icon
72
+ }
73
+
74
+ TrashIcon.propTypes = {
75
+ /**
76
+ * color of text, icon and borders
77
+ */
78
+ color: PropTypes.oneOf(COLORS_ICON),
79
+ /**
80
+ * Size
81
+ */
82
+ size: PropTypes.oneOf(SIZES),
83
+ /**
84
+ * disabled
85
+ */
86
+ disabled: PropTypes.bool
87
+ }
88
+
89
+ TrashIcon.defaultProps = {
90
+ color: MAIN_DARK_BLUE,
91
+ size: MEDIUM,
92
+ disabled: false
93
+ }
94
+
95
+ export default TrashIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const TwoUsersIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const TwoUsersIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -74,12 +77,16 @@ TwoUsersIcon.propTypes = {
74
77
  /**
75
78
  * Size
76
79
  */
77
- size: PropTypes.oneOf(SIZES)
80
+ size: PropTypes.oneOf(SIZES),
81
+ /**
82
+ * disabled
83
+ */
84
+ disabled: PropTypes.bool
78
85
  }
79
-
80
86
  TwoUsersIcon.defaultProps = {
81
87
  color: MAIN_DARK_BLUE,
82
- size: MEDIUM
88
+ size: MEDIUM,
89
+ disabled: false
83
90
  }
84
91
 
85
92
  export default TwoUsersIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, EXTRA_LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const UpgradeIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const UpgradeIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -107,12 +110,16 @@ UpgradeIcon.propTypes = {
107
110
  /**
108
111
  * Size
109
112
  */
110
- size: PropTypes.oneOf(SIZES)
113
+ size: PropTypes.oneOf(SIZES),
114
+ /**
115
+ * disabled
116
+ */
117
+ disabled: PropTypes.bool
111
118
  }
112
-
113
119
  UpgradeIcon.defaultProps = {
114
120
  color: MAIN_DARK_BLUE,
115
- size: MEDIUM
121
+ size: MEDIUM,
122
+ disabled: false
116
123
  }
117
124
 
118
125
  export default UpgradeIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const UserIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const UserIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -69,12 +72,16 @@ UserIcon.propTypes = {
69
72
  /**
70
73
  * Size
71
74
  */
72
- size: PropTypes.oneOf(SIZES)
75
+ size: PropTypes.oneOf(SIZES),
76
+ /**
77
+ * disabled
78
+ */
79
+ disabled: PropTypes.bool
73
80
  }
74
-
75
81
  UserIcon.defaultProps = {
76
82
  color: MAIN_DARK_BLUE,
77
- size: MEDIUM
83
+ size: MEDIUM,
84
+ disabled: false
78
85
  }
79
86
 
80
87
  export default UserIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const UserRemoveIcon = ({ color, size, tip }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const UserRemoveIcon = ({ color, size, tip, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const UserRoleIcon = ({ color, size, tip }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const UserRoleIcon = ({ color, size, tip, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceDynamicIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceDynamicIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -77,12 +80,16 @@ WorkspaceDynamicIcon.propTypes = {
77
80
  /**
78
81
  * Size
79
82
  */
80
- size: PropTypes.oneOf(SIZES)
83
+ size: PropTypes.oneOf(SIZES),
84
+ /**
85
+ * disabled
86
+ */
87
+ disabled: PropTypes.bool
81
88
  }
82
-
83
89
  WorkspaceDynamicIcon.defaultProps = {
84
90
  color: MAIN_DARK_BLUE,
85
- size: MEDIUM
91
+ size: MEDIUM,
92
+ disabled: false
86
93
  }
87
94
 
88
95
  export default WorkspaceDynamicIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, MEDIUM, EXTRA_LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceEmptyIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceEmptyIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -44,12 +47,16 @@ WorkspaceEmptyIcon.propTypes = {
44
47
  /**
45
48
  * Size
46
49
  */
47
- size: PropTypes.oneOf(SIZES)
50
+ size: PropTypes.oneOf(SIZES),
51
+ /**
52
+ * disabled
53
+ */
54
+ disabled: PropTypes.bool
48
55
  }
49
-
50
56
  WorkspaceEmptyIcon.defaultProps = {
51
57
  color: MAIN_DARK_BLUE,
52
- size: MEDIUM
58
+ size: MEDIUM,
59
+ disabled: false
53
60
  }
54
61
 
55
62
  export default WorkspaceEmptyIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, EXTRA_LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceFailIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceFailIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -102,12 +105,16 @@ WorkspaceFailIcon.propTypes = {
102
105
  /**
103
106
  * Size
104
107
  */
105
- size: PropTypes.oneOf(SIZES)
108
+ size: PropTypes.oneOf(SIZES),
109
+ /**
110
+ * disabled
111
+ */
112
+ disabled: PropTypes.bool
106
113
  }
107
-
108
114
  WorkspaceFailIcon.defaultProps = {
109
115
  color: MAIN_DARK_BLUE,
110
- size: MEDIUM
116
+ size: MEDIUM,
117
+ disabled: false
111
118
  }
112
119
 
113
120
  export default WorkspaceFailIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, EXTRA_LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceGitHubIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceGitHubIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  const filledClassName = styles[`filled-${color}`]
9
12
  let icon = <></>
10
13
 
@@ -121,12 +124,16 @@ WorkspaceGitHubIcon.propTypes = {
121
124
  /**
122
125
  * Size
123
126
  */
124
- size: PropTypes.oneOf(SIZES)
127
+ size: PropTypes.oneOf(SIZES),
128
+ /**
129
+ * disabled
130
+ */
131
+ disabled: PropTypes.bool
125
132
  }
126
-
127
133
  WorkspaceGitHubIcon.defaultProps = {
128
134
  color: MAIN_DARK_BLUE,
129
- size: MEDIUM
135
+ size: MEDIUM,
136
+ disabled: false
130
137
  }
131
138
 
132
139
  export default WorkspaceGitHubIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, EXTRA_LARGE, MEDIUM, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceLoadingIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceLoadingIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  const filledClassName = styles[`filled-${color}`]
9
12
 
10
13
  let icon = <></>
@@ -46,12 +49,16 @@ WorkspaceLoadingIcon.propTypes = {
46
49
  /**
47
50
  * Size
48
51
  */
49
- size: PropTypes.oneOf(SIZES)
52
+ size: PropTypes.oneOf(SIZES),
53
+ /**
54
+ * disabled
55
+ */
56
+ disabled: PropTypes.bool
50
57
  }
51
-
52
58
  WorkspaceLoadingIcon.defaultProps = {
53
59
  color: MAIN_DARK_BLUE,
54
- size: MEDIUM
60
+ size: MEDIUM,
61
+ disabled: false
55
62
  }
56
63
 
57
64
  export default WorkspaceLoadingIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, EXTRA_LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceReadyIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceReadyIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -134,12 +137,16 @@ WorkspaceReadyIcon.propTypes = {
134
137
  /**
135
138
  * Size
136
139
  */
137
- size: PropTypes.oneOf(SIZES)
140
+ size: PropTypes.oneOf(SIZES),
141
+ /**
142
+ * disabled
143
+ */
144
+ disabled: PropTypes.bool
138
145
  }
139
-
140
146
  WorkspaceReadyIcon.defaultProps = {
141
147
  color: MAIN_DARK_BLUE,
142
- size: MEDIUM
148
+ size: MEDIUM,
149
+ disabled: false
143
150
  }
144
151
 
145
152
  export default WorkspaceReadyIcon
@@ -3,8 +3,11 @@ import PropTypes from 'prop-types'
3
3
  import styles from './Icons.module.css'
4
4
  import { COLORS_ICON, SIZES, SMALL, MEDIUM, LARGE, MAIN_DARK_BLUE } from '../constants'
5
5
 
6
- const WorkspaceStaticIcon = ({ color, size }) => {
7
- const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
+ const WorkspaceStaticIcon = ({ color, size, disabled }) => {
7
+ let className = `${styles.svgClassName} ` + styles[`${color}`]
8
+ if (disabled) {
9
+ className += ` ${styles.iconDisabled}`
10
+ }
8
11
  let icon = <></>
9
12
 
10
13
  switch (size) {
@@ -74,12 +77,16 @@ WorkspaceStaticIcon.propTypes = {
74
77
  /**
75
78
  * Size
76
79
  */
77
- size: PropTypes.oneOf(SIZES)
80
+ size: PropTypes.oneOf(SIZES),
81
+ /**
82
+ * disabled
83
+ */
84
+ disabled: PropTypes.bool
78
85
  }
79
-
80
86
  WorkspaceStaticIcon.defaultProps = {
81
87
  color: MAIN_DARK_BLUE,
82
- size: MEDIUM
88
+ size: MEDIUM,
89
+ disabled: false
83
90
  }
84
91
 
85
92
  export default WorkspaceStaticIcon
@@ -14,8 +14,9 @@ import AppWorkspace from './AppWorkspace'
14
14
  import ArrowDownFullIcon from './ArrowDownFullIcon'
15
15
  import ArrowDownIcon from './ArrowDownIcon'
16
16
  import ArrowLeftIcon from './ArrowLeftIcon'
17
- import ArrowRightIcon from './ArrowRightIcon'
17
+ import ArrowLongLeftIcon from './ArrowLongLeftIcon'
18
18
  import ArrowLongRightIcon from './ArrowLongRightIcon'
19
+ import ArrowRightIcon from './ArrowRightIcon'
19
20
  import ArrowUpIcon from './ArrowUpIcon'
20
21
  import BellIcon from './BellIcon'
21
22
  import BillingIcon from './BillingIcon'
@@ -50,13 +51,16 @@ import CreatingAppIcon from './CreatingAppIcon'
50
51
  import DatabaseIcon from './DatabaseIcon'
51
52
  import DatabaseMigrationIcon from './DatabaseMigrationIcon'
52
53
  import DepencenciesReloadIcon from './DepencenciesReloadIcon'
53
- import EyeClosedIcon from './EyeClosedIcon'
54
- import EyeOpenedIcon from './EyeOpenedIcon'
55
54
  import EditDocumentIcon from './EditDocumentIcon'
56
55
  import EditIcon from './EditIcon'
57
- import ExploreDocIcon from './ExploreDocIcon'
58
56
  import EnlargeIcon from './EnlargeIcon'
59
57
  import EntryIcon from './EntryIcon'
58
+ import ExpandIcon from './ExpandIcon'
59
+ import ExploreDocIcon from './ExploreDocIcon'
60
+ import EyeClosedIcon from './EyeClosedIcon'
61
+ import EyeOpenedIcon from './EyeOpenedIcon'
62
+ import FolderIcon from './FolderIcon'
63
+ import FoldersIcon from './FoldersIcon'
60
64
  import GearIcon from './GearIcon'
61
65
  import GenerationLoadingIcon from './GenerationLoadingIcon'
62
66
  import GiveOwnershipIcon from './GiveOwnershipIcon'
@@ -98,10 +102,14 @@ import SocialGitLabIcon from './SocialGitLabIcon'
98
102
  import SocialLinkedInIcon from './SocialLinkedInIcon'
99
103
  import SocialNPMIcon from './SocialNPMIcon'
100
104
  import SocialXIcon from './SocialXIcon'
105
+ import SortableIcon from './SortableIcon'
106
+ import StackablesPluginIcon from './StackablesPluginIcon'
107
+ import StackablesTemplateIcon from './StackablesTemplateIcon'
101
108
  import StopIcon from './StopIcon'
102
109
  import TerminalIcon from './TerminalIcon'
103
110
  import TwoUsersIcon from './TwoUsersIcon'
104
111
  import TeamsIcon from './TeamsIcon'
112
+ import TrashIcon from './TrashIcon'
105
113
  import UpgradeIcon from './UpgradeIcon'
106
114
  import UserIcon from './UserIcon'
107
115
  import UserRemoveIcon from './UserRemoveIcon'
@@ -131,8 +139,9 @@ export default {
131
139
  ArrowDownFullIcon,
132
140
  ArrowDownIcon,
133
141
  ArrowLeftIcon,
134
- ArrowRightIcon,
142
+ ArrowLongLeftIcon,
135
143
  ArrowLongRightIcon,
144
+ ArrowRightIcon,
136
145
  ArrowUpIcon,
137
146
  BellIcon,
138
147
  BillingIcon,
@@ -171,9 +180,12 @@ export default {
171
180
  EditIcon,
172
181
  EyeClosedIcon,
173
182
  EyeOpenedIcon,
183
+ ExpandIcon,
174
184
  ExploreDocIcon,
175
185
  EnlargeIcon,
176
186
  EntryIcon,
187
+ FolderIcon,
188
+ FoldersIcon,
177
189
  GearIcon,
178
190
  GenerationLoadingIcon,
179
191
  GiveOwnershipIcon,
@@ -208,6 +220,8 @@ export default {
208
220
  SendIcon,
209
221
  ServiceIcon,
210
222
  StopIcon,
223
+ StackablesPluginIcon,
224
+ StackablesTemplateIcon,
211
225
  SlotIcon,
212
226
  SwitchIcon,
213
227
  SocialDiscordIcon,
@@ -216,13 +230,15 @@ export default {
216
230
  SocialLinkedInIcon,
217
231
  SocialNPMIcon,
218
232
  SocialXIcon,
233
+ SortableIcon,
219
234
  TerminalIcon,
235
+ TeamsIcon,
236
+ TwoUsersIcon,
237
+ TrashIcon,
220
238
  UpgradeIcon,
221
239
  UserIcon,
222
240
  UserRemoveIcon,
223
241
  UserRoleIcon,
224
- TeamsIcon,
225
- TwoUsersIcon,
226
242
  WorkspaceDynamicIcon,
227
243
  WorkspaceEmptyIcon,
228
244
  WorkspaceFailIcon,
@@ -0,0 +1,45 @@
1
+ import React, { useState } from 'react'
2
+ import ModalDirectional from '../components/ModalDirectional'
3
+ import Button from '../components/Button'
4
+ import { MAIN_DARK_BLUE, MAIN_GREEN } from '../components/constants'
5
+ export default {
6
+ title: 'Platformatic/ModalDirectional',
7
+ component: ModalDirectional,
8
+ argTypes: {
9
+ title: {
10
+ type: 'string'
11
+ },
12
+ titleClassName: {
13
+ type: 'string'
14
+ },
15
+ smallLayout: {
16
+ type: 'bool'
17
+ }
18
+ }
19
+ }
20
+
21
+ const divStyle = {
22
+ width: '100%',
23
+ height: '100vH',
24
+ display: 'flex',
25
+ flexDirection: 'column',
26
+ position: 'relative'
27
+ }
28
+
29
+ const Template = (args) => {
30
+ const [isOpen, setIsOpen] = useState(false)
31
+ const { text, ...rest } = args
32
+ return (
33
+ <div style={divStyle}>
34
+ <div>
35
+ <Button type='button' color={MAIN_GREEN} backgroundColor={MAIN_DARK_BLUE} onClick={() => setIsOpen(true)} label='Open Modal' />
36
+ </div>
37
+ {isOpen && <ModalDirectional setIsOpen={setIsOpen} {...rest}>{text}</ModalDirectional>}
38
+ </div>
39
+ )
40
+ }
41
+
42
+ export const Lefty = Template.bind({})
43
+ Lefty.args = {
44
+ title: 'Close me'
45
+ }
@@ -1,7 +1,7 @@
1
1
  'use strict'
2
2
  import React, { useState } from 'react'
3
3
  import Select from '../../components/forms/Select'
4
- import { MAIN_DARK_BLUE, MAIN_GREEN } from '../../components/constants'
4
+ import { MAIN_DARK_BLUE, MAIN_GREEN, RICH_BLACK, WHITE } from '../../components/constants'
5
5
 
6
6
  const divStyle = {
7
7
  width: '100%',
@@ -142,3 +142,35 @@ githubRepoExample.args = {
142
142
  }),
143
143
  borderColor: MAIN_DARK_BLUE
144
144
  }
145
+
146
+ const TemplateTransparent = (args) => {
147
+ const [value, setValue] = useState('')
148
+
149
+ function handleChange (event) {
150
+ setValue(event.target.value)
151
+ }
152
+
153
+ function handleSelect (event) {
154
+ setValue(event.detail.label)
155
+ }
156
+
157
+ return (
158
+ <div style={{ padding: '20px 10px' }}>
159
+ <p>Value of the input {value}</p>
160
+ <Select {...args} value={value} onChange={handleChange} onSelect={handleSelect} />
161
+ </div>
162
+ )
163
+ }
164
+
165
+ export const TemplateBackgroundTransparent = TemplateTransparent.bind({})
166
+
167
+ TemplateBackgroundTransparent.args = {
168
+ name: 'test',
169
+ placeholder: 'Defaul option',
170
+ optionsBorderedBottom: false,
171
+ options: [...Array(20).keys()].map(ele => ({ label: `Option ${ele}`, value: `Value${ele}`, iconName: 'OrganizationIcon' })),
172
+ borderColor: WHITE,
173
+ mainColor: WHITE,
174
+ backgroundColor: RICH_BLACK,
175
+ borderListColor: WHITE
176
+ }
@@ -40,10 +40,13 @@ module.exports = {
40
40
  'error-red': '#FA2121',
41
41
  'tertiary-blue': '#2588E4',
42
42
  transparent: 'transparent',
43
- 'warning-yellow': '#FEB928'
43
+ 'warning-yellow': '#FEB928',
44
+ 'rich-black': '#00050B',
45
+ 'electric-purple': '#C61BE2'
44
46
  },
45
47
  fontFamily: {
46
- sans: ['Montserrat']
48
+ sans: ['Montserrat'],
49
+ inter: ['Inter']
47
50
  },
48
51
  letterSpacing: {
49
52
  tighter: '-.05em',