@flysk-tech/amocrm-kommo-vue-ui-kit 0.0.1

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.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025-present Flysk LLC
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,149 @@
1
+ # @flysk-tech/amocrm-kommo-vue-ui-kit
2
+
3
+ > Vue 3 UI-компоненты для amoCRM/Kommo — порт [@kommo-crm/crm-react-ui-kit](https://www.npmjs.com/package/@kommo-crm/crm-react-ui-kit) с Vue-нативным API.
4
+
5
+ Разработано компанией **[Флайск](https://flysk.ru?utm_source=github&utm_medium=readme&utm_campaign=vue-ui-kit)** — официальным партнёром amoCRM/Kommo. Наш вклад в развитие экосистемы amoCRM/Kommo.
6
+
7
+ [![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)
8
+ [![Vue 3](https://img.shields.io/badge/Vue-3-4FC08D?logo=vue.js)](https://vuejs.org/)
9
+
10
+ ## Features
11
+
12
+ - **Vue 3 + Composition API** with `<script setup>`
13
+ - **TypeScript** — full type coverage
14
+ - **23 components** ported from React with Vue-native API
15
+ - **Dark/light theme** via CSS custom properties
16
+ - **Tree-shaking** — import only what you need
17
+ - **CSS Modules** with SCSS
18
+
19
+ ## Installation
20
+
21
+ ```bash
22
+ npm install @flysk-tech/amocrm-kommo-vue-ui-kit
23
+ # or
24
+ yarn add @flysk-tech/amocrm-kommo-vue-ui-kit
25
+ ```
26
+
27
+ ## Usage
28
+
29
+ ```vue
30
+ <template>
31
+ <Button :theme="ButtonPrimaryTheme" @click="handleClick">
32
+ Click me
33
+ </Button>
34
+ </template>
35
+
36
+ <script setup lang="ts">
37
+ import { Button, ButtonPrimaryTheme } from '@flysk-tech/amocrm-kommo-vue-ui-kit'
38
+
39
+ const handleClick = () => {
40
+ console.log('clicked')
41
+ }
42
+ </script>
43
+ ```
44
+
45
+ ### v-model support
46
+
47
+ ```vue
48
+ <template>
49
+ <Input
50
+ v-model="text"
51
+ :theme="InputLightTheme"
52
+ placeholder="Type here..."
53
+ />
54
+ </template>
55
+
56
+ <script setup lang="ts">
57
+ import { ref } from 'vue'
58
+ import { Input, InputLightTheme } from '@flysk-tech/amocrm-kommo-vue-ui-kit'
59
+
60
+ const text = ref('')
61
+ </script>
62
+ ```
63
+
64
+ ### Dark/light theme
65
+
66
+ ```vue
67
+ <script setup lang="ts">
68
+ import { ConfigProvider, Appearance } from '@flysk-tech/amocrm-kommo-vue-ui-kit'
69
+ </script>
70
+
71
+ <template>
72
+ <ConfigProvider :appearance="Appearance.ALTERNATIVE">
73
+ <!-- All components inside will use dark theme -->
74
+ </ConfigProvider>
75
+ </template>
76
+ ```
77
+
78
+ ## Components
79
+
80
+ ### Forms
81
+ - **Button** — buttons with loading, disabled, success states
82
+ - **Input** — text input with v-model, error states, after slot
83
+ - **InlineInput** — inline text input
84
+ - **TextArea** — multiline input with autosize
85
+ - **BaseInput** — base input primitive
86
+ - **Select** — dropdown select
87
+ - **SelectButton** — select trigger button
88
+ - **Checkbox** / **CheckboxGroup** — checkboxes with select-all
89
+ - **RadioGroup** — radio buttons
90
+ - **Switcher** — toggle switch
91
+
92
+ ### Display
93
+ - **Text** — typography
94
+ - **Label** / **LabelGroup** — form labels
95
+ - **Link** — anchor links
96
+ - **Spinner** — loading indicator
97
+
98
+ ### Layout
99
+ - **ContentBlock** — content container
100
+ - **Callout** — info/warning/error/success callouts
101
+ - **Accordion** — collapsible panels (single/multiple)
102
+ - **List** — keyboard-navigable list
103
+ - **Portal** — teleport content to another DOM node
104
+ - **FilterTabs** — filter tab groups
105
+ - **ConfigProvider** — theme appearance provider
106
+ - **VisuallyHiddenInput** — accessible hidden input
107
+
108
+ ## Development
109
+
110
+ ```bash
111
+ yarn install # Install dependencies
112
+ yarn dev # Dev server
113
+ yarn build # Build library
114
+ yarn test # Run unit tests
115
+ yarn storybook # Storybook dev server
116
+ yarn build-storybook # Build Storybook
117
+ ```
118
+
119
+ ## Migration from React
120
+
121
+ ```tsx
122
+ // React
123
+ import { Button } from '@kommo-crm/crm-react-ui-kit'
124
+ <Button className="custom" isLoading={true} onClick={handleClick}>Click</Button>
125
+
126
+ // Vue
127
+ import { Button } from '@flysk-tech/amocrm-kommo-vue-ui-kit'
128
+ <Button class="custom" :isLoading="true" @click="handleClick">Click</Button>
129
+ ```
130
+
131
+ Key differences:
132
+ - `className` → standard `class` attribute
133
+ - `onClick` → `@click` event
134
+ - `value` + `onChange` → `v-model`
135
+ - `children` → default `<slot />`
136
+
137
+ ## About
138
+
139
+ Библиотека разработана компанией **[Флайск](https://flysk.ru?utm_source=github&utm_medium=readme&utm_campaign=vue-ui-kit)** — официальным партнёром [amoCRM/Kommo](https://www.amocrm.ru/).
140
+
141
+ Мы развиваем экосистему amoCRM/Kommo и создаём инструменты, которые помогают разработчикам строить качественные интеграции.
142
+
143
+ - 🌐 [flysk.ru](https://flysk.ru?utm_source=github&utm_medium=readme&utm_campaign=vue-ui-kit) — наш сайт
144
+ - 📦 [npm](https://www.npmjs.com/package/@flysk-tech/amocrm-kommo-vue-ui-kit) — пакет на npm
145
+ - 💻 [GitHub](https://github.com/flysk-tech/amocrm-kommo-vue-ui-kit) — исходный код
146
+
147
+ ## License
148
+
149
+ MIT © [Флайск](https://flysk.ru?utm_source=github&utm_medium=footer&utm_campaign=vue-ui-kit)
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,34 @@
1
+ /*
2
+ A custom subset with additional currency symbols is used.
3
+ */
4
+ @font-face {
5
+ font-family: 'PT Sans';
6
+ src: url('/fonts/PTS55F_W.woff') format('woff');
7
+ }
8
+
9
+ @font-face {
10
+ font-family: 'PT Sans';
11
+ font-style: italic;
12
+ src:
13
+ local('PT Sans Italic'),
14
+ url('/fonts/PTS56F_W.woff') format('woff');
15
+ }
16
+
17
+ /*
18
+ A custom subset with additional currency symbols is used.
19
+ */
20
+ @font-face {
21
+ font-family: 'PT Sans';
22
+ font-style: normal;
23
+ font-weight: bold;
24
+ src: url('/fonts/PTS75F_W.woff') format('woff');
25
+ }
26
+
27
+ @font-face {
28
+ font-family: 'PT Sans';
29
+ font-style: italic;
30
+ font-weight: bold;
31
+ src:
32
+ local('PT Sans Bold Italic'),
33
+ url('/fonts/PTS76F_W.woff') format('woff');
34
+ }