@savoirfairelinux/jami-core 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.
- package/dist/index.d.ts +165 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +150 -0
- package/dist/index.js.map +1 -0
- package/package.json +55 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signals emitted by the Jami daemon.
|
|
3
|
+
*
|
|
4
|
+
* The definition of signals can be found in `daemon/bin/nodejs/callback.h`.
|
|
5
|
+
*/
|
|
6
|
+
export declare enum DataTransferError {
|
|
7
|
+
success = 0,
|
|
8
|
+
unknown = 1,
|
|
9
|
+
io = 2,
|
|
10
|
+
invalid_argument = 3
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Signals emitted by the Jami daemon.
|
|
14
|
+
*
|
|
15
|
+
* The definition of signals can be found in `daemon/bin/nodejs/callback.h`.
|
|
16
|
+
*/
|
|
17
|
+
export declare enum JamiSignal {
|
|
18
|
+
AccountsChanged = "AccountsChanged",
|
|
19
|
+
AccountDetailsChanged = "AccountDetailsChanged",
|
|
20
|
+
AccountProfileReceived = "AccountProfileReceived",
|
|
21
|
+
RegistrationStateChanged = "RegistrationStateChanged",
|
|
22
|
+
ComposingStatusChanged = "ComposingStatusChanged",
|
|
23
|
+
IncomingTrustRequest = "IncomingTrustRequest",
|
|
24
|
+
ContactAdded = "ContactAdded",
|
|
25
|
+
ContactRemoved = "ContactRemoved",
|
|
26
|
+
ExportOnRingEnded = "ExportOnRingEnded",
|
|
27
|
+
NameRegistrationEnded = "NameRegistrationEnded",
|
|
28
|
+
RegisteredNameFound = "RegisteredNameFound",
|
|
29
|
+
VolatileDetailsChanged = "VolatileDetailsChanged",
|
|
30
|
+
KnownDevicesChanged = "KnownDevicesChanged",
|
|
31
|
+
IncomingAccountMessage = "IncomingAccountMessage",
|
|
32
|
+
AccountMessageStatusChanged = "AccountMessageStatusChanged",
|
|
33
|
+
ProfileReceived = "ProfileReceived",
|
|
34
|
+
DeviceAuthStateChanged = "DeviceAuthStateChanged",
|
|
35
|
+
AddDeviceStateChanged = "AddDeviceStateChanged",
|
|
36
|
+
UserSearchEnded = "UserSearchEnded",
|
|
37
|
+
DeviceRevocationEnded = "DeviceRevocationEnded",
|
|
38
|
+
ClearCache = "ClearCache",
|
|
39
|
+
StateChange = "StateChange",
|
|
40
|
+
IncomingMessage = "IncomingMessage",
|
|
41
|
+
IncomingCall = "IncomingCall",
|
|
42
|
+
IncomingCallWithMedia = "IncomingCallWithMedia",
|
|
43
|
+
MediaChangeRequested = "MediaChangeRequested",
|
|
44
|
+
ConversationLoaded = "ConversationLoaded",
|
|
45
|
+
SwarmLoaded = "SwarmLoaded",
|
|
46
|
+
MessagesFound = "MessagesFound",
|
|
47
|
+
SwarmMessageReceived = "SwarmMessageReceived",
|
|
48
|
+
SwarmMessageUpdated = "SwarmMessageUpdated",
|
|
49
|
+
ReactionAdded = "ReactionAdded",
|
|
50
|
+
ReactionRemoved = "ReactionRemoved",
|
|
51
|
+
ConversationProfileUpdated = "ConversationProfileUpdated",
|
|
52
|
+
ConversationRequestReceived = "ConversationRequestReceived",
|
|
53
|
+
ConversationRequestDeclined = "ConversationRequestDeclined",
|
|
54
|
+
ConversationReady = "ConversationReady",
|
|
55
|
+
ConversationRemoved = "ConversationRemoved",
|
|
56
|
+
ConversationMemberEvent = "ConversationMemberEvent",
|
|
57
|
+
OnConversationError = "OnConversationError",
|
|
58
|
+
OnConferenceInfosUpdated = "OnConferenceInfosUpdated",
|
|
59
|
+
DataTransferEvent = "DataTransferEvent",
|
|
60
|
+
SubscriptionStateChanged = "SubscriptionStateChanged",
|
|
61
|
+
NearbyPeerNotification = "NearbyPeerNotification",
|
|
62
|
+
NewBuddyNotification = "NewBuddyNotification",
|
|
63
|
+
NewServerSubscriptionRequest = "NewServerSubscriptionRequest",
|
|
64
|
+
ServerError = "ServerError"
|
|
65
|
+
}
|
|
66
|
+
export interface Constructable<T> {
|
|
67
|
+
new (): T;
|
|
68
|
+
}
|
|
69
|
+
interface SwigVect<T> {
|
|
70
|
+
size(): number;
|
|
71
|
+
get(index: number): T | undefined;
|
|
72
|
+
}
|
|
73
|
+
interface SwigMap<T, U> {
|
|
74
|
+
keys(): SwigVect<T>;
|
|
75
|
+
get(key: T): U | undefined;
|
|
76
|
+
set(key: T, value: U): void;
|
|
77
|
+
}
|
|
78
|
+
export type StringVect = SwigVect<string>;
|
|
79
|
+
export type StringMap = SwigMap<string, string>;
|
|
80
|
+
export type VectMap = SwigVect<StringMap>;
|
|
81
|
+
export type Blob = SwigVect<number>;
|
|
82
|
+
export declare function stringVectToArray(stringVect: StringVect): string[];
|
|
83
|
+
export declare function stringMapToRecord(stringMap: StringMap): Record<string, string>;
|
|
84
|
+
export declare function vectMapToRecordArray(vectMap: VectMap): Record<string, string>[];
|
|
85
|
+
/**
|
|
86
|
+
* Non-exhaustive list of properties for the SWIG-generated native addon.
|
|
87
|
+
*
|
|
88
|
+
* The full list of methods can be found in SWIG interface files (`.i`) in `daemon/bin/nodejs`.
|
|
89
|
+
*/
|
|
90
|
+
export interface JamiSwig {
|
|
91
|
+
init(args: Record<string, unknown>): void;
|
|
92
|
+
fini(): void;
|
|
93
|
+
monitor(continuous: boolean): void;
|
|
94
|
+
clearCache(accountId: string, conversationId: string): void;
|
|
95
|
+
getAccountDetails(accountId: string): StringMap;
|
|
96
|
+
getVolatileAccountDetails(accountId: string): StringMap;
|
|
97
|
+
setAccountDetails(accountId: string, details: StringMap): void;
|
|
98
|
+
addAccount(details: StringMap): string;
|
|
99
|
+
removeAccount(accountId: string): void;
|
|
100
|
+
updateProfile(accountId: string, displayName: string, avatarPath: string, fileType: string, flag: number): void;
|
|
101
|
+
getAccountList(): StringVect;
|
|
102
|
+
sendAccountTextMessage(accountId: string, contactId: string, message: StringMap, flag: number): void;
|
|
103
|
+
lookupName(accountId: string, nameserver: string, username: string): boolean;
|
|
104
|
+
lookupAddress(accountId: string, nameserver: string, address: string): boolean;
|
|
105
|
+
registerName(accountId: string, username: string, scheme: string, password: string): boolean;
|
|
106
|
+
searchUser(accountId: string, query: string): boolean;
|
|
107
|
+
getKnownRingDevices(accountId: string): StringMap;
|
|
108
|
+
revokeDevice(accountId: string, deviceId: string, scheme: string, password: string): boolean;
|
|
109
|
+
addDevice(accountId: string, uri: string): boolean;
|
|
110
|
+
confirmAddDevice(accountId: string, opId: number): boolean;
|
|
111
|
+
cancelAddDevice(accountId: string, opId: number): boolean;
|
|
112
|
+
provideAccountAuthentication(accountId: string, credentials: string, scheme: string): boolean;
|
|
113
|
+
addContact(accountId: string, contactId: string): void;
|
|
114
|
+
removeContact(accountId: string, contactId: string, ban: boolean): void;
|
|
115
|
+
getContacts(accountId: string): VectMap;
|
|
116
|
+
getContactDetails(accountId: string, contactId: string): StringMap;
|
|
117
|
+
sendTrustRequest(accountId: string, to: string, payload: Blob): void;
|
|
118
|
+
acceptTrustRequest(accountId: string, from: string): boolean;
|
|
119
|
+
discardTrustRequest(accountId: string, from: string): boolean;
|
|
120
|
+
getDefaultModerators(accountId: string): StringVect;
|
|
121
|
+
setDefaultModerator(accountId: string, uri: string, state: boolean): void;
|
|
122
|
+
startConversation(accountId: string): string;
|
|
123
|
+
getConversations(accountId: string): StringVect;
|
|
124
|
+
conversationInfos(accountId: string, conversationId: string): StringMap;
|
|
125
|
+
getConversationMembers(accountId: string, conversationId: string): VectMap;
|
|
126
|
+
removeConversation(accountId: string, conversationId: string): void;
|
|
127
|
+
updateConversationInfos(accountId: string, conversationId: string, infos: StringMap): void;
|
|
128
|
+
searchConversation(accountId: string, conversationId: string, author: string, lastId: string, regexSearch: string, type: string, after: number, before: number, maxResult: number, flag: number): boolean;
|
|
129
|
+
getConversationRequests(accountId: string): VectMap;
|
|
130
|
+
acceptConversationRequest(accountId: string, conversationId: string): void;
|
|
131
|
+
declineConversationRequest(accountId: string, conversationId: string): void;
|
|
132
|
+
addConversationMember(accountId: string, conversationId: string, uri: string): void;
|
|
133
|
+
removeConversationMember(accountId: string, conversationId: string, uri: string): void;
|
|
134
|
+
getConversationPreferences(accountId: string, conversationId: string): StringMap;
|
|
135
|
+
setConversationPreferences(accountId: string, conversationId: string, preferences: StringMap): void;
|
|
136
|
+
sendMessage(accountId: string, conversationId: string, message: string, replyTo: string, flag: number): void;
|
|
137
|
+
loadConversationMessages(accountId: string, conversationId: string, fromMessage: string, n: number): number;
|
|
138
|
+
loadConversation(accountId: string, conversationId: string, fromMessage: string, n: number): number;
|
|
139
|
+
loadSwarmUntil(accountId: string, conversationId: string, fromMessage: string, toMessage: string): number;
|
|
140
|
+
setIsComposing(accountId: string, conversationId: string, isWriting: boolean): void;
|
|
141
|
+
setMessageDisplayed(accountId: string, conversationId: string, messageId: string, status: number): boolean;
|
|
142
|
+
getCallList(accountId: string): StringVect;
|
|
143
|
+
getCallDetails(accountId: string, callId: string): StringMap;
|
|
144
|
+
sendFile(accountId: string, conversationId: string, path: string, displayName: string, replyTo: string): void;
|
|
145
|
+
downloadFile(accountId: string, conversationId: string, interactionId: string, fileId: string, path: string): number;
|
|
146
|
+
cancelDataTransfer(accountId: string, conversationId: string, fileId: string): DataTransferError;
|
|
147
|
+
fileTransferInfo(accountId: string, conversationId: string, fileId: string, path_out: string, total_out: number, progress_out: number): DataTransferError;
|
|
148
|
+
publish(accountId: string, status: boolean, note: string): void;
|
|
149
|
+
answerServerRequest(uri: string, flag: boolean): void;
|
|
150
|
+
subscribeBuddy(accountId: string, uri: string, flag: boolean): void;
|
|
151
|
+
getSubscriptions(accountId: string): VectMap;
|
|
152
|
+
setSubscriptions(accountId: string, uris: string[]): void;
|
|
153
|
+
StringMap: Constructable<StringMap>;
|
|
154
|
+
Blob: Constructable<Blob>;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Load the Jami native addon (`jamid.node`) for the current platform.
|
|
158
|
+
*
|
|
159
|
+
* Attempts to load a platform-specific package
|
|
160
|
+
* (e.g. `@savoirfairelinux/jami-core-linux-x64`), which is installed via
|
|
161
|
+
* `optionalDependencies` on matching platforms.
|
|
162
|
+
*/
|
|
163
|
+
export declare function loadNativeModule(): JamiSwig;
|
|
164
|
+
export {};
|
|
165
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2022-2026 Savoir-faire Linux Inc.
|
|
3
|
+
*
|
|
4
|
+
* This program is free software; you can redistribute it and/or modify
|
|
5
|
+
* it under the terms of the GNU Affero General Public License as
|
|
6
|
+
* published by the Free Software Foundation; either version 3 of the
|
|
7
|
+
* License, or (at your option) any later version.
|
|
8
|
+
*
|
|
9
|
+
* This program is distributed in the hope that it will be useful,
|
|
10
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
* GNU Affero General Public License for more details.
|
|
13
|
+
*
|
|
14
|
+
* You should have received a copy of the GNU Affero General Public
|
|
15
|
+
* License along with this program. If not, see
|
|
16
|
+
* <https://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* TypeScript definitions for the Jami daemon SWIG Node.js addon (jamid.node).
|
|
20
|
+
*
|
|
21
|
+
* This module is the single source of truth for SWIG type definitions,
|
|
22
|
+
* conversion helpers, and the JamiSwig interface. Used by both the server
|
|
23
|
+
* and the SDK.
|
|
24
|
+
*/
|
|
25
|
+
import { createRequire } from 'node:module';
|
|
26
|
+
/**
|
|
27
|
+
* Signals emitted by the Jami daemon.
|
|
28
|
+
*
|
|
29
|
+
* The definition of signals can be found in `daemon/bin/nodejs/callback.h`.
|
|
30
|
+
*/
|
|
31
|
+
export var DataTransferError;
|
|
32
|
+
(function (DataTransferError) {
|
|
33
|
+
DataTransferError[DataTransferError["success"] = 0] = "success";
|
|
34
|
+
DataTransferError[DataTransferError["unknown"] = 1] = "unknown";
|
|
35
|
+
DataTransferError[DataTransferError["io"] = 2] = "io";
|
|
36
|
+
DataTransferError[DataTransferError["invalid_argument"] = 3] = "invalid_argument";
|
|
37
|
+
})(DataTransferError || (DataTransferError = {}));
|
|
38
|
+
/**
|
|
39
|
+
* Signals emitted by the Jami daemon.
|
|
40
|
+
*
|
|
41
|
+
* The definition of signals can be found in `daemon/bin/nodejs/callback.h`.
|
|
42
|
+
*/
|
|
43
|
+
export var JamiSignal;
|
|
44
|
+
(function (JamiSignal) {
|
|
45
|
+
// libjami::ConfigurationSignal
|
|
46
|
+
JamiSignal["AccountsChanged"] = "AccountsChanged";
|
|
47
|
+
JamiSignal["AccountDetailsChanged"] = "AccountDetailsChanged";
|
|
48
|
+
JamiSignal["AccountProfileReceived"] = "AccountProfileReceived";
|
|
49
|
+
JamiSignal["RegistrationStateChanged"] = "RegistrationStateChanged";
|
|
50
|
+
JamiSignal["ComposingStatusChanged"] = "ComposingStatusChanged";
|
|
51
|
+
JamiSignal["IncomingTrustRequest"] = "IncomingTrustRequest";
|
|
52
|
+
JamiSignal["ContactAdded"] = "ContactAdded";
|
|
53
|
+
JamiSignal["ContactRemoved"] = "ContactRemoved";
|
|
54
|
+
JamiSignal["ExportOnRingEnded"] = "ExportOnRingEnded";
|
|
55
|
+
JamiSignal["NameRegistrationEnded"] = "NameRegistrationEnded";
|
|
56
|
+
JamiSignal["RegisteredNameFound"] = "RegisteredNameFound";
|
|
57
|
+
JamiSignal["VolatileDetailsChanged"] = "VolatileDetailsChanged";
|
|
58
|
+
JamiSignal["KnownDevicesChanged"] = "KnownDevicesChanged";
|
|
59
|
+
JamiSignal["IncomingAccountMessage"] = "IncomingAccountMessage";
|
|
60
|
+
JamiSignal["AccountMessageStatusChanged"] = "AccountMessageStatusChanged";
|
|
61
|
+
JamiSignal["ProfileReceived"] = "ProfileReceived";
|
|
62
|
+
JamiSignal["DeviceAuthStateChanged"] = "DeviceAuthStateChanged";
|
|
63
|
+
JamiSignal["AddDeviceStateChanged"] = "AddDeviceStateChanged";
|
|
64
|
+
JamiSignal["UserSearchEnded"] = "UserSearchEnded";
|
|
65
|
+
JamiSignal["DeviceRevocationEnded"] = "DeviceRevocationEnded";
|
|
66
|
+
JamiSignal["ClearCache"] = "ClearCache";
|
|
67
|
+
// libjami::CallSignal
|
|
68
|
+
JamiSignal["StateChange"] = "StateChange";
|
|
69
|
+
JamiSignal["IncomingMessage"] = "IncomingMessage";
|
|
70
|
+
JamiSignal["IncomingCall"] = "IncomingCall";
|
|
71
|
+
JamiSignal["IncomingCallWithMedia"] = "IncomingCallWithMedia";
|
|
72
|
+
JamiSignal["MediaChangeRequested"] = "MediaChangeRequested";
|
|
73
|
+
// libjami::ConversationSignal
|
|
74
|
+
JamiSignal["ConversationLoaded"] = "ConversationLoaded";
|
|
75
|
+
JamiSignal["SwarmLoaded"] = "SwarmLoaded";
|
|
76
|
+
JamiSignal["MessagesFound"] = "MessagesFound";
|
|
77
|
+
JamiSignal["SwarmMessageReceived"] = "SwarmMessageReceived";
|
|
78
|
+
JamiSignal["SwarmMessageUpdated"] = "SwarmMessageUpdated";
|
|
79
|
+
JamiSignal["ReactionAdded"] = "ReactionAdded";
|
|
80
|
+
JamiSignal["ReactionRemoved"] = "ReactionRemoved";
|
|
81
|
+
JamiSignal["ConversationProfileUpdated"] = "ConversationProfileUpdated";
|
|
82
|
+
JamiSignal["ConversationRequestReceived"] = "ConversationRequestReceived";
|
|
83
|
+
JamiSignal["ConversationRequestDeclined"] = "ConversationRequestDeclined";
|
|
84
|
+
JamiSignal["ConversationReady"] = "ConversationReady";
|
|
85
|
+
JamiSignal["ConversationRemoved"] = "ConversationRemoved";
|
|
86
|
+
JamiSignal["ConversationMemberEvent"] = "ConversationMemberEvent";
|
|
87
|
+
JamiSignal["OnConversationError"] = "OnConversationError";
|
|
88
|
+
JamiSignal["OnConferenceInfosUpdated"] = "OnConferenceInfosUpdated";
|
|
89
|
+
// libjami::DataTransferSignal
|
|
90
|
+
JamiSignal["DataTransferEvent"] = "DataTransferEvent";
|
|
91
|
+
// libjami::PresenceSignal
|
|
92
|
+
JamiSignal["SubscriptionStateChanged"] = "SubscriptionStateChanged";
|
|
93
|
+
JamiSignal["NearbyPeerNotification"] = "NearbyPeerNotification";
|
|
94
|
+
JamiSignal["NewBuddyNotification"] = "NewBuddyNotification";
|
|
95
|
+
JamiSignal["NewServerSubscriptionRequest"] = "NewServerSubscriptionRequest";
|
|
96
|
+
JamiSignal["ServerError"] = "ServerError";
|
|
97
|
+
})(JamiSignal || (JamiSignal = {}));
|
|
98
|
+
// ── Conversion helpers ──────────────────────────────────────
|
|
99
|
+
function* swigVectToIt(swigVect) {
|
|
100
|
+
const size = swigVect.size();
|
|
101
|
+
for (let i = 0; i < size; i++) {
|
|
102
|
+
yield swigVect.get(i);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
function* swigMapToIt(swigMap) {
|
|
106
|
+
const keys = swigVectToIt(swigMap.keys());
|
|
107
|
+
for (const key of keys) {
|
|
108
|
+
const value = swigMap.get(key);
|
|
109
|
+
yield [key, value];
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
export function stringVectToArray(stringVect) {
|
|
113
|
+
return Array.from(swigVectToIt(stringVect));
|
|
114
|
+
}
|
|
115
|
+
export function stringMapToRecord(stringMap) {
|
|
116
|
+
const record = {};
|
|
117
|
+
for (const [key, value] of swigMapToIt(stringMap)) {
|
|
118
|
+
record[key] = value;
|
|
119
|
+
}
|
|
120
|
+
return record;
|
|
121
|
+
}
|
|
122
|
+
export function vectMapToRecordArray(vectMap) {
|
|
123
|
+
const records = [];
|
|
124
|
+
for (const stringMap of swigVectToIt(vectMap)) {
|
|
125
|
+
records.push(stringMapToRecord(stringMap));
|
|
126
|
+
}
|
|
127
|
+
return records;
|
|
128
|
+
}
|
|
129
|
+
// ── Native module loader ────────────────────────────────────
|
|
130
|
+
/**
|
|
131
|
+
* Load the Jami native addon (`jamid.node`) for the current platform.
|
|
132
|
+
*
|
|
133
|
+
* Attempts to load a platform-specific package
|
|
134
|
+
* (e.g. `@savoirfairelinux/jami-core-linux-x64`), which is installed via
|
|
135
|
+
* `optionalDependencies` on matching platforms.
|
|
136
|
+
*/
|
|
137
|
+
export function loadNativeModule() {
|
|
138
|
+
const require = createRequire(import.meta.url);
|
|
139
|
+
const platform = process.platform;
|
|
140
|
+
const arch = process.arch;
|
|
141
|
+
const packageName = `@savoirfairelinux/jami-core-${platform}-${arch}`;
|
|
142
|
+
try {
|
|
143
|
+
return require(packageName);
|
|
144
|
+
}
|
|
145
|
+
catch {
|
|
146
|
+
throw new Error(`Jami native module not available for ${platform}-${arch}. ` +
|
|
147
|
+
`Install the platform package: npm install ${packageName}`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@savoirfairelinux/jami-core",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Jami daemon Node.js bindings — native SWIG addon with TypeScript types.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"module": "dist/index.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"types": "./dist/index.d.ts"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"README.md",
|
|
18
|
+
"LICENSE"
|
|
19
|
+
],
|
|
20
|
+
"scripts": {
|
|
21
|
+
"build": "tsc --build",
|
|
22
|
+
"clean": "rm -rf dist *.tsbuildinfo",
|
|
23
|
+
"prepublishOnly": "npm run clean && npm run build",
|
|
24
|
+
"pack-native": "node scripts/pack-native.mjs",
|
|
25
|
+
"publish-platform": "node scripts/pack-native.mjs && npm publish --workspace npm/$(node -e \"process.stdout.write(process.platform+'-'+process.arch)\")"
|
|
26
|
+
},
|
|
27
|
+
"optionalDependencies": {
|
|
28
|
+
"@savoirfairelinux/jami-core-darwin-arm64": "0.1.0",
|
|
29
|
+
"@savoirfairelinux/jami-core-linux-x64": "0.1.0",
|
|
30
|
+
"@savoirfairelinux/jami-core-linux-arm64": "0.1.0"
|
|
31
|
+
},
|
|
32
|
+
"devDependencies": {
|
|
33
|
+
"typescript": "~5.5.4"
|
|
34
|
+
},
|
|
35
|
+
"license": "GPL-3.0-or-later",
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "https://git.jami.net/savoirfairelinux/jami-web.git",
|
|
39
|
+
"directory": "core"
|
|
40
|
+
},
|
|
41
|
+
"keywords": [
|
|
42
|
+
"jami",
|
|
43
|
+
"daemon",
|
|
44
|
+
"native",
|
|
45
|
+
"swig",
|
|
46
|
+
"peer-to-peer",
|
|
47
|
+
"voip"
|
|
48
|
+
],
|
|
49
|
+
"engines": {
|
|
50
|
+
"node": ">=18"
|
|
51
|
+
},
|
|
52
|
+
"publishConfig": {
|
|
53
|
+
"access": "public"
|
|
54
|
+
}
|
|
55
|
+
}
|