@kaspernj/api-maker 1.0.2165 → 1.0.2167
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/build/bootstrap/invalid-feedback.d.ts +4 -1
- package/build/bootstrap/invalid-feedback.d.ts.map +1 -1
- package/build/devise.d.ts +20 -6
- package/build/devise.d.ts.map +1 -1
- package/build/devise.js +25 -4
- package/build/event-connection.d.ts +7 -1
- package/build/event-connection.d.ts.map +1 -1
- package/build/event-model-class.d.ts +6 -1
- package/build/event-model-class.d.ts.map +1 -1
- package/build/updated-attribute.d.ts +6 -1
- package/build/updated-attribute.d.ts.map +1 -1
- package/build/use-current-user-context.d.ts +13 -9
- package/build/use-current-user-context.d.ts.map +1 -1
- package/build/use-current-user-context.js +112 -84
- package/build/utils/icon.js +1 -2
- package/package.json +3 -2
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
export default class ApiMakerBootstrapInvalidFeedback extends React.PureComponent<any, any, any> {
|
|
2
|
-
static propTypes:
|
|
2
|
+
static propTypes: PropTypes.ValidationMap<{
|
|
3
|
+
errors: any[];
|
|
4
|
+
}>;
|
|
3
5
|
constructor(props: any);
|
|
4
6
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
5
7
|
errorMessages(): any[];
|
|
6
8
|
}
|
|
7
9
|
import React from "react";
|
|
10
|
+
import PropTypes from "prop-types";
|
|
8
11
|
//# sourceMappingURL=invalid-feedback.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invalid-feedback.d.ts","sourceRoot":"/src/","sources":["bootstrap/invalid-feedback.jsx"],"names":[],"mappings":"AAMA;IACE
|
|
1
|
+
{"version":3,"file":"invalid-feedback.d.ts","sourceRoot":"/src/","sources":["bootstrap/invalid-feedback.jsx"],"names":[],"mappings":"AAMA;IACE;;OAEE;;IAEF,kDAMC;IAED,uBAWC;CACF;kBA3BiB,OAAO;sBAFH,YAAY"}
|
package/build/devise.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export default class ApiMakerDevise {
|
|
|
32
32
|
* @param {string} username
|
|
33
33
|
* @param {string} password
|
|
34
34
|
* @param {DeviseScopeArgs} args
|
|
35
|
-
* @returns {Promise<{model: import("./base-model.js").default
|
|
35
|
+
* @returns {Promise<{model: import("./base-model.js").default, response: DeviseSignInResponse}>}
|
|
36
36
|
*/
|
|
37
37
|
static signIn(username: string, password: string, args?: DeviseScopeArgs): Promise<{
|
|
38
38
|
model: {
|
|
@@ -135,7 +135,7 @@ export default class ApiMakerDevise {
|
|
|
135
135
|
getModel: (relationshipType: string, relationshipId: number | string) => /*elided*/ any;
|
|
136
136
|
}): void;
|
|
137
137
|
primaryKey(): number | string;
|
|
138
|
-
}
|
|
138
|
+
};
|
|
139
139
|
response: DeviseSignInResponse;
|
|
140
140
|
}>;
|
|
141
141
|
/**
|
|
@@ -147,10 +147,18 @@ export default class ApiMakerDevise {
|
|
|
147
147
|
static persistSession(args?: DeviseScopeArgs): Promise<DeviseSessionStatusResult>;
|
|
148
148
|
/**
|
|
149
149
|
* Updates the locally cached current model for one scope.
|
|
150
|
-
*
|
|
150
|
+
*
|
|
151
|
+
* Always requires a real model instance. Writing a falsy value here used to
|
|
152
|
+
* be a silent foot-gun: when a caller awaited a query that returned
|
|
153
|
+
* `undefined` (for example `Collection#first()` on an empty result) and
|
|
154
|
+
* passed the value through, the scope cache flipped to "signed out" without
|
|
155
|
+
* any indication, dropping the user back on the sign-in screen right after
|
|
156
|
+
* a successful sign-in. Use `Devise.setSignedOut({scope})` to sign out.
|
|
157
|
+
*
|
|
158
|
+
* @param {NonNullable<DeviseCurrentScope>} model
|
|
151
159
|
* @param {DeviseScopeArgs} args
|
|
152
160
|
*/
|
|
153
|
-
static updateSession(model: DeviseCurrentScope
|
|
161
|
+
static updateSession(model: NonNullable<DeviseCurrentScope>, args?: DeviseScopeArgs): void;
|
|
154
162
|
/**
|
|
155
163
|
* Marks one scope as signed out in the local current-model cache.
|
|
156
164
|
* @param {DeviseScopeArgs} args
|
|
@@ -660,8 +668,14 @@ declare class DeviseScope {
|
|
|
660
668
|
args: DeviseScopeArgs;
|
|
661
669
|
context: import("react").Context<any>;
|
|
662
670
|
scope: string;
|
|
663
|
-
/**
|
|
664
|
-
|
|
671
|
+
/**
|
|
672
|
+
* The Provider writes a `{loaded, model}` wrapper (see
|
|
673
|
+
* `UseCurrentUserContext`); `useCurrentUser` unwraps it on read. The
|
|
674
|
+
* context type is the wrapper, not the raw model.
|
|
675
|
+
*
|
|
676
|
+
* @returns {import("react").Context<import("./use-current-user.js").CurrentUserContextValue | undefined>}
|
|
677
|
+
*/
|
|
678
|
+
getContext: () => import("react").Context<import("./use-current-user.js").CurrentUserContextValue | undefined>;
|
|
665
679
|
}
|
|
666
680
|
export {};
|
|
667
681
|
//# sourceMappingURL=devise.d.ts.map
|
package/build/devise.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devise.d.ts","sourceRoot":"/src/","sources":["devise.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"devise.d.ts","sourceRoot":"/src/","sources":["devise.js"],"names":[],"mappings":"AAmDA,sBAAsB;AACtB;IACE;;;;OAIG;IACH,8BAHW,eAAe,GACb,IAAI,CAIhB;IAED,gCAAgC;IAChC,kBADc,cAAc,CAO3B;IAED;;;OAGG;IACH,iBAFa,OAAO,MAAM,CAIzB;IAED;;;;OAIG;IACH,2BAHW,MAAM,SACN,eAAe,QAezB;IAED;;;;OAIG;IACH,uBAHW,MAAM,GACJ,WAAW,CAOvB;IAED,0BAA0B;IAC1B,2BADc,MAAM,EAAE,CAGrB;IAED;;;;;;OAMG;IACH,wBALW,MAAM,YACN,MAAM,SACN,eAAe,GACb,OAAO,CAAC;QAAC,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA2Pg6iB,CAAC;;;iCAA6O,CAAC;;;;;;;wBAAoc,CAAC;;;;;iCAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA3Pv+oB,CAAC;QAAC,QAAQ,EAAE,oBAAoB,CAAA;KAAC,CAAC,CAsC/F;IAED;;;;;OAKG;IACH,6BAHW,eAAe,GACb,OAAO,CAAC,yBAAyB,CAAC,CAkB9C;IAED;;;;;;;;;;;;OAYG;IACH,4BAHW,WAAW,CAAC,kBAAkB,CAAC,SAC/B,eAAe,QAezB;IAaD;;;OAGG;IACH,0BAFW,eAAe,QAIzB;IAED;;;;OAIG;IACH,sBAHW,eAAe,GACb,OAAO,CAAC,yBAAyB,CAAC,CAyB9C;IAED;;;;;;OAMG;IACH,kDAHW,eAAe,GACb,OAAO,CAAC,yBAAyB,CAAC,CAa9C;IAED;;;;OAIG;IACH,uDAHW,yBAAyB,GACvB,OAAO,CAAC,yBAAyB,CAAC,CAS9C;IAED;;;;;OAKG;IACH,qCAHW,eAAe,GAAG;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAC,GAC7C,OAAO,CAAC,yBAAyB,CAAC,CAI9C;IAED;;;;;OAKG;IACH,+CAHW,eAAe,GAAG;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAIzB;IArGD;;;;OAIG;IACH,uBAHW,MAAM,GACJ,OAAO,CAMnB;IAgGC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAsD27iB,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAtD79oB;IAGxE;;;;OAIG;IACH,uBAHW,MAAM,GACJ,kBAAkB,CAQ9B;IAED;;;;OAIG;IACH,6BAHW,MAAM,GACJ,OAAO,CAQnB;IAED;;;;OAIG;IACH,wBAHW,MAAM,GACJ,kBAAkB,CAoB9B;CACF;mCAzWa;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,qBAAqB,CAAC,EAAE,cAAc,CAAA;CAAC;uCAC1E;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC;;iBAGpB,MAAM;YACN,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC;2BACxC,MAAM;qBACN,yBAAyB;;8BAEzB;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAC;mCACrF,yBAAyB,GAAG;IAAC,KAAK,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAgW44iB,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAhWn9oB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAgWw2iB,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAhW/6oB,EAAE,CAAA;CAAC;8BAC7G;IAAC,YAAY,EAAE,yBAAyB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,eAAe,CAAA;CAAC;iCACxF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA8Vi7iB,CAAC;;;yBAA6O,CAAC;;;;;;;gBAAoc,CAAC;;;;;yBAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA9Vx/oB,GAAG,IAAI;mBAjBnC,aAAa;AAuBhC,mBAAmB;AACnB;IACE;;;;OAIG;IACH,mBAHW,MAAM,QACN,eAAe,EAMzB;IAHC,sBAAgB;IAChB,sCAAuC;IACvC,cAAkB;IAGpB;;;;;;OAMG;IACH,kBAFa,OAAO,OAAO,EAAE,OAAO,CAAC,OAAO,uBAAuB,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAE1E;CAChC"}
|
package/build/devise.js
CHANGED
|
@@ -35,7 +35,13 @@ class DeviseScope {
|
|
|
35
35
|
this.context = createContext(undefined);
|
|
36
36
|
this.scope = scope;
|
|
37
37
|
}
|
|
38
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* The Provider writes a `{loaded, model}` wrapper (see
|
|
40
|
+
* `UseCurrentUserContext`); `useCurrentUser` unwraps it on read. The
|
|
41
|
+
* context type is the wrapper, not the raw model.
|
|
42
|
+
*
|
|
43
|
+
* @returns {import("react").Context<import("./use-current-user.js").CurrentUserContextValue | undefined>}
|
|
44
|
+
*/
|
|
39
45
|
getContext = () => this.context;
|
|
40
46
|
}
|
|
41
47
|
/** ApiMakerDevise. */
|
|
@@ -99,7 +105,7 @@ export default class ApiMakerDevise {
|
|
|
99
105
|
* @param {string} username
|
|
100
106
|
* @param {string} password
|
|
101
107
|
* @param {DeviseScopeArgs} args
|
|
102
|
-
* @returns {Promise<{model: import("./base-model.js").default
|
|
108
|
+
* @returns {Promise<{model: import("./base-model.js").default, response: DeviseSignInResponse}>}
|
|
103
109
|
*/
|
|
104
110
|
static async signIn(username, password, args = {}) {
|
|
105
111
|
if (!args.scope)
|
|
@@ -111,6 +117,9 @@ export default class ApiMakerDevise {
|
|
|
111
117
|
let model = response.model;
|
|
112
118
|
if (Array.isArray(model))
|
|
113
119
|
model = model[0];
|
|
120
|
+
if (!model) {
|
|
121
|
+
throw new Error(`Devise.signIn: Devise::SignIn response for scope "${args.scope}" did not include a model`);
|
|
122
|
+
}
|
|
114
123
|
await ApiMakerDevise.syncSessionStatusAndRefreshWebsocket({
|
|
115
124
|
httpResponse: response,
|
|
116
125
|
scope: args.scope,
|
|
@@ -147,12 +156,24 @@ export default class ApiMakerDevise {
|
|
|
147
156
|
}
|
|
148
157
|
/**
|
|
149
158
|
* Updates the locally cached current model for one scope.
|
|
150
|
-
*
|
|
159
|
+
*
|
|
160
|
+
* Always requires a real model instance. Writing a falsy value here used to
|
|
161
|
+
* be a silent foot-gun: when a caller awaited a query that returned
|
|
162
|
+
* `undefined` (for example `Collection#first()` on an empty result) and
|
|
163
|
+
* passed the value through, the scope cache flipped to "signed out" without
|
|
164
|
+
* any indication, dropping the user back on the sign-in screen right after
|
|
165
|
+
* a successful sign-in. Use `Devise.setSignedOut({scope})` to sign out.
|
|
166
|
+
*
|
|
167
|
+
* @param {NonNullable<DeviseCurrentScope>} model
|
|
151
168
|
* @param {DeviseScopeArgs} args
|
|
152
169
|
*/
|
|
153
170
|
static updateSession(model, args = {}) {
|
|
154
171
|
if (!args.scope)
|
|
155
172
|
args.scope = "user";
|
|
173
|
+
if (!model) {
|
|
174
|
+
throw new Error(`Devise.updateSession was called with a falsy model for scope "${args.scope}". ` +
|
|
175
|
+
"Use Devise.setSignedOut({scope}) to sign out instead.");
|
|
176
|
+
}
|
|
156
177
|
const camelizedScopeName = inflection.camelize(args.scope, true);
|
|
157
178
|
ApiMakerDevise.current().currents[camelizedScopeName] = model;
|
|
158
179
|
}
|
|
@@ -289,4 +310,4 @@ export default class ApiMakerDevise {
|
|
|
289
310
|
return modelInstance;
|
|
290
311
|
}
|
|
291
312
|
}
|
|
292
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aXNlLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJkZXZpc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBLENBQUMsbUNBQW1DO0FBQzVFLE9BQU8sbUJBQW1CLE1BQU0sNEJBQTRCLENBQUE7QUFDNUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLE9BQU8sQ0FBQTtBQUNuQyxPQUFPLFlBQVksTUFBTSxtQkFBbUIsQ0FBQSxDQUFDLG1DQUFtQztBQUNoRixPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxpQkFBaUIsTUFBTSwwQkFBMEIsQ0FBQTtBQUN4RCxPQUFPLG9CQUFvQixNQUFNLDZCQUE2QixDQUFBLENBQUMsbUNBQW1DO0FBQ2xHLE9BQU8sUUFBUSxNQUFNLGVBQWUsQ0FBQSxDQUFDLG1DQUFtQztBQUV4RSxpSEFBaUg7QUFDakgsK0RBQStEO0FBQy9EOzs7Ozs7R0FNRztBQUNILHVIQUF1SDtBQUN2SCxvSkFBb0o7QUFDcEosMEhBQTBIO0FBQzFILDZFQUE2RTtBQUU3RSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWM7SUFBRSxVQUFVLENBQUMsY0FBYyxHQUFHLEVBQUMsTUFBTSxFQUFFLEVBQUUsRUFBQyxDQUFBO0FBRXhFLE1BQU0sTUFBTSxHQUFHLG1DQUFtQyxDQUFDLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBRTlFLG1CQUFtQjtBQUNuQixNQUFNLFdBQVc7SUFDZjs7OztPQUlHO0lBQ0gsWUFBWSxLQUFLLEVBQUUsSUFBSTtRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN2QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtJQUNwQixDQUFDO0lBRUQseUVBQXlFO0lBQ3pFLFVBQVUs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RCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzdCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gscUJBQXFCLENBQUMsS0FBSztRQUN6QixJQUFJLFVBQVUsQ0FBQyxxQkFBcUIsSUFBSSxLQUFLLElBQUksVUFBVSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDbEYsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGdCQUFnQixDQUFDLEtBQUs7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUVELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUV6RCxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU8sSUFBSSxDQUFBO1FBRTNCLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUE7UUFFckQscURBQXFEO1FBQ3JELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7WUFBRSxPQUFPLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUU3RCxNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMzQyxNQUFNLGFBQWEsR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFDLElBQUksRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUFBO1FBRTdELE9BQU8sYUFBYSxDQUFBO0lBQ3RCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuaW1wb3J0ICogYXMgaW5mbGVjdGlvbiBmcm9tIFwiaW5mbGVjdGlvblwiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc29ydC1pbXBvcnRzXG5pbXBvcnQgQ2FibGVDb25uZWN0aW9uUG9vbCBmcm9tIFwiLi9jYWJsZS1jb25uZWN0aW9uLXBvb2wuanNcIlxuaW1wb3J0IHtjcmVhdGVDb250ZXh0fSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IERlc2VyaWFsaXplciBmcm9tIFwiLi9kZXNlcmlhbGl6ZXIuanNcIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IGV2ZW50cyBmcm9tIFwiLi9ldmVudHMuanNcIlxuaW1wb3J0IG1vZGVsQ2xhc3NSZXF1aXJlIGZyb20gXCIuL21vZGVsLWNsYXNzLXJlcXVpcmUuanNcIlxuaW1wb3J0IFNlc3Npb25TdGF0dXNVcGRhdGVyIGZyb20gXCIuL3Nlc3Npb24tc3RhdHVzLXVwZGF0ZXIuanNcIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IFNlcnZpY2VzIGZyb20gXCIuL3NlcnZpY2VzLmpzXCIgLy8gZXNsaW50LWRpc2FibGUtbGluZSBzb3J0LWltcG9ydHNcblxuLyoqIEB0eXBlZGVmIHt7c2NvcGVzPzogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4sIGN1cnJlbnRBcGlNYWtlckRldmlzZT86IEFwaU1ha2VyRGV2aXNlfX0gQXBpTWFrZXJEZXZpc2VTaGFyZWQgKi9cbi8qKiBAdHlwZWRlZiB7e3NpZ25lZF9pbjogYm9vbGVhbn19IERldmlzZVNlc3Npb25TdGF0dXNTY29wZSAqL1xuLyoqXG4gKiBAdHlwZWRlZiB7b2JqZWN0fSBEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0XG4gKiBAcHJvcGVydHkge3N0cmluZ30gW2NzcmZfdG9rZW5dXG4gKiBAcHJvcGVydHkge1JlY29yZDxzdHJpbmcsIERldmlzZVNlc3Npb25TdGF0dXNTY29wZT59IHNjb3Blc1xuICogQHByb3BlcnR5IHtzdHJpbmd9IFtzaGFkb3dfc2Vzc2lvbl90b2tlbl1cbiAqIEBwcm9wZXJ0eSB7RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdH0gW3Nlc3Npb25fc3RhdHVzXVxuICovXG4vKiogQHR5cGVkZWYge3tyZW1lbWJlck1lPzogYm9vbGVhbiwgc2NvcGU/OiBzdHJpbmcsIHNpZ25lZEluPzogYm9vbGVhbiwgc2tpcFNpZ25JbkV2ZW50PzogYm9vbGVhbn19IERldmlzZVNjb3BlQXJncyAqL1xuLyoqIEB0eXBlZGVmIHtEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0ICYge21vZGVsPzogaW1wb3J0KFwiLi9iYXNlLW1vZGVsLmpzXCIpLmRlZmF1bHQgfCBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdFtdfX0gRGV2aXNlU2lnbkluUmVzcG9uc2UgKi9cbi8qKiBAdHlwZWRlZiB7e2h0dHBSZXNwb25zZTogRGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdCwgc2NvcGU6IHN0cmluZywgd2Vic29ja2V0QXJnczogRGV2aXNlU2NvcGVBcmdzfX0gU3luY1Nlc3Npb25BcmdzICovXG4vKiogQHR5cGVkZWYge2ltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0IHwgbnVsbH0gRGV2aXNlQ3VycmVudFNjb3BlICovXG5cbmlmICghZ2xvYmFsVGhpcy5BcGlNYWtlckRldmlzZSkgZ2xvYmFsVGhpcy5BcGlNYWtlckRldmlzZSA9IHtzY29wZXM6IHt9fVxuXG5jb25zdCBzaGFyZWQgPSAvKiogQHR5cGUge0FwaU1ha2VyRGV2aXNlU2hhcmVkfSAqLyAoZ2xvYmFsVGhpcy5BcGlNYWtlckRldmlzZSlcblxuLyoqIERldmlzZVNjb3BlLiAqL1xuY2xhc3MgRGV2aXNlU2NvcGUge1xuICAvKipcbiAgICogQ29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzY29wZVxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGUsIGFyZ3MpIHtcbiAgICB0aGlzLmFyZ3MgPSBhcmdzXG4gICAgdGhpcy5jb250ZXh0ID0gY3JlYXRlQ29udGV4dCh1bmRlZmluZWQpXG4gICAgdGhpcy5zY29wZSA9IHNjb3BlXG4gIH1cblxuICAvKiogQHJldHVybnMge2ltcG9ydChcInJlYWN0XCIpLkNvbnRleHQ8RGV2aXNlQ3VycmVudFNjb3BlIHwgdW5kZWZpbmVkPn0gKi9cbiAgZ2V0Q29udGV4dCA9ICgpID0+IHRoaXMuY29udGV4dFxufVxuXG4vKiogQXBpTWFrZXJEZXZpc2UuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcGlNYWtlckRldmlzZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgc2hhcmVkIHNpZ24tb3V0IGV2ZW50IHBheWxvYWQgZm9yIG9uZSBzY29wZS5cbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBzdGF0aWMgY2FsbFNpZ25PdXRFdmVudChhcmdzKSB7XG4gICAgZXZlbnRzLmVtaXQoXCJvbkRldmlzZVNpZ25PdXRcIiwge2FyZ3N9KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcGlNYWtlckRldmlzZX0gKi9cbiAgc3RhdGljIGN1cnJlbnQoKSB7XG4gICAgaWYgKCFzaGFyZWQuY3VycmVudEFwaU1ha2VyRGV2aXNlKSB7XG4gICAgICBzaGFyZWQuY3VycmVudEFwaU1ha2VyRGV2aXNlID0gbmV3IEFwaU1ha2VyRGV2aXNlKClcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVkLmN1cnJlbnRBcGlNYWtlckRldmlzZVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHNoYXJlZCBldmVudCBlbWl0dGVyIHVzZWQgZm9yIERldmlzZSBsaWZlY3ljbGUgZXZlbnRzLlxuICAgKiBAcmV0dXJucyB7dHlwZW9mIGV2ZW50c31cbiAgICovXG4gIHN0YXRpYyBldmVudHMoKSB7XG4gICAgcmV0dXJuIGV2ZW50c1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBvbmUgRGV2aXNlIHNjb3BlIGFuZCBpdHMgaGVscGVyIGFjY2Vzc29ycy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjb3BlXG4gICAqIEBwYXJhbSB7RGV2aXNlU2NvcGVBcmdzfSBhcmdzXG4gICAqL1xuICBzdGF0aWMgYWRkVXNlclNjb3BlKHNjb3BlLCBhcmdzID0ge30pIHtcbiAgICBjb25zdCBzY29wZUNhbWVsaXplZCA9IGluZmxlY3Rpb24uY2FtZWxpemUoc2NvcGUpXG4gICAgY29uc3QgY3VycmVudE1ldGhvZE5hbWUgPSBgY3VycmVudCR7c2NvcGVDYW1lbGl6ZWR9YFxuICAgIGNvbnN0IGlzU2lnbmVkSW5NZXRob2ROYW1lID0gYGlzJHtzY29wZUNhbWVsaXplZH1TaWduZWRJbmBcbiAgICBjb25zdCBnZXRBcmdzTWV0aG9kTmFtZSA9IGBnZXQke3Njb3BlQ2FtZWxpemVkfUFyZ3NgXG4gICAgY29uc3QgZ2V0U2NvcGVOYW1lID0gYGdldCR7c2NvcGVDYW1lbGl6ZWR9U2NvcGVgXG4gICAgY29uc3Qgc2NvcGVJbnN0YW5jZSA9IG5ldyBEZXZpc2VTY29wZShzY29wZSwgYXJncylcblxuICAgIHNoYXJlZC5zY29wZXNbc2NvcGVdID0gdHJ1ZVxuICAgIEFwaU1ha2VyRGV2aXNlW2N1cnJlbnRNZXRob2ROYW1lXSA9ICgpID0+IEFwaU1ha2VyRGV2aXNlLmN1cnJlbnQoKS5nZXRDdXJyZW50U2NvcGUoc2NvcGUpXG4gICAgQXBpTWFrZXJEZXZpc2VbaXNTaWduZWRJbk1ldGhvZE5hbWVdID0gKCkgPT4gQm9vbGVhbihBcGlNYWtlckRldmlzZS5jdXJyZW50KCkuZ2V0Q3VycmVudFNjb3BlKHNjb3BlKSlcbiAgICBBcGlNYWtlckRldmlzZVtnZXRBcmdzTWV0aG9kTmFtZV0gPSAoKSA9PiBhcmdzXG4gICAgQXBpTWFrZXJEZXZpc2VbZ2V0U2NvcGVOYW1lXSA9ICgpID0+IHNjb3BlSW5zdGFuY2VcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByZWdpc3RlcmVkIHNjb3BlIGhlbHBlciBmb3Igb25lIHNjb3BlIG5hbWUuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzY29wZVxuICAgKiBAcmV0dXJucyB7RGV2aXNlU2NvcGV9XG4gICAqL1xuICBzdGF0aWMgZ2V0U2NvcGUoc2NvcGUpIHtcbiAgICBjb25zdCBzY29wZUNhbWVsaXplZCA9IGluZmxlY3Rpb24uY2FtZWxpemUoc2NvcGUpXG4gICAgY29uc3QgZ2V0U2NvcGVOYW1lID0gYGdldCR7c2NvcGVDYW1lbGl6ZWR9U2NvcGVgXG5cbiAgICByZXR1cm4gQXBpTWFrZXJEZXZpc2VbZ2V0U2NvcGVOYW1lXSgpXG4gIH1cblxuICAvKiogQHJldHVybnMge3N0cmluZ1tdfSAqL1xuICBzdGF0aWMgcmVnaXN0ZXJlZFNjb3BlcygpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoc2hhcmVkLnNjb3BlcylcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWducyBpbiBvbmUgc2NvcGUgb3ZlciBIVFRQIGFuZCByZWZyZXNoZXMgd2Vic29ja2V0IGF1dGggc3RhdGUuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1c2VybmFtZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFzc3dvcmRcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICogQHJldHVybnMge1Byb21pc2U8e21vZGVsOiBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdCB8IHVuZGVmaW5lZCwgcmVzcG9uc2U6IERldmlzZVNpZ25JblJlc3BvbnNlfT59XG4gICAqL1xuICBzdGF0aWMgYXN5bmMgc2lnbkluKHVzZXJuYW1lLCBwYXNzd29yZCwgYXJncyA9IHt9KSB7XG4gICAgaWYgKCFhcmdzLnNjb3BlKSBhcmdzLnNjb3BlID0gXCJ1c2VyXCJcblxuICAgIGNvbnN0IHBvc3REYXRhID0ge3VzZXJuYW1lLCBwYXNzd29yZCwgYXJnc31cblxuICAgIC8vIFNpZ24gaW4gb3ZlciBIVFRQIGZpcnN0IHNvIERldmlzZSBjYW4gd3JpdGUgdGhlIHJlYWwgc2Vzc2lvbiBjb29raWUgYW5kXG4gICAgLy8gcmVtZW1iZXItbWUgdG9rZW4gaW4gdGhlIEhUVFAgcmVzcG9uc2UuXG4gICAgY29uc3QgcmVzcG9uc2UgPSAvKiogQHR5cGUge0RldmlzZVNpZ25JblJlc3BvbnNlfSAqLyAoXG4gICAgICBhd2FpdCBTZXJ2aWNlcy5jdXJyZW50KCkuc2VuZFJlcXVlc3QoXCJEZXZpc2U6OlNpZ25JblwiLCBwb3N0RGF0YSwge2ZvcmNlSHR0cDogdHJ1ZX0pXG4gICAgKVxuXG4gICAgbGV0IG1vZGVsID0gcmVzcG9uc2UubW9kZWxcblxuICAgIGlmIChBcnJheS5pc0FycmF5KG1vZGVsKSkgbW9kZWwgPSBtb2RlbFswXVxuXG4gICAgYXdhaXQgQXBpTWFrZXJEZXZpc2Uuc3luY1Nlc3Npb25TdGF0dXNBbmRSZWZyZXNoV2Vic29ja2V0KHtcbiAgICAgIGh0dHBSZXNwb25zZTogcmVzcG9uc2UsXG4gICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgIHdlYnNvY2tldEFyZ3M6IHtcbiAgICAgICAgcmVtZW1iZXJNZTogYXJncy5yZW1lbWJlck1lLFxuICAgICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgICAgc2lnbmVkSW46IHRydWVcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgQXBpTWFrZXJEZXZpc2UudXBkYXRlU2Vzc2lvbihtb2RlbClcblxuICAgIGlmICghYXJncy5za2lwU2lnbkluRXZlbnQpIHtcbiAgICAgIGV2ZW50cy5lbWl0KFwib25EZXZpc2VTaWduSW5cIiwge3VzZXJuYW1lLCAuLi5hcmdzfSlcbiAgICB9XG5cbiAgICByZXR1cm4ge21vZGVsLCByZXNwb25zZX1cbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jaHJvbml6ZXMgdGhlIGN1cnJlbnQgYmFja2VuZCBhdXRoIHN0YXRlIGludG8gcmVhbCBIVFRQIHJlc3BvbnNlIGNvb2tpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7RGV2aXNlU2NvcGVBcmdzfSBbYXJnc11cbiAgICogQHJldHVybnMge1Byb21pc2U8RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdD59XG4gICAqL1xuICBzdGF0aWMgYXN5bmMgcGVyc2lzdFNlc3Npb24oYXJncyA9IHt9KSB7XG4gICAgaWYgKCFhcmdzLnNjb3BlKSBhcmdzLnNjb3BlID0gXCJ1c2VyXCJcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gLyoqIEB0eXBlIHtEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0fSAqLyAoXG4gICAgICBhd2FpdCBTZXJ2aWNlcy5jdXJyZW50KCkuc2VuZFJlcXVlc3QoXCJEZXZpc2U6OlBlcnNpc3RTZXNzaW9uXCIsIGFyZ3MsIHtmb3JjZUh0dHA6IHRydWV9KVxuICAgIClcblxuICAgIGNvbnN0IHNlc3Npb25TdGF0dXNVcGRhdGVyID0gU2Vzc2lvblN0YXR1c1VwZGF0ZXIuY3VycmVudCgpXG5cbiAgICBpZiAocmVzcG9uc2Uuc2Vzc2lvbl9zdGF0dXMpIHtcbiAgICAgIHNlc3Npb25TdGF0dXNVcGRhdGVyLmFwcGx5UmVzdWx0KHJlc3BvbnNlLnNlc3Npb25fc3RhdHVzKVxuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCBzZXNzaW9uU3RhdHVzVXBkYXRlci51cGRhdGVTZXNzaW9uU3RhdHVzKClcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzcG9uc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBsb2NhbGx5IGNhY2hlZCBjdXJyZW50IG1vZGVsIGZvciBvbmUgc2NvcGUuXG4gICAqIEBwYXJhbSB7RGV2aXNlQ3VycmVudFNjb3BlfSBtb2RlbFxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKi9cbiAgc3RhdGljIHVwZGF0ZVNlc3Npb24obW9kZWwsIGFyZ3MgPSB7fSkge1xuICAgIGlmICghYXJncy5zY29wZSkgYXJncy5zY29wZSA9IFwidXNlclwiXG5cbiAgICBjb25zdCBjYW1lbGl6ZWRTY29wZU5hbWUgPSBpbmZsZWN0aW9uLmNhbWVsaXplKGFyZ3Muc2NvcGUsIHRydWUpXG5cbiAgICBBcGlNYWtlckRldmlzZS5jdXJyZW50KCkuY3VycmVudHNbY2FtZWxpemVkU2NvcGVOYW1lXSA9IG1vZGVsXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIHRoZSBjdXJyZW50IHNjb3BlIGNhY2hlIGhhcyBiZWVuIGluaXRpYWxpemVkIGxvY2FsbHkuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzY29wZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIGhhc0N1cnJlbnRTY29wZShzY29wZSkge1xuICAgIGNvbnN0IGNhbWVsaXplZFNjb3BlTmFtZSA9IGluZmxlY3Rpb24uY2FtZWxpemUoc2NvcGUsIHRydWUpXG5cbiAgICByZXR1cm4gY2FtZWxpemVkU2NvcGVOYW1lIGluIEFwaU1ha2VyRGV2aXNlLmN1cnJlbnQoKS5jdXJyZW50c1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcmtzIG9uZSBzY29wZSBhcyBzaWduZWQgb3V0IGluIHRoZSBsb2NhbCBjdXJyZW50LW1vZGVsIGNhY2hlLlxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKi9cbiAgc3RhdGljIHNldFNpZ25lZE91dChhcmdzKSB7XG4gICAgQXBpTWFrZXJEZXZpc2UuY3VycmVudCgpLmN1cnJlbnRzW2luZmxlY3Rpb24uY2FtZWxpemUoYXJncy5zY29wZSwgdHJ1ZSldID0gbnVsbFxuICB9XG5cbiAgLyoqXG4gICAqIFNpZ25zIG91dCBvbmUgc2NvcGUgb3ZlciBIVFRQIGFuZCByZWZyZXNoZXMgd2Vic29ja2V0IGF1dGggc3RhdGUuXG4gICAqIEBwYXJhbSB7RGV2aXNlU2NvcGVBcmdzfSBhcmdzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERldmlzZVNlc3Npb25TdGF0dXNSZXN1bHQ+fVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHNpZ25PdXQoYXJncyA9IHt9KSB7XG4gICAgaWYgKCFhcmdzLnNjb3BlKSB7XG4gICAgICBhcmdzLnNjb3BlID0gXCJ1c2VyXCJcbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZSA9IC8qKiBAdHlwZSB7RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdH0gKi8gKFxuICAgICAgYXdhaXQgU2VydmljZXMuY3VycmVudCgpLnNlbmRSZXF1ZXN0KFwiRGV2aXNlOjpTaWduT3V0XCIsIHthcmdzfSwge2ZvcmNlSHR0cDogdHJ1ZX0pXG4gICAgKVxuICAgIGNvbnN0IHNlc3Npb25TdGF0dXMgPSBhd2FpdCBBcGlNYWtlckRldmlzZS5zeW5jU2Vzc2lvblN0YXR1c0FuZFJlZnJlc2hXZWJzb2NrZXQoe1xuICAgICAgaHR0cFJlc3BvbnNlOiByZXNwb25zZSxcbiAgICAgIHNjb3BlOiBhcmdzLnNjb3BlLFxuICAgICAgd2Vic29ja2V0QXJnczoge1xuICAgICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgICAgc2lnbmVkSW46IGZhbHNlXG4gICAgICB9XG4gICAgfSlcblxuICAgIGlmICghc2Vzc2lvblN0YXR1cy5zY29wZXM/LlthcmdzLnNjb3BlXT8uc2lnbmVkX2luKSB7XG4gICAgICBBcGlNYWtlckRldmlzZS5zZXRTaWduZWRPdXQoYXJncylcbiAgICAgIEFwaU1ha2VyRGV2aXNlLmNhbGxTaWduT3V0RXZlbnQoYXJncylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzcG9uc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBsaWVzIHRoZSBsYXRlc3QgSFRUUCBzZXNzaW9uIHN0YXR1cyBsb2NhbGx5LCB0aGVuIHJlZnJlc2hlcyB0aGVcbiAgICogZXhpc3Rpbmcgd2Vic29ja2V0IGNvbm5lY3Rpb24gc28gQXBpTWFrZXIgY29tbWFuZHMgdXNlIHRoZSBzYW1lIGF1dGguXG4gICAqXG4gICAqIEBwYXJhbSB7U3luY1Nlc3Npb25BcmdzfSBhcmdzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERldmlzZVNlc3Npb25TdGF0dXNSZXN1bHQ+fVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHN5bmNTZXNzaW9uU3RhdHVzQW5kUmVmcmVzaFdlYnNvY2tldChhcmdzKSB7XG4gICAgY29uc3Qgc2Vzc2lvblN0YXR1cyA9IGF3YWl0IEFwaU1ha2VyRGV2aXNlLnN5bmNTZXNzaW9uU3RhdHVzRnJvbUh0dHBSZXNwb25zZShhcmdzLmh0dHBSZXNwb25zZSlcbiAgICBjb25zdCB3ZWJzb2NrZXRBcmdzID0ge1xuICAgICAgLi4uYXJncy53ZWJzb2NrZXRBcmdzLFxuICAgICAgc2hhZG93U2Vzc2lvblRva2VuOiBzZXNzaW9uU3RhdHVzLnNoYWRvd19zZXNzaW9uX3Rva2VuXG4gICAgfVxuXG4gICAgYXdhaXQgQXBpTWFrZXJEZXZpc2UucmVmcmVzaFdlYnNvY2tldFNlc3Npb24od2Vic29ja2V0QXJncylcbiAgICBhd2FpdCBBcGlNYWtlckRldmlzZS5yZWZyZXNoU3Vic2NyaXB0aW9uQXV0aGVudGljYXRpb24od2Vic29ja2V0QXJncylcblxuICAgIHJldHVybiBzZXNzaW9uU3RhdHVzXG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyBsb2NhbCBzZXNzaW9uIHN0YXR1cyBmcm9tIG9uZSBIVFRQIHJlc3BvbnNlIHBheWxvYWQuXG4gICAqIEBwYXJhbSB7RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdH0gaHR0cFJlc3BvbnNlXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERldmlzZVNlc3Npb25TdGF0dXNSZXN1bHQ+fVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHN5bmNTZXNzaW9uU3RhdHVzRnJvbUh0dHBSZXNwb25zZShodHRwUmVzcG9uc2UpIHtcbiAgICBjb25zdCBzZXNzaW9uU3RhdHVzVXBkYXRlciA9IFNlc3Npb25TdGF0dXNVcGRhdGVyLmN1cnJlbnQoKVxuICAgIGNvbnN0IHNlc3Npb25TdGF0dXMgPSBodHRwUmVzcG9uc2Uuc2Vzc2lvbl9zdGF0dXMgfHwgYXdhaXQgc2Vzc2lvblN0YXR1c1VwZGF0ZXIuc2Vzc2lvblN0YXR1cygpXG5cbiAgICBzZXNzaW9uU3RhdHVzVXBkYXRlci5hcHBseVJlc3VsdChzZXNzaW9uU3RhdHVzKVxuXG4gICAgcmV0dXJuIHNlc3Npb25TdGF0dXNcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWZyZXNoZXMgQXBpTWFrZXIgYXV0aCBpbnNpZGUgdGhlIGV4aXN0aW5nIHdlYnNvY2tldCBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJncyAmIHtzaGFkb3dTZXNzaW9uVG9rZW4/OiBzdHJpbmd9fSBhcmdzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERldmlzZVNlc3Npb25TdGF0dXNSZXN1bHQ+fVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHJlZnJlc2hXZWJzb2NrZXRTZXNzaW9uKGFyZ3MpIHtcbiAgICByZXR1cm4gLyoqIEB0eXBlIHtEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0fSAqLyAoYXdhaXQgU2VydmljZXMuY3VycmVudCgpLnNlbmRSZXF1ZXN0KFwiRGV2aXNlOjpQZXJzaXN0U2Vzc2lvblwiLCBhcmdzKSlcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWZyZXNoZXMgYXV0aCBvbiB0aGUgZXhpc3Rpbmcgc3Vic2NyaXB0aW9ucyBjaGFubmVsIHBvb2xzLlxuICAgKlxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJncyAmIHtzaGFkb3dTZXNzaW9uVG9rZW4/OiBzdHJpbmd9fSBhcmdzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHJlZnJlc2hTdWJzY3JpcHRpb25BdXRoZW50aWNhdGlvbihhcmdzKSB7XG4gICAgYXdhaXQgQ2FibGVDb25uZWN0aW9uUG9vbC5jdXJyZW50KCkucmVmcmVzaEF1dGhlbnRpY2F0aW9uKGFyZ3MpXG4gIH1cblxuICAvKiogQ29uc3RydWN0b3IuICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuY3VycmVudHMgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIERldmlzZUN1cnJlbnRTY29wZT59ICovICh7fSlcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IG1vZGVsIGNhY2hlZCBmb3Igb25lIHNjb3BlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGVcbiAgICogQHJldHVybnMge0RldmlzZUN1cnJlbnRTY29wZX1cbiAgICovXG4gIGdldEN1cnJlbnRTY29wZShzY29wZSkge1xuICAgIGlmICghKHNjb3BlIGluIHRoaXMuY3VycmVudHMpKSB7XG4gICAgICB0aGlzLmN1cnJlbnRzW3Njb3BlXSA9IHRoaXMubG9hZEN1cnJlbnRTY29wZShzY29wZSlcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jdXJyZW50c1tzY29wZV1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgdGhlIHNlcnZlciByZW5kZXJlZCBjdXJyZW50LXNjb3BlIHBheWxvYWQgZm9yIG9uZSBzY29wZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjb3BlXG4gICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgKi9cbiAgaGFzR2xvYmFsQ3VycmVudFNjb3BlKHNjb3BlKSB7XG4gICAgaWYgKGdsb2JhbFRoaXMuYXBpTWFrZXJEZXZpc2VDdXJyZW50ICYmIHNjb3BlIGluIGdsb2JhbFRoaXMuYXBpTWFrZXJEZXZpc2VDdXJyZW50KSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgLyoqXG4gICAqIEh5ZHJhdGVzIHRoZSBjdXJyZW50IHNjb3BlIG1vZGVsIGZyb20gdGhlIHNlcnZlciByZW5kZXJlZCBwYXlsb2FkLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGVcbiAgICogQHJldHVybnMge0RldmlzZUN1cnJlbnRTY29wZX1cbiAgICovXG4gIGxvYWRDdXJyZW50U2NvcGUoc2NvcGUpIHtcbiAgICBpZiAoIXRoaXMuaGFzR2xvYmFsQ3VycmVudFNjb3BlKHNjb3BlKSkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG5cbiAgICBjb25zdCBzY29wZURhdGEgPSBnbG9iYWxUaGlzLmFwaU1ha2VyRGV2aXNlQ3VycmVudFtzY29wZV1cblxuICAgIGlmICghc2NvcGVEYXRhKSByZXR1cm4gbnVsbFxuXG4gICAgY29uc3QgcGFyc2VkU2NvcGVEYXRhID0gRGVzZXJpYWxpemVyLnBhcnNlKHNjb3BlRGF0YSlcblxuICAgIC8vIE1pZ2h0IGJlIGEgY29sbGVjdGlvbiB3aXRoIHByZWxvYWRlZCByZWxhdGlvbnNoaXBzXG4gICAgaWYgKEFycmF5LmlzQXJyYXkocGFyc2VkU2NvcGVEYXRhKSkgcmV0dXJuIHBhcnNlZFNjb3BlRGF0YVswXVxuXG4gICAgY29uc3QgTW9kZWxDbGFzcyA9IG1vZGVsQ2xhc3NSZXF1aXJlKHNjb3BlKVxuICAgIGNvbnN0IG1vZGVsSW5zdGFuY2UgPSBuZXcgTW9kZWxDbGFzcyh7ZGF0YTogcGFyc2VkU2NvcGVEYXRhfSlcblxuICAgIHJldHVybiBtb2RlbEluc3RhbmNlXG4gIH1cbn1cbiJdfQ==
|
|
313
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aXNlLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJkZXZpc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBLENBQUMsbUNBQW1DO0FBQzVFLE9BQU8sbUJBQW1CLE1BQU0sNEJBQTRCLENBQUE7QUFDNUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLE9BQU8sQ0FBQTtBQUNuQyxPQUFPLFlBQVksTUFBTSxtQkFBbUIsQ0FBQSxDQUFDLG1DQUFtQztBQUNoRixPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxpQkFBaUIsTUFBTSwwQkFBMEIsQ0FBQTtBQUN4RCxPQUFPLG9CQUFvQixNQUFNLDZCQUE2QixDQUFBLENBQUMsbUNBQW1DO0FBQ2xHLE9BQU8sUUFBUSxNQUFNLGVBQWUsQ0FBQSxDQUFDLG1DQUFtQztBQUV4RSxpSEFBaUg7QUFDakgsK0RBQStEO0FBQy9EOzs7Ozs7R0FNRztBQUNILHVIQUF1SDtBQUN2SCxvSkFBb0o7QUFDcEosMEhBQTBIO0FBQzFILDZFQUE2RTtBQUU3RSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWM7SUFBRSxVQUFVLENBQUMsY0FBYyxHQUFHLEVBQUMsTUFBTSxFQUFFLEVBQUUsRUFBQyxDQUFBO0FBRXhFLE1BQU0sTUFBTSxHQUFHLG1DQUFtQyxDQUFDLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBRTlFLG1CQUFtQjtBQUNuQixNQUFNLFdBQVc7SUFDZjs7OztPQUlHO0lBQ0gsWUFBWSxLQUFLLEVBQUUsSUFBSTtRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN2QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtJQUNwQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFB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SSxVQUFVLENBQUMsRUFBQyxJQUFJLEVBQUUsZUFBZSxFQUFDLENBQUMsQ0FBQTtRQUU3RCxPQUFPLGFBQWEsQ0FBQTtJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IENhYmxlQ29ubmVjdGlvblBvb2wgZnJvbSBcIi4vY2FibGUtY29ubmVjdGlvbi1wb29sLmpzXCJcbmltcG9ydCB7Y3JlYXRlQ29udGV4dH0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCBEZXNlcmlhbGl6ZXIgZnJvbSBcIi4vZGVzZXJpYWxpemVyLmpzXCIgLy8gZXNsaW50LWRpc2FibGUtbGluZSBzb3J0LWltcG9ydHNcbmltcG9ydCBldmVudHMgZnJvbSBcIi4vZXZlbnRzLmpzXCJcbmltcG9ydCBtb2RlbENsYXNzUmVxdWlyZSBmcm9tIFwiLi9tb2RlbC1jbGFzcy1yZXF1aXJlLmpzXCJcbmltcG9ydCBTZXNzaW9uU3RhdHVzVXBkYXRlciBmcm9tIFwiLi9zZXNzaW9uLXN0YXR1cy11cGRhdGVyLmpzXCIgLy8gZXNsaW50LWRpc2FibGUtbGluZSBzb3J0LWltcG9ydHNcbmltcG9ydCBTZXJ2aWNlcyBmcm9tIFwiLi9zZXJ2aWNlcy5qc1wiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc29ydC1pbXBvcnRzXG5cbi8qKiBAdHlwZWRlZiB7e3Njb3Blcz86IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+LCBjdXJyZW50QXBpTWFrZXJEZXZpc2U/OiBBcGlNYWtlckRldmlzZX19IEFwaU1ha2VyRGV2aXNlU2hhcmVkICovXG4vKiogQHR5cGVkZWYge3tzaWduZWRfaW46IGJvb2xlYW59fSBEZXZpc2VTZXNzaW9uU3RhdHVzU2NvcGUgKi9cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gRGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdFxuICogQHByb3BlcnR5IHtzdHJpbmd9IFtjc3JmX3Rva2VuXVxuICogQHByb3BlcnR5IHtSZWNvcmQ8c3RyaW5nLCBEZXZpc2VTZXNzaW9uU3RhdHVzU2NvcGU+fSBzY29wZXNcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbc2hhZG93X3Nlc3Npb25fdG9rZW5dXG4gKiBAcHJvcGVydHkge0RldmlzZVNlc3Npb25TdGF0dXNSZXN1bHR9IFtzZXNzaW9uX3N0YXR1c11cbiAqL1xuLyoqIEB0eXBlZGVmIHt7cmVtZW1iZXJNZT86IGJvb2xlYW4sIHNjb3BlPzogc3RyaW5nLCBzaWduZWRJbj86IGJvb2xlYW4sIHNraXBTaWduSW5FdmVudD86IGJvb2xlYW59fSBEZXZpc2VTY29wZUFyZ3MgKi9cbi8qKiBAdHlwZWRlZiB7RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdCAmIHttb2RlbD86IGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0IHwgaW1wb3J0KFwiLi9iYXNlLW1vZGVsLmpzXCIpLmRlZmF1bHRbXX19IERldmlzZVNpZ25JblJlc3BvbnNlICovXG4vKiogQHR5cGVkZWYge3todHRwUmVzcG9uc2U6IERldmlzZVNlc3Npb25TdGF0dXNSZXN1bHQsIHNjb3BlOiBzdHJpbmcsIHdlYnNvY2tldEFyZ3M6IERldmlzZVNjb3BlQXJnc319IFN5bmNTZXNzaW9uQXJncyAqL1xuLyoqIEB0eXBlZGVmIHtpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdCB8IG51bGx9IERldmlzZUN1cnJlbnRTY29wZSAqL1xuXG5pZiAoIWdsb2JhbFRoaXMuQXBpTWFrZXJEZXZpc2UpIGdsb2JhbFRoaXMuQXBpTWFrZXJEZXZpc2UgPSB7c2NvcGVzOiB7fX1cblxuY29uc3Qgc2hhcmVkID0gLyoqIEB0eXBlIHtBcGlNYWtlckRldmlzZVNoYXJlZH0gKi8gKGdsb2JhbFRoaXMuQXBpTWFrZXJEZXZpc2UpXG5cbi8qKiBEZXZpc2VTY29wZS4gKi9cbmNsYXNzIERldmlzZVNjb3BlIHtcbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGVcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlLCBhcmdzKSB7XG4gICAgdGhpcy5hcmdzID0gYXJnc1xuICAgIHRoaXMuY29udGV4dCA9IGNyZWF0ZUNvbnRleHQodW5kZWZpbmVkKVxuICAgIHRoaXMuc2NvcGUgPSBzY29wZVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBQcm92aWRlciB3cml0ZXMgYSBge2xvYWRlZCwgbW9kZWx9YCB3cmFwcGVyIChzZWVcbiAgICogYFVzZUN1cnJlbnRVc2VyQ29udGV4dGApOyBgdXNlQ3VycmVudFVzZXJgIHVud3JhcHMgaXQgb24gcmVhZC4gVGhlXG4gICAqIGNvbnRleHQgdHlwZSBpcyB0aGUgd3JhcHBlciwgbm90IHRoZSByYXcgbW9kZWwuXG4gICAqXG4gICAqIEByZXR1cm5zIHtpbXBvcnQoXCJyZWFjdFwiKS5Db250ZXh0PGltcG9ydChcIi4vdXNlLWN1cnJlbnQtdXNlci5qc1wiKS5DdXJyZW50VXNlckNvbnRleHRWYWx1ZSB8IHVuZGVmaW5lZD59XG4gICAqL1xuICBnZXRDb250ZXh0ID0gKCkgPT4gdGhpcy5jb250ZXh0XG59XG5cbi8qKiBBcGlNYWtlckRldmlzZS4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFwaU1ha2VyRGV2aXNlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBzaGFyZWQgc2lnbi1vdXQgZXZlbnQgcGF5bG9hZCBmb3Igb25lIHNjb3BlLlxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICovXG4gIHN0YXRpYyBjYWxsU2lnbk91dEV2ZW50KGFyZ3MpIHtcbiAgICBldmVudHMuZW1pdChcIm9uRGV2aXNlU2lnbk91dFwiLCB7YXJnc30pXG4gIH1cblxuICAvKiogQHJldHVybnMge0FwaU1ha2VyRGV2aXNlfSAqL1xuICBzdGF0aWMgY3VycmVudCgpIHtcbiAgICBpZiAoIXNoYXJlZC5jdXJyZW50QXBpTWFrZXJEZXZpc2UpIHtcbiAgICAgIHNoYXJlZC5jdXJyZW50QXBpTWFrZXJEZXZpc2UgPSBuZXcgQXBpTWFrZXJEZXZpc2UoKVxuICAgIH1cblxuICAgIHJldHVybiBzaGFyZWQuY3VycmVudEFwaU1ha2VyRGV2aXNlXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2hhcmVkIGV2ZW50IGVtaXR0ZXIgdXNlZCBmb3IgRGV2aXNlIGxpZmVjeWNsZSBldmVudHMuXG4gICAqIEByZXR1cm5zIHt0eXBlb2YgZXZlbnRzfVxuICAgKi9cbiAgc3RhdGljIGV2ZW50cygpIHtcbiAgICByZXR1cm4gZXZlbnRzXG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIG9uZSBEZXZpc2Ugc2NvcGUgYW5kIGl0cyBoZWxwZXIgYWNjZXNzb3JzLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGVcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICovXG4gIHN0YXRpYyBhZGRVc2VyU2NvcGUoc2NvcGUsIGFyZ3MgPSB7fSkge1xuICAgIGNvbnN0IHNjb3BlQ2FtZWxpemVkID0gaW5mbGVjdGlvbi5jYW1lbGl6ZShzY29wZSlcbiAgICBjb25zdCBjdXJyZW50TWV0aG9kTmFtZSA9IGBjdXJyZW50JHtzY29wZUNhbWVsaXplZH1gXG4gICAgY29uc3QgaXNTaWduZWRJbk1ldGhvZE5hbWUgPSBgaXMke3Njb3BlQ2FtZWxpemVkfVNpZ25lZEluYFxuICAgIGNvbnN0IGdldEFyZ3NNZXRob2ROYW1lID0gYGdldCR7c2NvcGVDYW1lbGl6ZWR9QXJnc2BcbiAgICBjb25zdCBnZXRTY29wZU5hbWUgPSBgZ2V0JHtzY29wZUNhbWVsaXplZH1TY29wZWBcbiAgICBjb25zdCBzY29wZUluc3RhbmNlID0gbmV3IERldmlzZVNjb3BlKHNjb3BlLCBhcmdzKVxuXG4gICAgc2hhcmVkLnNjb3Blc1tzY29wZV0gPSB0cnVlXG4gICAgQXBpTWFrZXJEZXZpc2VbY3VycmVudE1ldGhvZE5hbWVdID0gKCkgPT4gQXBpTWFrZXJEZXZpc2UuY3VycmVudCgpLmdldEN1cnJlbnRTY29wZShzY29wZSlcbiAgICBBcGlNYWtlckRldmlzZVtpc1NpZ25lZEluTWV0aG9kTmFtZV0gPSAoKSA9PiBCb29sZWFuKEFwaU1ha2VyRGV2aXNlLmN1cnJlbnQoKS5nZXRDdXJyZW50U2NvcGUoc2NvcGUpKVxuICAgIEFwaU1ha2VyRGV2aXNlW2dldEFyZ3NNZXRob2ROYW1lXSA9ICgpID0+IGFyZ3NcbiAgICBBcGlNYWtlckRldmlzZVtnZXRTY29wZU5hbWVdID0gKCkgPT4gc2NvcGVJbnN0YW5jZVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJlZ2lzdGVyZWQgc2NvcGUgaGVscGVyIGZvciBvbmUgc2NvcGUgbmFtZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjb3BlXG4gICAqIEByZXR1cm5zIHtEZXZpc2VTY29wZX1cbiAgICovXG4gIHN0YXRpYyBnZXRTY29wZShzY29wZSkge1xuICAgIGNvbnN0IHNjb3BlQ2FtZWxpemVkID0gaW5mbGVjdGlvbi5jYW1lbGl6ZShzY29wZSlcbiAgICBjb25zdCBnZXRTY29wZU5hbWUgPSBgZ2V0JHtzY29wZUNhbWVsaXplZH1TY29wZWBcblxuICAgIHJldHVybiBBcGlNYWtlckRldmlzZVtnZXRTY29wZU5hbWVdKClcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nW119ICovXG4gIHN0YXRpYyByZWdpc3RlcmVkU2NvcGVzKCkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhzaGFyZWQuc2NvcGVzKVxuICB9XG5cbiAgLyoqXG4gICAqIFNpZ25zIGluIG9uZSBzY29wZSBvdmVyIEhUVFAgYW5kIHJlZnJlc2hlcyB3ZWJzb2NrZXQgYXV0aCBzdGF0ZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHVzZXJuYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYXNzd29yZFxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx7bW9kZWw6IGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0LCByZXNwb25zZTogRGV2aXNlU2lnbkluUmVzcG9uc2V9Pn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyBzaWduSW4odXNlcm5hbWUsIHBhc3N3b3JkLCBhcmdzID0ge30pIHtcbiAgICBpZiAoIWFyZ3Muc2NvcGUpIGFyZ3Muc2NvcGUgPSBcInVzZXJcIlxuXG4gICAgY29uc3QgcG9zdERhdGEgPSB7dXNlcm5hbWUsIHBhc3N3b3JkLCBhcmdzfVxuXG4gICAgLy8gU2lnbiBpbiBvdmVyIEhUVFAgZmlyc3Qgc28gRGV2aXNlIGNhbiB3cml0ZSB0aGUgcmVhbCBzZXNzaW9uIGNvb2tpZSBhbmRcbiAgICAvLyByZW1lbWJlci1tZSB0b2tlbiBpbiB0aGUgSFRUUCByZXNwb25zZS5cbiAgICBjb25zdCByZXNwb25zZSA9IC8qKiBAdHlwZSB7RGV2aXNlU2lnbkluUmVzcG9uc2V9ICovIChcbiAgICAgIGF3YWl0IFNlcnZpY2VzLmN1cnJlbnQoKS5zZW5kUmVxdWVzdChcIkRldmlzZTo6U2lnbkluXCIsIHBvc3REYXRhLCB7Zm9yY2VIdHRwOiB0cnVlfSlcbiAgICApXG5cbiAgICBsZXQgbW9kZWwgPSByZXNwb25zZS5tb2RlbFxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkobW9kZWwpKSBtb2RlbCA9IG1vZGVsWzBdXG5cbiAgICBpZiAoIW1vZGVsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYERldmlzZS5zaWduSW46IERldmlzZTo6U2lnbkluIHJlc3BvbnNlIGZvciBzY29wZSBcIiR7YXJncy5zY29wZX1cIiBkaWQgbm90IGluY2x1ZGUgYSBtb2RlbGApXG4gICAgfVxuXG4gICAgYXdhaXQgQXBpTWFrZXJEZXZpc2Uuc3luY1Nlc3Npb25TdGF0dXNBbmRSZWZyZXNoV2Vic29ja2V0KHtcbiAgICAgIGh0dHBSZXNwb25zZTogcmVzcG9uc2UsXG4gICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgIHdlYnNvY2tldEFyZ3M6IHtcbiAgICAgICAgcmVtZW1iZXJNZTogYXJncy5yZW1lbWJlck1lLFxuICAgICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgICAgc2lnbmVkSW46IHRydWVcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgQXBpTWFrZXJEZXZpc2UudXBkYXRlU2Vzc2lvbihtb2RlbClcblxuICAgIGlmICghYXJncy5za2lwU2lnbkluRXZlbnQpIHtcbiAgICAgIGV2ZW50cy5lbWl0KFwib25EZXZpc2VTaWduSW5cIiwge3VzZXJuYW1lLCAuLi5hcmdzfSlcbiAgICB9XG5cbiAgICByZXR1cm4ge21vZGVsLCByZXNwb25zZX1cbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jaHJvbml6ZXMgdGhlIGN1cnJlbnQgYmFja2VuZCBhdXRoIHN0YXRlIGludG8gcmVhbCBIVFRQIHJlc3BvbnNlIGNvb2tpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7RGV2aXNlU2NvcGVBcmdzfSBbYXJnc11cbiAgICogQHJldHVybnMge1Byb21pc2U8RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdD59XG4gICAqL1xuICBzdGF0aWMgYXN5bmMgcGVyc2lzdFNlc3Npb24oYXJncyA9IHt9KSB7XG4gICAgaWYgKCFhcmdzLnNjb3BlKSBhcmdzLnNjb3BlID0gXCJ1c2VyXCJcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gLyoqIEB0eXBlIHtEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0fSAqLyAoXG4gICAgICBhd2FpdCBTZXJ2aWNlcy5jdXJyZW50KCkuc2VuZFJlcXVlc3QoXCJEZXZpc2U6OlBlcnNpc3RTZXNzaW9uXCIsIGFyZ3MsIHtmb3JjZUh0dHA6IHRydWV9KVxuICAgIClcblxuICAgIGNvbnN0IHNlc3Npb25TdGF0dXNVcGRhdGVyID0gU2Vzc2lvblN0YXR1c1VwZGF0ZXIuY3VycmVudCgpXG5cbiAgICBpZiAocmVzcG9uc2Uuc2Vzc2lvbl9zdGF0dXMpIHtcbiAgICAgIHNlc3Npb25TdGF0dXNVcGRhdGVyLmFwcGx5UmVzdWx0KHJlc3BvbnNlLnNlc3Npb25fc3RhdHVzKVxuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCBzZXNzaW9uU3RhdHVzVXBkYXRlci51cGRhdGVTZXNzaW9uU3RhdHVzKClcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzcG9uc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBsb2NhbGx5IGNhY2hlZCBjdXJyZW50IG1vZGVsIGZvciBvbmUgc2NvcGUuXG4gICAqXG4gICAqIEFsd2F5cyByZXF1aXJlcyBhIHJlYWwgbW9kZWwgaW5zdGFuY2UuIFdyaXRpbmcgYSBmYWxzeSB2YWx1ZSBoZXJlIHVzZWQgdG9cbiAgICogYmUgYSBzaWxlbnQgZm9vdC1ndW46IHdoZW4gYSBjYWxsZXIgYXdhaXRlZCBhIHF1ZXJ5IHRoYXQgcmV0dXJuZWRcbiAgICogYHVuZGVmaW5lZGAgKGZvciBleGFtcGxlIGBDb2xsZWN0aW9uI2ZpcnN0KClgIG9uIGFuIGVtcHR5IHJlc3VsdCkgYW5kXG4gICAqIHBhc3NlZCB0aGUgdmFsdWUgdGhyb3VnaCwgdGhlIHNjb3BlIGNhY2hlIGZsaXBwZWQgdG8gXCJzaWduZWQgb3V0XCIgd2l0aG91dFxuICAgKiBhbnkgaW5kaWNhdGlvbiwgZHJvcHBpbmcgdGhlIHVzZXIgYmFjayBvbiB0aGUgc2lnbi1pbiBzY3JlZW4gcmlnaHQgYWZ0ZXJcbiAgICogYSBzdWNjZXNzZnVsIHNpZ24taW4uIFVzZSBgRGV2aXNlLnNldFNpZ25lZE91dCh7c2NvcGV9KWAgdG8gc2lnbiBvdXQuXG4gICAqXG4gICAqIEBwYXJhbSB7Tm9uTnVsbGFibGU8RGV2aXNlQ3VycmVudFNjb3BlPn0gbW9kZWxcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICovXG4gIHN0YXRpYyB1cGRhdGVTZXNzaW9uKG1vZGVsLCBhcmdzID0ge30pIHtcbiAgICBpZiAoIWFyZ3Muc2NvcGUpIGFyZ3Muc2NvcGUgPSBcInVzZXJcIlxuXG4gICAgaWYgKCFtb2RlbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgRGV2aXNlLnVwZGF0ZVNlc3Npb24gd2FzIGNhbGxlZCB3aXRoIGEgZmFsc3kgbW9kZWwgZm9yIHNjb3BlIFwiJHthcmdzLnNjb3BlfVwiLiBgICtcbiAgICAgICAgXCJVc2UgRGV2aXNlLnNldFNpZ25lZE91dCh7c2NvcGV9KSB0byBzaWduIG91dCBpbnN0ZWFkLlwiXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgY2FtZWxpemVkU2NvcGVOYW1lID0gaW5mbGVjdGlvbi5jYW1lbGl6ZShhcmdzLnNjb3BlLCB0cnVlKVxuXG4gICAgQXBpTWFrZXJEZXZpc2UuY3VycmVudCgpLmN1cnJlbnRzW2NhbWVsaXplZFNjb3BlTmFtZV0gPSBtb2RlbFxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgd2hldGhlciB0aGUgY3VycmVudCBzY29wZSBjYWNoZSBoYXMgYmVlbiBpbml0aWFsaXplZCBsb2NhbGx5LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGVcbiAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAqL1xuICBoYXNDdXJyZW50U2NvcGUoc2NvcGUpIHtcbiAgICBjb25zdCBjYW1lbGl6ZWRTY29wZU5hbWUgPSBpbmZsZWN0aW9uLmNhbWVsaXplKHNjb3BlLCB0cnVlKVxuXG4gICAgcmV0dXJuIGNhbWVsaXplZFNjb3BlTmFtZSBpbiBBcGlNYWtlckRldmlzZS5jdXJyZW50KCkuY3VycmVudHNcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrcyBvbmUgc2NvcGUgYXMgc2lnbmVkIG91dCBpbiB0aGUgbG9jYWwgY3VycmVudC1tb2RlbCBjYWNoZS5cbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3N9IGFyZ3NcbiAgICovXG4gIHN0YXRpYyBzZXRTaWduZWRPdXQoYXJncykge1xuICAgIEFwaU1ha2VyRGV2aXNlLmN1cnJlbnQoKS5jdXJyZW50c1tpbmZsZWN0aW9uLmNhbWVsaXplKGFyZ3Muc2NvcGUsIHRydWUpXSA9IG51bGxcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWducyBvdXQgb25lIHNjb3BlIG92ZXIgSFRUUCBhbmQgcmVmcmVzaGVzIHdlYnNvY2tldCBhdXRoIHN0YXRlLlxuICAgKiBAcGFyYW0ge0RldmlzZVNjb3BlQXJnc30gYXJnc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0Pn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyBzaWduT3V0KGFyZ3MgPSB7fSkge1xuICAgIGlmICghYXJncy5zY29wZSkge1xuICAgICAgYXJncy5zY29wZSA9IFwidXNlclwiXG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSAvKiogQHR5cGUge0RldmlzZVNlc3Npb25TdGF0dXNSZXN1bHR9ICovIChcbiAgICAgIGF3YWl0IFNlcnZpY2VzLmN1cnJlbnQoKS5zZW5kUmVxdWVzdChcIkRldmlzZTo6U2lnbk91dFwiLCB7YXJnc30sIHtmb3JjZUh0dHA6IHRydWV9KVxuICAgIClcbiAgICBjb25zdCBzZXNzaW9uU3RhdHVzID0gYXdhaXQgQXBpTWFrZXJEZXZpc2Uuc3luY1Nlc3Npb25TdGF0dXNBbmRSZWZyZXNoV2Vic29ja2V0KHtcbiAgICAgIGh0dHBSZXNwb25zZTogcmVzcG9uc2UsXG4gICAgICBzY29wZTogYXJncy5zY29wZSxcbiAgICAgIHdlYnNvY2tldEFyZ3M6IHtcbiAgICAgICAgc2NvcGU6IGFyZ3Muc2NvcGUsXG4gICAgICAgIHNpZ25lZEluOiBmYWxzZVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBpZiAoIXNlc3Npb25TdGF0dXMuc2NvcGVzPy5bYXJncy5zY29wZV0/LnNpZ25lZF9pbikge1xuICAgICAgQXBpTWFrZXJEZXZpc2Uuc2V0U2lnbmVkT3V0KGFyZ3MpXG4gICAgICBBcGlNYWtlckRldmlzZS5jYWxsU2lnbk91dEV2ZW50KGFyZ3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlXG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyB0aGUgbGF0ZXN0IEhUVFAgc2Vzc2lvbiBzdGF0dXMgbG9jYWxseSwgdGhlbiByZWZyZXNoZXMgdGhlXG4gICAqIGV4aXN0aW5nIHdlYnNvY2tldCBjb25uZWN0aW9uIHNvIEFwaU1ha2VyIGNvbW1hbmRzIHVzZSB0aGUgc2FtZSBhdXRoLlxuICAgKlxuICAgKiBAcGFyYW0ge1N5bmNTZXNzaW9uQXJnc30gYXJnc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0Pn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyBzeW5jU2Vzc2lvblN0YXR1c0FuZFJlZnJlc2hXZWJzb2NrZXQoYXJncykge1xuICAgIGNvbnN0IHNlc3Npb25TdGF0dXMgPSBhd2FpdCBBcGlNYWtlckRldmlzZS5zeW5jU2Vzc2lvblN0YXR1c0Zyb21IdHRwUmVzcG9uc2UoYXJncy5odHRwUmVzcG9uc2UpXG4gICAgY29uc3Qgd2Vic29ja2V0QXJncyA9IHtcbiAgICAgIC4uLmFyZ3Mud2Vic29ja2V0QXJncyxcbiAgICAgIHNoYWRvd1Nlc3Npb25Ub2tlbjogc2Vzc2lvblN0YXR1cy5zaGFkb3dfc2Vzc2lvbl90b2tlblxuICAgIH1cblxuICAgIGF3YWl0IEFwaU1ha2VyRGV2aXNlLnJlZnJlc2hXZWJzb2NrZXRTZXNzaW9uKHdlYnNvY2tldEFyZ3MpXG4gICAgYXdhaXQgQXBpTWFrZXJEZXZpc2UucmVmcmVzaFN1YnNjcmlwdGlvbkF1dGhlbnRpY2F0aW9uKHdlYnNvY2tldEFyZ3MpXG5cbiAgICByZXR1cm4gc2Vzc2lvblN0YXR1c1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgbG9jYWwgc2Vzc2lvbiBzdGF0dXMgZnJvbSBvbmUgSFRUUCByZXNwb25zZSBwYXlsb2FkLlxuICAgKiBAcGFyYW0ge0RldmlzZVNlc3Npb25TdGF0dXNSZXN1bHR9IGh0dHBSZXNwb25zZVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0Pn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyBzeW5jU2Vzc2lvblN0YXR1c0Zyb21IdHRwUmVzcG9uc2UoaHR0cFJlc3BvbnNlKSB7XG4gICAgY29uc3Qgc2Vzc2lvblN0YXR1c1VwZGF0ZXIgPSBTZXNzaW9uU3RhdHVzVXBkYXRlci5jdXJyZW50KClcbiAgICBjb25zdCBzZXNzaW9uU3RhdHVzID0gaHR0cFJlc3BvbnNlLnNlc3Npb25fc3RhdHVzIHx8IGF3YWl0IHNlc3Npb25TdGF0dXNVcGRhdGVyLnNlc3Npb25TdGF0dXMoKVxuXG4gICAgc2Vzc2lvblN0YXR1c1VwZGF0ZXIuYXBwbHlSZXN1bHQoc2Vzc2lvblN0YXR1cylcblxuICAgIHJldHVybiBzZXNzaW9uU3RhdHVzXG4gIH1cblxuICAvKipcbiAgICogUmVmcmVzaGVzIEFwaU1ha2VyIGF1dGggaW5zaWRlIHRoZSBleGlzdGluZyB3ZWJzb2NrZXQgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3MgJiB7c2hhZG93U2Vzc2lvblRva2VuPzogc3RyaW5nfX0gYXJnc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxEZXZpc2VTZXNzaW9uU3RhdHVzUmVzdWx0Pn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyByZWZyZXNoV2Vic29ja2V0U2Vzc2lvbihhcmdzKSB7XG4gICAgcmV0dXJuIC8qKiBAdHlwZSB7RGV2aXNlU2Vzc2lvblN0YXR1c1Jlc3VsdH0gKi8gKGF3YWl0IFNlcnZpY2VzLmN1cnJlbnQoKS5zZW5kUmVxdWVzdChcIkRldmlzZTo6UGVyc2lzdFNlc3Npb25cIiwgYXJncykpXG4gIH1cblxuICAvKipcbiAgICogUmVmcmVzaGVzIGF1dGggb24gdGhlIGV4aXN0aW5nIHN1YnNjcmlwdGlvbnMgY2hhbm5lbCBwb29scy5cbiAgICpcbiAgICogQHBhcmFtIHtEZXZpc2VTY29wZUFyZ3MgJiB7c2hhZG93U2Vzc2lvblRva2VuPzogc3RyaW5nfX0gYXJnc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIHN0YXRpYyBhc3luYyByZWZyZXNoU3Vic2NyaXB0aW9uQXV0aGVudGljYXRpb24oYXJncykge1xuICAgIGF3YWl0IENhYmxlQ29ubmVjdGlvblBvb2wuY3VycmVudCgpLnJlZnJlc2hBdXRoZW50aWNhdGlvbihhcmdzKVxuICB9XG5cbiAgLyoqIENvbnN0cnVjdG9yLiAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmN1cnJlbnRzID0gLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBEZXZpc2VDdXJyZW50U2NvcGU+fSAqLyAoe30pXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBtb2RlbCBjYWNoZWQgZm9yIG9uZSBzY29wZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjb3BlXG4gICAqIEByZXR1cm5zIHtEZXZpc2VDdXJyZW50U2NvcGV9XG4gICAqL1xuICBnZXRDdXJyZW50U2NvcGUoc2NvcGUpIHtcbiAgICBpZiAoIShzY29wZSBpbiB0aGlzLmN1cnJlbnRzKSkge1xuICAgICAgdGhpcy5jdXJyZW50c1tzY29wZV0gPSB0aGlzLmxvYWRDdXJyZW50U2NvcGUoc2NvcGUpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY3VycmVudHNbc2NvcGVdXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIHRoZSBzZXJ2ZXIgcmVuZGVyZWQgY3VycmVudC1zY29wZSBwYXlsb2FkIGZvciBvbmUgc2NvcGUuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzY29wZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIGhhc0dsb2JhbEN1cnJlbnRTY29wZShzY29wZSkge1xuICAgIGlmIChnbG9iYWxUaGlzLmFwaU1ha2VyRGV2aXNlQ3VycmVudCAmJiBzY29wZSBpbiBnbG9iYWxUaGlzLmFwaU1ha2VyRGV2aXNlQ3VycmVudCkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBIeWRyYXRlcyB0aGUgY3VycmVudCBzY29wZSBtb2RlbCBmcm9tIHRoZSBzZXJ2ZXIgcmVuZGVyZWQgcGF5bG9hZC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNjb3BlXG4gICAqIEByZXR1cm5zIHtEZXZpc2VDdXJyZW50U2NvcGV9XG4gICAqL1xuICBsb2FkQ3VycmVudFNjb3BlKHNjb3BlKSB7XG4gICAgaWYgKCF0aGlzLmhhc0dsb2JhbEN1cnJlbnRTY29wZShzY29wZSkpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgY29uc3Qgc2NvcGVEYXRhID0gZ2xvYmFsVGhpcy5hcGlNYWtlckRldmlzZUN1cnJlbnRbc2NvcGVdXG5cbiAgICBpZiAoIXNjb3BlRGF0YSkgcmV0dXJuIG51bGxcblxuICAgIGNvbnN0IHBhcnNlZFNjb3BlRGF0YSA9IERlc2VyaWFsaXplci5wYXJzZShzY29wZURhdGEpXG5cbiAgICAvLyBNaWdodCBiZSBhIGNvbGxlY3Rpb24gd2l0aCBwcmVsb2FkZWQgcmVsYXRpb25zaGlwc1xuICAgIGlmIChBcnJheS5pc0FycmF5KHBhcnNlZFNjb3BlRGF0YSkpIHJldHVybiBwYXJzZWRTY29wZURhdGFbMF1cblxuICAgIGNvbnN0IE1vZGVsQ2xhc3MgPSBtb2RlbENsYXNzUmVxdWlyZShzY29wZSlcbiAgICBjb25zdCBtb2RlbEluc3RhbmNlID0gbmV3IE1vZGVsQ2xhc3Moe2RhdGE6IHBhcnNlZFNjb3BlRGF0YX0pXG5cbiAgICByZXR1cm4gbW9kZWxJbnN0YW5jZVxuICB9XG59XG4iXX0=
|
|
@@ -2,7 +2,12 @@ export default class ApiMakerEventConnection extends React.PureComponent<any, an
|
|
|
2
2
|
static defaultProps: {
|
|
3
3
|
active: boolean;
|
|
4
4
|
};
|
|
5
|
-
static propTypes:
|
|
5
|
+
static propTypes: PropTypes.ValidationMap<{
|
|
6
|
+
active: boolean;
|
|
7
|
+
model: object;
|
|
8
|
+
event: string;
|
|
9
|
+
onCall: (...args: any[]) => any;
|
|
10
|
+
}>;
|
|
6
11
|
constructor(props: any);
|
|
7
12
|
componentDidMount(): void;
|
|
8
13
|
subscription: import("./cable-subscription.js").default;
|
|
@@ -11,4 +16,5 @@ export default class ApiMakerEventConnection extends React.PureComponent<any, an
|
|
|
11
16
|
onCall(...args: any[]): void;
|
|
12
17
|
}
|
|
13
18
|
import React from "react";
|
|
19
|
+
import PropTypes from "prop-types";
|
|
14
20
|
//# sourceMappingURL=event-connection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-connection.d.ts","sourceRoot":"/src/","sources":["event-connection.jsx"],"names":[],"mappings":"AAMA;IACE;;MAEC;IAED
|
|
1
|
+
{"version":3,"file":"event-connection.d.ts","sourceRoot":"/src/","sources":["event-connection.jsx"],"names":[],"mappings":"AAMA;IACE;;MAEC;IAED;;;;;OAKE;;IAEF,0BAEC;IADC,wDAA8G;IAGhH,6BAIC;IAED,cAEC;IAED,6BAIC;CACF;kBAlCiB,OAAO;sBADH,YAAY"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export default class ApiMakerEventModelClass extends React.PureComponent<any, any, any> {
|
|
2
|
-
static propTypes:
|
|
2
|
+
static propTypes: PropTypes.ValidationMap<{
|
|
3
|
+
event: string;
|
|
4
|
+
modelClass: (...args: any[]) => any;
|
|
5
|
+
onCall: (...args: any[]) => any;
|
|
6
|
+
}>;
|
|
3
7
|
constructor(props: any);
|
|
4
8
|
componentDidMount(): void;
|
|
5
9
|
componentWillUnmount(): void;
|
|
@@ -8,4 +12,5 @@ export default class ApiMakerEventModelClass extends React.PureComponent<any, an
|
|
|
8
12
|
render(): any;
|
|
9
13
|
}
|
|
10
14
|
import React from "react";
|
|
15
|
+
import PropTypes from "prop-types";
|
|
11
16
|
//# sourceMappingURL=event-model-class.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-model-class.d.ts","sourceRoot":"/src/","sources":["event-model-class.jsx"],"names":[],"mappings":"AAMA;IACE
|
|
1
|
+
{"version":3,"file":"event-model-class.d.ts","sourceRoot":"/src/","sources":["event-model-class.jsx"],"names":[],"mappings":"AAMA;IACE;;;;OAIE;;IAEF,0BAEC;IAED,6BAIC;IAED,gBAEC;IADC,sDAA2G;IAG7G,cAEC;CACF;kBA3BiB,OAAO;sBADH,YAAY"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export default class ApiMakerUpdatedAttribute extends React.PureComponent<any, any, any> {
|
|
2
|
-
static propTypes:
|
|
2
|
+
static propTypes: PropTypes.ValidationMap<{
|
|
3
|
+
attribute: string;
|
|
4
|
+
model: object;
|
|
5
|
+
onValue: (...args: any[]) => any;
|
|
6
|
+
}>;
|
|
3
7
|
constructor(props: any);
|
|
4
8
|
state: {
|
|
5
9
|
model: any;
|
|
@@ -13,4 +17,5 @@ export default class ApiMakerUpdatedAttribute extends React.PureComponent<any, a
|
|
|
13
17
|
render(): any;
|
|
14
18
|
}
|
|
15
19
|
import React from "react";
|
|
20
|
+
import PropTypes from "prop-types";
|
|
16
21
|
//# sourceMappingURL=updated-attribute.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updated-attribute.d.ts","sourceRoot":"/src/","sources":["updated-attribute.jsx"],"names":[],"mappings":"AAQA;IACE
|
|
1
|
+
{"version":3,"file":"updated-attribute.d.ts","sourceRoot":"/src/","sources":["updated-attribute.jsx"],"names":[],"mappings":"AAQA;IACE;;;;OAIE;IAEF,wBAKC;IAHC;;MAEC;IAGH,0BAGC;IAED,6BAKC;IAED,gBAWC;IAVC,0DASE;IAIJ,wCAqBC;IAED,qBAgBC;IAED,cAIC;CACF;kBAxFiB,OAAO;sBAFH,YAAY"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
declare const _default: React.NamedExoticComponent<Record<string, any>>;
|
|
2
|
+
export default _default;
|
|
3
|
+
export type CurrentUserModel = import("./use-current-user.js").CurrentUserModel;
|
|
4
|
+
export type Result = {
|
|
5
|
+
loaded: boolean;
|
|
6
|
+
model: CurrentUserModel;
|
|
7
|
+
};
|
|
8
|
+
export type Props = {
|
|
9
9
|
children: import("react").ReactNode;
|
|
10
10
|
scope?: string;
|
|
11
|
-
}
|
|
11
|
+
};
|
|
12
|
+
export type State = {
|
|
13
|
+
result: Result;
|
|
14
|
+
};
|
|
15
|
+
import React from "react";
|
|
12
16
|
//# sourceMappingURL=use-current-user-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-current-user-context.d.ts","sourceRoot":"/src/","sources":["use-current-user-context.jsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-current-user-context.d.ts","sourceRoot":"/src/","sources":["use-current-user-context.jsx"],"names":[],"mappings":";;+BAkBa,OAAO,uBAAuB,EAAE,gBAAgB;;YAI/C,OAAO;WACP,gBAAgB;;;cAIhB,OAAO,OAAO,EAAE,SAAS;YACzB,MAAM;;;YAIN,MAAM;;kBA1BF,OAAO"}
|
|
@@ -1,105 +1,133 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
// @ts-check
|
|
3
|
-
/* eslint-disable jest/require-hook, react/function-component-definition, sort-imports */
|
|
4
|
-
import React, { useCallback, useEffect, useRef } from "react";
|
|
5
|
-
import Devise from "./devise.js";
|
|
6
|
-
import { digg } from "diggerize";
|
|
7
|
-
import { events } from "./use-current-user.js";
|
|
8
3
|
import * as inflection from "inflection";
|
|
4
|
+
import { ShapeComponent, shapeComponent } from "set-state-compare/build/shape-component.js";
|
|
5
|
+
import Devise from "./devise.js";
|
|
9
6
|
import Logger from "./logger.js";
|
|
7
|
+
import PropTypes from "prop-types";
|
|
8
|
+
import React from "react";
|
|
10
9
|
import Services from "./services.js";
|
|
10
|
+
import { digg } from "diggerize";
|
|
11
|
+
import { events } from "./use-current-user.js";
|
|
12
|
+
import memo from "set-state-compare/build/memo.js";
|
|
13
|
+
import propTypesExact from "prop-types-exact";
|
|
11
14
|
import useEventEmitter from "ya-use-event-emitter";
|
|
12
|
-
import
|
|
15
|
+
import useNow from "set-state-compare/build/use-now.js";
|
|
13
16
|
const logger = new Logger({ name: "ApiMaker / UseCurrentUserContext" });
|
|
14
|
-
logger.setDebug(false);
|
|
15
17
|
/**
|
|
16
|
-
* @
|
|
17
|
-
* @param {import("react").ReactNode} props.children
|
|
18
|
-
* @param {string} [props.scope]
|
|
19
|
-
* @returns {import("react").ReactNode}
|
|
18
|
+
* @typedef {import("./use-current-user.js").CurrentUserModel} CurrentUserModel
|
|
20
19
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
/**
|
|
21
|
+
* @typedef {object} Result
|
|
22
|
+
* @property {boolean} loaded
|
|
23
|
+
* @property {CurrentUserModel} model
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* @typedef {object} Props
|
|
27
|
+
* @property {import("react").ReactNode} children
|
|
28
|
+
* @property {string} [scope]
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* @typedef {object} State
|
|
32
|
+
* @property {Result} result
|
|
33
|
+
*/
|
|
34
|
+
export default memo(shapeComponent(/** @augments {ShapeComponent<Props, State>} */ class ApiMakerUseCurrentUserContext extends ShapeComponent {
|
|
35
|
+
static propTypes = propTypesExact({
|
|
36
|
+
children: PropTypes.node,
|
|
37
|
+
scope: PropTypes.string
|
|
38
|
+
});
|
|
39
|
+
static defaultProps = {
|
|
40
|
+
scope: "user"
|
|
41
|
+
};
|
|
42
|
+
state = {
|
|
43
|
+
result: /** @type {Result} */ ({
|
|
44
|
+
loaded: false,
|
|
45
|
+
model: null
|
|
46
|
+
})
|
|
47
|
+
};
|
|
48
|
+
loadCurrentUserRequestId = 0;
|
|
49
|
+
/** @type {import("react").Context<import("./use-current-user.js").CurrentUserContextValue | undefined>} */
|
|
50
|
+
ScopeContext;
|
|
51
|
+
/** @type {string} */
|
|
52
|
+
scope;
|
|
53
|
+
/** @type {string} */
|
|
54
|
+
scopeName;
|
|
55
|
+
setup() {
|
|
56
|
+
const scope = this.p.scope ?? "user";
|
|
57
|
+
const scopeName = `current${inflection.camelize(scope)}`;
|
|
58
|
+
const scopeInstance = Devise.getScope(scope);
|
|
59
|
+
this.scope = scope;
|
|
60
|
+
this.scopeName = scopeName;
|
|
61
|
+
this.ScopeContext = scopeInstance.getContext();
|
|
62
|
+
useNow(() => {
|
|
63
|
+
if (Devise.current().hasCurrentScope(this.scope) || Devise.current().hasGlobalCurrentScope(this.scope)) {
|
|
64
|
+
this.s.result = { loaded: false, model: this.defaultCurrentUser() ?? null };
|
|
65
|
+
}
|
|
66
|
+
}, []);
|
|
67
|
+
React.useEffect(() => {
|
|
68
|
+
if (!Devise.current().hasGlobalCurrentScope(this.scope) && !Devise.current().hasCurrentScope(this.scope)) {
|
|
69
|
+
logger.debug(() => `Devise hasn't got current scope ${this.scope} so loading from request`);
|
|
70
|
+
this.loadCurrentUserFromRequest();
|
|
71
|
+
}
|
|
72
|
+
// Discard any in-flight current-user load when this instance tears down.
|
|
73
|
+
return () => {
|
|
74
|
+
this.loadCurrentUserRequestId += 1;
|
|
75
|
+
};
|
|
76
|
+
}, []);
|
|
77
|
+
useEventEmitter(Devise.events(), "onDeviseSignIn", this.tt.onDeviseSignIn);
|
|
78
|
+
useEventEmitter(Devise.events(), "onDeviseSignOut", this.tt.onDeviseSignOut);
|
|
25
79
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const requestId = loadCurrentUserRequestIdRef.current + 1;
|
|
36
|
-
loadCurrentUserRequestIdRef.current = requestId;
|
|
37
|
-
const { scope } = s.m;
|
|
38
|
-
const getArgsMethodName = `get${inflection.camelize(scope)}Args`;
|
|
80
|
+
render() {
|
|
81
|
+
const { ScopeContext } = this;
|
|
82
|
+
return (_jsx(ScopeContext.Provider, { value: this.s.result, children: this.p.children }));
|
|
83
|
+
}
|
|
84
|
+
loadCurrentUserFromRequest = async () => {
|
|
85
|
+
// Ignore late current-user responses so the live provider controls session state.
|
|
86
|
+
const requestId = this.loadCurrentUserRequestId + 1;
|
|
87
|
+
this.loadCurrentUserRequestId = requestId;
|
|
88
|
+
const getArgsMethodName = `get${inflection.camelize(this.scope)}Args`;
|
|
39
89
|
const args = Devise[getArgsMethodName]();
|
|
40
|
-
logger.debug(() => `Loading ${scope} with request`);
|
|
41
|
-
const result = await Services.current().sendRequest("Devise::Current", { query: args.query, scope });
|
|
90
|
+
logger.debug(() => `Loading ${this.scope} with request`);
|
|
91
|
+
const result = await Services.current().sendRequest("Devise::Current", { query: args.query, scope: this.scope });
|
|
42
92
|
const current = digg(result, "current")[0];
|
|
43
|
-
if (requestId !=
|
|
93
|
+
if (requestId != this.loadCurrentUserRequestId)
|
|
44
94
|
return;
|
|
45
95
|
if (current)
|
|
46
96
|
Devise.updateSession(current);
|
|
47
|
-
|
|
48
|
-
result: {
|
|
49
|
-
loaded: true,
|
|
50
|
-
model: current
|
|
51
|
-
}
|
|
52
|
-
});
|
|
97
|
+
this.setState({ result: { loaded: true, model: current } });
|
|
53
98
|
events.emit("currentUserLoaded", { current });
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
const { scope, scopeName } = s.m;
|
|
99
|
+
};
|
|
100
|
+
defaultCurrentUser = () => {
|
|
57
101
|
let current;
|
|
58
|
-
if (Devise.current().hasCurrentScope(
|
|
59
|
-
current = Devise.current().getCurrentScope(scope);
|
|
60
|
-
logger.debug(() => `Setting ${scope} from current scope: ${current?.id()}`);
|
|
102
|
+
if (Devise.current().hasCurrentScope(this.scope)) {
|
|
103
|
+
current = Devise.current().getCurrentScope(this.scope);
|
|
104
|
+
logger.debug(() => `Setting ${this.scope} from current scope: ${current?.id()}`);
|
|
61
105
|
}
|
|
62
|
-
else if (Devise.current().hasGlobalCurrentScope(scope)) {
|
|
63
|
-
current = Devise[scopeName]();
|
|
64
|
-
logger.debug(() => `Setting ${scope} from global current scope: ${current?.id()}`);
|
|
106
|
+
else if (Devise.current().hasGlobalCurrentScope(this.scope)) {
|
|
107
|
+
current = Devise[this.scopeName]();
|
|
108
|
+
logger.debug(() => `Setting ${this.scope} from global current scope: ${current?.id()}`);
|
|
65
109
|
}
|
|
66
|
-
if (current)
|
|
110
|
+
if (current)
|
|
67
111
|
events.emit("currentUserLoaded", { current });
|
|
68
|
-
}
|
|
69
112
|
return current;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
result: ()
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
return () => {
|
|
91
|
-
loadCurrentUserRequestIdRef.current += 1;
|
|
92
|
-
};
|
|
93
|
-
}, []);
|
|
94
|
-
const onDeviseSignIn = useCallback(() => {
|
|
95
|
-
updateCurrentUser();
|
|
96
|
-
}, []);
|
|
97
|
-
const onDeviseSignOut = useCallback(() => {
|
|
98
|
-
updateCurrentUser();
|
|
99
|
-
}, []);
|
|
100
|
-
useEventEmitter(Devise.events(), "onDeviseSignIn", onDeviseSignIn);
|
|
101
|
-
useEventEmitter(Devise.events(), "onDeviseSignOut", onDeviseSignOut);
|
|
102
|
-
return (_jsx(ScopeContext.Provider, { value: s.s.result, children: children }));
|
|
103
|
-
};
|
|
104
|
-
export default UseCurrentUserContext;
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWN1cnJlbnQtdXNlci1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJ1c2UtY3VycmVudC11c2VyLWNvbnRleHQuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxZQUFZO0FBQ1oseUZBQXlGO0FBQ3pGLE9BQU8sS0FBSyxFQUFFLEVBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxPQUFPLENBQUE7QUFDM0QsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ2hDLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUE7QUFDOUIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHVCQUF1QixDQUFBO0FBQzVDLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBQ3hDLE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNoQyxPQUFPLFFBQVEsTUFBTSxlQUFlLENBQUE7QUFDcEMsT0FBTyxlQUFlLE1BQU0sc0JBQXNCLENBQUE7QUFDbEQsT0FBTyxRQUFRLE1BQU0sZ0JBQWdCLENBQUE7QUFFckMsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsRUFBQyxJQUFJLEVBQUUsa0NBQWtDLEVBQUMsQ0FBQyxDQUFBO0FBRXJFLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7QUFFdEI7Ozs7O0dBS0c7QUFDSCxNQUFNLHFCQUFxQixHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDdEMsTUFBTSxFQUFDLFFBQVEsRUFBRSxLQUFLLEdBQUcsTUFBTSxFQUFFLEdBQUcsU0FBUyxFQUFDLEdBQUcsS0FBSyxDQUFBO0lBRXRELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDdEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJ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QUFPLEdBQUcsRUFBRTtZQUNWLDJCQUEyQixDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUE7UUFDMUMsQ0FBQyxDQUFBO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRU4sTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtRQUN0QyxpQkFBaUIsRUFBRSxDQUFBO0lBQ3JCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUVOLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUU7UUFDdkMsaUJBQWlCLEVBQUUsQ0FBQTtJQUNyQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFTixlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFBO0lBQ2xFLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLENBQUE7SUFFcEUsT0FBTyxDQUNMLEtBQUMsWUFBWSxDQUFDLFFBQVEsSUFBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLFlBQ3JDLFFBQVEsR0FDYSxDQUN6QixDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsZUFBZSxxQkFBcUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuLyogZXNsaW50LWRpc2FibGUgamVzdC9yZXF1aXJlLWhvb2ssIHJlYWN0L2Z1bmN0aW9uLWNvbXBvbmVudC1kZWZpbml0aW9uLCBzb3J0LWltcG9ydHMgKi9cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZn0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCBEZXZpc2UgZnJvbSBcIi4vZGV2aXNlLmpzXCJcbmltcG9ydCB7ZGlnZ30gZnJvbSBcImRpZ2dlcml6ZVwiXG5pbXBvcnQge2V2ZW50c30gZnJvbSBcIi4vdXNlLWN1cnJlbnQtdXNlci5qc1wiXG5pbXBvcnQgKiBhcyBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCJcbmltcG9ydCBMb2dnZXIgZnJvbSBcIi4vbG9nZ2VyLmpzXCJcbmltcG9ydCBTZXJ2aWNlcyBmcm9tIFwiLi9zZXJ2aWNlcy5qc1wiXG5pbXBvcnQgdXNlRXZlbnRFbWl0dGVyIGZyb20gXCJ5YS11c2UtZXZlbnQtZW1pdHRlclwiXG5pbXBvcnQgdXNlU2hhcGUgZnJvbSBcIi4vdXNlLXNoYXBlLmpzXCJcblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcih7bmFtZTogXCJBcGlNYWtlciAvIFVzZUN1cnJlbnRVc2VyQ29udGV4dFwifSlcblxubG9nZ2VyLnNldERlYnVnKGZhbHNlKVxuXG4vKipcbiAqIEBwYXJhbSB7b2JqZWN0fSBwcm9wc1xuICogQHBhcmFtIHtpbXBvcnQoXCJyZWFjdFwiKS5SZWFjdE5vZGV9IHByb3BzLmNoaWxkcmVuXG4gKiBAcGFyYW0ge3N0cmluZ30gW3Byb3BzLnNjb3BlXVxuICogQHJldHVybnMge2ltcG9ydChcInJlYWN0XCIpLlJlYWN0Tm9kZX1cbiAqL1xuY29uc3QgVXNlQ3VycmVudFVzZXJDb250ZXh0ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtjaGlsZHJlbiwgc2NvcGUgPSBcInVzZXJcIiwgLi4ucmVzdFByb3BzfSA9IHByb3BzXG5cbiAgaWYgKE9iamVjdC5rZXlzKHJlc3RQcm9wcykubGVuZ3RoID4gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBwcm9wcyBnaXZlbiB0byBVc2VDdXJyZW50VXNlckNvbnRleHQ6ICR7T2JqZWN0LmtleXMocmVzdFByb3BzKS5qb2luKFwiLCBcIil9YClcbiAgfVxuXG4gIGNvbnN0IHMgPSB1c2VTaGFwZShwcm9wcylcbiAgY29uc3Qgc2NvcGVOYW1lID0gYGN1cnJlbnQke2luZmxlY3Rpb24uY2FtZWxpemUoc2NvcGUpfWBcbiAgY29uc3Qgc2NvcGVJbnN0YW5jZSA9IERldmlzZS5nZXRTY29wZShzY29wZSlcbiAgY29uc3QgU2NvcGVDb250ZXh0ID0gc2NvcGVJbnN0YW5jZS5nZXRDb250ZXh0KClcbiAgY29uc3QgbG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkUmVmID0gdXNlUmVmKDApXG5cbiAgcy5tZXRhLnNjb3BlID0gc2NvcGVcbiAgcy5tZXRhLnNjb3BlTmFtZSA9IHNjb3BlTmFtZVxuXG4gIGNvbnN0IGxvYWRDdXJyZW50VXNlckZyb21SZXF1ZXN0ID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIC8vIElnbm9yZSBsYXRlIGN1cnJlbnQtdXNlciByZXNwb25zZXMgZnJvbSBkaXNjYXJkZWQgbW91bnRzIHNvIHRoZSBsaXZlIHByb3ZpZGVyIGNvbnRyb2xzIHRoZSBzZXNzaW9uIHN0YXRlLlxuICAgIGNvbnN0IHJlcXVlc3RJZCA9IGxvYWRDdXJyZW50VXNlclJlcXVlc3RJZFJlZi5jdXJyZW50ICsgMVxuXG4gICAgbG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkUmVmLmN1cnJlbnQgPSByZXF1ZXN0SWRcbiAgICBjb25zdCB7c2NvcGV9ID0gcy5tXG4gICAgY29uc3QgZ2V0QXJnc01ldGhvZE5hbWUgPSBgZ2V0JHtpbmZsZWN0aW9uLmNhbWVsaXplKHNjb3BlKX1BcmdzYFxuICAgIGNvbnN0IGFyZ3MgPSBEZXZpc2VbZ2V0QXJnc01ldGhvZE5hbWVdKClcblxuICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgTG9hZGluZyAke3Njb3BlfSB3aXRoIHJlcXVlc3RgKVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgU2VydmljZXMuY3VycmVudCgpLnNlbmRSZXF1ZXN0KFwiRGV2aXNlOjpDdXJyZW50XCIsIHtxdWVyeTogYXJncy5xdWVyeSwgc2NvcGV9KVxuICAgIGNvbnN0IGN1cnJlbnQgPSBkaWdnKHJlc3VsdCwgXCJjdXJyZW50XCIpWzBdXG5cbiAgICBpZiAocmVxdWVzdElkICE9IGxvYWRDdXJyZW50VXNlclJlcXVlc3RJZFJlZi5jdXJyZW50KSByZXR1cm5cblxuICAgIGlmIChjdXJyZW50KSBEZXZpc2UudXBkYXRlU2Vzc2lvbihjdXJyZW50KVxuXG4gICAgcy5zZXQoe1xuICAgICAgcmVzdWx0OiB7XG4gICAgICAgIGxvYWRlZDogdHJ1ZSxcbiAgICAgICAgbW9kZWw6IGN1cnJlbnRcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgZXZlbnRzLmVtaXQoXCJjdXJyZW50VXNlckxvYWRlZFwiLCB7Y3VycmVudH0pXG4gIH0sIFtdKVxuXG4gIGNvbnN0IGRlZmF1bHRDdXJyZW50VXNlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCB7c2NvcGUsIHNjb3BlTmFtZX0gPSBzLm1cbiAgICBsZXQgY3VycmVudFxuXG4gICAgaWYgKERldmlzZS5jdXJyZW50KCkuaGFzQ3VycmVudFNjb3BlKHMubS5zY29wZSkpIHtcbiAgICAgIGN1cnJlbnQgPSBEZXZpc2UuY3VycmVudCgpLmdldEN1cnJlbnRTY29wZShzY29wZSlcblxuICAgICAgbG9nZ2VyLmRlYnVnKCgpID0+IGBTZXR0aW5nICR7c2NvcGV9IGZyb20gY3VycmVudCBzY29wZTogJHtjdXJyZW50Py5pZCgpfWApXG4gICAgfSBlbHNlIGlmIChEZXZpc2UuY3VycmVudCgpLmhhc0dsb2JhbEN1cnJlbnRTY29wZShzY29wZSkpIHtcbiAgICAgIGN1cnJlbnQgPSBEZXZpc2Vbc2NvcGVOYW1lXSgpXG5cbiAgICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgU2V0dGluZyAke3Njb3BlfSBmcm9tIGdsb2JhbCBjdXJyZW50IHNjb3BlOiAke2N1cnJlbnQ/LmlkKCl9YClcbiAgICB9XG5cbiAgICBpZiAoY3VycmVudCkge1xuICAgICAgZXZlbnRzLmVtaXQoXCJjdXJyZW50VXNlckxvYWRlZFwiLCB7Y3VycmVudH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIGN1cnJlbnRcbiAgfSwgW10pXG5cbiAgcy51c2VTdGF0ZXMoe1xuICAgIHJlc3VsdDogKCkgPT4gKHtcbiAgICAgIGxvYWRlZDogZmFsc2UsXG4gICAgICBtb2RlbDogZGVmYXVsdEN1cnJlbnRVc2VyKClcbiAgICB9KVxuICB9KVxuXG4gIGNvbnN0IHVwZGF0ZUN1cnJlbnRVc2VyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHMuc2V0KHtcbiAgICAgIHJlc3VsdDoge1xuICAgICAgICBsb2FkZWQ6IHRydWUsXG4gICAgICAgIG1vZGVsOiBEZXZpc2Vbcy5tLnNjb3BlTmFtZV0oKVxuICAgICAgfVxuICAgIH0pXG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFEZXZpc2UuY3VycmVudCgpLmhhc0dsb2JhbEN1cnJlbnRTY29wZShzLm0uc2NvcGUpICYmICFEZXZpc2UuY3VycmVudCgpLmhhc0N1cnJlbnRTY29wZShzLm0uc2NvcGUpKSB7XG4gICAgICBsb2dnZXIuZGVidWcoKCkgPT4gYERldmlzZSBoYXNuJ3QgZ290IGN1cnJlbnQgc2NvcGUgJHtzLm0uc2NvcGV9IHNvIGxvYWRpbmcgZnJvbSByZXF1ZXN0YClcbiAgICAgIGxvYWRDdXJyZW50VXNlckZyb21SZXF1ZXN0KClcbiAgICB9XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGxvYWRDdXJyZW50VXNlclJlcXVlc3RJZFJlZi5jdXJyZW50ICs9IDFcbiAgICB9XG4gIH0sIFtdKVxuXG4gIGNvbnN0IG9uRGV2aXNlU2lnbkluID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHVwZGF0ZUN1cnJlbnRVc2VyKClcbiAgfSwgW10pXG5cbiAgY29uc3Qgb25EZXZpc2VTaWduT3V0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHVwZGF0ZUN1cnJlbnRVc2VyKClcbiAgfSwgW10pXG5cbiAgdXNlRXZlbnRFbWl0dGVyKERldmlzZS5ldmVudHMoKSwgXCJvbkRldmlzZVNpZ25JblwiLCBvbkRldmlzZVNpZ25JbilcbiAgdXNlRXZlbnRFbWl0dGVyKERldmlzZS5ldmVudHMoKSwgXCJvbkRldmlzZVNpZ25PdXRcIiwgb25EZXZpc2VTaWduT3V0KVxuXG4gIHJldHVybiAoXG4gICAgPFNjb3BlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17cy5zLnJlc3VsdH0+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9TY29wZUNvbnRleHQuUHJvdmlkZXI+XG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQgVXNlQ3VycmVudFVzZXJDb250ZXh0XG4iXX0=
|
|
113
|
+
};
|
|
114
|
+
updateCurrentUser = () => {
|
|
115
|
+
this.setState({ result: { loaded: true, model: Devise[this.scopeName]() } });
|
|
116
|
+
};
|
|
117
|
+
onDeviseSignIn = () => {
|
|
118
|
+
// Invalidate any in-flight loadCurrentUserFromRequest — it was dispatched
|
|
119
|
+
// against the pre-sign-in session and will resolve with current: null,
|
|
120
|
+
// flipping the context back to signed-out and re-mounting the sign-in
|
|
121
|
+
// component after we've already applied the signed-in state here.
|
|
122
|
+
this.loadCurrentUserRequestId += 1;
|
|
123
|
+
this.updateCurrentUser();
|
|
124
|
+
};
|
|
125
|
+
onDeviseSignOut = () => {
|
|
126
|
+
// Symmetric to onDeviseSignIn: a late response from a request dispatched
|
|
127
|
+
// before sign-out could otherwise overwrite the signed-out state with a
|
|
128
|
+
// stale signed-in model.
|
|
129
|
+
this.loadCurrentUserRequestId += 1;
|
|
130
|
+
this.updateCurrentUser();
|
|
131
|
+
};
|
|
132
|
+
}));
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWN1cnJlbnQtdXNlci1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJ1c2UtY3VycmVudC11c2VyLWNvbnRleHQuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxZQUFZO0FBQ1osT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUE7QUFDeEMsT0FBTyxFQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQTtBQUN6RixPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ2hDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQTtBQUNsQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUE7QUFDekIsT0FBTyxRQUFRLE1BQU0sZUFBZSxDQUFBO0FBQ3BDLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUE7QUFDOUIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHVCQUF1QixDQUFBO0FBQzVDLE9BQU8sSUFBSSxNQUFNLGlDQUFpQyxDQUFBO0FBQ2xELE9BQU8sY0FBYyxNQUFNLGtCQUFrQixDQUFBO0FBQzdDLE9BQU8sZUFBZSxNQUFNLHNCQUFzQixDQUFBO0FBQ2xELE9BQU8sTUFBTSxNQUFNLG9DQUFvQyxDQUFBO0FBRXZELE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLEVBQUMsSUFBSSxFQUFFLGtDQUFrQyxFQUFDLENBQUMsQ0FBQTtBQUVyRTs7R0FFRztBQUNIOzs7O0dBSUc7QUFDSDs7OztHQUlHO0FBQ0g7OztHQUdHO0FBQ0gsZUFBZSxJQUFJLENBQUMsY0FBYyxDQUFDLCtDQUErQyxDQUFDLE1BQU0sNkJBQThCLFNBQVEsY0FBYztJQUMzSSxNQUFNLENBQUMsU0FBUyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUk7UUFDeEIsS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNO0tBQ3hCLENB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LHlFQUF5RTtRQUN6RSx3RUFBd0U7UUFDeEUseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyx3QkFBd0IsSUFBSSxDQUFDLENBQUE7UUFDbEMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7SUFDMUIsQ0FBQyxDQUFBO0NBQ0YsQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIlxuaW1wb3J0IHtTaGFwZUNvbXBvbmVudCwgc2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9zaGFwZS1jb21wb25lbnQuanNcIlxuaW1wb3J0IERldmlzZSBmcm9tIFwiLi9kZXZpc2UuanNcIlxuaW1wb3J0IExvZ2dlciBmcm9tIFwiLi9sb2dnZXIuanNcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCBTZXJ2aWNlcyBmcm9tIFwiLi9zZXJ2aWNlcy5qc1wiXG5pbXBvcnQge2RpZ2d9IGZyb20gXCJkaWdnZXJpemVcIlxuaW1wb3J0IHtldmVudHN9IGZyb20gXCIuL3VzZS1jdXJyZW50LXVzZXIuanNcIlxuaW1wb3J0IG1lbW8gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL21lbW8uanNcIlxuaW1wb3J0IHByb3BUeXBlc0V4YWN0IGZyb20gXCJwcm9wLXR5cGVzLWV4YWN0XCJcbmltcG9ydCB1c2VFdmVudEVtaXR0ZXIgZnJvbSBcInlhLXVzZS1ldmVudC1lbWl0dGVyXCJcbmltcG9ydCB1c2VOb3cgZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL3VzZS1ub3cuanNcIlxuXG5jb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKHtuYW1lOiBcIkFwaU1ha2VyIC8gVXNlQ3VycmVudFVzZXJDb250ZXh0XCJ9KVxuXG4vKipcbiAqIEB0eXBlZGVmIHtpbXBvcnQoXCIuL3VzZS1jdXJyZW50LXVzZXIuanNcIikuQ3VycmVudFVzZXJNb2RlbH0gQ3VycmVudFVzZXJNb2RlbFxuICovXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IFJlc3VsdFxuICogQHByb3BlcnR5IHtib29sZWFufSBsb2FkZWRcbiAqIEBwcm9wZXJ0eSB7Q3VycmVudFVzZXJNb2RlbH0gbW9kZWxcbiAqL1xuLyoqXG4gKiBAdHlwZWRlZiB7b2JqZWN0fSBQcm9wc1xuICogQHByb3BlcnR5IHtpbXBvcnQoXCJyZWFjdFwiKS5SZWFjdE5vZGV9IGNoaWxkcmVuXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3Njb3BlXVxuICovXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IFN0YXRlXG4gKiBAcHJvcGVydHkge1Jlc3VsdH0gcmVzdWx0XG4gKi9cbmV4cG9ydCBkZWZhdWx0IG1lbW8oc2hhcGVDb21wb25lbnQoLyoqIEBhdWdtZW50cyB7U2hhcGVDb21wb25lbnQ8UHJvcHMsIFN0YXRlPn0gKi8gY2xhc3MgQXBpTWFrZXJVc2VDdXJyZW50VXNlckNvbnRleHQgZXh0ZW5kcyBTaGFwZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSBwcm9wVHlwZXNFeGFjdCh7XG4gICAgY2hpbGRyZW46IFByb3BUeXBlcy5ub2RlLFxuICAgIHNjb3BlOiBQcm9wVHlwZXMuc3RyaW5nXG4gIH0pXG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBzY29wZTogXCJ1c2VyXCJcbiAgfVxuXG4gIHN0YXRlID0ge1xuICAgIHJlc3VsdDogLyoqIEB0eXBlIHtSZXN1bHR9ICovICh7XG4gICAgICBsb2FkZWQ6IGZhbHNlLFxuICAgICAgbW9kZWw6IG51bGxcbiAgICB9KVxuICB9XG5cbiAgbG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkID0gMFxuXG4gIC8qKiBAdHlwZSB7aW1wb3J0KFwicmVhY3RcIikuQ29udGV4dDxpbXBvcnQoXCIuL3VzZS1jdXJyZW50LXVzZXIuanNcIikuQ3VycmVudFVzZXJDb250ZXh0VmFsdWUgfCB1bmRlZmluZWQ+fSAqL1xuICBTY29wZUNvbnRleHRcblxuICAvKiogQHR5cGUge3N0cmluZ30gKi9cbiAgc2NvcGVcblxuICAvKiogQHR5cGUge3N0cmluZ30gKi9cbiAgc2NvcGVOYW1lXG5cbiAgc2V0dXAoKSB7XG4gICAgY29uc3Qgc2NvcGUgPSB0aGlzLnAuc2NvcGUgPz8gXCJ1c2VyXCJcbiAgICBjb25zdCBzY29wZU5hbWUgPSBgY3VycmVudCR7aW5mbGVjdGlvbi5jYW1lbGl6ZShzY29wZSl9YFxuICAgIGNvbnN0IHNjb3BlSW5zdGFuY2UgPSBEZXZpc2UuZ2V0U2NvcGUoc2NvcGUpXG5cbiAgICB0aGlzLnNjb3BlID0gc2NvcGVcbiAgICB0aGlzLnNjb3BlTmFtZSA9IHNjb3BlTmFtZVxuICAgIHRoaXMuU2NvcGVDb250ZXh0ID0gc2NvcGVJbnN0YW5jZS5nZXRDb250ZXh0KClcblxuICAgIHVzZU5vdygoKSA9PiB7XG4gICAgICBpZiAoRGV2aXNlLmN1cnJlbnQoKS5oYXNDdXJyZW50U2NvcGUodGhpcy5zY29wZSkgfHwgRGV2aXNlLmN1cnJlbnQoKS5oYXNHbG9iYWxDdXJyZW50U2NvcGUodGhpcy5zY29wZSkpIHtcbiAgICAgICAgdGhpcy5zLnJlc3VsdCA9IHtsb2FkZWQ6IGZhbHNlLCBtb2RlbDogdGhpcy5kZWZhdWx0Q3VycmVudFVzZXIoKSA/PyBudWxsfVxuICAgICAgfVxuICAgIH0sIFtdKVxuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICghRGV2aXNlLmN1cnJlbnQoKS5oYXNHbG9iYWxDdXJyZW50U2NvcGUodGhpcy5zY29wZSkgJiYgIURldmlzZS5jdXJyZW50KCkuaGFzQ3VycmVudFNjb3BlKHRoaXMuc2NvcGUpKSB7XG4gICAgICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgRGV2aXNlIGhhc24ndCBnb3QgY3VycmVudCBzY29wZSAke3RoaXMuc2NvcGV9IHNvIGxvYWRpbmcgZnJvbSByZXF1ZXN0YClcbiAgICAgICAgdGhpcy5sb2FkQ3VycmVudFVzZXJGcm9tUmVxdWVzdCgpXG4gICAgICB9XG5cbiAgICAgIC8vIERpc2NhcmQgYW55IGluLWZsaWdodCBjdXJyZW50LXVzZXIgbG9hZCB3aGVuIHRoaXMgaW5zdGFuY2UgdGVhcnMgZG93bi5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkICs9IDFcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIHVzZUV2ZW50RW1pdHRlcihEZXZpc2UuZXZlbnRzKCksIFwib25EZXZpc2VTaWduSW5cIiwgdGhpcy50dC5vbkRldmlzZVNpZ25JbilcbiAgICB1c2VFdmVudEVtaXR0ZXIoRGV2aXNlLmV2ZW50cygpLCBcIm9uRGV2aXNlU2lnbk91dFwiLCB0aGlzLnR0Lm9uRGV2aXNlU2lnbk91dClcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7U2NvcGVDb250ZXh0fSA9IHRoaXNcblxuICAgIHJldHVybiAoXG4gICAgICA8U2NvcGVDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt0aGlzLnMucmVzdWx0fT5cbiAgICAgICAge3RoaXMucC5jaGlsZHJlbn1cbiAgICAgIDwvU2NvcGVDb250ZXh0LlByb3ZpZGVyPlxuICAgIClcbiAgfVxuXG4gIGxvYWRDdXJyZW50VXNlckZyb21SZXF1ZXN0ID0gYXN5bmMgKCkgPT4ge1xuICAgIC8vIElnbm9yZSBsYXRlIGN1cnJlbnQtdXNlciByZXNwb25zZXMgc28gdGhlIGxpdmUgcHJvdmlkZXIgY29udHJvbHMgc2Vzc2lvbiBzdGF0ZS5cbiAgICBjb25zdCByZXF1ZXN0SWQgPSB0aGlzLmxvYWRDdXJyZW50VXNlclJlcXVlc3RJZCArIDFcblxuICAgIHRoaXMubG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkID0gcmVxdWVzdElkXG5cbiAgICBjb25zdCBnZXRBcmdzTWV0aG9kTmFtZSA9IGBnZXQke2luZmxlY3Rpb24uY2FtZWxpemUodGhpcy5zY29wZSl9QXJnc2BcbiAgICBjb25zdCBhcmdzID0gRGV2aXNlW2dldEFyZ3NNZXRob2ROYW1lXSgpXG5cbiAgICBsb2dnZXIuZGVidWcoKCkgPT4gYExvYWRpbmcgJHt0aGlzLnNjb3BlfSB3aXRoIHJlcXVlc3RgKVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgU2VydmljZXMuY3VycmVudCgpLnNlbmRSZXF1ZXN0KFwiRGV2aXNlOjpDdXJyZW50XCIsIHtxdWVyeTogYXJncy5xdWVyeSwgc2NvcGU6IHRoaXMuc2NvcGV9KVxuICAgIGNvbnN0IGN1cnJlbnQgPSBkaWdnKHJlc3VsdCwgXCJjdXJyZW50XCIpWzBdXG5cbiAgICBpZiAocmVxdWVzdElkICE9IHRoaXMubG9hZEN1cnJlbnRVc2VyUmVxdWVzdElkKSByZXR1cm5cblxuICAgIGlmIChjdXJyZW50KSBEZXZpc2UudXBkYXRlU2Vzc2lvbihjdXJyZW50KVxuXG4gICAgdGhpcy5zZXRTdGF0ZSh7cmVzdWx0OiB7bG9hZGVkOiB0cnVlLCBtb2RlbDogY3VycmVudH19KVxuXG4gICAgZXZlbnRzLmVtaXQoXCJjdXJyZW50VXNlckxvYWRlZFwiLCB7Y3VycmVudH0pXG4gIH1cblxuICBkZWZhdWx0Q3VycmVudFVzZXIgPSAoKSA9PiB7XG4gICAgbGV0IGN1cnJlbnRcblxuICAgIGlmIChEZXZpc2UuY3VycmVudCgpLmhhc0N1cnJlbnRTY29wZSh0aGlzLnNjb3BlKSkge1xuICAgICAgY3VycmVudCA9IERldmlzZS5jdXJyZW50KCkuZ2V0Q3VycmVudFNjb3BlKHRoaXMuc2NvcGUpXG4gICAgICBsb2dnZXIuZGVidWcoKCkgPT4gYFNldHRpbmcgJHt0aGlzLnNjb3BlfSBmcm9tIGN1cnJlbnQgc2NvcGU6ICR7Y3VycmVudD8uaWQoKX1gKVxuICAgIH0gZWxzZSBpZiAoRGV2aXNlLmN1cnJlbnQoKS5oYXNHbG9iYWxDdXJyZW50U2NvcGUodGhpcy5zY29wZSkpIHtcbiAgICAgIGN1cnJlbnQgPSBEZXZpc2VbdGhpcy5zY29wZU5hbWVdKClcbiAgICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgU2V0dGluZyAke3RoaXMuc2NvcGV9IGZyb20gZ2xvYmFsIGN1cnJlbnQgc2NvcGU6ICR7Y3VycmVudD8uaWQoKX1gKVxuICAgIH1cblxuICAgIGlmIChjdXJyZW50KSBldmVudHMuZW1pdChcImN1cnJlbnRVc2VyTG9hZGVkXCIsIHtjdXJyZW50fSlcblxuICAgIHJldHVybiBjdXJyZW50XG4gIH1cblxuICB1cGRhdGVDdXJyZW50VXNlciA9ICgpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHtyZXN1bHQ6IHtsb2FkZWQ6IHRydWUsIG1vZGVsOiBEZXZpc2VbdGhpcy5zY29wZU5hbWVdKCl9fSlcbiAgfVxuXG4gIG9uRGV2aXNlU2lnbkluID0gKCkgPT4ge1xuICAgIC8vIEludmFsaWRhdGUgYW55IGluLWZsaWdodCBsb2FkQ3VycmVudFVzZXJGcm9tUmVxdWVzdCDigJQgaXQgd2FzIGRpc3BhdGNoZWRcbiAgICAvLyBhZ2FpbnN0IHRoZSBwcmUtc2lnbi1pbiBzZXNzaW9uIGFuZCB3aWxsIHJlc29sdmUgd2l0aCBjdXJyZW50OiBudWxsLFxuICAgIC8vIGZsaXBwaW5nIHRoZSBjb250ZXh0IGJhY2sgdG8gc2lnbmVkLW91dCBhbmQgcmUtbW91bnRpbmcgdGhlIHNpZ24taW5cbiAgICAvLyBjb21wb25lbnQgYWZ0ZXIgd2UndmUgYWxyZWFkeSBhcHBsaWVkIHRoZSBzaWduZWQtaW4gc3RhdGUgaGVyZS5cbiAgICB0aGlzLmxvYWRDdXJyZW50VXNlclJlcXVlc3RJZCArPSAxXG4gICAgdGhpcy51cGRhdGVDdXJyZW50VXNlcigpXG4gIH1cblxuICBvbkRldmlzZVNpZ25PdXQgPSAoKSA9PiB7XG4gICAgLy8gU3ltbWV0cmljIHRvIG9uRGV2aXNlU2lnbkluOiBhIGxhdGUgcmVzcG9uc2UgZnJvbSBhIHJlcXVlc3QgZGlzcGF0Y2hlZFxuICAgIC8vIGJlZm9yZSBzaWduLW91dCBjb3VsZCBvdGhlcndpc2Ugb3ZlcndyaXRlIHRoZSBzaWduZWQtb3V0IHN0YXRlIHdpdGggYVxuICAgIC8vIHN0YWxlIHNpZ25lZC1pbiBtb2RlbC5cbiAgICB0aGlzLmxvYWRDdXJyZW50VXNlclJlcXVlc3RJZCArPSAxXG4gICAgdGhpcy51cGRhdGVDdXJyZW50VXNlcigpXG4gIH1cbn0pKVxuIl19
|
package/build/utils/icon.js
CHANGED
|
@@ -31,7 +31,6 @@ const iconMap = {
|
|
|
31
31
|
*/
|
|
32
32
|
/** @typedef {Record<string, never>} State */
|
|
33
33
|
export default memo(shapeComponent(/** @augments {ShapeComponent<Props, State>} */ class ApiMakerUtilsIcon extends ShapeComponent {
|
|
34
|
-
/** @type {Props} */
|
|
35
34
|
static propTypes = {
|
|
36
35
|
color: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
37
36
|
dataSet: PropTypes.object,
|
|
@@ -103,4 +102,4 @@ export default memo(shapeComponent(/** @augments {ShapeComponent<Props, State>}
|
|
|
103
102
|
}
|
|
104
103
|
}
|
|
105
104
|
}));
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsidXRpbHMvaWNvbi5qc3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFlBQVk7QUFDWix3RUFBd0U7QUFDeEUsT0FBTyxlQUFlLE1BQU0sMENBQTBDLENBQUE7QUFDdEUsT0FBTyxnQkFBZ0IsTUFBTSwyQ0FBMkMsQ0FBQTtBQUN4RSxPQUFPLGdCQUFnQixNQUFNLDJDQUEyQyxDQUFBO0FBQ3hFLE9BQU8saUJBQWlCLE1BQU0sNENBQTRDLENBQUE7QUFDMUUsT0FBTyxJQUFJLE1BQU0saUNBQWlDLENBQUE7QUFDbEQsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFBO0FBQ2xDLE9BQU8sS0FBSyxFQUFFLEVBQUMsT0FBTyxFQUFDLE1BQU0sT0FBTyxDQUFBO0FBQ3BDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUE7QUFDdkMsT0FBTyxFQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQTtBQUN6RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsTUFBTSxtQkFBbUIsR0FBRyxlQUFlLENBQUMsY0FBYyxFQUFFLENBQUE7QUFDNUQsTUFBTSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtBQUM5RCxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxDQUFBO0FBQzlELE1BQU0scUJBQXFCLEdBQUcsaUJBQWlCLENBQUMsY0FBYyxFQUFFLENBQUE7QUFFaEUsTUFBTSxPQUFPLEdBQUc7SUFDZCxNQUFNLEVBQUUsYUFBYTtJQUNyQixNQUFNLEVBQUUsYUFBYTtJQUNyQixNQUFNLEVBQUUsYUFBYTtDQUN0QixDQUFBO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCw2Q0FBNkM7QUFDN0MsZUFBZSxJQUFJLENBQUMsY0FBYyxDQUFDLCtDQUErQyxDQUFDLE1BQU0saUJBQWtCLFNBQVEsY0FB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OlsiLy8gQHRzLWNoZWNrXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1tdWx0aS1zcGFjZXMsIHByZWZlci1vYmplY3Qtc3ByZWFkLCBzb3J0LWltcG9ydHMgKi9cbmltcG9ydCBGb250QXdlc29tZUljb24gZnJvbSBcInJlYWN0LW5hdGl2ZS12ZWN0b3ItaWNvbnMvRm9udEF3ZXNvbWUuanNcIlxuaW1wb3J0IEZvbnRBd2Vzb21lNUljb24gZnJvbSBcInJlYWN0LW5hdGl2ZS12ZWN0b3ItaWNvbnMvRm9udEF3ZXNvbWU1LmpzXCJcbmltcG9ydCBGb250QXdlc29tZTZJY29uIGZyb20gXCJyZWFjdC1uYXRpdmUtdmVjdG9yLWljb25zL0ZvbnRBd2Vzb21lNi5qc1wiXG5pbXBvcnQgTWF0ZXJpYWxJY29uc0ljb24gZnJvbSBcInJlYWN0LW5hdGl2ZS12ZWN0b3ItaWNvbnMvTWF0ZXJpYWxJY29ucy5qc1wiXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvYnVpbGQvbWVtby5qc1wiXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCJcbmltcG9ydCBSZWFjdCwge3VzZU1lbW99IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQge1N0eWxlU2hlZXR9IGZyb20gXCJyZWFjdC1uYXRpdmVcIlxuaW1wb3J0IHtTaGFwZUNvbXBvbmVudCwgc2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9zaGFwZS1jb21wb25lbnQuanNcIlxuaW1wb3J0IHt1c2VNZXJnZWRTdHlsZX0gZnJvbSBcIi4vZGVmYXVsdC1zdHlsZVwiXG5cbmNvbnN0IEZvbnRBd2Vzb21lR2x5cGhNYXAgPSBGb250QXdlc29tZUljb24uZ2V0UmF3R2x5cGhNYXAoKVxuY29uc3QgRm9udEF3ZXNvbWU1R2x5cGhNYXAgPSBGb250QXdlc29tZTVJY29uLmdldFJhd0dseXBoTWFwKClcbmNvbnN0IEZvbnRBd2Vzb21lNkdseXBoTWFwID0gRm9udEF3ZXNvbWU2SWNvbi5nZXRSYXdHbHlwaE1hcCgpXG5jb25zdCBNYXRlcmlhbEljb25zR2x5cGhNYXAgPSBNYXRlcmlhbEljb25zSWNvbi5nZXRSYXdHbHlwaE1hcCgpXG5cbmNvbnN0IGljb25NYXAgPSB7XG4gIHBlbmNpbDogXCJGb250QXdlc29tZVwiLFxuICByZW1vdmU6IFwiRm9udEF3ZXNvbWVcIixcbiAgc2VhcmNoOiBcIkZvbnRBd2Vzb21lXCJcbn1cblxuLyoqXG4gKiBAdHlwZWRlZiB7b2JqZWN0fSBQcm9wc1xuICogQHByb3BlcnR5IHtzdHJpbmd8bnVtYmVyfSBbY29sb3JdXG4gKiBAcHJvcGVydHkge29iamVjdH0gW2RhdGFTZXRdXG4gKiBAcHJvcGVydHkge3N0cmluZ30gbmFtZVxuICogQHByb3BlcnR5IHtudW1iZXJ9IFtzaXplXVxuICogQHByb3BlcnR5IHtpbXBvcnQoXCJyZWFjdC1uYXRpdmVcIikuU3R5bGVQcm9wPGltcG9ydChcInJlYWN0LW5hdGl2ZVwiKS5UZXh0U3R5bGU+fSBbc3R5bGVdIE9ubHkgYGNvbG9yYCBpcyBmb3J3YXJkZWQuXG4gKiBAcHJvcGVydHkgeyhcIkZvbnRBd2Vzb21lXCJ8XCJGb250QXdlc29tZTVcInxcIkZvbnRBd2Vzb21lNlwifFwiTWF0ZXJpYWxJY29uc1wiKX0gW3ZlcnNpb25dXG4gKi9cbi8qKiBAdHlwZWRlZiB7UmVjb3JkPHN0cmluZywgbmV2ZXI+fSBTdGF0ZSAqL1xuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudCgvKiogQGF1Z21lbnRzIHtTaGFwZUNvbXBvbmVudDxQcm9wcywgU3RhdGU+fSAqLyBjbGFzcyBBcGlNYWtlclV0aWxzSWNvbiBleHRlbmRzIFNoYXBlQ29tcG9uZW50IHtcbiAgLyoqIEB0eXBlIHtQcm9wc30gKi9cbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBjb2xvcjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLnN0cmluZ10pLFxuICAgIGRhdGFTZXQ6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgbmFtZTogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIHNpemU6IFByb3BUeXBlcy5udW1iZXIsXG4gICAgc3R5bGU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5vYmplY3QsIFByb3BUeXBlcy5hcnJheSwgUHJvcFR5cGVzLm51bWJlcl0pLFxuICAgIHZlcnNpb246IFByb3BUeXBlcy5vbmVPZihbXCJGb250QXdlc29tZVwiLCBcIkZvbnRBd2Vzb21lNVwiLCBcIkZvbnRBd2Vzb21lNlwiLCBcIk1hdGVyaWFsSWNvbnNcIl0pXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2RhdGFTZXQsIG5hbWUsIHN0eWxlLCB2ZXJzaW9uLCAuLi5yZXN0UHJvcHN9ID0gdGhpcy5wcm9wc1xuICAgIGNvbnN0IHtzdHlsZXNMaXN0OiBpbmhlcml0ZWRTdHlsZXNMaXN0fSA9IHVzZU1lcmdlZFN0eWxlKG51bGwsIFwiVGV4dFwiKVxuICAgIGxldCBhY3R1YWxWZXJzaW9uID0gdmVyc2lvblxuXG4gICAgaWYgKCFhY3R1YWxWZXJzaW9uKSB7XG4gICAgICBpZiAobmFtZSBpbiBpY29uTWFwKSB7XG4gICAgICAgIGFjdHVhbFZlcnNpb24gPSBpY29uTWFwW25hbWVdXG4gICAgICB9IGVsc2UgaWYgKG5hbWUgaW4gRm9udEF3ZXNvbWU2R2x5cGhNYXApIHtcbiAgICAgICAgYWN0dWFsVmVyc2lvbiA9IFwiRm9udEF3ZXNvbWU2XCJcbiAgICAgIH0gZWxzZSBpZiAobmFtZSBpbiBGb250QXdlc29tZTVHbHlwaE1hcCkge1xuICAgICAgICBhY3R1YWxWZXJzaW9uID0gXCJGb250QXdlc29tZTVcIlxuICAgICAgfSBlbHNlIGlmIChuYW1lIGluIEZvbnRBd2Vzb21lR2x5cGhNYXApIHtcbiAgICAgICAgYWN0dWFsVmVyc2lvbiA9IFwiRm9udEF3ZXNvbWVcIlxuICAgICAgfSBlbHNlIGlmIChuYW1lIGluIE1hdGVyaWFsSWNvbnNHbHlwaE1hcCkge1xuICAgICAgICBhY3R1YWxWZXJzaW9uID0gIFwiTWF0ZXJpYWxJY29uc1wiXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhY3R1YWxWZXJzaW9uID0gXCJGb250QXdlc29tZVwiXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gT25seSBmb3J3YXJkIHNvbWUgc3R5bGVzIGxpa2UgY29sb3IgZnJvbSBpbmhlcml0ZWQgVGV4dCBzdHlsZXMuXG4gICAgY29uc3QgYWN0dWFsU3R5bGVzTGlzdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgY29uc3QgYWN0dWFsU3R5bGVzTGlzdCA9IFtdXG5cbiAgICAgIGZvciAoY29uc3QgaW5oZXJpdGVkU3R5bGUgb2YgaW5oZXJpdGVkU3R5bGVzTGlzdCkge1xuICAgICAgICBjb25zdCBmbGF0dGVuZWRTdHlsZSA9IFN0eWxlU2hlZXQuZmxhdHRlbihpbmhlcml0ZWRTdHlsZSkgfHwge31cblxuICAgICAgICBpZiAoXCJjb2xvclwiIGluIGZsYXR0ZW5lZFN0eWxlKSB7XG4gICAgICAgICAgYWN0dWFsU3R5bGVzTGlzdC5wdXNoKHtjb2xvcjogZmxhdHRlbmVkU3R5bGUuY29sb3J9KVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHN0eWxlKSkge1xuICAgICAgICBmb3IgKGNvbnN0IHByb3BTdHlsZSBvZiBzdHlsZSkge1xuICAgICAgICAgIGlmIChwcm9wU3R5bGUpIHtcbiAgICAgICAgICAgIGFjdHVhbFN0eWxlc0xpc3QucHVzaChwcm9wU3R5bGUpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHN0eWxlKSB7XG4gICAgICAgIGFjdHVhbFN0eWxlc0xpc3QucHVzaChzdHlsZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjdHVhbFN0eWxlc0xpc3RcbiAgICB9LCBbaW5oZXJpdGVkU3R5bGVzTGlzdCwgc3R5bGVdKVxuXG4gICAgY29uc3QgYWN0dWFsRGF0YVNldCA9IHVzZU1lbW8oKCkgPT4gT2JqZWN0LmFzc2lnbih7bmFtZSwgdmVyc2lvbjogYWN0dWFsVmVyc2lvbn0sIGRhdGFTZXQpLCBbYWN0dWFsVmVyc2lvbiwgZGF0YVNldCwgbmFtZV0pXG5cbiAgICBpZiAoYWN0dWFsVmVyc2lvbiA9PSBcIkZvbnRBd2Vzb21lXCIpIHtcbiAgICAgIHJldHVybiA8Rm9udEF3ZXNvbWVJY29uIGRhdGFTZXQ9e2FjdHVhbERhdGFTZXR9IG5hbWU9e25hbWV9IHN0eWxlPXthY3R1YWxTdHlsZXNMaXN0fSB7Li4ucmVzdFByb3BzfSAvPlxuICAgIH0gZWxzZSBpZiAoYWN0dWFsVmVyc2lvbiA9PSBcIkZvbnRBd2Vzb21lNVwiKSB7XG4gICAgICByZXR1cm4gPEZvbnRBd2Vzb21lNUljb24gZGF0YVNldD17YWN0dWFsRGF0YVNldH0gbmFtZT17bmFtZX0gc3R5bGU9e2FjdHVhbFN0eWxlc0xpc3R9IHsuLi5yZXN0UHJvcHN9IC8+XG4gICAgfSBlbHNlIGlmIChhY3R1YWxWZXJzaW9uID09IFwiRm9udEF3ZXNvbWU2XCIpIHtcbiAgICAgIHJldHVybiA8Rm9udEF3ZXNvbWU2SWNvbiBkYXRhU2V0PXthY3R1YWxEYXRhU2V0fSBuYW1lPXtuYW1lfSBzdHlsZT17YWN0dWFsU3R5bGVzTGlzdH0gey4uLnJlc3RQcm9wc30gLz5cbiAgICB9IGVsc2UgaWYgKGFjdHVhbFZlcnNpb24gPT0gXCJNYXRlcmlhbEljb25zXCIpIHtcbiAgICAgIHJldHVybiA8TWF0ZXJpYWxJY29uc0ljb24gZGF0YVNldD17YWN0dWFsRGF0YVNldH0gbmFtZT17bmFtZX0gc3R5bGU9e2FjdHVhbFN0eWxlc0xpc3R9IHsuLi5yZXN0UHJvcHN9IC8+XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biB2ZXJzaW9uOiAke2FjdHVhbFZlcnNpb259YClcbiAgICB9XG4gIH1cbn0pKVxuIl19
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsidXRpbHMvaWNvbi5qc3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFlBQVk7QUFDWix3RUFBd0U7QUFDeEUsT0FBTyxlQUFlLE1BQU0sMENBQTBDLENBQUE7QUFDdEUsT0FBTyxnQkFBZ0IsTUFBTSwyQ0FBMkMsQ0FBQTtBQUN4RSxPQUFPLGdCQUFnQixNQUFNLDJDQUEyQyxDQUFBO0FBQ3hFLE9BQU8saUJBQWlCLE1BQU0sNENBQTRDLENBQUE7QUFDMUUsT0FBTyxJQUFJLE1BQU0saUNBQWlDLENBQUE7QUFDbEQsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFBO0FBQ2xDLE9BQU8sS0FBSyxFQUFFLEVBQUMsT0FBTyxFQUFDLE1BQU0sT0FBTyxDQUFBO0FBQ3BDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUE7QUFDdkMsT0FBTyxFQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQTtBQUN6RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsTUFBTSxtQkFBbUIsR0FBRyxlQUFlLENBQUMsY0FBYyxFQUFFLENBQUE7QUFDNUQsTUFBTSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtBQUM5RCxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxDQUFBO0FBQzlELE1BQU0scUJBQXFCLEdBQUcsaUJBQWlCLENBQUMsY0FBYyxFQUFFLENBQUE7QUFFaEUsTUFBTSxPQUFPLEdBQUc7SUFDZCxNQUFNLEVBQUUsYUFBYTtJQUNyQixNQUFNLEVBQUUsYUFBYTtJQUNyQixNQUFNLEVBQUUsYUFBYTtDQUN0QixDQUFBO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCw2Q0FBNkM7QUFDN0MsZUFBZSxJQUFJLENBQUMsY0FBYyxDQUFDLCtDQUErQyxDQUFDLE1BQU0saUJBQWtCLFNBQVEsY0FB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Y2tcbi8qIGVzbGludC1kaXNhYmxlIG5vLW11bHRpLXNwYWNlcywgcHJlZmVyLW9iamVjdC1zcHJlYWQsIHNvcnQtaW1wb3J0cyAqL1xuaW1wb3J0IEZvbnRBd2Vzb21lSWNvbiBmcm9tIFwicmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9Gb250QXdlc29tZS5qc1wiXG5pbXBvcnQgRm9udEF3ZXNvbWU1SWNvbiBmcm9tIFwicmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9Gb250QXdlc29tZTUuanNcIlxuaW1wb3J0IEZvbnRBd2Vzb21lNkljb24gZnJvbSBcInJlYWN0LW5hdGl2ZS12ZWN0b3ItaWNvbnMvRm9udEF3ZXNvbWU2LmpzXCJcbmltcG9ydCBNYXRlcmlhbEljb25zSWNvbiBmcm9tIFwicmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9NYXRlcmlhbEljb25zLmpzXCJcbmltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9tZW1vLmpzXCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IFJlYWN0LCB7dXNlTWVtb30gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7U3R5bGVTaGVldH0gZnJvbSBcInJlYWN0LW5hdGl2ZVwiXG5pbXBvcnQge1NoYXBlQ29tcG9uZW50LCBzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL3NoYXBlLWNvbXBvbmVudC5qc1wiXG5pbXBvcnQge3VzZU1lcmdlZFN0eWxlfSBmcm9tIFwiLi9kZWZhdWx0LXN0eWxlXCJcblxuY29uc3QgRm9udEF3ZXNvbWVHbHlwaE1hcCA9IEZvbnRBd2Vzb21lSWNvbi5nZXRSYXdHbHlwaE1hcCgpXG5jb25zdCBGb250QXdlc29tZTVHbHlwaE1hcCA9IEZvbnRBd2Vzb21lNUljb24uZ2V0UmF3R2x5cGhNYXAoKVxuY29uc3QgRm9udEF3ZXNvbWU2R2x5cGhNYXAgPSBGb250QXdlc29tZTZJY29uLmdldFJhd0dseXBoTWFwKClcbmNvbnN0IE1hdGVyaWFsSWNvbnNHbHlwaE1hcCA9IE1hdGVyaWFsSWNvbnNJY29uLmdldFJhd0dseXBoTWFwKClcblxuY29uc3QgaWNvbk1hcCA9IHtcbiAgcGVuY2lsOiBcIkZvbnRBd2Vzb21lXCIsXG4gIHJlbW92ZTogXCJGb250QXdlc29tZVwiLFxuICBzZWFyY2g6IFwiRm9udEF3ZXNvbWVcIlxufVxuXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IFByb3BzXG4gKiBAcHJvcGVydHkge3N0cmluZ3xudW1iZXJ9IFtjb2xvcl1cbiAqIEBwcm9wZXJ0eSB7b2JqZWN0fSBbZGF0YVNldF1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBuYW1lXG4gKiBAcHJvcGVydHkge251bWJlcn0gW3NpemVdXG4gKiBAcHJvcGVydHkge2ltcG9ydChcInJlYWN0LW5hdGl2ZVwiKS5TdHlsZVByb3A8aW1wb3J0KFwicmVhY3QtbmF0aXZlXCIpLlRleHRTdHlsZT59IFtzdHlsZV0gT25seSBgY29sb3JgIGlzIGZvcndhcmRlZC5cbiAqIEBwcm9wZXJ0eSB7KFwiRm9udEF3ZXNvbWVcInxcIkZvbnRBd2Vzb21lNVwifFwiRm9udEF3ZXNvbWU2XCJ8XCJNYXRlcmlhbEljb25zXCIpfSBbdmVyc2lvbl1cbiAqL1xuLyoqIEB0eXBlZGVmIHtSZWNvcmQ8c3RyaW5nLCBuZXZlcj59IFN0YXRlICovXG5leHBvcnQgZGVmYXVsdCBtZW1vKHNoYXBlQ29tcG9uZW50KC8qKiBAYXVnbWVudHMge1NoYXBlQ29tcG9uZW50PFByb3BzLCBTdGF0ZT59ICovIGNsYXNzIEFwaU1ha2VyVXRpbHNJY29uIGV4dGVuZHMgU2hhcGVDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNvbG9yOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuc3RyaW5nXSksXG4gICAgZGF0YVNldDogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgc2l6ZTogUHJvcFR5cGVzLm51bWJlcixcbiAgICBzdHlsZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm9iamVjdCwgUHJvcFR5cGVzLmFycmF5LCBQcm9wVHlwZXMubnVtYmVyXSksXG4gICAgdmVyc2lvbjogUHJvcFR5cGVzLm9uZU9mKFtcIkZvbnRBd2Vzb21lXCIsIFwiRm9udEF3ZXNvbWU1XCIsIFwiRm9udEF3ZXNvbWU2XCIsIFwiTWF0ZXJpYWxJY29uc1wiXSlcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7ZGF0YVNldCwgbmFtZSwgc3R5bGUsIHZlcnNpb24sIC4uLnJlc3RQcm9wc30gPSB0aGlzLnByb3BzXG4gICAgY29uc3Qge3N0eWxlc0xpc3Q6IGluaGVyaXRlZFN0eWxlc0xpc3R9ID0gdXNlTWVyZ2VkU3R5bGUobnVsbCwgXCJUZXh0XCIpXG4gICAgbGV0IGFjdHVhbFZlcnNpb24gPSB2ZXJzaW9uXG5cbiAgICBpZiAoIWFjdHVhbFZlcnNpb24pIHtcbiAgICAgIGlmIChuYW1lIGluIGljb25NYXApIHtcbiAgICAgICAgYWN0dWFsVmVyc2lvbiA9IGljb25NYXBbbmFtZV1cbiAgICAgIH0gZWxzZSBpZiAobmFtZSBpbiBGb250QXdlc29tZTZHbHlwaE1hcCkge1xuICAgICAgICBhY3R1YWxWZXJzaW9uID0gXCJGb250QXdlc29tZTZcIlxuICAgICAgfSBlbHNlIGlmIChuYW1lIGluIEZvbnRBd2Vzb21lNUdseXBoTWFwKSB7XG4gICAgICAgIGFjdHVhbFZlcnNpb24gPSBcIkZvbnRBd2Vzb21lNVwiXG4gICAgICB9IGVsc2UgaWYgKG5hbWUgaW4gRm9udEF3ZXNvbWVHbHlwaE1hcCkge1xuICAgICAgICBhY3R1YWxWZXJzaW9uID0gXCJGb250QXdlc29tZVwiXG4gICAgICB9IGVsc2UgaWYgKG5hbWUgaW4gTWF0ZXJpYWxJY29uc0dseXBoTWFwKSB7XG4gICAgICAgIGFjdHVhbFZlcnNpb24gPSAgXCJNYXRlcmlhbEljb25zXCJcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjdHVhbFZlcnNpb24gPSBcIkZvbnRBd2Vzb21lXCJcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBPbmx5IGZvcndhcmQgc29tZSBzdHlsZXMgbGlrZSBjb2xvciBmcm9tIGluaGVyaXRlZCBUZXh0IHN0eWxlcy5cbiAgICBjb25zdCBhY3R1YWxTdHlsZXNMaXN0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCBhY3R1YWxTdHlsZXNMaXN0ID0gW11cblxuICAgICAgZm9yIChjb25zdCBpbmhlcml0ZWRTdHlsZSBvZiBpbmhlcml0ZWRTdHlsZXNMaXN0KSB7XG4gICAgICAgIGNvbnN0IGZsYXR0ZW5lZFN0eWxlID0gU3R5bGVTaGVldC5mbGF0dGVuKGluaGVyaXRlZFN0eWxlKSB8fCB7fVxuXG4gICAgICAgIGlmIChcImNvbG9yXCIgaW4gZmxhdHRlbmVkU3R5bGUpIHtcbiAgICAgICAgICBhY3R1YWxTdHlsZXNMaXN0LnB1c2goe2NvbG9yOiBmbGF0dGVuZWRTdHlsZS5jb2xvcn0pXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoc3R5bGUpKSB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcFN0eWxlIG9mIHN0eWxlKSB7XG4gICAgICAgICAgaWYgKHByb3BTdHlsZSkge1xuICAgICAgICAgICAgYWN0dWFsU3R5bGVzTGlzdC5wdXNoKHByb3BTdHlsZSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoc3R5bGUpIHtcbiAgICAgICAgYWN0dWFsU3R5bGVzTGlzdC5wdXNoKHN0eWxlKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYWN0dWFsU3R5bGVzTGlzdFxuICAgIH0sIFtpbmhlcml0ZWRTdHlsZXNMaXN0LCBzdHlsZV0pXG5cbiAgICBjb25zdCBhY3R1YWxEYXRhU2V0ID0gdXNlTWVtbygoKSA9PiBPYmplY3QuYXNzaWduKHtuYW1lLCB2ZXJzaW9uOiBhY3R1YWxWZXJzaW9ufSwgZGF0YVNldCksIFthY3R1YWxWZXJzaW9uLCBkYXRhU2V0LCBuYW1lXSlcblxuICAgIGlmIChhY3R1YWxWZXJzaW9uID09IFwiRm9udEF3ZXNvbWVcIikge1xuICAgICAgcmV0dXJuIDxGb250QXdlc29tZUljb24gZGF0YVNldD17YWN0dWFsRGF0YVNldH0gbmFtZT17bmFtZX0gc3R5bGU9e2FjdHVhbFN0eWxlc0xpc3R9IHsuLi5yZXN0UHJvcHN9IC8+XG4gICAgfSBlbHNlIGlmIChhY3R1YWxWZXJzaW9uID09IFwiRm9udEF3ZXNvbWU1XCIpIHtcbiAgICAgIHJldHVybiA8Rm9udEF3ZXNvbWU1SWNvbiBkYXRhU2V0PXthY3R1YWxEYXRhU2V0fSBuYW1lPXtuYW1lfSBzdHlsZT17YWN0dWFsU3R5bGVzTGlzdH0gey4uLnJlc3RQcm9wc30gLz5cbiAgICB9IGVsc2UgaWYgKGFjdHVhbFZlcnNpb24gPT0gXCJGb250QXdlc29tZTZcIikge1xuICAgICAgcmV0dXJuIDxGb250QXdlc29tZTZJY29uIGRhdGFTZXQ9e2FjdHVhbERhdGFTZXR9IG5hbWU9e25hbWV9IHN0eWxlPXthY3R1YWxTdHlsZXNMaXN0fSB7Li4ucmVzdFByb3BzfSAvPlxuICAgIH0gZWxzZSBpZiAoYWN0dWFsVmVyc2lvbiA9PSBcIk1hdGVyaWFsSWNvbnNcIikge1xuICAgICAgcmV0dXJuIDxNYXRlcmlhbEljb25zSWNvbiBkYXRhU2V0PXthY3R1YWxEYXRhU2V0fSBuYW1lPXtuYW1lfSBzdHlsZT17YWN0dWFsU3R5bGVzTGlzdH0gey4uLnJlc3RQcm9wc30gLz5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHZlcnNpb246ICR7YWN0dWFsVmVyc2lvbn1gKVxuICAgIH1cbiAgfVxufSkpXG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kaspernj/api-maker",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.2167",
|
|
5
5
|
"description": "My new module",
|
|
6
6
|
"files": [
|
|
7
7
|
"build/**"
|
|
@@ -73,11 +73,12 @@
|
|
|
73
73
|
"ya-use-event-listener": ">= 0.1.1"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
|
-
"@eslint/js": "^10.0.1",
|
|
77
76
|
"@babel/preset-env": "^7.12.11",
|
|
78
77
|
"@babel/preset-react": "^7.26.3",
|
|
79
78
|
"@eslint/compat": "^2.0.3",
|
|
79
|
+
"@eslint/js": "^10.0.1",
|
|
80
80
|
"@jest/globals": "~30.3.0",
|
|
81
|
+
"@types/prop-types": "^15.7.15",
|
|
81
82
|
"@types/react": "~19.0.10",
|
|
82
83
|
"babel-jest": "~30.3.0",
|
|
83
84
|
"eslint": "^10.2.1",
|