@webbycrown/webbycommerce 1.1.2 → 1.2.1
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/README.md +16 -2
- package/dist/_chunks/{Settings-D6uf1nI1.js → Settings-Bg2JyQ4c.js} +220 -111
- package/dist/_chunks/{Settings-VM6V_KJt.mjs → Settings-BonPzbwr.mjs} +220 -111
- package/dist/_chunks/{en-DIeqB4AB.js → en-CiQ97iC8.js} +15 -0
- package/dist/_chunks/{en-7gtFcumM.mjs → en-DE15m4xZ.mjs} +15 -0
- package/dist/_chunks/{index-BHqcM1qU.mjs → index-BWVy9o1d.mjs} +3 -3
- package/dist/_chunks/{index-RtBCA1lD.js → index-NRuOdjd7.js} +3 -3
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/server/index.js +3504 -37
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -580,10 +580,24 @@ Authorization: Bearer YOUR_JWT_TOKEN
|
|
|
580
580
|
|
|
581
581
|
## 📜 Changelog
|
|
582
582
|
|
|
583
|
-
## [1.1
|
|
583
|
+
## [1.2.1] - Patch Release
|
|
584
|
+
|
|
585
|
+
### Fixed
|
|
586
|
+
- Fixed bugs of update schema
|
|
587
|
+
|
|
588
|
+
## [1.2.0] - New feature
|
|
589
|
+
|
|
590
|
+
### Added
|
|
591
|
+
- Created auth login method API
|
|
592
|
+
- Created unified auth method API
|
|
593
|
+
|
|
594
|
+
### Fixed
|
|
595
|
+
- Fixed bugs of update schema
|
|
596
|
+
|
|
597
|
+
## [1.1.2] - Patch Release
|
|
584
598
|
- Fixed bugs and resolved issues with the category slug API.
|
|
585
599
|
|
|
586
|
-
## [1.1.0]
|
|
600
|
+
## [1.1.0] - New feature
|
|
587
601
|
- Added Bulk Product API
|
|
588
602
|
|
|
589
603
|
## [1.0.2] – Patch Release
|
|
@@ -4,7 +4,7 @@ const jsxRuntime = require("react/jsx-runtime");
|
|
|
4
4
|
const React = require("react");
|
|
5
5
|
const reactIntl = require("react-intl");
|
|
6
6
|
const designSystem = require("@strapi/design-system");
|
|
7
|
-
const index = require("./index-
|
|
7
|
+
const index = require("./index-NRuOdjd7.js");
|
|
8
8
|
const icons = require("@strapi/icons");
|
|
9
9
|
require("react-dom/client");
|
|
10
10
|
const ReactDOM = require("react-dom");
|
|
@@ -10310,7 +10310,7 @@ var objectInspect = function inspect_(obj, options, depth, seen) {
|
|
|
10310
10310
|
var ys = arrObjKeys(obj, inspect2);
|
|
10311
10311
|
var isPlainObject2 = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
|
|
10312
10312
|
var protoTag = obj instanceof Object ? "" : "null prototype";
|
|
10313
|
-
var stringTag2 = !isPlainObject2 && toStringTag$1 && Object(obj) === obj && toStringTag$1 in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? "Object" : "";
|
|
10313
|
+
var stringTag2 = !isPlainObject2 && toStringTag$1 && Object(obj) === obj && toStringTag$1 in obj ? $slice.call(toStr$1(obj), 8, -1) : protoTag ? "Object" : "";
|
|
10314
10314
|
var constructorTag = isPlainObject2 || typeof obj.constructor !== "function" ? "" : obj.constructor.name ? obj.constructor.name + " " : "";
|
|
10315
10315
|
var tag = constructorTag + (stringTag2 || protoTag ? "[" + $join.call($concat$1.call([], stringTag2 || [], protoTag || []), ": ") + "] " : "");
|
|
10316
10316
|
if (ys.length === 0) {
|
|
@@ -10335,25 +10335,25 @@ function canTrustToString(obj) {
|
|
|
10335
10335
|
return !toStringTag$1 || !(typeof obj === "object" && (toStringTag$1 in obj || typeof obj[toStringTag$1] !== "undefined"));
|
|
10336
10336
|
}
|
|
10337
10337
|
function isArray$4(obj) {
|
|
10338
|
-
return toStr(obj) === "[object Array]" && canTrustToString(obj);
|
|
10338
|
+
return toStr$1(obj) === "[object Array]" && canTrustToString(obj);
|
|
10339
10339
|
}
|
|
10340
10340
|
function isDate$2(obj) {
|
|
10341
|
-
return toStr(obj) === "[object Date]" && canTrustToString(obj);
|
|
10341
|
+
return toStr$1(obj) === "[object Date]" && canTrustToString(obj);
|
|
10342
10342
|
}
|
|
10343
10343
|
function isRegExp$2(obj) {
|
|
10344
|
-
return toStr(obj) === "[object RegExp]" && canTrustToString(obj);
|
|
10344
|
+
return toStr$1(obj) === "[object RegExp]" && canTrustToString(obj);
|
|
10345
10345
|
}
|
|
10346
10346
|
function isError(obj) {
|
|
10347
|
-
return toStr(obj) === "[object Error]" && canTrustToString(obj);
|
|
10347
|
+
return toStr$1(obj) === "[object Error]" && canTrustToString(obj);
|
|
10348
10348
|
}
|
|
10349
10349
|
function isString$1(obj) {
|
|
10350
|
-
return toStr(obj) === "[object String]" && canTrustToString(obj);
|
|
10350
|
+
return toStr$1(obj) === "[object String]" && canTrustToString(obj);
|
|
10351
10351
|
}
|
|
10352
10352
|
function isNumber$1(obj) {
|
|
10353
|
-
return toStr(obj) === "[object Number]" && canTrustToString(obj);
|
|
10353
|
+
return toStr$1(obj) === "[object Number]" && canTrustToString(obj);
|
|
10354
10354
|
}
|
|
10355
10355
|
function isBoolean$1(obj) {
|
|
10356
|
-
return toStr(obj) === "[object Boolean]" && canTrustToString(obj);
|
|
10356
|
+
return toStr$1(obj) === "[object Boolean]" && canTrustToString(obj);
|
|
10357
10357
|
}
|
|
10358
10358
|
function isSymbol(obj) {
|
|
10359
10359
|
if (hasShammedSymbols) {
|
|
@@ -10389,7 +10389,7 @@ var hasOwn$1 = Object.prototype.hasOwnProperty || function(key) {
|
|
|
10389
10389
|
function has$5(obj, key) {
|
|
10390
10390
|
return hasOwn$1.call(obj, key);
|
|
10391
10391
|
}
|
|
10392
|
-
function toStr(obj) {
|
|
10392
|
+
function toStr$1(obj) {
|
|
10393
10393
|
return objectToString.call(obj);
|
|
10394
10394
|
}
|
|
10395
10395
|
function nameOf(f2) {
|
|
@@ -10698,7 +10698,7 @@ var syntax = SyntaxError;
|
|
|
10698
10698
|
var uri = URIError;
|
|
10699
10699
|
var abs$1 = Math.abs;
|
|
10700
10700
|
var floor$1 = Math.floor;
|
|
10701
|
-
var max$
|
|
10701
|
+
var max$2 = Math.max;
|
|
10702
10702
|
var min$1 = Math.min;
|
|
10703
10703
|
var pow$1 = Math.pow;
|
|
10704
10704
|
var round$1 = Math.round;
|
|
@@ -10827,99 +10827,78 @@ function requireObject_getPrototypeOf() {
|
|
|
10827
10827
|
Object_getPrototypeOf = $Object2.getPrototypeOf || null;
|
|
10828
10828
|
return Object_getPrototypeOf;
|
|
10829
10829
|
}
|
|
10830
|
-
var
|
|
10831
|
-
var
|
|
10832
|
-
|
|
10833
|
-
|
|
10834
|
-
|
|
10835
|
-
var
|
|
10836
|
-
var
|
|
10837
|
-
|
|
10838
|
-
|
|
10839
|
-
var
|
|
10840
|
-
|
|
10841
|
-
|
|
10842
|
-
|
|
10843
|
-
|
|
10844
|
-
|
|
10845
|
-
|
|
10846
|
-
|
|
10847
|
-
|
|
10848
|
-
}
|
|
10849
|
-
|
|
10850
|
-
|
|
10851
|
-
|
|
10852
|
-
|
|
10830
|
+
var ERROR_MESSAGE = "Function.prototype.bind called on incompatible ";
|
|
10831
|
+
var toStr = Object.prototype.toString;
|
|
10832
|
+
var max$1 = Math.max;
|
|
10833
|
+
var funcType = "[object Function]";
|
|
10834
|
+
var concatty = function concatty2(a2, b2) {
|
|
10835
|
+
var arr = [];
|
|
10836
|
+
for (var i2 = 0; i2 < a2.length; i2 += 1) {
|
|
10837
|
+
arr[i2] = a2[i2];
|
|
10838
|
+
}
|
|
10839
|
+
for (var j2 = 0; j2 < b2.length; j2 += 1) {
|
|
10840
|
+
arr[j2 + a2.length] = b2[j2];
|
|
10841
|
+
}
|
|
10842
|
+
return arr;
|
|
10843
|
+
};
|
|
10844
|
+
var slicy = function slicy2(arrLike, offset) {
|
|
10845
|
+
var arr = [];
|
|
10846
|
+
for (var i2 = offset, j2 = 0; i2 < arrLike.length; i2 += 1, j2 += 1) {
|
|
10847
|
+
arr[j2] = arrLike[i2];
|
|
10848
|
+
}
|
|
10849
|
+
return arr;
|
|
10850
|
+
};
|
|
10851
|
+
var joiny = function(arr, joiner) {
|
|
10852
|
+
var str = "";
|
|
10853
|
+
for (var i2 = 0; i2 < arr.length; i2 += 1) {
|
|
10854
|
+
str += arr[i2];
|
|
10855
|
+
if (i2 + 1 < arr.length) {
|
|
10856
|
+
str += joiner;
|
|
10853
10857
|
}
|
|
10854
|
-
|
|
10855
|
-
|
|
10856
|
-
|
|
10857
|
-
|
|
10858
|
-
|
|
10859
|
-
|
|
10860
|
-
|
|
10861
|
-
|
|
10858
|
+
}
|
|
10859
|
+
return str;
|
|
10860
|
+
};
|
|
10861
|
+
var implementation$1 = function bind(that) {
|
|
10862
|
+
var target = this;
|
|
10863
|
+
if (typeof target !== "function" || toStr.apply(target) !== funcType) {
|
|
10864
|
+
throw new TypeError(ERROR_MESSAGE + target);
|
|
10865
|
+
}
|
|
10866
|
+
var args = slicy(arguments, 1);
|
|
10867
|
+
var bound;
|
|
10868
|
+
var binder = function() {
|
|
10869
|
+
if (this instanceof bound) {
|
|
10870
|
+
var result = target.apply(
|
|
10871
|
+
this,
|
|
10872
|
+
concatty(args, arguments)
|
|
10873
|
+
);
|
|
10874
|
+
if (Object(result) === result) {
|
|
10875
|
+
return result;
|
|
10862
10876
|
}
|
|
10877
|
+
return this;
|
|
10863
10878
|
}
|
|
10864
|
-
return
|
|
10879
|
+
return target.apply(
|
|
10880
|
+
that,
|
|
10881
|
+
concatty(args, arguments)
|
|
10882
|
+
);
|
|
10865
10883
|
};
|
|
10866
|
-
|
|
10867
|
-
|
|
10868
|
-
|
|
10869
|
-
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
10873
|
-
var
|
|
10874
|
-
if (this instanceof bound) {
|
|
10875
|
-
var result = target.apply(
|
|
10876
|
-
this,
|
|
10877
|
-
concatty(args, arguments)
|
|
10878
|
-
);
|
|
10879
|
-
if (Object(result) === result) {
|
|
10880
|
-
return result;
|
|
10881
|
-
}
|
|
10882
|
-
return this;
|
|
10883
|
-
}
|
|
10884
|
-
return target.apply(
|
|
10885
|
-
that,
|
|
10886
|
-
concatty(args, arguments)
|
|
10887
|
-
);
|
|
10884
|
+
var boundLength = max$1(0, target.length - args.length);
|
|
10885
|
+
var boundArgs = [];
|
|
10886
|
+
for (var i2 = 0; i2 < boundLength; i2++) {
|
|
10887
|
+
boundArgs[i2] = "$" + i2;
|
|
10888
|
+
}
|
|
10889
|
+
bound = Function("binder", "return function (" + joiny(boundArgs, ",") + "){ return binder.apply(this,arguments); }")(binder);
|
|
10890
|
+
if (target.prototype) {
|
|
10891
|
+
var Empty = function Empty2() {
|
|
10888
10892
|
};
|
|
10889
|
-
|
|
10890
|
-
|
|
10891
|
-
|
|
10892
|
-
|
|
10893
|
-
|
|
10894
|
-
|
|
10895
|
-
|
|
10896
|
-
|
|
10897
|
-
|
|
10898
|
-
Empty.prototype = target.prototype;
|
|
10899
|
-
bound.prototype = new Empty();
|
|
10900
|
-
Empty.prototype = null;
|
|
10901
|
-
}
|
|
10902
|
-
return bound;
|
|
10903
|
-
};
|
|
10904
|
-
return implementation;
|
|
10905
|
-
}
|
|
10906
|
-
var functionBind;
|
|
10907
|
-
var hasRequiredFunctionBind;
|
|
10908
|
-
function requireFunctionBind() {
|
|
10909
|
-
if (hasRequiredFunctionBind) return functionBind;
|
|
10910
|
-
hasRequiredFunctionBind = 1;
|
|
10911
|
-
var implementation2 = requireImplementation();
|
|
10912
|
-
functionBind = Function.prototype.bind || implementation2;
|
|
10913
|
-
return functionBind;
|
|
10914
|
-
}
|
|
10915
|
-
var functionCall;
|
|
10916
|
-
var hasRequiredFunctionCall;
|
|
10917
|
-
function requireFunctionCall() {
|
|
10918
|
-
if (hasRequiredFunctionCall) return functionCall;
|
|
10919
|
-
hasRequiredFunctionCall = 1;
|
|
10920
|
-
functionCall = Function.prototype.call;
|
|
10921
|
-
return functionCall;
|
|
10922
|
-
}
|
|
10893
|
+
Empty.prototype = target.prototype;
|
|
10894
|
+
bound.prototype = new Empty();
|
|
10895
|
+
Empty.prototype = null;
|
|
10896
|
+
}
|
|
10897
|
+
return bound;
|
|
10898
|
+
};
|
|
10899
|
+
var implementation = implementation$1;
|
|
10900
|
+
var functionBind = Function.prototype.bind || implementation;
|
|
10901
|
+
var functionCall = Function.prototype.call;
|
|
10923
10902
|
var functionApply;
|
|
10924
10903
|
var hasRequiredFunctionApply;
|
|
10925
10904
|
function requireFunctionApply() {
|
|
@@ -10929,14 +10908,14 @@ function requireFunctionApply() {
|
|
|
10929
10908
|
return functionApply;
|
|
10930
10909
|
}
|
|
10931
10910
|
var reflectApply = typeof Reflect !== "undefined" && Reflect && Reflect.apply;
|
|
10932
|
-
var bind$3 =
|
|
10911
|
+
var bind$3 = functionBind;
|
|
10933
10912
|
var $apply$1 = requireFunctionApply();
|
|
10934
|
-
var $call$2 =
|
|
10913
|
+
var $call$2 = functionCall;
|
|
10935
10914
|
var $reflectApply = reflectApply;
|
|
10936
10915
|
var actualApply = $reflectApply || bind$3.call($call$2, $apply$1);
|
|
10937
|
-
var bind$2 =
|
|
10916
|
+
var bind$2 = functionBind;
|
|
10938
10917
|
var $TypeError$4 = type;
|
|
10939
|
-
var $call$1 =
|
|
10918
|
+
var $call$1 = functionCall;
|
|
10940
10919
|
var $actualApply = actualApply;
|
|
10941
10920
|
var callBindApplyHelpers = function callBindBasic(args) {
|
|
10942
10921
|
if (args.length < 1 || typeof args[0] !== "function") {
|
|
@@ -11002,8 +10981,8 @@ function requireHasown() {
|
|
|
11002
10981
|
hasRequiredHasown = 1;
|
|
11003
10982
|
var call = Function.prototype.call;
|
|
11004
10983
|
var $hasOwn = Object.prototype.hasOwnProperty;
|
|
11005
|
-
var
|
|
11006
|
-
hasown =
|
|
10984
|
+
var bind3 = functionBind;
|
|
10985
|
+
hasown = bind3.call(call, $hasOwn);
|
|
11007
10986
|
return hasown;
|
|
11008
10987
|
}
|
|
11009
10988
|
var undefined$1;
|
|
@@ -11017,7 +10996,7 @@ var $TypeError$3 = type;
|
|
|
11017
10996
|
var $URIError = uri;
|
|
11018
10997
|
var abs = abs$1;
|
|
11019
10998
|
var floor = floor$1;
|
|
11020
|
-
var max = max$
|
|
10999
|
+
var max = max$2;
|
|
11021
11000
|
var min = min$1;
|
|
11022
11001
|
var pow = pow$1;
|
|
11023
11002
|
var round = round$1;
|
|
@@ -11051,7 +11030,7 @@ var getProto = requireGetProto();
|
|
|
11051
11030
|
var $ObjectGPO = requireObject_getPrototypeOf();
|
|
11052
11031
|
var $ReflectGPO = requireReflect_getPrototypeOf();
|
|
11053
11032
|
var $apply = requireFunctionApply();
|
|
11054
|
-
var $call =
|
|
11033
|
+
var $call = functionCall;
|
|
11055
11034
|
var needsEval = {};
|
|
11056
11035
|
var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined$1 : getProto(Uint8Array);
|
|
11057
11036
|
var INTRINSICS = {
|
|
@@ -11222,7 +11201,7 @@ var LEGACY_ALIASES = {
|
|
|
11222
11201
|
"%WeakMapPrototype%": ["WeakMap", "prototype"],
|
|
11223
11202
|
"%WeakSetPrototype%": ["WeakSet", "prototype"]
|
|
11224
11203
|
};
|
|
11225
|
-
var bind$1 =
|
|
11204
|
+
var bind$1 = functionBind;
|
|
11226
11205
|
var hasOwn = requireHasown();
|
|
11227
11206
|
var $concat = bind$1.call($call, Array.prototype.concat);
|
|
11228
11207
|
var $spliceApply = bind$1.call($apply, Array.prototype.splice);
|
|
@@ -15553,7 +15532,7 @@ const admin = adminApi.enhanceEndpoints({
|
|
|
15553
15532
|
overrideExisting: false
|
|
15554
15533
|
});
|
|
15555
15534
|
const { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery } = admin;
|
|
15556
|
-
function
|
|
15535
|
+
function bind2(fn2, thisArg) {
|
|
15557
15536
|
return function wrap() {
|
|
15558
15537
|
return fn2.apply(thisArg, arguments);
|
|
15559
15538
|
};
|
|
@@ -15690,7 +15669,7 @@ function merge2() {
|
|
|
15690
15669
|
const extend = (a2, b2, thisArg, { allOwnKeys } = {}) => {
|
|
15691
15670
|
forEach$1(b2, (val, key) => {
|
|
15692
15671
|
if (thisArg && isFunction$1(val)) {
|
|
15693
|
-
a2[key] =
|
|
15672
|
+
a2[key] = bind2(val, thisArg);
|
|
15694
15673
|
} else {
|
|
15695
15674
|
a2[key] = val;
|
|
15696
15675
|
}
|
|
@@ -17970,7 +17949,7 @@ Object.entries(HttpStatusCode$1).forEach(([key, value]) => {
|
|
|
17970
17949
|
});
|
|
17971
17950
|
function createInstance(defaultConfig) {
|
|
17972
17951
|
const context = new Axios$1(defaultConfig);
|
|
17973
|
-
const instance =
|
|
17952
|
+
const instance = bind2(Axios$1.prototype.request, context);
|
|
17974
17953
|
utils$1.extend(instance, Axios$1.prototype, context, { allOwnKeys: true });
|
|
17975
17954
|
utils$1.extend(instance, context, null, { allOwnKeys: true });
|
|
17976
17955
|
instance.create = function create2(instanceConfig) {
|
|
@@ -26486,6 +26465,97 @@ const ApiCollectionsContent = () => {
|
|
|
26486
26465
|
"email": "user@example.com",
|
|
26487
26466
|
"otp": "123456",
|
|
26488
26467
|
"type": "email"
|
|
26468
|
+
}`
|
|
26469
|
+
},
|
|
26470
|
+
{
|
|
26471
|
+
id: "auth-method",
|
|
26472
|
+
method: "GET",
|
|
26473
|
+
path: getApiPath("/api/webbycommerce/auth/method"),
|
|
26474
|
+
title: formatMessage({
|
|
26475
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.title`,
|
|
26476
|
+
defaultMessage: "Get Authentication Method"
|
|
26477
|
+
}),
|
|
26478
|
+
summary: formatMessage({
|
|
26479
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.summary`,
|
|
26480
|
+
defaultMessage: "Get the current authentication method (default or otp) configured in the plugin settings. Use this endpoint in your frontend to determine which authentication flow to display."
|
|
26481
|
+
}),
|
|
26482
|
+
auth: formatMessage({
|
|
26483
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.auth`,
|
|
26484
|
+
defaultMessage: "Auth: public (no authentication required)."
|
|
26485
|
+
}),
|
|
26486
|
+
response: `{
|
|
26487
|
+
"method": "default",
|
|
26488
|
+
"message": "Current authentication method: default"
|
|
26489
|
+
}`,
|
|
26490
|
+
usage: [
|
|
26491
|
+
formatMessage({
|
|
26492
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.usage.frontend`,
|
|
26493
|
+
defaultMessage: "Call this endpoint on app initialization to determine which auth UI to show."
|
|
26494
|
+
}),
|
|
26495
|
+
formatMessage({
|
|
26496
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.usage.conditional`,
|
|
26497
|
+
defaultMessage: 'If method is "otp", show OTP login/register form. If "default", show email/password form.'
|
|
26498
|
+
}),
|
|
26499
|
+
formatMessage({
|
|
26500
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.authMethod.usage.dynamic`,
|
|
26501
|
+
defaultMessage: "Method can change based on plugin settings, so check this endpoint periodically."
|
|
26502
|
+
})
|
|
26503
|
+
],
|
|
26504
|
+
getCurl: () => `curl http://localhost:1337${getApiPath("/api/webbycommerce/auth/method")}`
|
|
26505
|
+
},
|
|
26506
|
+
{
|
|
26507
|
+
id: "unified-auth",
|
|
26508
|
+
method: "POST",
|
|
26509
|
+
path: getApiPath("/api/webbycommerce/auth/unified"),
|
|
26510
|
+
title: formatMessage({
|
|
26511
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.title`,
|
|
26512
|
+
defaultMessage: "Unified Authentication"
|
|
26513
|
+
}),
|
|
26514
|
+
summary: formatMessage({
|
|
26515
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.summary`,
|
|
26516
|
+
defaultMessage: "Unified authentication endpoint that supports both OTP and default (email/password) methods. Automatically detects which method to use based on request body. Perfect for frontends that want to support both authentication methods simultaneously."
|
|
26517
|
+
}),
|
|
26518
|
+
auth: formatMessage({
|
|
26519
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.auth`,
|
|
26520
|
+
defaultMessage: "Auth: public (no authentication required)."
|
|
26521
|
+
}),
|
|
26522
|
+
response: `{
|
|
26523
|
+
"success": true,
|
|
26524
|
+
"step": "login",
|
|
26525
|
+
"method": "default",
|
|
26526
|
+
"message": "Login successfully!",
|
|
26527
|
+
"jwt": "eyJhbGciOi...",
|
|
26528
|
+
"user": {
|
|
26529
|
+
"id": 1,
|
|
26530
|
+
"username": "user1234",
|
|
26531
|
+
"email": "user@example.com"
|
|
26532
|
+
}
|
|
26533
|
+
}`,
|
|
26534
|
+
usage: [
|
|
26535
|
+
formatMessage({
|
|
26536
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.usage.unified`,
|
|
26537
|
+
defaultMessage: "Use this single endpoint for all authentication needs - OTP and default methods."
|
|
26538
|
+
}),
|
|
26539
|
+
formatMessage({
|
|
26540
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.usage.otp`,
|
|
26541
|
+
defaultMessage: 'For OTP: First call with step="request" and email/mobile, then call with step="verify" and OTP code.'
|
|
26542
|
+
}),
|
|
26543
|
+
formatMessage({
|
|
26544
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.usage.default`,
|
|
26545
|
+
defaultMessage: 'For default: Call with step="login" and identifier/password, or step="register" with username/email/password.'
|
|
26546
|
+
}),
|
|
26547
|
+
formatMessage({
|
|
26548
|
+
id: `${index.PLUGIN_ID}.settings.apiCollections.unifiedAuth.usage.auto`,
|
|
26549
|
+
defaultMessage: 'Method is auto-detected from request body, or specify authMethod="otp" or "default" explicitly.'
|
|
26550
|
+
})
|
|
26551
|
+
],
|
|
26552
|
+
getCurl: () => `curl -X POST http://localhost:1337${getApiPath("/api/webbycommerce/auth/unified")} \\
|
|
26553
|
+
-H "Content-Type: application/json" \\
|
|
26554
|
+
-d '{"step": "login", "identifier": "user@example.com", "password": "password"}'`,
|
|
26555
|
+
requestBody: `{
|
|
26556
|
+
"step": "login",
|
|
26557
|
+
"identifier": "user@example.com",
|
|
26558
|
+
"password": "password"
|
|
26489
26559
|
}`
|
|
26490
26560
|
},
|
|
26491
26561
|
{
|
|
@@ -30879,6 +30949,45 @@ const LoginRegisterContent = () => {
|
|
|
30879
30949
|
] })
|
|
30880
30950
|
] })
|
|
30881
30951
|
}
|
|
30952
|
+
),
|
|
30953
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30954
|
+
designSystem.Box,
|
|
30955
|
+
{
|
|
30956
|
+
as: "label",
|
|
30957
|
+
padding: 3,
|
|
30958
|
+
background: method === "both" ? "primary100" : "neutral0",
|
|
30959
|
+
hasRadius: true,
|
|
30960
|
+
style: {
|
|
30961
|
+
cursor: "pointer",
|
|
30962
|
+
border: `1px solid ${method === "both" ? "#4945ff" : "#dcdce4"}`
|
|
30963
|
+
},
|
|
30964
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 2, alignItems: "flex-start", children: [
|
|
30965
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
30966
|
+
"input",
|
|
30967
|
+
{
|
|
30968
|
+
type: "radio",
|
|
30969
|
+
name: "loginMethod",
|
|
30970
|
+
value: "both",
|
|
30971
|
+
checked: method === "both",
|
|
30972
|
+
onChange: (e2) => setMethod(e2.target.value),
|
|
30973
|
+
style: {
|
|
30974
|
+
marginTop: "4px",
|
|
30975
|
+
cursor: "pointer"
|
|
30976
|
+
}
|
|
30977
|
+
}
|
|
30978
|
+
),
|
|
30979
|
+
/* @__PURE__ */ jsxRuntime.jsxs(designSystem.Box, { children: [
|
|
30980
|
+
/* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "omega", textColor: "neutral800", fontWeight: "semiBold", children: formatMessage({
|
|
30981
|
+
id: `${index.PLUGIN_ID}.settings.loginRegister.method.both`,
|
|
30982
|
+
defaultMessage: "Both Methods (Unified)"
|
|
30983
|
+
}) }),
|
|
30984
|
+
/* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "pi", textColor: "neutral600", marginTop: 1, display: "block", children: formatMessage({
|
|
30985
|
+
id: `${index.PLUGIN_ID}.settings.loginRegister.method.both.description`,
|
|
30986
|
+
defaultMessage: "Users can choose between OTP or email/password authentication. Use the unified /auth/unified endpoint to support both methods simultaneously."
|
|
30987
|
+
}) })
|
|
30988
|
+
] })
|
|
30989
|
+
] })
|
|
30990
|
+
}
|
|
30882
30991
|
)
|
|
30883
30992
|
] }) }),
|
|
30884
30993
|
error && /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { marginTop: 4, padding: 3, background: "danger100", hasRadius: true, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "omega", textColor: "danger700", children: error }) }),
|