@webitel/ui-sdk 23.12.31 → 23.12.32
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/dist/ui-sdk.common.js +2 -2
- package/dist/ui-sdk.common.js.map +1 -1
- package/dist/ui-sdk.umd.js +2 -2
- package/dist/ui-sdk.umd.js.map +1 -1
- package/dist/ui-sdk.umd.min.js +8 -8
- package/dist/ui-sdk.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/locale/en/en.js +1 -0
- package/src/locale/ru/ru.js +1 -0
- package/src/locale/ua/ua.js +1 -0
- package/src/mixins/validationMixin/useValidation.js +1 -0
- package/src/mixins/validationMixin/validationMixin.js +1 -0
- package/src/validators/websocketValidator/__tests__/websocketValidator.spec.js +4 -4
- package/src/validators/websocketValidator/websocketValidator.js +8 -1
package/package.json
CHANGED
package/src/locale/en/en.js
CHANGED
|
@@ -248,6 +248,7 @@ export default {
|
|
|
248
248
|
requiredArrayValue: 'Array should not be empty',
|
|
249
249
|
minLength: 'Quantity of characters should not be less than',
|
|
250
250
|
url: 'Should look like url',
|
|
251
|
+
websocketValidator: 'Should look like WebSocket url',
|
|
251
252
|
regExpValidator: 'This regular expression is not valid',
|
|
252
253
|
domainValidator: 'Incorrect domain',
|
|
253
254
|
decimalValidator: 'Decimal precision should be no more than { count } places',
|
package/src/locale/ru/ru.js
CHANGED
|
@@ -246,6 +246,7 @@ export default {
|
|
|
246
246
|
requiredArrayValue: 'Поле не должно быть пустым',
|
|
247
247
|
minLength: 'Количество символов не должно быть меньше, чем',
|
|
248
248
|
url: 'Необходимо ввести корректный url-адрес',
|
|
249
|
+
websocketValidator: 'Необходимо ввести корректный WebSocket url-адрес',
|
|
249
250
|
regExpValidator: 'Не правильное регулярное выражение',
|
|
250
251
|
domainValidator: 'Неправильный домен',
|
|
251
252
|
decimalValidator: 'Количество десятичных знаков не должно быть больше { count }',
|
package/src/locale/ua/ua.js
CHANGED
|
@@ -246,6 +246,7 @@ export default {
|
|
|
246
246
|
requiredArrayValue: 'Поле не повинно бути пустим',
|
|
247
247
|
minLength: 'Кількість символів повинна бути не меншою, ніж',
|
|
248
248
|
url: 'Необхідно ввести правильну url-адресу',
|
|
249
|
+
websocketValidator: 'Необхідно ввести правильну WebSocket url-адресу',
|
|
249
250
|
regExpValidator: 'Не правильний регулярний вираз',
|
|
250
251
|
domainValidator: 'Невірний домен',
|
|
251
252
|
decimalValidator: 'Кількість десяткових знаків не повинна бути більше { count }',
|
|
@@ -24,6 +24,7 @@ export function useValidation({ v, customValidators }) {
|
|
|
24
24
|
else if (v.value.sameAs?.$invalid) validationText = `${t('validation.sameAs')}`;
|
|
25
25
|
else if (v.value.domainValidator?.$invalid) validationText = `${t('validation.domainValidator')}`;
|
|
26
26
|
else if (v.value.decimalValidator?.$invalid) validationText = `${t('validation.decimalValidator')} ${v.value.decimalValidator.$params.count}`;
|
|
27
|
+
else if (v.value.websocketValidator?.$invalid) validationText = `${t('validation.websocketValidator')}`;
|
|
27
28
|
else if (v.value.integer?.$invalid) validationText = `${t('validation.integer')}`;
|
|
28
29
|
}
|
|
29
30
|
// eslint-disable-next-line no-restricted-syntax
|
|
@@ -34,6 +34,7 @@ export default {
|
|
|
34
34
|
else if (this.v.sameAs?.$invalid) validationText = `${this.$t('validation.sameAs')}`;
|
|
35
35
|
else if (this.v.domainValidator?.$invalid) validationText = `${this.$t('validation.domainValidator')}`;
|
|
36
36
|
else if (this.v.decimalValidator?.$invalid) validationText = `${this.$t('validation.decimalValidator')} ${this.v.decimalValidator.$params.count}`;
|
|
37
|
+
else if (this.v.websocketValidator?.$invalid) validationText = `${this.$t('validation.websocketValidator')}`;
|
|
37
38
|
else if (this.v.integer?.$invalid) validationText = `${this.$t('validation.integer')}`;
|
|
38
39
|
}
|
|
39
40
|
// eslint-disable-next-line no-restricted-syntax
|
|
@@ -14,15 +14,15 @@ describe('websocketValidator', () => {
|
|
|
14
14
|
expect(websocketValidator('wss://example.com')).toBe(true);
|
|
15
15
|
});
|
|
16
16
|
it('truthy case 5: dns name', () => {
|
|
17
|
-
expect(websocketValidator('wss://example
|
|
17
|
+
expect(websocketValidator('wss://example')).toBe(true);
|
|
18
18
|
});
|
|
19
19
|
it('truthy case 6: dns name', () => {
|
|
20
|
+
expect(websocketValidator('wss://example.com/ws')).toBe(true);
|
|
21
|
+
});
|
|
22
|
+
it('truthy case 7: dns name', () => {
|
|
20
23
|
expect(websocketValidator('wss://socket.socket.com/v3/channel_123?api_key=123')).toBe(true);
|
|
21
24
|
});
|
|
22
25
|
it('falsy case 1: empty string', () => {
|
|
23
26
|
expect(websocketValidator('')).toBe(false);
|
|
24
27
|
});
|
|
25
|
-
it('falsy case 2: ws+ws', () => {
|
|
26
|
-
expect(websocketValidator('wss://example.com/wswss://example.com/ws')).toBe(false);
|
|
27
|
-
});
|
|
28
28
|
});
|
|
@@ -1,2 +1,9 @@
|
|
|
1
1
|
// That's strange but i haven't found any npm package with websocket validator
|
|
2
|
-
export default (value) =>
|
|
2
|
+
export default (value) => {
|
|
3
|
+
try {
|
|
4
|
+
const url = new URL(value);
|
|
5
|
+
return (/^(wss?)/i).test(url.protocol);
|
|
6
|
+
} catch (e) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
};
|