@v1nt1248/3nclient-lib 0.0.15 → 0.0.18

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 (67) hide show
  1. package/README.md +44 -4
  2. package/package.json +24 -7
  3. package/src/components/ui3n-button.vue +20 -4
  4. package/src/components/ui3n-drop-files.vue +34 -11
  5. package/src/components/ui3n-emoji.vue +34 -14
  6. package/src/components/ui3n-input.vue +3 -2
  7. package/src/components/ui3n-list.vue +1 -1
  8. package/dist/components/index.d.ts +0 -26
  9. package/dist/components/ui3n-button.vue.d.ts +0 -82
  10. package/dist/components/ui3n-dialog.vue.d.ts +0 -73
  11. package/dist/components/ui3n-drop-files.vue.d.ts +0 -41
  12. package/dist/components/ui3n-emoji.vue.d.ts +0 -36
  13. package/dist/components/ui3n-icon.vue.d.ts +0 -92
  14. package/dist/components/ui3n-input.vue.d.ts +0 -96
  15. package/dist/components/ui3n-list.vue.d.ts +0 -45
  16. package/dist/components/ui3n-menu.vue.d.ts +0 -85
  17. package/dist/components/ui3n-notification.vue.d.ts +0 -72
  18. package/dist/components/ui3n-table-sort-icon.vue.d.ts +0 -29
  19. package/dist/components/ui3n-table.vue.d.ts +0 -42
  20. package/dist/components/ui3n-text.vue.d.ts +0 -79
  21. package/dist/components/ui3n-virtual-scroll.vue.d.ts +0 -34
  22. package/dist/constants/emoticons.d.ts +0 -649
  23. package/dist/constants/general.d.ts +0 -2
  24. package/dist/constants/index.d.ts +0 -3
  25. package/dist/constants/types.d.ts +0 -31
  26. package/dist/directives/index.d.ts +0 -2
  27. package/dist/directives/ui3n-click-outside.d.ts +0 -10
  28. package/dist/directives/ui3n-html.d.ts +0 -6
  29. package/dist/index.d.ts +0 -37
  30. package/dist/libs/index.d.ts +0 -3
  31. package/dist/libs/ipc-service-caller.d.ts +0 -12
  32. package/dist/libs/ipc-service.d.ts +0 -60
  33. package/dist/libs/serialization-for-ipc/copy-json.d.ts +0 -8
  34. package/dist/libs/serialization-for-ipc/json-n-binary.d.ts +0 -5
  35. package/dist/libs/serialization-for-ipc/protobuf-type.d.ts +0 -10
  36. package/dist/libs/sqlite-on-3nstorage/deferred.d.ts +0 -6
  37. package/dist/libs/sqlite-on-3nstorage/index.d.ts +0 -49
  38. package/dist/libs/sqlite-on-3nstorage/synced.d.ts +0 -73
  39. package/dist/plugins/dialogs.d.ts +0 -17
  40. package/dist/plugins/i18n.d.ts +0 -20
  41. package/dist/plugins/icons.d.ts +0 -2
  42. package/dist/plugins/index.d.ts +0 -14
  43. package/dist/plugins/notifications.d.ts +0 -13
  44. package/dist/plugins/store-dialogs.d.ts +0 -4
  45. package/dist/plugins/store-i18n.d.ts +0 -7
  46. package/dist/plugins/store-notifications.d.ts +0 -4
  47. package/dist/plugins/store-vue-bus.d.ts +0 -4
  48. package/dist/plugins/vue-bus.d.ts +0 -19
  49. package/dist/style.css +0 -1
  50. package/dist/tools/common.helpers.d.ts +0 -3
  51. package/dist/tools/index.d.ts +0 -3
  52. package/dist/tools/textarea-max-rows.d.ts +0 -3
  53. package/dist/tools/ui.helpers.d.ts +0 -13
  54. package/dist/ui-3n-lib.js +0 -16529
  55. package/src/libs/index.ts +0 -11
  56. package/src/libs/ipc-service-caller.ts +0 -121
  57. package/src/libs/ipc-service.ts +0 -422
  58. package/src/libs/serialization-for-ipc/copy-json.ts +0 -55
  59. package/src/libs/serialization-for-ipc/json-ipc.proto.d.ts +0 -432
  60. package/src/libs/serialization-for-ipc/json-ipc.proto.js +0 -1093
  61. package/src/libs/serialization-for-ipc/json-n-binary.ts +0 -275
  62. package/src/libs/serialization-for-ipc/protobuf-type.ts +0 -61
  63. package/src/libs/sqlite-on-3nstorage/deferred.ts +0 -32
  64. package/src/libs/sqlite-on-3nstorage/index.ts +0 -291
  65. package/src/libs/sqlite-on-3nstorage/sqljs.d.ts +0 -279
  66. package/src/libs/sqlite-on-3nstorage/sqljs.js +0 -225
  67. package/src/libs/sqlite-on-3nstorage/synced.ts +0 -194
package/dist/index.d.ts DELETED
@@ -1,37 +0,0 @@
1
- import type { CbFunction, Ui3nNotificationProps, VueEventBus } from './constants';
2
- import type { Ui3nDialogComponentProps } from './components/ui3n-dialog.vue';
3
- import type { DialogInstance } from './plugins/dialogs';
4
- export * from './constants';
5
- export * from './tools';
6
- export * from './libs';
7
- export * from './plugins';
8
- export * from './directives';
9
- export * from './components';
10
- declare module 'vue' {
11
- interface ComponentCustomProperties {
12
- $openDialog: (params: Ui3nDialogComponentProps) => DialogInstance | undefined;
13
- $createNotice: (params: Ui3nNotificationProps) => void;
14
- $locale: string;
15
- $tr: (key: string, placeholders?: Record<string, string>) => string;
16
- $changeLocale: (lang: string) => void;
17
- $emitter: VueEventBus;
18
- }
19
- }
20
- declare module 'pinia' {
21
- interface PiniaCustomProperties {
22
- $openDialog: (params: Ui3nDialogComponentProps) => DialogInstance | undefined;
23
- $createNotice: (params: Ui3nNotificationProps) => void;
24
- $emitter: {
25
- on: (type: string | symbol, handler: CbFunction) => void;
26
- off: (type: string | symbol, handler?: CbFunction) => void;
27
- emit: (type: string | symbol, arguments?: any) => void;
28
- once: (type: string | symbol, handler: CbFunction) => void;
29
- clear: () => void;
30
- };
31
- $i18n: {
32
- locale: string;
33
- changeLocale: (lang: string) => void;
34
- tr: (key: string, placeholders?: Record<string, string>) => string;
35
- };
36
- }
37
- }
@@ -1,3 +0,0 @@
1
- export * from './sqlite-on-3nstorage';
2
- export { makeObservableMethodCaller, makeReqRepMethodCaller, makeServiceCaller, } from './ipc-service-caller';
3
- export { SingleConnectionIPCWrap, MultiConnectionIPCWrap, IPCWrap, } from './ipc-service';
@@ -1,12 +0,0 @@
1
- type RPCConnection = web3n.rpc.client.RPCConnection;
2
- type PassedDatum = web3n.rpc.PassedDatum;
3
- export interface TransformOpts {
4
- unpackReply?: ((reply: PassedDatum | undefined) => any) | 'noop';
5
- packRequest?: ((args: any[]) => PassedDatum | undefined) | 'noop';
6
- }
7
- export declare function makeReqRepMethodCaller<F extends Function>(connection: RPCConnection, method: string, transforms?: TransformOpts): F;
8
- export declare function makeObservableMethodCaller<F extends Function>(connection: RPCConnection, method: string, transforms?: TransformOpts): F;
9
- export declare function makeServiceCaller<T>(connection: RPCConnection, reqRepMethods?: (keyof T)[], obsMethods?: (keyof T)[], transforms?: {
10
- [method in keyof T]: TransformOpts;
11
- }): Partial<T>;
12
- export {};
@@ -1,60 +0,0 @@
1
- type IncomingConnection = web3n.rpc.service.IncomingConnection;
2
- type PassedDatum = web3n.rpc.PassedDatum;
3
- type Observer<T> = web3n.Observer<T>;
4
- export type HandleObservingCall = (obs: Observer<any>, ...requestArgs: any[]) => (() => void);
5
- export type HandleReqReplyCall = (...requestArgs: any[]) => Promise<any>;
6
- export interface TransformOpts {
7
- unpackRequest?: ((req: PassedDatum | undefined) => any[]) | 'noop';
8
- packReply?: ((reply: any) => PassedDatum | undefined) | 'noop';
9
- }
10
- declare class ConnectionState {
11
- private readonly disconnect;
12
- private readonly calls;
13
- private isRunning;
14
- constructor(disconnect: () => void);
15
- acceptsMsgs(): boolean;
16
- stop(): void;
17
- hasCall(callNum: number): boolean;
18
- cancelCall(callNum: number): void;
19
- completeCall(callNum: number): void;
20
- registerReqReplyCall(callNum: number): void;
21
- registerObservableCall(callNum: number, cancel: () => void): void;
22
- }
23
- export declare abstract class IPCWrap {
24
- readonly srvName: string;
25
- protected readonly connections: Map<web3n.rpc.service.IncomingConnection, ConnectionState>;
26
- private readonly methods;
27
- constructor(srvName: string);
28
- addReqReplyMethod(method: string, srv: object | undefined, func: HandleReqReplyCall, transforms?: TransformOpts): void;
29
- exposeReqReplyMethods<T extends object>(srv: T, methods: (keyof T)[], transforms?: {
30
- [method in keyof T]: TransformOpts;
31
- }): void;
32
- addObservableMethod(method: string, srv: object | undefined, func: HandleObservingCall, transforms?: TransformOpts): void;
33
- exposeObservableMethods<T extends object>(srv: T, methods: (keyof T)[], transforms?: {
34
- [method in keyof T]: TransformOpts;
35
- }): void;
36
- private onMsg;
37
- private callReqReplyHandler;
38
- private callObsHandler;
39
- startIPC(): () => void;
40
- stopIPC(): void;
41
- protected onConnection(connection: IncomingConnection): Promise<void>;
42
- protected onConnectionCompletion(connection: IncomingConnection, connectionState: ConnectionState): Promise<void>;
43
- protected onConnectionError(connection: IncomingConnection, connectionState: ConnectionState, err: any): Promise<void>;
44
- protected abstract onListeningCompletion(): Promise<void>;
45
- protected abstract onListeningError(err: any): Promise<void>;
46
- }
47
- export declare class SingleConnectionIPCWrap extends IPCWrap {
48
- constructor(srvName: string);
49
- protected onListeningCompletion(): Promise<void>;
50
- protected onListeningError(err: any): Promise<void>;
51
- protected onConnectionCompletion(connection: IncomingConnection, connectionState: ConnectionState): Promise<void>;
52
- protected onConnectionError(connection: IncomingConnection, connectionState: ConnectionState, err: any): Promise<void>;
53
- }
54
- export declare class MultiConnectionIPCWrap extends IPCWrap {
55
- constructor(srvName: string);
56
- protected onListeningCompletion(): Promise<void>;
57
- protected onListeningError(err: any): Promise<void>;
58
- protected onConnectionError(connection: IncomingConnection, connectionState: ConnectionState, err: any): Promise<void>;
59
- }
60
- export {};
@@ -1,8 +0,0 @@
1
- /**
2
- * This function creates a copy of json entity with a caveat that Buffer and
3
- * byte arrays are shared between original and a copy.
4
- * @param orig is an object, which copy is created. Buffer and byte arrays
5
- * passed through like primitives.
6
- * @param excludeTopFields is an optional list of fields to exclude from copy.
7
- */
8
- export declare function copyJSON<T>(orig: T, excludeTopFields?: string[]): T;
@@ -1,5 +0,0 @@
1
- export declare function serializeArgs(args: any[]): {
2
- bytes: Uint8Array;
3
- passedByReference?: any[];
4
- };
5
- export declare function deserializeArgs(bytes: Uint8Array, passedByReference: any[] | undefined): any[];
@@ -1,10 +0,0 @@
1
- /// <reference types="@types/node" />
2
- export declare class ProtoType<T extends object> {
3
- private readonly type;
4
- private constructor();
5
- static for<T extends object>(type: any): ProtoType<T>;
6
- pack(msg: T): Buffer;
7
- unpack(bytes: Buffer | void): T;
8
- packToBase64(msg: T): string;
9
- unpackFromBase64(str: string): T;
10
- }
@@ -1,6 +0,0 @@
1
- export interface Deferred<T> {
2
- promise: Promise<T>;
3
- resolve: (result?: T | PromiseLike<T>) => void;
4
- reject: (err: any) => void;
5
- }
6
- export declare function defer<T>(): Deferred<T>;
@@ -1,49 +0,0 @@
1
- import { Database as DBClass, BindParams as QueryParams, QueryExecResult as QueryResult } from './sqljs.js';
2
- import { SingleProc, Action } from './synced.js';
3
- export type Database = DBClass;
4
- export type BindParams = QueryParams;
5
- export type QueryExecResult = QueryResult;
6
- type WritableFile = web3n.files.WritableFile;
7
- export interface SaveOpts {
8
- skipUpload?: boolean;
9
- }
10
- export declare abstract class SQLiteOn3NStorage {
11
- protected readonly database: Database;
12
- protected readonly file: WritableFile;
13
- protected readonly syncProc: SingleProc;
14
- protected constructor(database: Database, file: WritableFile);
15
- static makeAndStart(file: WritableFile): Promise<SQLiteOn3NStorage>;
16
- private start;
17
- saveToFile(opts?: SaveOpts): Promise<void>;
18
- get db(): Database;
19
- sync<T>(action: Action<T>): Promise<T>;
20
- listTables(): string[];
21
- }
22
- export declare function objectFromQueryExecResult<T>(sqlResult: QueryExecResult): Array<T>;
23
- export declare class TableColumnsAndParams<ColumnDefs extends object> {
24
- readonly name: string;
25
- private readonly columnDefs;
26
- readonly c: {
27
- [columnName in keyof ColumnDefs]: string;
28
- };
29
- readonly cReversed: {
30
- [snakedColName: string]: keyof ColumnDefs;
31
- };
32
- readonly p: {
33
- [columnName in keyof ColumnDefs]: string;
34
- };
35
- readonly q: {
36
- [columnName in keyof ColumnDefs]: string;
37
- };
38
- constructor(name: string, columnDefs: ColumnDefs);
39
- private toC;
40
- toParams<T extends {
41
- [columnName in keyof ColumnDefs]: any;
42
- }>(value: Partial<T>, throwOnUnknownField?: boolean): any;
43
- getFromQueryExecResult<T>(sqlResult: QueryExecResult): Array<T>;
44
- get insertQuery(): string;
45
- updateQuery(withTabName: boolean, columns?: (keyof ColumnDefs)[] | undefined, skipColumns?: boolean): string;
46
- get columnsCreateSection(): string;
47
- selectQuery(columnsToSelect: (keyof ColumnDefs)[] | string, ...whereAndColEqual: (keyof ColumnDefs)[]): string;
48
- }
49
- export {};
@@ -1,73 +0,0 @@
1
- /**
2
- * This represents a function that will create a promise, potentially starting
3
- * some background process, only when it is called. Such wrap of code is needed
4
- * for scheduling, as very often any start of an action must be postponed till
5
- * later time. Scheduler needs a not-yet-started activity, as scheduler has
6
- * control action's start.
7
- */
8
- export type Action<T> = () => Promise<T>;
9
- /**
10
- * This is a container of processes, labeled by some ids. It allows to track if
11
- * there is a process already in progress with a given id. And, it allows to
12
- * chain process, when needed.
13
- *
14
- * Common use of such class is to reuse getting of some expensive resource(s).
15
- */
16
- export declare class NamedProcs {
17
- private processes;
18
- constructor();
19
- /**
20
- * @param id is a string key of a process
21
- * @return a promise of a process' completion, or undefined, if process with
22
- * given id is unknown.
23
- */
24
- latestTaskAtThisMoment<T>(id: string): Promise<T> | undefined;
25
- isProcessing(id: string): boolean;
26
- /**
27
- * This method will add a promise of an already started process.
28
- * @param id is a string key of a process
29
- * @param promise of an already started process
30
- * @return a promise of a process' completion.
31
- */
32
- addStarted<T>(id: string, promise: Promise<T>): Promise<T>;
33
- /**
34
- * This method will start a given action only, if a process with a given id
35
- * is not running.
36
- * @param id is a string key of a process
37
- * @param action is a function that starts some process
38
- * @return a promise of a process' completion.
39
- */
40
- start<T>(id: string, action: Action<T>): Promise<T>;
41
- /**
42
- * This method will chain a given action to an already running process, or,
43
- * if identified process is not running, this will start given action under
44
- * a given id.
45
- * @param id is a string key of a process
46
- * @param action is a function that starts some process
47
- * @return a promise of a process' completion.
48
- */
49
- startOrChain<T>(id: string, action: Action<T>): Promise<T>;
50
- }
51
- /**
52
- * This is a container of process. It allows to track if a process is already
53
- * in progress. It also allows to chain process, when needed.
54
- *
55
- * Common use of such class is to reuse getting of some expensive resource, or
56
- * do ning something as an exclusive process.
57
- */
58
- export declare class SingleProc {
59
- private onGoingIdle?;
60
- private actions;
61
- private running;
62
- constructor(onGoingIdle?: (() => void) | undefined);
63
- isProcessing(): boolean;
64
- latestTaskAtThisMoment<T>(): Promise<T> | undefined;
65
- addStarted<T>(promise: Promise<T>): Promise<T>;
66
- start<T>(action: Action<T>): Promise<T>;
67
- private runIfIdle;
68
- startOrChain<T>(action: Action<T>): Promise<T>;
69
- }
70
- /**
71
- * This wraps given function/method into syncing wrap.
72
- */
73
- export declare function makeSyncedFunc<T extends Function>(syncProc: SingleProc, thisArg: any, func: T): T;
@@ -1,17 +0,0 @@
1
- import { Plugin } from 'vue';
2
- import type { InjectionKey } from 'vue';
3
- import type { Ui3nDialogComponentProps } from '../components/ui3n-dialog.vue';
4
- export type DialogInstance = {
5
- id: string;
6
- close: () => void;
7
- };
8
- export interface DialogsPlugin {
9
- $openDialog: (params: Ui3nDialogComponentProps) => DialogInstance | undefined;
10
- }
11
- export declare const DIALOGS_KEY: InjectionKey<DialogsPlugin>;
12
- export declare const dialogs: Plugin;
13
- declare module '@vue/runtime-core' {
14
- interface ComponentCustomProperties {
15
- $openDialog: (params: Ui3nDialogComponentProps) => DialogInstance | undefined;
16
- }
17
- }
@@ -1,20 +0,0 @@
1
- import { Plugin } from 'vue';
2
- import type { InjectionKey } from 'vue';
3
- export interface I18nOptions {
4
- lang: string;
5
- messages: Record<string, Record<string, string>>;
6
- }
7
- export interface I18nPlugin {
8
- $locale: string;
9
- $tr: (key: string, placeholders?: Record<string, string>) => string;
10
- $changeLocale: (lang: string) => void;
11
- }
12
- export declare const I18N_KEY: InjectionKey<I18nPlugin>;
13
- export declare const i18n: Plugin;
14
- declare module '@vue/runtime-core' {
15
- interface ComponentCustomProperties {
16
- $locale: string;
17
- $tr: (key: string, placeholders?: Record<string, string>) => string;
18
- $changeLocale: (lang: string) => void;
19
- }
20
- }
@@ -1,2 +0,0 @@
1
- import { Plugin } from 'vue';
2
- export declare const useIcons: Plugin;
@@ -1,14 +0,0 @@
1
- import { i18n, I18N_KEY } from './i18n';
2
- import type { I18nOptions, I18nPlugin } from './i18n';
3
- import { useIcons } from './icons';
4
- import { notifications, NOTIFICATIONS_KEY } from './notifications';
5
- import type { NotificationsPlugin } from './notifications';
6
- import { vueBus, VUEBUS_KEY } from './vue-bus';
7
- import type { VueBusPlugin } from './vue-bus';
8
- import { dialogs, DIALOGS_KEY } from './dialogs';
9
- import type { DialogsPlugin } from './dialogs';
10
- import { storeI18n } from './store-i18n';
11
- import { storeNotifications } from './store-notifications';
12
- import { storeVueBus } from './store-vue-bus';
13
- import { storeDialogs } from './store-dialogs';
14
- export { i18n, I18nOptions, I18nPlugin, I18N_KEY, useIcons, notifications, NotificationsPlugin, NOTIFICATIONS_KEY, vueBus, VueBusPlugin, VUEBUS_KEY, dialogs, DialogsPlugin, DIALOGS_KEY, storeI18n, storeNotifications, storeVueBus, storeDialogs, };
@@ -1,13 +0,0 @@
1
- import { Plugin } from 'vue';
2
- import type { InjectionKey } from 'vue';
3
- import { Ui3nNotificationProps } from '../constants';
4
- export interface NotificationsPlugin {
5
- $createNotice: (params: Ui3nNotificationProps) => void;
6
- }
7
- export declare const NOTIFICATIONS_KEY: InjectionKey<NotificationsPlugin>;
8
- export declare const notifications: Plugin;
9
- declare module '@vue/runtime-core' {
10
- interface ComponentCustomProperties {
11
- $createNotice: (params: Ui3nNotificationProps) => void;
12
- }
13
- }
@@ -1,4 +0,0 @@
1
- import type { Ui3nDialogComponentProps } from '../components/ui3n-dialog.vue';
2
- export declare function storeDialogs(context: any): {
3
- $openDialog: (params: Ui3nDialogComponentProps) => void;
4
- };
@@ -1,7 +0,0 @@
1
- export declare function storeI18n(context: any): {
2
- $i18n: {
3
- locale: string;
4
- changeLocale: (lang: string) => void;
5
- tr: (key: string, placeholders?: Record<string, string>) => string;
6
- };
7
- };
@@ -1,4 +0,0 @@
1
- import type { Ui3nNotificationProps } from '../constants';
2
- export declare function storeNotifications(context: any): {
3
- $createNotice: (params: Ui3nNotificationProps) => void;
4
- };
@@ -1,4 +0,0 @@
1
- import type { VueEventBus } from '../constants';
2
- export declare function storeVueBus(context: any): {
3
- $emitter: VueEventBus;
4
- };
@@ -1,19 +0,0 @@
1
- import { Plugin } from 'vue';
2
- import type { InjectionKey } from 'vue';
3
- import type { CbFunction, VueEventBus } from '../constants';
4
- export interface VueBusPlugin {
5
- $emitter: VueEventBus;
6
- }
7
- export declare const VUEBUS_KEY: InjectionKey<VueBusPlugin>;
8
- export declare const vueBus: Plugin;
9
- declare module '@vue/runtime-core' {
10
- interface ComponentCustomProperties {
11
- $emitter: {
12
- on: (type: string | symbol, handler: CbFunction) => void;
13
- off: (type: string | symbol, handler?: CbFunction) => void;
14
- emit: (type: string | symbol, arg?: any) => void;
15
- once: (type: string | symbol, handler: CbFunction) => void;
16
- clear: () => void;
17
- };
18
- }
19
- }
package/dist/style.css DELETED
@@ -1 +0,0 @@
1
- .ui3n-button[data-v-5f7c3964]{--ui3n-button-text-size: 12px;--ui3n-button-text-height: 16px;--ui3n-button-text-color: var(--system-white, #fff);--ui3n-button-background: var(--blue-main, #0090ec);--ui3n-button-padding-vert: 8px;--ui3n-button-padding-horiz: 16px;display:flex;align-items:center;border:none;outline:none;padding:var(--ui3n-button-padding-vert) var(--ui3n-button-padding-horiz);border-radius:4px;background:var(--ui3n-button-background);font-size:var(--ui3n-button-text-size);line-height:var(--ui3n-button-text-height);font-weight:600;color:var(--ui3n-button-text-color);background-position:center;transition:background .5s ease-in-out}.ui3n-button--round[data-v-5f7c3964]{--ui3n-button-padding-vert: 4px;--ui3n-button-padding-horiz: 4px;border-radius:50%}.ui3n-button--elevation[data-v-5f7c3964]{box-shadow:0 2px 1px -1px var(--shadow-key-umbra-opacity),0 1px 1px 0 var(--shadow-key-penumbra-opacity),0 1px 3px 0 var(--shadow-key-ambient-opacity)}.ui3n-button[data-v-5f7c3964]:not([disabled]){cursor:pointer}.ui3n-button[data-v-5f7c3964]:not([disabled]):hover{background:var(--ui3n-button-background) radial-gradient(circle,transparent 1%,var(--ui3n-button-background) 1%) center/15000%}.ui3n-button:not([disabled]):hover .ui3n-button__icon[data-v-5f7c3964],.ui3n-button:not([disabled]):hover .ui3n-button__text[data-v-5f7c3964]{opacity:1}.ui3n-button[data-v-5f7c3964]:not([disabled]):active{opacity:1;background-color:var(--black-30, #b3b3b3);background-size:100%;transition:background 0s}.ui3n-button__icon[data-v-5f7c3964]{opacity:.85;transition:opacity .2s ease-in-out}.ui3n-button__text[data-v-5f7c3964]{display:block;opacity:.85;transition:opacity .2s ease-in-out}.ui3n-button__text--margin[data-v-5f7c3964]{margin-left:4px}.ui3n-button[disabled][data-v-5f7c3964]{opacity:.7}.ui3n-notification[data-v-436fa887]{display:flex;position:relative;z-index:5000;border-radius:var(--half-size, 4px);padding:var(--base-size, 8px);max-width:400px;margin-bottom:var(--base-size)}.ui3n-notification--with-icon[data-v-436fa887]{display:flex;justify-content:flex-start;align-items:center}.ui3n-notification--with-icon .ui3n-notification__content[data-v-436fa887]{padding-left:var(--base-size, 8px)}.ui3n-notification__content[data-v-436fa887]{position:relative;flex-grow:2;font-size:var(--font-13, 13px);font-weight:400;line-height:1.5;color:var(--system-white, #fff)}.ui3n-notification__close[data-v-436fa887]{position:absolute;z-index:1;top:0;right:0}.ui3n-notification--success[data-v-436fa887]{background-color:#10c48f}.ui3n-notification--warning[data-v-436fa887]{background-color:#f80}.ui3n-notification--info[data-v-436fa887]{background-color:#10afef}.ui3n-notification--error[data-v-436fa887]{background-color:#ef5350}.ui3n-notification--left[data-v-436fa887]{margin-left:0;margin-right:auto}.ui3n-notification--center[data-v-436fa887]{margin-left:auto;margin-right:auto}.ui3n-notification--right[data-v-436fa887]{margin-left:auto;margin-right:0}.ui3n-dialog__overlay{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;background-color:#0006}.ui3n-dialog{--dialog-border-radius: 8px;--dialog-title-padding: 16px 24px 16px;--dialog-title-font-size: 14px;--dialog-actions-padding: 16px;--dialog-confirm-button-color: var(--system-white, #fff);--dialog-cancel-button-color: var(--blue-main, #0090ec);--dialog-confirm-background-color: var(--blue-main, #0090ec);--dialog-cancel-background-color: var(--system-white, #fff);position:relative;display:flex;flex-direction:column;height:auto;max-height:95%;background-color:var(--system-white, #fff);border-radius:var(--dialog-border-radius);box-shadow:0 2px 1px -1px var(--shadow-key-umbra-opacity),0 1px 1px 0 var(--shadow-key-penumbra-opacity),0 1px 3px 0 var(--shadow-key-ambient-opacity)}.ui3n-dialog__title{padding:var(--dialog-title-padding);font-size:var(--dialog-title-font-size);font-weight:600;line-height:1.3;color:var(--black-90, #212121);border-bottom:1px solid var(--grey-50, #f2f2f2);max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui3n-dialog__close{position:absolute;right:4px;top:4px}.ui3n-dialog__content{flex-grow:2;overflow-y:auto}.ui3n-dialog__actions{padding:var(--dialog-actions-padding);display:flex;justify-content:flex-end;align-items:center}.ui3n-dialog__actions--both .ui3n-button{margin-left:8px}.ui3n-drop-files[data-v-3411ed77]{position:relative;width:100%;height:100%}.ui3n-drop-files__dropzone[data-v-3411ed77]{position:absolute;background-color:var(--system-white, #fff);display:flex;flex-direction:column;justify-content:center;align-items:center;inset:var(--half-size, 4px) var(--base-size, 8px);border-radius:var(--base-size, 8px);z-index:5}.ui3n-drop-files__dropzone-border[data-v-3411ed77]{position:absolute;width:calc(100% - var(--base-size, 8px) * 2);height:calc(100% - var(--base-size, 8px) * 2);top:var(--base-size, 8px);left:var(--base-size, 8px);border-radius:var(--base-size, 8px);border:2px dashed var(--gray-50, #f2f2f2);pointer-events:none}.ui3n-drop-files__dropzone-title[data-v-3411ed77]{margin:0 0 24px;font-size:var(--font-24, 24px);font-weight:600;color:var(--black-30, #b3b3b3);pointer-events:none}.ui3n-drop-files__dropzone-icon[data-v-3411ed77]{position:relative;width:160px;height:160px;border-radius:50%;background-color:var(--gray-50, #f2f2f2);display:flex;justify-content:center;align-items:center;pointer-events:none}.ui3n-drop-files__dropzone-text[data-v-3411ed77]{margin-top:calc(var(--base-size, 8px) * 3);font-size:var(--font-12, 12px);line-height:var(--font-16, 16px);font-weight:400;color:var(--black-30, #b3b3b3)}.ui3n-drop-files__dropzone-additional[data-v-3411ed77]{margin-top:var(--half-size, 4px);font-size:var(--font-12, 12px);font-weight:500;color:var(--black-90, #212121)}.ui3n-emoji[data-v-cf691041]{--emoji-size: 16px;display:flex;width:var(--emoji-size);height:var(--emoji-size);justify-content:center;align-items:center;cursor:pointer}.ui3n-emoji--readonly[data-v-cf691041]{cursor:default}.ui3n-input[data-v-41c114f0]{--ui3n-input-height: calc(var(--base-size, 8px) * 4);--ui3n-input-padding-left: var(--base-size, 8px);--ui3n-input-padding-right: var(--base-size, 8px);position:relative;width:100%}.ui3n-input__label[data-v-41c114f0]{display:block;width:100%;font-size:var(--font-12, 12px);font-weight:600;color:var(--black-90, #212121);margin-bottom:calc(var(--base-size, 8px) / 2)}.ui3n-input__input[data-v-41c114f0]{display:block;box-sizing:border-box;width:100%;position:relative;border:none;outline:none;height:var(--ui3n-input-height);padding:0 var(--ui3n-input-padding-right) 0 var(--ui3n-input-padding-left);border-radius:var(--half-size, 4px);background-color:var(--gray-50, #f2f2f2);font-size:var(--font-13, 13px);font-weight:400;line-height:1;color:var(--black-90, #212121)}.ui3n-input__input[data-v-41c114f0]::placeholder{color:var(--black-30, #b3b3b3);font-style:italic;font-size:var(--font-13, 13px);font-weight:400}.ui3n-input__input[data-v-41c114f0]:focus-within{background-color:var(--blue-main-20, #d8edfd)}.ui3n-input__icon[data-v-41c114f0]{position:absolute;left:var(--half-size, 4px);top:var(--base-size, 8px)}.ui3n-input__clear-btn[data-v-41c114f0]{position:absolute;right:0;top:var(--half-size, 4px)}.ui3n-input__error-text[data-v-41c114f0]{font-style:italic;font-size:var(--font-10, 10px);font-weight:400;line-height:1.5;color:var(--pear-100, #f75d53)}.ui3n-input--clearable[data-v-41c114f0]{--ui3n-input-padding-right: calc(var(--base-size, 8px) * 3)}.ui3n-input--with-icon[data-v-41c114f0]{--ui3n-input-padding-left: calc(var(--base-size, 8px) * 3)}.ui3n-input--error[data-v-41c114f0]{--ui3n-input-padding-left: calc(var(--base-size, 8px) - 1px);--ui3n-input-padding-right: calc(var(--base-size, 8px) - 1px)}.ui3n-input--error .ui3n-input__input[data-v-41c114f0]{border:1px solid var(--pear-100, #f75d53)}.ui3n-input--error.ui3n-input--clearable[data-v-41c114f0]{--ui3n-input-padding-right: calc(var(--base-size, 8px) * 2 - 1px)}.ui3n-input--error.ui3n-input--with-icon[data-v-41c114f0]{--ui3n-input-padding-left: calc(var(--base-size, 8px) * 2 - 1px)}.ui3n-input--disabled[data-v-41c114f0]{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.5}.ui3n-input--with-label .ui3n-input__icon[data-v-41c114f0]{top:calc(var(--base-size) * 3.5 + 1px)}.ui3n-input--with-label .ui3n-input__clear-btn[data-v-41c114f0]{top:calc(var(--base-size) * 3 + 1px)}.ui3n-text[data-v-33487f04]{position:relative;width:100%}.ui3n-text__label[data-v-33487f04]{display:block;width:100%;font-size:var(--font-12, 12px);font-weight:600;color:var(--black-90, #212121);margin-bottom:calc(var(--base-size, 8px) / 2)}.ui3n-text__body[data-v-33487f04]{position:relative;width:100%;padding:var(--base-size, 8px) 0;background-color:var(--gray-50, #f2f2f2);border-radius:4px}.ui3n-text__content[data-v-33487f04]{resize:none;display:block;box-sizing:border-box;position:relative;width:100%;border-radius:4px;background-color:var(--gray-50, #f2f2f2);padding:0 var(--base-size, 8px);font-family:OpenSans,sans-serif;font-size:var(--font-13, 13px);font-weight:400;line-height:var(--font-16, 16px);color:var(--black-90, #212121);border:none}.ui3n-text__content[data-v-33487f04]::placeholder{font-size:var(--font-13, 13px);font-weight:300;font-style:italic;color:var(--gray-90, #212121)}.ui3n-text--disabled[data-v-33487f04]{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.5}.ui3n-text--focused .ui3n-text__body[data-v-33487f04],.ui3n-text--focused .ui3n-text__content[data-v-33487f04]{background-color:var(--blue-main-20, #d8edfd);outline:none;border:none}.ui3n-table[data-v-5a78ec1c]{--table-header-height: 36px;--table-row-height: 28px;position:relative;width:100%;height:100%;overflow-x:hidden;overflow-y:auto}.ui3n-table__header[data-v-5a78ec1c]{position:sticky;top:0;display:flex;width:100%;height:var(--table-header-height);justify-content:flex-start;align-items:center;padding:0 calc(var(--base-size) * 2);background-color:var(--gray-50)}.ui3n-table__header-cell[data-v-5a78ec1c]{display:flex;justify-content:flex-start;align-items:center;font-size:var(--font-13);line-height:var(--font-18);font-weight:500;color:var(--black-90)}.ui3n-table__header-cell--sortable[data-v-5a78ec1c]{cursor:pointer}.ui3n-table__header-text[data-v-5a78ec1c]{display:block;position:relative;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui3n-table__item[data-v-5a78ec1c]{display:flex;width:100%;height:var(--table-row-height);justify-content:flex-start;align-items:center;padding:0 calc(var(--base-size) * 2) 0 calc(var(--base-size) * 5);cursor:pointer;border-bottom:1px solid var(--gray-50)}.ui3n-table__item-bookmark[data-v-5a78ec1c],.ui3n-table__item-rename[data-v-5a78ec1c]{display:none;position:absolute;z-index:1;color:var(--black-30)}.ui3n-table__item-bookmark[data-v-5a78ec1c]{left:2px}.ui3n-table__item-rename[data-v-5a78ec1c]{right:calc(var(--base-size) * 13 + 24px)}.ui3n-table__item-icon[data-v-5a78ec1c]{position:absolute;left:calc(var(--base-size) * 2);color:var(--black-30);pointer-events:none}.ui3n-table__item-cell[data-v-5a78ec1c]{position:relative;font-weight:400;pointer-events:none}.ui3n-table__item[data-v-5a78ec1c]:hover{background-color:var(--blue-main-30)}.ui3n-table__item:hover .ui3n-table__item-bookmark[data-v-5a78ec1c],.ui3n-table__item:hover .ui3n-table__item-rename[data-v-5a78ec1c]{display:block}.ui3n-table__item:hover .ui3n-table__item-icon[data-v-5a78ec1c]{color:var(--blue-main)}.ui3n-table__name[data-v-5a78ec1c]{flex:1 0}.ui3n-table__name.ui3n-table__item-cell[data-v-5a78ec1c]{font-size:var(--font-12)}.ui3n-table__type[data-v-5a78ec1c]{width:calc(var(--base-size) * 7);text-align:center}.ui3n-table__type.ui3n-table__item-cell[data-v-5a78ec1c]{font-size:var(--font-10)}.ui3n-table__changedAt[data-v-5a78ec1c]{width:calc(var(--base-size) * 13)}.ui3n-table__changedAt.ui3n-table__item-cell[data-v-5a78ec1c]{font-size:var(--font-11)}.ui3n-table__empty[data-v-5a78ec1c]{font-size:var(--font-20);font-style:italic;color:var(--black-30);text-align:center;padding-top:calc(var(--base-size) * 10)}.ui3n-menu[data-v-8ba1dfb9]{--menu-animation-duration: .4s;position:relative;overflow:visible}.ui3n-menu .menu-enter-active[data-v-8ba1dfb9],.ui3n-menu .menu-leave-active[data-v-8ba1dfb9]{transition:opacity var(--menu-animation-duration)}.ui3n-menu .menu-enter-from[data-v-8ba1dfb9],.ui3n-menu .menu-leave-to[data-v-8ba1dfb9]{opacity:0}.ui3n-menu__trigger[data-v-8ba1dfb9]{position:relative}.ui3n-menu__content[data-v-8ba1dfb9]{position:absolute;border-radius:4px;background-color:var(--system-white, #fff);box-shadow:0 3px 3px -2px var(--shadow-key-umbra-opacity),0 3px 4px 0 var(--shadow-key-penumbra-opacity),0 1px 8px 0 var(--shadow-key-ambient-opacity)}.ui3n-list[data-v-8ccc687f]{--ui3n-list-item-height: 28px;--ui3n-list-bg-color: var(--system-white, #fff);position:relative;width:100%;height:100%;background-color:var(--ui3n-list-bg-color);display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}.ui3n-list__title[data-v-8ccc687f]{position:relative;top:0;z-index:1}.ui3n-list__title--sticky[data-v-8ccc687f]{position:sticky}.ui3n-list__content[data-v-8ccc687f]{position:relative;flex-grow:1}.ui3n-list__title-content[data-v-8ccc687f],.ui3n-list__item[data-v-8ccc687f]{position:relative;width:100%;min-height:var(--ui3n-list-item-height);padding:4px 0;display:flex;justify-content:flex-start;align-items:center}.ui3n-list__title-content[data-v-8ccc687f]{z-index:1;font-size:16px;font-weight:600;background-color:var(--ui3n-list-bg-color)}.ui3n-list__item-content[data-v-8ccc687f]{font-size:14px;font-weight:400;cursor:pointer}.ui3n-list__item-content--disabled[data-v-8ccc687f]{pointer-events:none;cursor:default}.ui3n-virtual-scroll[data-v-6a998153]{position:relative;width:100%;height:100%;overflow-y:auto}.ui3n-virtual-scroll__viewport[data-v-6a998153]{position:relative;overflow:hidden;will-change:transform}.ui3n-virtual-scroll__content[data-v-6a998153]{will-change:transform}.ui3n-virtual-scroll__item[data-v-6a998153]{position:relative;min-height:16px}
@@ -1,3 +0,0 @@
1
- export declare function getRandomId(numOfChars: number): string;
2
- export declare function getDeliveryErrors(progress: web3n.asmail.DeliveryProgress): Record<string, string>;
3
- export declare function transformFileToWeb3NFile(file: File): Promise<web3n.files.File | undefined>;
@@ -1,3 +0,0 @@
1
- export * from './textarea-max-rows';
2
- export * from './common.helpers';
3
- export * from './ui.helpers';
@@ -1,3 +0,0 @@
1
- export declare function patchTextareaMaxRowsSupport(element: HTMLElement, { shadowElement }?: {
2
- shadowElement?: null | undefined;
3
- }): void;
@@ -1,13 +0,0 @@
1
- import { Slot } from 'vue';
2
- export declare function hasSlotContent(slot?: Slot, slotProps?: {}): boolean;
3
- export declare function getElementColor(initials?: string): string;
4
- export declare function invertColor(color: string): string;
5
- export declare function html2text(html: string): string;
6
- /**
7
- * @param {number} ts - timestamp
8
- * @return {string} - times as string%
9
- * If TS is today, then Date returns as a string 'HH:mm'
10
- * If ts is period between 3 day before today and today, then Date returns as a string '{1|2|3} days ago'
11
- * Else Date returns as a string 'YYYY-MM-DD'
12
- */
13
- export declare function prepareDateAsSting(ts: number): string;