@soubiran/ui 0.0.0 → 0.1.3

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.
@@ -0,0 +1,6 @@
1
+ import { ComponentResolver } from "unplugin-vue-components";
2
+
3
+ //#region src/resolver.d.ts
4
+ declare function export_default(): ComponentResolver;
5
+ //#endregion
6
+ export { export_default as default };
@@ -0,0 +1,28 @@
1
+ //#region src/resolver.ts
2
+ const components = [
3
+ "Page",
4
+ "Header",
5
+ "Socials",
6
+ "Sponsors",
7
+ "Feedback",
8
+ "Container",
9
+ "PageTitle",
10
+ "PageHeader",
11
+ "FeedbackCard",
12
+ "ViewersCounter",
13
+ "TableOfContents"
14
+ ];
15
+ function resolver_default() {
16
+ return {
17
+ type: "component",
18
+ resolve: (name) => {
19
+ if (components.includes(name)) return {
20
+ name,
21
+ from: "@soubiran/ui"
22
+ };
23
+ }
24
+ };
25
+ }
26
+
27
+ //#endregion
28
+ export { resolver_default as default };
@@ -0,0 +1,124 @@
1
+ .fade-enter-active,
2
+ .fade-leave-active {
3
+ transition: opacity 0.4s ease-out;
4
+ }
5
+
6
+ .fade-enter-from,
7
+ .fade-leave-to {
8
+ opacity: 0;
9
+ }
10
+
11
+ @media (prefers-reduced-motion: no-preference) {
12
+ html:not(.no-sliding) .slide-enter,
13
+ html:not(.no-sliding) .slide-enter-content > * {
14
+ --enter-step: 60ms;
15
+ --enter-initial: 0ms;
16
+ animation: slide-enter 1s both 1;
17
+ animation-delay: calc(var(--enter-stage) * var(--enter-step));
18
+ }
19
+
20
+ .slide-enter-content > *:nth-child(1) {
21
+ --enter-stage: 1 !important;
22
+ }
23
+ .slide-enter-content > *:nth-child(2) {
24
+ --enter-stage: 2 !important;
25
+ }
26
+ .slide-enter-content > *:nth-child(3) {
27
+ --enter-stage: 3 !important;
28
+ }
29
+ .slide-enter-content > *:nth-child(4) {
30
+ --enter-stage: 4 !important;
31
+ }
32
+ .slide-enter-content > *:nth-child(5) {
33
+ --enter-stage: 5 !important;
34
+ }
35
+ .slide-enter-content > *:nth-child(6) {
36
+ --enter-stage: 6 !important;
37
+ }
38
+ .slide-enter-content > *:nth-child(7) {
39
+ --enter-stage: 7 !important;
40
+ }
41
+ .slide-enter-content > *:nth-child(8) {
42
+ --enter-stage: 8 !important;
43
+ }
44
+ .slide-enter-content > *:nth-child(9) {
45
+ --enter-stage: 9 !important;
46
+ }
47
+ .slide-enter-content > *:nth-child(10) {
48
+ --enter-stage: 10 !important;
49
+ }
50
+ .slide-enter-content > *:nth-child(11) {
51
+ --enter-stage: 11 !important;
52
+ }
53
+ .slide-enter-content > *:nth-child(12) {
54
+ --enter-stage: 12 !important;
55
+ }
56
+ .slide-enter-content > *:nth-child(13) {
57
+ --enter-stage: 13 !important;
58
+ }
59
+ .slide-enter-content > *:nth-child(14) {
60
+ --enter-stage: 14 !important;
61
+ }
62
+ .slide-enter-content > *:nth-child(15) {
63
+ --enter-stage: 15 !important;
64
+ }
65
+ .slide-enter-content > *:nth-child(16) {
66
+ --enter-stage: 16 !important;
67
+ }
68
+ .slide-enter-content > *:nth-child(17) {
69
+ --enter-stage: 17 !important;
70
+ }
71
+ .slide-enter-content > *:nth-child(18) {
72
+ --enter-stage: 18 !important;
73
+ }
74
+ .slide-enter-content > *:nth-child(19) {
75
+ --enter-stage: 19 !important;
76
+ }
77
+ .slide-enter-content > *:nth-child(20) {
78
+ --enter-stage: 20 !important;
79
+ }
80
+ }
81
+
82
+ @keyframes slide-enter {
83
+ 0% {
84
+ transform: translateY(10px);
85
+ opacity: 0;
86
+ }
87
+
88
+ to {
89
+ transform: translateY(0);
90
+ opacity: 1;
91
+ }
92
+ }
93
+
94
+ @keyframes scale-up {
95
+ from {
96
+ opacity: 0;
97
+ transform: scale(0.96) translateY(8px);
98
+ }
99
+
100
+ to {
101
+ opacity: 1;
102
+ transform: scale(1) translateY(0);
103
+ }
104
+ }
105
+
106
+ .shiki {
107
+ color: var(--shiki-light);
108
+ background-color: var(--ui-color-neutral-100);
109
+ }
110
+
111
+ .shiki .line span {
112
+ color: var(--shiki-light);
113
+ }
114
+
115
+ .dark .shiki {
116
+ color: var(--shiki-dark);
117
+ background-color: var(--ui-color-neutral-800);
118
+ }
119
+
120
+ .dark .shiki .line span {
121
+ color: var(--shiki-dark);
122
+ }
123
+
124
+
package/dist/styles.js ADDED
File without changes
package/package.json CHANGED
@@ -1,4 +1,73 @@
1
1
  {
2
2
  "name": "@soubiran/ui",
3
- "version": "0.0.0"
4
- }
3
+ "type": "module",
4
+ "version": "0.1.3",
5
+ "author": "Estéban Soubiran <esteban@soubiran.dev>",
6
+ "license": "MIT",
7
+ "funding": "https://github.com/sponsors/Barbapapazes",
8
+ "homepage": "https://github.com/Barbapapazes/.soubiran.dev",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/Barbapapazes/.soubiran.dev"
12
+ },
13
+ "bugs": "https://github.com/Barbapapazes/.soubiran.dev/issues",
14
+ "exports": {
15
+ ".": {
16
+ "types": "./dist/index.d.ts",
17
+ "import": "./dist/index.js"
18
+ },
19
+ "./imports": {
20
+ "types": "./dist/imports.d.mts",
21
+ "import": "./dist/imports.mjs"
22
+ },
23
+ "./resolver": {
24
+ "types": "./dist/resolver.d.mts",
25
+ "import": "./dist/resolver.mjs"
26
+ },
27
+ "./styles.css": {
28
+ "import": "./dist/styles.css"
29
+ },
30
+ "./umami": {
31
+ "types": "./umami.d.ts"
32
+ }
33
+ },
34
+ "main": "./dist/index.js",
35
+ "types": "./dist/index.d.ts",
36
+ "files": [
37
+ "dist",
38
+ "umami.d.ts"
39
+ ],
40
+ "dependencies": {
41
+ "@nuxt/ui": "^4.2.0",
42
+ "@pinia/colada": "^0.17.9",
43
+ "@vue/compiler-sfc": "^3.5.26",
44
+ "@vueuse/core": "^13.9.0",
45
+ "motion-v": "^1.7.4",
46
+ "ofetch": "^1.5.1",
47
+ "partysocket": "^1.1.6",
48
+ "pinia": "^3.0.4",
49
+ "reka-ui": "^2.6.0",
50
+ "tailwind-variants": "^3.1.1",
51
+ "vue": "^3.5.24",
52
+ "vue-router": "^4.6.3"
53
+ },
54
+ "devDependencies": {
55
+ "@iconify-json/ph": "^1.2.2",
56
+ "@iconify-json/simple-icons": "^1.2.63",
57
+ "@types/node": "^24.10.1",
58
+ "@vitejs/plugin-vue": "^6.0.3",
59
+ "@vue/language-core": "^3.2.1",
60
+ "@vue/tsconfig": "^0.8.1",
61
+ "tsdown": "^0.18.3",
62
+ "typescript": "~5.9.3",
63
+ "unplugin-icons": "^22.5.0",
64
+ "unplugin-vue": "^7.1.0",
65
+ "unplugin-vue-components": "^30.0.0",
66
+ "vite": "npm:rolldown-vite@7.1.20",
67
+ "vue-tsc": "^3.2.1"
68
+ },
69
+ "scripts": {
70
+ "dev": "vite dev",
71
+ "build": "tsdown && tsdown -c tsdown.config.node.ts --no-clean"
72
+ }
73
+ }
package/umami.d.ts ADDED
@@ -0,0 +1,75 @@
1
+ // https://github.com/umami-software/umami/blob/aaa1f9dc58feafe6af54248c5f0611112786fddf/src/tracker/index.d.ts#L84
2
+ interface UmamiTracker {
3
+ track: {
4
+ /**
5
+ * Track a page view
6
+ *
7
+ * @example ```
8
+ * umami.track();
9
+ * ```
10
+ */
11
+ (): Promise<string>
12
+
13
+ /**
14
+ * Track an event with a given name
15
+ *
16
+ * NOTE: event names will be truncated past 50 characters
17
+ *
18
+ * @example ```
19
+ * umami.track('signup-button');
20
+ * ```
21
+ */
22
+ (eventName: string): Promise<string>
23
+
24
+ /**
25
+ * Tracks an event with dynamic data.
26
+ *
27
+ * NOTE: event names will be truncated past 50 characters
28
+ *
29
+ * When tracking events, the default properties are included in the payload. This is equivalent to running:
30
+ *
31
+ * ```js
32
+ * umami.track(props => ({
33
+ * ...props,
34
+ * name: 'signup-button',
35
+ * data: {
36
+ * name: 'newsletter',
37
+ * id: 123
38
+ * }
39
+ * }));
40
+ * ```
41
+ *
42
+ * @example ```
43
+ * umami.track('signup-button', { name: 'newsletter', id: 123 });
44
+ * ```
45
+ */
46
+ (eventName: string, obj: EventData): Promise<string>
47
+
48
+ /**
49
+ * Tracks a page view with custom properties
50
+ *
51
+ * @example ```
52
+ * umami.track({ website: 'e676c9b4-11e4-4ef1-a4d7-87001773e9f2', url: '/home', title: 'Home page' });
53
+ * ```
54
+ */
55
+ (properties: PageViewProperties): Promise<string>
56
+
57
+ /**
58
+ * Tracks an event with fully customizable dynamic data
59
+ * If you don't specify any `name` and/or `data`, it will be treated as a page view
60
+ *
61
+ * @example ```
62
+ * umami.track((props) => ({ ...props, url: path }));
63
+ * ```
64
+ */
65
+ (eventFunction: CustomEventFunction): Promise<string>
66
+ }
67
+ }
68
+
69
+ declare global {
70
+ interface Window {
71
+ umami?: UmamiTracker
72
+ }
73
+ }
74
+
75
+ export {}