@carbon-labs/react-animated-header 0.1.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 (92) hide show
  1. package/LICENSE +201 -0
  2. package/es/__stories__/AnimatedHeader.stories.d.ts +17275 -0
  3. package/es/_virtual/_commonjsHelpers.js +12 -0
  4. package/es/_virtual/lottie.js +14 -0
  5. package/es/_virtual/lottie2.js +10 -0
  6. package/es/assets/index.d.ts +7 -0
  7. package/es/components/AnimatedHeader/AnimatedHeader.d.ts +31 -0
  8. package/es/components/AnimatedHeader/AnimatedHeader.js +277 -0
  9. package/es/components/Tiles/AIPromptTile/AIPromptTile.d.ts +20 -0
  10. package/es/components/Tiles/AIPromptTile/AIPromptTile.js +94 -0
  11. package/es/components/Tiles/BaseTile/BaseTile.d.ts +22 -0
  12. package/es/components/Tiles/BaseTile/BaseTile.js +39 -0
  13. package/es/components/Tiles/GlassTile/GlassTile.d.ts +21 -0
  14. package/es/components/Tiles/GlassTile/GlassTile.js +53 -0
  15. package/es/components/Tiles/index.d.ts +12 -0
  16. package/es/data/index.d.ts +47 -0
  17. package/es/index.d.ts +11 -0
  18. package/es/index.js +11 -0
  19. package/es/node_modules/@carbon/icon-helpers/es/index.js +125 -0
  20. package/es/node_modules/@carbon/icons-react/es/Icon.js +71 -0
  21. package/es/node_modules/@carbon/icons-react/es/generated/bucket-0.js +2967 -0
  22. package/es/node_modules/@carbon/icons-react/es/generated/bucket-1.js +3260 -0
  23. package/es/node_modules/@carbon/icons-react/es/generated/bucket-10.js +2906 -0
  24. package/es/node_modules/@carbon/icons-react/es/generated/bucket-11.js +3151 -0
  25. package/es/node_modules/@carbon/icons-react/es/generated/bucket-12.js +2966 -0
  26. package/es/node_modules/@carbon/icons-react/es/generated/bucket-13.js +3019 -0
  27. package/es/node_modules/@carbon/icons-react/es/generated/bucket-14.js +2923 -0
  28. package/es/node_modules/@carbon/icons-react/es/generated/bucket-15.js +3076 -0
  29. package/es/node_modules/@carbon/icons-react/es/generated/bucket-16.js +2913 -0
  30. package/es/node_modules/@carbon/icons-react/es/generated/bucket-17.js +2917 -0
  31. package/es/node_modules/@carbon/icons-react/es/generated/bucket-18.js +3141 -0
  32. package/es/node_modules/@carbon/icons-react/es/generated/bucket-19.js +811 -0
  33. package/es/node_modules/@carbon/icons-react/es/generated/bucket-2.js +3195 -0
  34. package/es/node_modules/@carbon/icons-react/es/generated/bucket-3.js +3119 -0
  35. package/es/node_modules/@carbon/icons-react/es/generated/bucket-4.js +3002 -0
  36. package/es/node_modules/@carbon/icons-react/es/generated/bucket-5.js +2929 -0
  37. package/es/node_modules/@carbon/icons-react/es/generated/bucket-6.js +2978 -0
  38. package/es/node_modules/@carbon/icons-react/es/generated/bucket-7.js +3017 -0
  39. package/es/node_modules/@carbon/icons-react/es/generated/bucket-8.js +3149 -0
  40. package/es/node_modules/@carbon/icons-react/es/generated/bucket-9.js +3084 -0
  41. package/es/node_modules/@carbon/icons-react/es/iconPropTypes-4cbeb95d.js +14 -0
  42. package/es/node_modules/@carbon/icons-react/es/index.js +30 -0
  43. package/es/node_modules/@carbon-labs/utilities/es/usePrefix.js +20 -0
  44. package/es/node_modules/lottie-web/build/player/lottie.js +682 -0
  45. package/lib/__stories__/AnimatedHeader.stories.d.ts +17275 -0
  46. package/lib/_virtual/_commonjsHelpers.js +14 -0
  47. package/lib/_virtual/lottie.js +18 -0
  48. package/lib/_virtual/lottie2.js +12 -0
  49. package/lib/assets/index.d.ts +7 -0
  50. package/lib/components/AnimatedHeader/AnimatedHeader.d.ts +31 -0
  51. package/lib/components/AnimatedHeader/AnimatedHeader.js +281 -0
  52. package/lib/components/Tiles/AIPromptTile/AIPromptTile.d.ts +20 -0
  53. package/lib/components/Tiles/AIPromptTile/AIPromptTile.js +96 -0
  54. package/lib/components/Tiles/BaseTile/BaseTile.d.ts +22 -0
  55. package/lib/components/Tiles/BaseTile/BaseTile.js +41 -0
  56. package/lib/components/Tiles/GlassTile/GlassTile.d.ts +21 -0
  57. package/lib/components/Tiles/GlassTile/GlassTile.js +55 -0
  58. package/lib/components/Tiles/index.d.ts +12 -0
  59. package/lib/data/index.d.ts +47 -0
  60. package/lib/index.d.ts +11 -0
  61. package/lib/index.js +18 -0
  62. package/lib/node_modules/@carbon/icon-helpers/es/index.js +128 -0
  63. package/lib/node_modules/@carbon/icons-react/es/Icon.js +75 -0
  64. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-0.js +3093 -0
  65. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-1.js +3386 -0
  66. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-10.js +3032 -0
  67. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-11.js +3277 -0
  68. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-12.js +3092 -0
  69. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-13.js +3145 -0
  70. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-14.js +3049 -0
  71. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-15.js +3202 -0
  72. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-16.js +3039 -0
  73. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-17.js +3043 -0
  74. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-18.js +3267 -0
  75. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-19.js +847 -0
  76. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-2.js +3321 -0
  77. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-3.js +3245 -0
  78. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-4.js +3128 -0
  79. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-5.js +3055 -0
  80. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-6.js +3104 -0
  81. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-7.js +3143 -0
  82. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-8.js +3275 -0
  83. package/lib/node_modules/@carbon/icons-react/es/generated/bucket-9.js +3210 -0
  84. package/lib/node_modules/@carbon/icons-react/es/iconPropTypes-4cbeb95d.js +16 -0
  85. package/lib/node_modules/@carbon/icons-react/es/index.js +2446 -0
  86. package/lib/node_modules/@carbon-labs/utilities/es/usePrefix.js +23 -0
  87. package/lib/node_modules/lottie-web/build/player/lottie.js +684 -0
  88. package/package.json +35 -0
  89. package/scss/AnimatedHeader/animated-header.scss +619 -0
  90. package/scss/Tiles/AIPromptTile/ai-prompt-tile.scss +187 -0
  91. package/scss/Tiles/GlassTile/glass-tile.scss +111 -0
  92. package/scss/animated_header.scss +10 -0
@@ -0,0 +1,187 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
5
+ *
6
+ * This source code is licensed under the Apache-2.0 license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ @use '@carbon/styles/scss/theme' as *;
10
+ @use '@carbon/styles/scss/colors' as *;
11
+ @use '@carbon/styles/scss/spacing' as *;
12
+ @use '@carbon/styles/scss/type' as *;
13
+ @use '@carbon/motion';
14
+
15
+ $prefix: 'clabs-animated-header__ai-prompt-tile' !default;
16
+
17
+ .#{$prefix} {
18
+ position: relative;
19
+ display: flex;
20
+ -webkit-backdrop-filter: blur(3px);
21
+ backdrop-filter: blur(3px);
22
+ min-block-size: 176px;
23
+ text-decoration: none;
24
+ }
25
+
26
+ .#{$prefix}:hover,
27
+ .#{$prefix}:active,
28
+ .#{$prefix}:focus {
29
+ text-decoration: none;
30
+ }
31
+
32
+ .#{$prefix}--body {
33
+ position: relative;
34
+ display: flex;
35
+ flex: 1;
36
+ flex-direction: column;
37
+ justify-content: flex-start;
38
+ padding: $spacing-05 $spacing-05 $spacing-03 $spacing-05;
39
+ background-color: transparent;
40
+ color: $text-primary;
41
+ gap: $spacing-05;
42
+ opacity: 1;
43
+ transition: opacity 500ms linear;
44
+ }
45
+
46
+ [data-carbon-theme='white'] .#{$prefix}--body::before,
47
+ [data-carbon-theme='g10'] .#{$prefix}--body::before {
48
+ background-color: $layer-01;
49
+ }
50
+
51
+ [data-carbon-theme='g90'] .#{$prefix}--body::before,
52
+ [data-carbon-theme='g100'] .#{$prefix}--body::before {
53
+ background-color: $layer-hover-01;
54
+ }
55
+
56
+ .#{$prefix}--collapsed {
57
+ opacity: 0;
58
+ }
59
+
60
+ .#{$prefix}--body::before {
61
+ position: absolute;
62
+ animation: 1000ms motion.motion(standard, expressive) animate-gradient;
63
+ animation-delay: 466.666ms;
64
+ animation-fill-mode: both;
65
+ background: linear-gradient(0deg, #4589ff4d 0%, transparent 100%);
66
+ background-repeat: no-repeat;
67
+ background-size: 100% 64px;
68
+ content: '';
69
+ inset: 0;
70
+ opacity: 0.7;
71
+ pointer-events: none;
72
+ transition: opacity 150ms motion.motion(standard, productive);
73
+ }
74
+
75
+ .#{$prefix}--body:hover::before {
76
+ opacity: 0.85;
77
+ }
78
+
79
+ .#{$prefix}--body:after {
80
+ position: absolute;
81
+ border: 1px solid transparent;
82
+ animation: 1000ms motion.motion(standard, expressive) animate-border;
83
+ animation-delay: 466.666ms;
84
+ animation-fill-mode: both;
85
+ background: linear-gradient(180deg, #a6c8ff 64%, #78a9ff) border-box;
86
+ background-size: 100% 150%;
87
+ content: '';
88
+ inset: 0;
89
+ inset-block-end: 0;
90
+ inset-inline: 0;
91
+ inset-inline-start: 0;
92
+ -webkit-mask: linear-gradient(#ffffff 0 0) padding-box,
93
+ linear-gradient(#ffffff 0 0);
94
+ mask: linear-gradient(#ffffff 0 0) padding-box, linear-gradient(#ffffff 0 0);
95
+ -webkit-mask-composite: destination-out;
96
+ mask-composite: exclude;
97
+ }
98
+
99
+ .#{$prefix}--icons {
100
+ position: relative;
101
+ z-index: 3;
102
+ display: flex;
103
+ justify-content: space-between;
104
+ }
105
+
106
+ .#{$prefix}--title {
107
+ @include type-style('body-compact-02');
108
+
109
+ position: relative;
110
+ z-index: 3;
111
+
112
+ overflow: hidden;
113
+ text-overflow: ellipsis;
114
+ white-space: nowrap;
115
+
116
+ @supports (-webkit-line-clamp: 3) {
117
+ display: -webkit-box;
118
+ overflow: hidden;
119
+ -webkit-box-orient: vertical;
120
+ -webkit-line-clamp: 3;
121
+ text-overflow: ellipsis;
122
+ white-space: initial;
123
+ }
124
+ }
125
+
126
+ .#{$prefix}--footer {
127
+ z-index: 3;
128
+ display: flex;
129
+ justify-content: flex-end;
130
+ gap: 10px;
131
+ }
132
+
133
+ .#{$prefix}--subtitle {
134
+ @include type-style('body-short-01');
135
+
136
+ position: relative;
137
+ color: $text-secondary;
138
+ }
139
+
140
+ .#{$prefix}--text-input-container {
141
+ z-index: 3;
142
+ display: flex;
143
+ align-items: center;
144
+ border: 1px solid $border-subtle-01;
145
+ border-radius: 8px;
146
+ background-color: $layer-01;
147
+ transition: border 200ms motion.motion(standard, expressive);
148
+ }
149
+
150
+ .#{$prefix}--text-input-container__active {
151
+ border: 1px solid $border-strong-01;
152
+ }
153
+
154
+ .#{$prefix}--text-input input {
155
+ border-radius: 7px 0 0 7px;
156
+ background-color: transparent;
157
+ border-block-end: none;
158
+ }
159
+
160
+ .#{$prefix}--icon-button svg {
161
+ fill: $text-on-color-disabled;
162
+ transition: fill 200ms motion.motion(standard, expressive);
163
+ }
164
+
165
+ .#{$prefix}--icon-button__active svg {
166
+ fill: $icon-primary;
167
+ }
168
+
169
+ @keyframes animate-border {
170
+ 0% {
171
+ background-position: 100% 0%;
172
+ }
173
+
174
+ 100% {
175
+ background-position: 100% 100%;
176
+ }
177
+ }
178
+
179
+ @keyframes animate-gradient {
180
+ 0% {
181
+ background-position: 100% 150%;
182
+ }
183
+
184
+ 100% {
185
+ background-position: 100% 100%;
186
+ }
187
+ }
@@ -0,0 +1,111 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright IBM Corp. 2025
5
+ *
6
+ * This source code is licensed under the Apache-2.0 license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ @use '@carbon/styles/scss/theme' as *;
10
+ @use '@carbon/styles/scss/colors' as *;
11
+ @use '@carbon/styles/scss/spacing' as *;
12
+ @use '@carbon/styles/scss/type' as *;
13
+ @use '@carbon/motion';
14
+
15
+ $prefix: 'clabs-animated-header__glass-tile' !default;
16
+
17
+ .#{$prefix} {
18
+ position: relative;
19
+ display: flex;
20
+ -webkit-backdrop-filter: blur(3px);
21
+ backdrop-filter: blur(3px);
22
+ min-block-size: 176px;
23
+ text-decoration: none;
24
+ }
25
+
26
+ .#{$prefix}:hover,
27
+ .#{$prefix}:active,
28
+ .#{$prefix}:focus {
29
+ text-decoration: none;
30
+ }
31
+
32
+ .#{$prefix}--body {
33
+ position: relative;
34
+ display: flex;
35
+ flex: 1;
36
+ flex-direction: column;
37
+ justify-content: flex-start;
38
+ padding: $spacing-05;
39
+ background-color: transparent;
40
+ color: $text-primary;
41
+ cursor: pointer;
42
+ gap: $spacing-05;
43
+ opacity: 1;
44
+ transition: opacity 500ms linear;
45
+ }
46
+
47
+ .#{$prefix}--collapsed {
48
+ opacity: 0;
49
+ }
50
+
51
+ [data-carbon-theme='white'] .#{$prefix}--body::before,
52
+ [data-carbon-theme='g10'] .#{$prefix}--body::before {
53
+ background-color: $layer-01;
54
+ }
55
+
56
+ [data-carbon-theme='g90'] .#{$prefix}--body::before,
57
+ [data-carbon-theme='g100'] .#{$prefix}--body::before {
58
+ background-color: $layer-hover-01;
59
+ }
60
+
61
+ .#{$prefix}--body::before {
62
+ position: absolute;
63
+ content: '';
64
+ inset: 0;
65
+ opacity: 0.7;
66
+ pointer-events: none;
67
+ transition: opacity 150ms motion.motion(standard, productive);
68
+ }
69
+
70
+ .#{$prefix}--body:hover::before {
71
+ opacity: 0.85;
72
+ }
73
+
74
+ .#{$prefix}--icons {
75
+ position: relative;
76
+ display: flex;
77
+ justify-content: space-between;
78
+ }
79
+
80
+ .#{$prefix}--title {
81
+ @include type-style('body-compact-02');
82
+
83
+ position: relative;
84
+ overflow: hidden;
85
+ text-overflow: ellipsis;
86
+ white-space: nowrap;
87
+
88
+ @supports (-webkit-line-clamp: 3) {
89
+ display: -webkit-box;
90
+ overflow: hidden;
91
+ -webkit-box-orient: vertical;
92
+ -webkit-line-clamp: 3;
93
+ text-overflow: ellipsis;
94
+ white-space: initial;
95
+ }
96
+ }
97
+
98
+ .#{$prefix}--footer {
99
+ position: absolute;
100
+ z-index: 3;
101
+ display: flex;
102
+ gap: $spacing-05;
103
+ inset-block-end: $spacing-05;
104
+ }
105
+
106
+ .#{$prefix}--subtitle {
107
+ @include type-style('body-short-01');
108
+
109
+ position: relative;
110
+ color: $text-secondary;
111
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ @use 'AnimatedHeader/animated-header.scss';
9
+ @use 'Tiles/AIPromptTile/ai-prompt-tile.scss';
10
+ @use 'Tiles/GlassTile/glass-tile.scss';