pollination-react-io 0.0.1 → 0.0.2
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 +21 -21
- package/README.md +111 -111
- package/build/hooks/index.d.ts +7 -6
- package/build/hooks/types.d.ts +9 -1
- package/build/hooks/useGetGeometry.d.ts +11 -0
- package/build/hooks/useGetHBJSON.d.ts +2 -2
- package/build/hooks/useHBJSONtoVTK.d.ts +1 -1
- package/build/hooks/useManageSettings.d.ts +6 -0
- package/build/hooks/useSendGeometry.d.ts +1 -1
- package/build/hooks/useSendHBJSON.d.ts +16 -0
- package/build/index.d.ts +0 -1
- package/build/index.esm.js +152 -93
- package/build/index.esm.js.map +1 -1
- package/build/index.js +166 -106
- package/build/index.js.map +1 -1
- package/build/typography.scss +12 -12
- package/build/variables.scss +18 -18
- package/package.json +74 -74
package/build/index.esm.js
CHANGED
|
@@ -1,35 +1,5 @@
|
|
|
1
1
|
import { useState, useCallback, useEffect, useMemo } from 'react';
|
|
2
2
|
|
|
3
|
-
function styleInject(css, ref) {
|
|
4
|
-
if ( ref === void 0 ) ref = {};
|
|
5
|
-
var insertAt = ref.insertAt;
|
|
6
|
-
|
|
7
|
-
if (!css || typeof document === 'undefined') { return; }
|
|
8
|
-
|
|
9
|
-
var head = document.head || document.getElementsByTagName('head')[0];
|
|
10
|
-
var style = document.createElement('style');
|
|
11
|
-
style.type = 'text/css';
|
|
12
|
-
|
|
13
|
-
if (insertAt === 'top') {
|
|
14
|
-
if (head.firstChild) {
|
|
15
|
-
head.insertBefore(style, head.firstChild);
|
|
16
|
-
} else {
|
|
17
|
-
head.appendChild(style);
|
|
18
|
-
}
|
|
19
|
-
} else {
|
|
20
|
-
head.appendChild(style);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
if (style.styleSheet) {
|
|
24
|
-
style.styleSheet.cssText = css;
|
|
25
|
-
} else {
|
|
26
|
-
style.appendChild(document.createTextNode(css));
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
var css_248z = ":root {\n --background: #fff;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n.test-component {\n background-color: var(--background);\n color: var(--font-color);\n border: 1px solid #131111;\n padding: 16px;\n width: 360px;\n text-align: center;\n}\n.test-component .heading {\n font-family: \"Avenir Next\", Helvetica, Arial, sans-serif;\n font-size: 40px;\n font-weight: bold;\n}";
|
|
31
|
-
styleInject(css_248z);
|
|
32
|
-
|
|
33
3
|
/*! *****************************************************************************
|
|
34
4
|
Copyright (c) Microsoft Corporation.
|
|
35
5
|
|
|
@@ -1974,16 +1944,17 @@ function sendMessageDotNet(message) {
|
|
|
1974
1944
|
if (!checkDotNet())
|
|
1975
1945
|
return undefined;
|
|
1976
1946
|
var json = JSON.stringify(message);
|
|
1977
|
-
|
|
1978
|
-
.
|
|
1979
|
-
|
|
1980
|
-
|
|
1947
|
+
try {
|
|
1948
|
+
window.parent.chrome.webview.postMessage(json);
|
|
1949
|
+
}
|
|
1950
|
+
catch (_a) {
|
|
1951
|
+
throw new Error('Failed to post message to dotNet.');
|
|
1952
|
+
}
|
|
1981
1953
|
return message;
|
|
1982
1954
|
}
|
|
1983
1955
|
function sendMessageRuby(message) {
|
|
1984
1956
|
if (!checkRuby())
|
|
1985
1957
|
return undefined;
|
|
1986
|
-
// const json = JSON.stringify(message)
|
|
1987
1958
|
console.error('[POLLINATION-DEBUG]: sendMesssageRuby not yet implemented');
|
|
1988
1959
|
return message;
|
|
1989
1960
|
}
|
|
@@ -2014,55 +1985,36 @@ function getHost(key, defaultValue) {
|
|
|
2014
1985
|
return typeof retrieved === 'string' ? retrieved.toLocaleLowerCase() : JSON.parse(retrieved).toLocaleLowerCase();
|
|
2015
1986
|
}
|
|
2016
1987
|
|
|
2017
|
-
var
|
|
1988
|
+
var useGetHbjson = function () {
|
|
2018
1989
|
var host = getHost();
|
|
2019
1990
|
var _a = useState(), messageResponse = _a[0], setMessageResponse = _a[1];
|
|
2020
1991
|
var _b = useState(undefined), hbjson = _b[0], setHbjson = _b[1];
|
|
2021
|
-
var rubyGetHBJSON = useCallback(function (key, selection
|
|
2022
|
-
if (key === void 0) { key =
|
|
1992
|
+
var rubyGetHBJSON = useCallback(function (key, selection) {
|
|
1993
|
+
if (key === void 0) { key = performance.now().toString(); }
|
|
2023
1994
|
if (selection === void 0) { selection = false; }
|
|
2024
|
-
if (isPollinationModel === void 0) { isPollinationModel = false; }
|
|
2025
1995
|
if (!checkRuby())
|
|
2026
1996
|
return;
|
|
2027
|
-
//
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
});
|
|
2035
|
-
}
|
|
2036
|
-
else {
|
|
2037
|
-
window.parent.sketchup.get_geometry(key, selection, {
|
|
2038
|
-
onCompleted: function (res) {
|
|
2039
|
-
var message = JSON.parse(res);
|
|
2040
|
-
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: message.Geometry, identifier: message.Identifier })); });
|
|
2041
|
-
}
|
|
2042
|
-
});
|
|
2043
|
-
}
|
|
1997
|
+
// TODO: why doesn't this function use the key?
|
|
1998
|
+
window.parent.sketchup.get_model(selection, {
|
|
1999
|
+
onCompleted: function (res) {
|
|
2000
|
+
var message = JSON.parse(res);
|
|
2001
|
+
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: message.Geometry, identifier: message.Identifier })); });
|
|
2002
|
+
}
|
|
2003
|
+
});
|
|
2044
2004
|
}, []);
|
|
2045
|
-
var dotNetGetHBJSON = useCallback(function (key, selection
|
|
2046
|
-
if (key === void 0) { key =
|
|
2005
|
+
var dotNetGetHBJSON = useCallback(function (key, selection) {
|
|
2006
|
+
if (key === void 0) { key = performance.now().toString(); }
|
|
2047
2007
|
if (selection === void 0) { selection = false; }
|
|
2048
|
-
if (isPollinationModel === void 0) { isPollinationModel = false; }
|
|
2049
2008
|
if (!checkDotNet())
|
|
2050
2009
|
return;
|
|
2051
2010
|
var res = {
|
|
2052
2011
|
Geometry: null,
|
|
2053
2012
|
Identifier: null
|
|
2054
2013
|
};
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: res.Geometry, identifier: res.Identifier })); });
|
|
2060
|
-
}
|
|
2061
|
-
else {
|
|
2062
|
-
// @ts-ignore
|
|
2063
|
-
res = window.parent.chrome.webview.hostObjects.sync.geometry.PassJsonGeometry(key, selection);
|
|
2064
|
-
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: res.Geometry, identifier: res.Identifier })); });
|
|
2065
|
-
}
|
|
2014
|
+
// @ts-ignore
|
|
2015
|
+
res = window.parent.chrome.webview
|
|
2016
|
+
.hostObjects.sync.hbjson.PassPollinationModel(selection);
|
|
2017
|
+
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: res.Geometry, identifier: res.Identifier })); });
|
|
2066
2018
|
}, []);
|
|
2067
2019
|
useEffect(function () {
|
|
2068
2020
|
if (!messageResponse)
|
|
@@ -2084,7 +2036,7 @@ var useGetHBJSON = function () {
|
|
|
2084
2036
|
}));
|
|
2085
2037
|
}
|
|
2086
2038
|
}, [messageResponse]);
|
|
2087
|
-
var
|
|
2039
|
+
var getHbjson = useMemo(function () {
|
|
2088
2040
|
switch (host) {
|
|
2089
2041
|
case 'sketchup':
|
|
2090
2042
|
return rubyGetHBJSON;
|
|
@@ -2097,52 +2049,123 @@ var useGetHBJSON = function () {
|
|
|
2097
2049
|
return {
|
|
2098
2050
|
host: host,
|
|
2099
2051
|
hbjson: hbjson,
|
|
2100
|
-
|
|
2052
|
+
getHbjson: getHbjson,
|
|
2101
2053
|
};
|
|
2102
2054
|
};
|
|
2103
2055
|
|
|
2104
|
-
var
|
|
2056
|
+
var useGetGeometry = function () {
|
|
2105
2057
|
var host = getHost();
|
|
2106
|
-
var
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2058
|
+
var _a = useState(), messageResponse = _a[0], setMessageResponse = _a[1];
|
|
2059
|
+
var _b = useState(undefined), geometry = _b[0], setGeometry = _b[1];
|
|
2060
|
+
var rubyGetGeometry = useCallback(function (key, selection) {
|
|
2061
|
+
if (key === void 0) { key = performance.now().toString(); }
|
|
2062
|
+
if (selection === void 0) { selection = false; }
|
|
2063
|
+
if (!checkRuby())
|
|
2064
|
+
return;
|
|
2065
|
+
// ruby invoke
|
|
2066
|
+
window.parent.sketchup.get_geometry(key, selection, {
|
|
2067
|
+
onCompleted: function (res) {
|
|
2068
|
+
var message = JSON.parse(res);
|
|
2069
|
+
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: message.Geometry, identifier: message.Identifier })); });
|
|
2070
|
+
}
|
|
2071
|
+
});
|
|
2072
|
+
}, []);
|
|
2073
|
+
var dotNetGetGeometry = useCallback(function (key, selection) {
|
|
2074
|
+
if (key === void 0) { key = performance.now().toString(); }
|
|
2075
|
+
if (selection === void 0) { selection = false; }
|
|
2076
|
+
if (!checkDotNet())
|
|
2077
|
+
return;
|
|
2078
|
+
var res = {
|
|
2079
|
+
Geometry: null,
|
|
2080
|
+
Identifier: null
|
|
2110
2081
|
};
|
|
2111
|
-
|
|
2082
|
+
// @ts-ignore
|
|
2083
|
+
res = window.parent.chrome.webview.hostObjects.sync.geometry.PassJsonGeometry(key, selection);
|
|
2084
|
+
setMessageResponse(function (state) { return (__assign(__assign({}, state), { geometry: res.Geometry, identifier: res.Identifier })); });
|
|
2112
2085
|
}, []);
|
|
2113
|
-
|
|
2086
|
+
useEffect(function () {
|
|
2087
|
+
if (!messageResponse)
|
|
2088
|
+
return;
|
|
2089
|
+
// @ts-ignore
|
|
2090
|
+
var bytes = new TextEncoder().encode(messageResponse.geometry);
|
|
2091
|
+
if (geometry) {
|
|
2092
|
+
geometry.arrayBuffer().then(function (data) {
|
|
2093
|
+
if (!lodash_isequal(bytes, new Uint8Array(data))) {
|
|
2094
|
+
setGeometry(new Blob([bytes], {
|
|
2095
|
+
type: 'application/json;charset=utf-8',
|
|
2096
|
+
}));
|
|
2097
|
+
}
|
|
2098
|
+
});
|
|
2099
|
+
}
|
|
2100
|
+
else {
|
|
2101
|
+
setGeometry(new Blob([bytes], {
|
|
2102
|
+
type: 'application/json;charset=utf-8',
|
|
2103
|
+
}));
|
|
2104
|
+
}
|
|
2105
|
+
}, [messageResponse]);
|
|
2106
|
+
var getGeometry = useMemo(function () {
|
|
2114
2107
|
switch (host) {
|
|
2108
|
+
case 'sketchup':
|
|
2109
|
+
return rubyGetGeometry;
|
|
2115
2110
|
case 'rhino':
|
|
2116
|
-
return
|
|
2111
|
+
return dotNetGetGeometry;
|
|
2117
2112
|
default:
|
|
2118
2113
|
return undefined;
|
|
2119
2114
|
}
|
|
2120
|
-
}, [host,
|
|
2115
|
+
}, [host, dotNetGetGeometry, rubyGetGeometry]);
|
|
2121
2116
|
return {
|
|
2122
2117
|
host: host,
|
|
2123
|
-
|
|
2118
|
+
geometry: geometry,
|
|
2119
|
+
getGeometry: getGeometry,
|
|
2124
2120
|
};
|
|
2125
2121
|
};
|
|
2126
2122
|
|
|
2127
|
-
var
|
|
2128
|
-
_a.action; _a.data; _a.uniqueId; _a.options; _a.platform; _a.isFocused;
|
|
2123
|
+
var useSendHbjson = function () {
|
|
2129
2124
|
var host = getHost();
|
|
2130
|
-
var
|
|
2125
|
+
var _a = useState({}), state = _a[0], setState = _a[1];
|
|
2126
|
+
var rubySendHBJSON = useCallback(function (message, preview) {
|
|
2127
|
+
if (preview === void 0) { preview = true; }
|
|
2128
|
+
var response = sendMessageRuby(__assign({ action: preview ? 'DrawPollinationModel' : 'BakePollinationModel' }, message));
|
|
2129
|
+
setState(function (state) { return (__assign(__assign({}, state), { response: response })); });
|
|
2130
|
+
return response;
|
|
2131
|
+
}, []);
|
|
2132
|
+
var dotNetSendHBJSON = useCallback(function (message, preview) {
|
|
2133
|
+
if (preview === void 0) { preview = true; }
|
|
2134
|
+
var response = sendMessageDotNet(__assign({ action: preview ? 'DrawPollinationModel' : 'BakePollinationModel' }, message));
|
|
2135
|
+
setState(function (state) { return (__assign(__assign({}, state), { response: response })); });
|
|
2136
|
+
return response;
|
|
2137
|
+
}, []);
|
|
2138
|
+
var sendHBJSON = useMemo(function () {
|
|
2139
|
+
switch (host) {
|
|
2140
|
+
case 'sketchup':
|
|
2141
|
+
return rubySendHBJSON;
|
|
2142
|
+
case 'rhino':
|
|
2143
|
+
return dotNetSendHBJSON;
|
|
2144
|
+
case 'revit':
|
|
2145
|
+
return dotNetSendHBJSON;
|
|
2146
|
+
default:
|
|
2147
|
+
return undefined;
|
|
2148
|
+
}
|
|
2149
|
+
}, [dotNetSendHBJSON, host, rubySendHBJSON]);
|
|
2131
2150
|
return ({
|
|
2132
|
-
host: host
|
|
2151
|
+
host: host,
|
|
2152
|
+
state: state,
|
|
2153
|
+
sendHBJSON: sendHBJSON
|
|
2133
2154
|
});
|
|
2134
2155
|
};
|
|
2135
2156
|
|
|
2136
2157
|
var useSendGeometry = function () {
|
|
2137
2158
|
var host = getHost();
|
|
2138
2159
|
var _a = useState({}), state = _a[0], setState = _a[1];
|
|
2139
|
-
var rubySendGeometry = useCallback(function (message) {
|
|
2140
|
-
|
|
2160
|
+
var rubySendGeometry = useCallback(function (message, preview) {
|
|
2161
|
+
if (preview === void 0) { preview = true; }
|
|
2162
|
+
var response = sendMessageRuby(__assign({ action: preview ? 'DrawGeometry' : 'BakeGeometry' }, message));
|
|
2141
2163
|
setState(function (state) { return (__assign(__assign({}, state), { response: response })); });
|
|
2142
2164
|
return response;
|
|
2143
2165
|
}, []);
|
|
2144
|
-
var dotNetSendGeometry = useCallback(function (message) {
|
|
2145
|
-
|
|
2166
|
+
var dotNetSendGeometry = useCallback(function (message, preview) {
|
|
2167
|
+
if (preview === void 0) { preview = true; }
|
|
2168
|
+
var response = sendMessageDotNet(__assign({ action: preview ? 'DrawGeometry' : 'BakeGeometry' }, message));
|
|
2146
2169
|
setState(function (state) { return (__assign(__assign({}, state), { response: response })); });
|
|
2147
2170
|
return response;
|
|
2148
2171
|
}, []);
|
|
@@ -2165,7 +2188,30 @@ var useSendGeometry = function () {
|
|
|
2165
2188
|
});
|
|
2166
2189
|
};
|
|
2167
2190
|
|
|
2168
|
-
var
|
|
2191
|
+
var useRunCommand = function () {
|
|
2192
|
+
var host = getHost();
|
|
2193
|
+
var rhinoRunCommand = useCallback(function (commandString, commandOptions) {
|
|
2194
|
+
var msgObject = {
|
|
2195
|
+
action: 'RunCommand',
|
|
2196
|
+
commandString: commandString,
|
|
2197
|
+
};
|
|
2198
|
+
sendMessageDotNet(msgObject);
|
|
2199
|
+
}, []);
|
|
2200
|
+
var runCommand = useMemo(function () {
|
|
2201
|
+
switch (host) {
|
|
2202
|
+
case 'rhino':
|
|
2203
|
+
return rhinoRunCommand;
|
|
2204
|
+
default:
|
|
2205
|
+
return undefined;
|
|
2206
|
+
}
|
|
2207
|
+
}, [host, rhinoRunCommand]);
|
|
2208
|
+
return {
|
|
2209
|
+
host: host,
|
|
2210
|
+
runCommand: runCommand
|
|
2211
|
+
};
|
|
2212
|
+
};
|
|
2213
|
+
|
|
2214
|
+
var useManageSettings = function () {
|
|
2169
2215
|
var host = getHost();
|
|
2170
2216
|
var rhinoSendSettings = useCallback(function (settings) {
|
|
2171
2217
|
var message = {
|
|
@@ -2174,6 +2220,10 @@ var useSendSettings = function () {
|
|
|
2174
2220
|
};
|
|
2175
2221
|
return sendMessageDotNet(message);
|
|
2176
2222
|
}, []);
|
|
2223
|
+
var rhinoGetSettings = useCallback(function () {
|
|
2224
|
+
var settings = window.parent.chrome.webview.hostObjects.sync.settings.GetModelSettings();
|
|
2225
|
+
return settings;
|
|
2226
|
+
}, []);
|
|
2177
2227
|
var sendSettings = useMemo(function () {
|
|
2178
2228
|
switch (host) {
|
|
2179
2229
|
case 'rhino':
|
|
@@ -2182,14 +2232,23 @@ var useSendSettings = function () {
|
|
|
2182
2232
|
return undefined;
|
|
2183
2233
|
}
|
|
2184
2234
|
}, [host, rhinoSendSettings]);
|
|
2235
|
+
var getSettings = useMemo(function () {
|
|
2236
|
+
switch (host) {
|
|
2237
|
+
case 'rhino':
|
|
2238
|
+
return rhinoGetSettings;
|
|
2239
|
+
default:
|
|
2240
|
+
return undefined;
|
|
2241
|
+
}
|
|
2242
|
+
}, [host, rhinoGetSettings]);
|
|
2185
2243
|
return ({
|
|
2186
2244
|
host: host,
|
|
2187
2245
|
sendSettings: sendSettings,
|
|
2246
|
+
getSettings: getSettings
|
|
2188
2247
|
});
|
|
2189
2248
|
};
|
|
2190
2249
|
|
|
2191
2250
|
var UTILSENDPOINT = process.env.REACT_APP_UTILS_ENDPOINT || 'https://utilities.staging.pollination.cloud';
|
|
2192
|
-
var
|
|
2251
|
+
var useHbjsontoVTK = function () {
|
|
2193
2252
|
var _a = useState(false), loading = _a[0], setLoading = _a[1];
|
|
2194
2253
|
var _b = useState(), vtk = _b[0], setVTK = _b[1];
|
|
2195
2254
|
var fetchVTK = function (hbjson) {
|
|
@@ -2237,5 +2296,5 @@ var useHBJSONtoVTK = function () {
|
|
|
2237
2296
|
};
|
|
2238
2297
|
};
|
|
2239
2298
|
|
|
2240
|
-
export { checkDotNet, checkRuby, getHost, sendMessageDotNet, sendMessageRuby, subscribeDotNet,
|
|
2299
|
+
export { checkDotNet, checkRuby, getHost, sendMessageDotNet, sendMessageRuby, subscribeDotNet, useGetGeometry, useGetHbjson, useHbjsontoVTK, useManageSettings, useRunCommand, useSendGeometry, useSendHbjson };
|
|
2241
2300
|
//# sourceMappingURL=index.esm.js.map
|