Skip to content

Instantly share code, notes, and snippets.

@apurbajnu
Last active October 7, 2021 13:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save apurbajnu/23699e4fc839937a510eab4736014a6a to your computer and use it in GitHub Desktop.
Save apurbajnu/23699e4fc839937a510eab4736014a6a to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
/***/ "./node_modules/@babel/runtime/regenerator/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@babel/runtime/regenerator/index.js ***!
\**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
module.exports = __webpack_require__(/*! regenerator-runtime */ "./node_modules/regenerator-runtime/runtime.js");
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/ClientRouter.js":
/*!****************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ClientRouter/ClientRouter.js ***!
\****************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
var router_1 = __webpack_require__(/*! ./router */ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/router.js");
/**
* ClientRouter component
*
* @remarks
* React component which keeps the Shopify admin url in sync with the app url
*
* @public
*/
var ClientRouter = /** @class */ (function (_super) {
__extends(ClientRouter, _super);
function ClientRouter() {
return _super !== null && _super.apply(this, arguments) || this;
}
ClientRouter.prototype.componentDidMount = function () {
var history = this.props.history;
this.unsubscribe = router_1.handleRouteChange(this.context, history);
};
ClientRouter.prototype.componentWillUnmount = function () {
if (this.unsubscribe) {
this.unsubscribe();
}
};
ClientRouter.prototype.render = function () {
return null;
};
ClientRouter.contextType = context_1.AppBridgeContext;
return ClientRouter;
}(react_1.default.Component));
exports.default = ClientRouter;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/hook.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ClientRouter/hook.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var useAppBridge_1 = __webpack_require__(/*! ../../useAppBridge */ "./node_modules/@shopify/app-bridge-react/useAppBridge.js");
var router_1 = __webpack_require__(/*! ./router */ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/router.js");
/**
* useRoutePropagation
*
* @remarks
* A hook which keeps the Shopify admin url in sync with the app url
*
* @public
*/
function useClientRouting(history) {
var app = useAppBridge_1.useAppBridge();
react_1.useEffect(function () {
return router_1.handleRouteChange(app, history);
}, [app, history]);
}
exports.default = useClientRouting;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/index.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ClientRouter/index.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var ClientRouter_1 = __webpack_require__(/*! ./ClientRouter */ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/ClientRouter.js");
Object.defineProperty(exports, "ClientRouter", ({ enumerable: true, get: function () { return ClientRouter_1.default; } }));
var hook_1 = __webpack_require__(/*! ./hook */ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/hook.js");
Object.defineProperty(exports, "useClientRouting", ({ enumerable: true, get: function () { return hook_1.default; } }));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/router.js":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ClientRouter/router.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.handleRouteChange = void 0;
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
function handleRouteChange(app, history) {
return app.subscribe(actions_1.Redirect.ActionType.APP, function (_a) {
var path = _a.path;
history.replace(path);
});
}
exports.handleRouteChange = handleRouteChange;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Loading/Loading.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Loading/Loading.js ***!
\******************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
/**
* Loading component
*
* @remarks
* React component which wraps the Shopify App Bridge Loading action.
*
* @public
*/
var Loading = /** @class */ (function (_super) {
__extends(Loading, _super);
function Loading() {
return _super !== null && _super.apply(this, arguments) || this;
}
Loading.prototype.componentDidMount = function () {
var app = this.context;
this.loading = actions_1.Loading.create(app);
if (this.loading != null) {
this.loading.dispatch(actions_1.Loading.Action.START);
}
};
Loading.prototype.componentWillUnmount = function () {
if (this.loading != null) {
this.loading.dispatch(actions_1.Loading.Action.STOP);
}
};
Loading.prototype.render = function () {
return null;
};
Loading.contextType = context_1.AppBridgeContext;
return Loading;
}(react_1.default.Component));
exports.default = Loading;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Loading/index.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Loading/index.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Loading_1 = __importDefault(__webpack_require__(/*! ./Loading */ "./node_modules/@shopify/app-bridge-react/components/Loading/Loading.js"));
exports.default = Loading_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Modal/Modal.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Modal/Modal.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var transformers_1 = __webpack_require__(/*! ../../utilities/transformers */ "./node_modules/@shopify/app-bridge-react/utilities/transformers.js");
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
/**
* Modal component
*
* @remarks
* React component which wraps the Shopify App Bridge Modal action.
*
* @public
*/
var Modal = /** @class */ (function (_super) {
__extends(Modal, _super);
function Modal() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.focusReturnPoint = null;
return _this;
}
Modal.prototype.componentDidMount = function () {
var _a = this.props, open = _a.open, onClose = _a.onClose;
var app = this.context;
this.modal = actions_1.Modal.create(app, this.transformProps());
if (onClose != null) {
this.modal.subscribe(actions_1.Modal.Action.CLOSE, onClose);
}
if (open) {
this.focusReturnPoint = document.activeElement;
this.modal.dispatch(actions_1.Modal.Action.OPEN);
}
};
Modal.prototype.componentDidUpdate = function (prevProps) {
var _a = this.props, open = _a.open, onClose = _a.onClose;
var wasOpen = prevProps.open;
var transformedProps = this.transformProps();
this.modal.unsubscribe();
if (isIframeModal(transformedProps)) {
this.modal.set(transformedProps, open);
}
else {
this.modal.set(transformedProps, open);
}
if (onClose != null) {
this.modal.subscribe(actions_1.Modal.Action.CLOSE, onClose);
}
if (wasOpen !== open) {
if (open) {
this.modal.dispatch(actions_1.Modal.Action.OPEN);
}
else {
this.modal.dispatch(actions_1.Modal.Action.CLOSE);
}
}
if (!wasOpen && open) {
this.focusReturnPoint = document.activeElement;
}
else if (wasOpen &&
!open &&
this.focusReturnPoint != null &&
document.contains(this.focusReturnPoint)) {
this.focusReturnPoint.focus();
this.focusReturnPoint = null;
}
};
Modal.prototype.componentWillUnmount = function () {
this.modal.unsubscribe();
if (this.props.open) {
this.modal.dispatch(actions_1.Modal.Action.CLOSE);
}
};
Modal.prototype.render = function () {
return null;
};
Modal.prototype.transformProps = function () {
var _a = this.props, title = _a.title, size = _a.size, message = _a.message, src = _a.src, primaryAction = _a.primaryAction, secondaryActions = _a.secondaryActions;
var app = this.context;
var safeSize = size == null ? undefined : actions_1.Modal.Size[size];
var srcPayload = {};
if (src != null) {
if (src.match('^https?://')) {
srcPayload.url = src;
}
else {
srcPayload.path = src;
}
}
return __assign(__assign({ title: title,
message: message, size: safeSize }, srcPayload), { footer: {
buttons: transformers_1.transformActions(app, {
primaryAction: primaryAction,
secondaryActions: secondaryActions,
}),
} });
};
Modal.contextType = context_1.AppBridgeContext;
return Modal;
}(react_1.default.PureComponent));
function isIframeModal(options) {
return (typeof options.url === 'string' ||
typeof options.path === 'string');
}
exports.default = Modal;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Modal/index.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Modal/index.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Modal_1 = __importDefault(__webpack_require__(/*! ./Modal */ "./node_modules/@shopify/app-bridge-react/components/Modal/Modal.js"));
exports.default = Modal_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Provider/Provider.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Provider/Provider.js ***!
\********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.setClientInterfaceHook = void 0;
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var app_bridge_1 = __importStar(__webpack_require__(/*! @shopify/app-bridge */ "./node_modules/@shopify/app-bridge/index.js"));
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
var packageJson = __webpack_require__(/*! ../../package.json */ "./node_modules/@shopify/app-bridge-react/package.json");
/**
* Create an App Bridge client application from a config and pass it as the
* value to the context provider.
*
* @remarks
* You'll probably want something a little more robust than storing the current
* app instance in a module-level global.
*
* @public
*/
var Provider = /** @class */ (function (_super) {
__extends(Provider, _super);
function Provider() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.app = _this.appInstance;
return _this;
}
Object.defineProperty(Provider.prototype, "appInstance", {
get: function () {
if (!this.app) {
this.app = app_bridge_1.default(this.props.config);
if (this.app && this.app.hooks) {
this.app.hooks.set(app_bridge_1.LifecycleHook.DispatchAction, exports.setClientInterfaceHook);
}
}
return this.app;
},
enumerable: false,
configurable: true
});
Provider.prototype.render = function () {
return (react_1.default.createElement(context_1.AppBridgeContext.Provider, { value: this.appInstance }, this.props.children));
};
return Provider;
}(react_1.default.Component));
exports.default = Provider;
/**
* Augment actions with clientInterface metadata, identifying use of this library
*
* @internal
*/
exports.setClientInterfaceHook = function (next) {
return function (action) {
action.clientInterface = {
name: '@shopify/app-bridge-react',
version: packageJson.version,
};
return next(action);
};
};
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Provider/index.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Provider/index.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Provider_1 = __importDefault(__webpack_require__(/*! ./Provider */ "./node_modules/@shopify/app-bridge-react/components/Provider/Provider.js"));
exports.default = Provider_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ResourcePicker/ResourcePicker.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ResourcePicker/ResourcePicker.js ***!
\********************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
/**
* ResourcePicker component
*
* @remarks
* React component which wraps the Shopify App Bridge ResourcePicker action.
*
* @public
*/
var ResourcePicker = /** @class */ (function (_super) {
__extends(ResourcePicker, _super);
function ResourcePicker() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.focusReturnPoint = null;
return _this;
}
ResourcePicker.prototype.componentDidMount = function () {
var _a = this.props, open = _a.open, resourceType = _a.resourceType, onSelection = _a.onSelection, onCancel = _a.onCancel;
var app = this.context;
this.picker = actions_1.ResourcePicker.create(app, {
resourceType: actions_1.ResourcePicker.ResourceType[resourceType],
options: this.getActionOptions(),
});
if (onSelection != null) {
this.picker.subscribe(actions_1.ResourcePicker.Action.SELECT, onSelection);
}
if (onCancel != null) {
this.picker.subscribe(actions_1.ResourcePicker.Action.CANCEL, onCancel);
}
if (open) {
this.focusReturnPoint = document.activeElement;
this.picker.dispatch(actions_1.ResourcePicker.Action.OPEN);
}
};
ResourcePicker.prototype.componentDidUpdate = function (prevProps) {
var wasOpen = prevProps.open;
var _a = this.props, open = _a.open, onCancel = _a.onCancel, onSelection = _a.onSelection;
this.picker.unsubscribe();
this.picker.set(this.getActionOptions());
if (onSelection != null) {
this.picker.subscribe(actions_1.ResourcePicker.Action.SELECT, onSelection);
}
if (onCancel != null) {
this.picker.subscribe(actions_1.ResourcePicker.Action.CANCEL, onCancel);
}
if (wasOpen !== open) {
if (open) {
this.picker.dispatch(actions_1.ResourcePicker.Action.OPEN);
}
else {
this.picker.dispatch(actions_1.ResourcePicker.Action.CLOSE);
}
}
if (!wasOpen && open) {
this.focusReturnPoint = document.activeElement;
}
else if (wasOpen &&
!open &&
this.focusReturnPoint != null &&
document.contains(this.focusReturnPoint)) {
this.focusReturnPoint.focus();
this.focusReturnPoint = null;
}
};
ResourcePicker.prototype.componentWillUnmount = function () {
this.picker.unsubscribe();
};
ResourcePicker.prototype.render = function () {
return null;
};
ResourcePicker.prototype.getActionOptions = function () {
var _a = this.props, initialQuery = _a.initialQuery, initialSelectionIds = _a.initialSelectionIds, showHidden = _a.showHidden, allowMultiple = _a.allowMultiple, selectMultiple = _a.selectMultiple, actionVerb = _a.actionVerb;
var sharedOptions = {
initialQuery: initialQuery,
initialSelectionIds: initialSelectionIds,
showHidden: showHidden,
selectMultiple: selectMultiple !== null && selectMultiple !== void 0 ? selectMultiple : allowMultiple,
actionVerb: actionVerb,
};
var result = sharedOptions;
if (this.props.resourceType === 'Product') {
var _b = this.props, showVariants = _b.showVariants, showDraft = _b.showDraft, showArchived = _b.showArchived, showDraftBadge = _b.showDraftBadge, showArchivedBadge = _b.showArchivedBadge;
var productSpecificOptions = {
showVariants: showVariants,
showDraft: showDraft,
showArchived: showArchived,
showDraftBadge: showDraftBadge,
showArchivedBadge: showArchivedBadge,
};
result = __assign(__assign({}, sharedOptions), productSpecificOptions);
}
return result;
};
ResourcePicker.contextType = context_1.AppBridgeContext;
ResourcePicker.ActionVerb = actions_1.ResourcePicker.ActionVerb;
return ResourcePicker;
}(react_1.default.PureComponent));
exports.default = ResourcePicker;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/ResourcePicker/index.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/ResourcePicker/index.js ***!
\***********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var ResourcePicker_1 = __importDefault(__webpack_require__(/*! ./ResourcePicker */ "./node_modules/@shopify/app-bridge-react/components/ResourcePicker/ResourcePicker.js"));
exports.default = ResourcePicker_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/RoutePropagator.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/RoutePropagator/RoutePropagator.js ***!
\**********************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
var route_propagator_1 = __webpack_require__(/*! ./route-propagator */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/route-propagator.js");
/**
* RoutePropagator component
*
* @remarks
* React component which keeps the Shopify admin url in sync with the app url
*
* @public
*/
var RoutePropagator = /** @class */ (function (_super) {
__extends(RoutePropagator, _super);
function RoutePropagator() {
return _super !== null && _super.apply(this, arguments) || this;
}
RoutePropagator.prototype.componentDidMount = function () {
var location = this.props.location;
route_propagator_1.updateHistory(this.context, location);
};
RoutePropagator.prototype.componentDidUpdate = function (_a) {
var prevLocation = _a.location;
var location = this.props.location;
if (location !== prevLocation) {
route_propagator_1.updateHistory(this.context, location);
}
};
RoutePropagator.prototype.render = function () {
return null;
};
RoutePropagator.contextType = context_1.AppBridgeContext;
return RoutePropagator;
}(react_1.default.Component));
exports.default = RoutePropagator;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/globals.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/RoutePropagator/globals.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getOrigin = exports.getTopWindow = exports.getSelfWindow = void 0;
function getSelfWindow() {
return window.self;
}
exports.getSelfWindow = getSelfWindow;
function getTopWindow() {
return window.top;
}
exports.getTopWindow = getTopWindow;
function getOrigin() {
return location.origin;
}
exports.getOrigin = getOrigin;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/hook.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/RoutePropagator/hook.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var useAppBridge_1 = __webpack_require__(/*! ../../useAppBridge */ "./node_modules/@shopify/app-bridge-react/useAppBridge.js");
var route_propagator_1 = __webpack_require__(/*! ./route-propagator */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/route-propagator.js");
/**
* useRoutePropagation
*
* @remarks
* A hook which keeps the Shopify admin url in sync with the app url
*
* @public
*/
function useRoutePropagation(location) {
var app = useAppBridge_1.useAppBridge();
react_1.useEffect(function () {
route_propagator_1.updateHistory(app, location);
}, [app, location]);
}
exports.default = useRoutePropagation;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/index.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/RoutePropagator/index.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var RoutePropagator_1 = __webpack_require__(/*! ./RoutePropagator */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/RoutePropagator.js");
Object.defineProperty(exports, "RoutePropagator", ({ enumerable: true, get: function () { return RoutePropagator_1.default; } }));
var hook_1 = __webpack_require__(/*! ./hook */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/hook.js");
Object.defineProperty(exports, "useRoutePropagation", ({ enumerable: true, get: function () { return hook_1.default; } }));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/route-propagator.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/RoutePropagator/route-propagator.js ***!
\***********************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.updateHistory = void 0;
var app_bridge_1 = __webpack_require__(/*! @shopify/app-bridge */ "./node_modules/@shopify/app-bridge/index.js");
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var globals_1 = __webpack_require__(/*! ./globals */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/globals.js");
// These parameters are added to the iframe url but we don't want to propagate
// them up to the address bar as they are not provided by the application
// Removing hmac is especially important as its presence may cause infinite
// oauth authentication loops
var embeddedFrameParamsToRemove = ['hmac', 'locale', 'protocol', 'session', 'shop', 'timestamp'];
function updateHistory(app, location) {
return __awaiter(this, void 0, void 0, function () {
var selfWindow, topWindow, renderedInTheTopWindow, renderedAsMainApp, normalizedLocation, pathname, search, hash, locationStr;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
selfWindow = globals_1.getSelfWindow();
topWindow = globals_1.getTopWindow();
renderedInTheTopWindow = selfWindow === topWindow;
return [4 /*yield*/, app.getState('context').then(function (context) {
return context === app_bridge_1.Context.Main;
})];
case 1:
renderedAsMainApp = _a.sent();
if (renderedInTheTopWindow || !renderedAsMainApp) {
return [2 /*return*/];
}
normalizedLocation = getNormalizedURL(location);
embeddedFrameParamsToRemove.forEach(function (param) { return normalizedLocation.searchParams.delete(param); });
pathname = normalizedLocation.pathname, search = normalizedLocation.search, hash = normalizedLocation.hash;
locationStr = "" + pathname + search + hash;
actions_1.History.create(app).dispatch(actions_1.History.Action.REPLACE, locationStr);
return [2 /*return*/];
}
});
});
}
exports.updateHistory = updateHistory;
function getNormalizedURL(location) {
var origin = globals_1.getOrigin();
if (typeof location === 'string') {
return new URL(location, origin);
}
var pathname = location.pathname, search = location.search, hash = location.hash;
return new URL("" + pathname + search + hash, origin);
}
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/TitleBar/TitleBar.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/TitleBar/TitleBar.js ***!
\********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var transformers_1 = __webpack_require__(/*! ../../utilities/transformers */ "./node_modules/@shopify/app-bridge-react/utilities/transformers.js");
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
var TitleBar = /** @class */ (function (_super) {
__extends(TitleBar, _super);
function TitleBar() {
return _super !== null && _super.apply(this, arguments) || this;
}
TitleBar.prototype.componentDidMount = function () {
var app = this.context;
this.titleBar = actions_1.TitleBar.create(app, this.transformProps());
};
TitleBar.prototype.componentDidUpdate = function () {
this.titleBar.unsubscribe();
this.titleBar.set(this.transformProps());
};
TitleBar.prototype.componentWillUnmount = function () {
this.titleBar.unsubscribe();
};
TitleBar.prototype.render = function () {
return null;
};
TitleBar.prototype.transformProps = function () {
var app = this.context;
var _a = this.props, title = _a.title, primaryAction = _a.primaryAction, secondaryActions = _a.secondaryActions, actionGroups = _a.actionGroups;
return {
title: title,
buttons: transformers_1.transformActions(app, {
primaryAction: primaryAction,
secondaryActions: secondaryActions,
actionGroups: actionGroups,
}),
breadcrumbs: this.transformBreadcrumbs(),
};
};
TitleBar.prototype.transformBreadcrumbs = function () {
var app = this.context;
var breadcrumbs = this.props.breadcrumbs;
if (breadcrumbs == null || breadcrumbs.length === 0) {
return undefined;
}
var breadcrumb = breadcrumbs[breadcrumbs.length - 1];
var url = breadcrumb.url, onAction = breadcrumb.onAction, target = breadcrumb.target, content = breadcrumb.content;
var button = actions_1.Button.create(app, {
label: content || '',
});
var redirect = transformers_1.generateRedirect(app, url, target);
if (redirect != null) {
button.subscribe(actions_1.Button.Action.CLICK, redirect);
}
if (onAction != null) {
button.subscribe(actions_1.Button.Action.CLICK, onAction);
}
return button;
};
TitleBar.contextType = context_1.AppBridgeContext;
return TitleBar;
}(react_1.default.PureComponent));
exports.default = TitleBar;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/TitleBar/index.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/TitleBar/index.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var TitleBar_1 = __importDefault(__webpack_require__(/*! ./TitleBar */ "./node_modules/@shopify/app-bridge-react/components/TitleBar/TitleBar.js"));
exports.default = TitleBar_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Toast/Toast.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Toast/Toast.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.DEFAULT_TOAST_DURATION = void 0;
var react_1 = __importDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var context_1 = __webpack_require__(/*! ../../context */ "./node_modules/@shopify/app-bridge-react/context.js");
exports.DEFAULT_TOAST_DURATION = 5000;
/**
* Toast component
*
* @remarks
* React component which wraps the Shopify App Bridge Toast action.
*
* @public
*/
var Toast = /** @class */ (function (_super) {
__extends(Toast, _super);
function Toast() {
return _super !== null && _super.apply(this, arguments) || this;
}
Toast.prototype.componentDidMount = function () {
var app = this.context;
var _a = this.props, error = _a.error, content = _a.content, _b = _a.duration, duration = _b === void 0 ? exports.DEFAULT_TOAST_DURATION : _b, onDismiss = _a.onDismiss;
this.toast = actions_1.Toast.create(app, {
message: content,
duration: duration,
isError: error,
});
this.toast.subscribe(actions_1.Toast.Action.CLEAR, onDismiss);
this.toast.dispatch(actions_1.Toast.Action.SHOW);
};
Toast.prototype.componentWillUnmount = function () {
this.toast.unsubscribe();
};
Toast.prototype.render = function () {
return null;
};
Toast.contextType = context_1.AppBridgeContext;
return Toast;
}(react_1.default.PureComponent));
exports.default = Toast;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/Toast/index.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/Toast/index.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Toast_1 = __importDefault(__webpack_require__(/*! ./Toast */ "./node_modules/@shopify/app-bridge-react/components/Toast/Toast.js"));
exports.default = Toast_1.default;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/components/index.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/components/index.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Provider_1 = __webpack_require__(/*! ./Provider */ "./node_modules/@shopify/app-bridge-react/components/Provider/index.js");
Object.defineProperty(exports, "Provider", ({ enumerable: true, get: function () { return Provider_1.default; } }));
var Loading_1 = __webpack_require__(/*! ./Loading */ "./node_modules/@shopify/app-bridge-react/components/Loading/index.js");
Object.defineProperty(exports, "Loading", ({ enumerable: true, get: function () { return Loading_1.default; } }));
var Toast_1 = __webpack_require__(/*! ./Toast */ "./node_modules/@shopify/app-bridge-react/components/Toast/index.js");
Object.defineProperty(exports, "Toast", ({ enumerable: true, get: function () { return Toast_1.default; } }));
var TitleBar_1 = __webpack_require__(/*! ./TitleBar */ "./node_modules/@shopify/app-bridge-react/components/TitleBar/index.js");
Object.defineProperty(exports, "TitleBar", ({ enumerable: true, get: function () { return TitleBar_1.default; } }));
var Modal_1 = __webpack_require__(/*! ./Modal */ "./node_modules/@shopify/app-bridge-react/components/Modal/index.js");
Object.defineProperty(exports, "Modal", ({ enumerable: true, get: function () { return Modal_1.default; } }));
var ResourcePicker_1 = __webpack_require__(/*! ./ResourcePicker */ "./node_modules/@shopify/app-bridge-react/components/ResourcePicker/index.js");
Object.defineProperty(exports, "ResourcePicker", ({ enumerable: true, get: function () { return ResourcePicker_1.default; } }));
__exportStar(__webpack_require__(/*! ./RoutePropagator */ "./node_modules/@shopify/app-bridge-react/components/RoutePropagator/index.js"), exports);
__exportStar(__webpack_require__(/*! ./ClientRouter */ "./node_modules/@shopify/app-bridge-react/components/ClientRouter/index.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/context.js":
/*!***********************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/context.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AppBridgeContext = void 0;
var react_1 = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/**
* App Bridge context.
*
* @public
*/
exports.AppBridgeContext = react_1.createContext(null);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/index.js":
/*!*********************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/index.js ***!
\*********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./components */ "./node_modules/@shopify/app-bridge-react/components/index.js"), exports);
var context_1 = __webpack_require__(/*! ./context */ "./node_modules/@shopify/app-bridge-react/context.js");
Object.defineProperty(exports, "Context", ({ enumerable: true, get: function () { return context_1.AppBridgeContext; } }));
var useAppBridge_1 = __webpack_require__(/*! ./useAppBridge */ "./node_modules/@shopify/app-bridge-react/useAppBridge.js");
Object.defineProperty(exports, "useAppBridge", ({ enumerable: true, get: function () { return useAppBridge_1.useAppBridge; } }));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/package.json":
/*!*************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/package.json ***!
\*************************************************************/
/***/ ((module) => {
"use strict";
module.exports = JSON.parse('{"name":"@shopify/app-bridge-react","version":"1.29.0","types":"index.d.ts","main":"index.js","unpkg":"umd/index.js","jsdelivr":"umd/index.js","files":["/components/","/umd/","/utilities/","/context.d.ts","/context.js","/index.d.ts","/index.js","/types.d.ts","/types.js","/useAppBridge.d.ts","/useAppBridge.js"],"private":false,"publishConfig":{"access":"public","@shopify:registry":"https://registry.npmjs.org"},"repository":"git@github.com:Shopify/app-bridge.git","homepage":"https://shopify.dev/tools/app-bridge/react-components","author":"Shopify Inc.","license":"MIT","scripts":{"build":"yarn build:tsc && yarn build:umd","build:tsc":"NODE_ENV=production tsc","build:umd":"NODE_ENV=production webpack -p","check":"tsc","clean":"cat package.json | node -pe \\"JSON.parse(require(\'fs\').readFileSync(\'/dev/stdin\').toString()).files.map(f => \'./\'+f).join(\' \')\\" | xargs rm -rf","pack":"yarn pack","size":"size-limit"},"sideEffects":false,"size-limit":[{"limit":"28 KB","path":"index.js"}],"dependencies":{"@shopify/app-bridge":"^1.29.0"},"devDependencies":{"@types/react":"^16.7.3","enzyme":"3.11.0"},"peerDependencies":{"react":"^16.0.0"},"gitHead":"fa8339c05712e71d806084d74fea466df4f4273e"}');
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/useAppBridge.js":
/*!****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/useAppBridge.js ***!
\****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.useAppBridge = void 0;
var react_1 = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var context_1 = __webpack_require__(/*! ./context */ "./node_modules/@shopify/app-bridge-react/context.js");
function useAppBridge() {
var appBridge = react_1.useContext(context_1.AppBridgeContext);
if (!appBridge) {
throw new Error('No AppBridge context provided. Your component must be wrapped in the <Provider> component from App Bridge React.');
}
return appBridge;
}
exports.useAppBridge = useAppBridge;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge-react/utilities/transformers.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge-react/utilities/transformers.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.transformActions = exports.generateRedirect = void 0;
var actions_1 = __webpack_require__(/*! @shopify/app-bridge/actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
function generateRedirect(appBridge, url, target, external) {
if (target === void 0) { target = 'APP'; }
if (url == null) {
return undefined;
}
var redirect = actions_1.Redirect.create(appBridge);
var payload = external === true
? {
url: url,
newContext: true,
}
: url;
return function () {
redirect.dispatch(redirectAction(target, external), payload);
};
}
exports.generateRedirect = generateRedirect;
function redirectAction(target, external) {
if (external === true) {
return actions_1.Redirect.Action.REMOTE;
}
return actions_1.Redirect.Action[target];
}
function transformActions(appBridge, _a) {
var primaryAction = _a.primaryAction, secondaryActions = _a.secondaryActions, actionGroups = _a.actionGroups;
var primary = transformPrimaryAction(appBridge, primaryAction);
var secondary = __spreadArrays(transformSecondaryActions(appBridge, secondaryActions), transformActionGroups(appBridge, actionGroups));
return {
primary: primary,
secondary: secondary,
};
}
exports.transformActions = transformActions;
function transformAction(appBridge, action) {
var style = action.destructive === true ? actions_1.Button.Style.Danger : undefined;
var button = actions_1.Button.create(appBridge, {
label: action.content || '',
disabled: action.disabled,
loading: action.loading,
style: style,
});
if (action.onAction) {
button.subscribe(actions_1.Button.Action.CLICK, action.onAction);
}
var redirect = generateRedirect(appBridge, action.url, action.target, action.external);
if (redirect != null) {
button.subscribe(actions_1.Button.Action.CLICK, redirect);
}
return button;
}
function transformPrimaryAction(appBridge, primaryAction) {
if (primaryAction == null) {
return undefined;
}
var primary = transformAction(appBridge, primaryAction);
return primary;
}
function transformSecondaryActions(appBridge, secondaryActions) {
if (secondaryActions === void 0) { secondaryActions = []; }
var secondary = __spreadArrays(secondaryActions.map(function (secondaryAction) {
return transformAction(appBridge, secondaryAction);
}));
return secondary;
}
function transformActionGroups(appBridge, actionGroups) {
if (actionGroups === void 0) { actionGroups = []; }
var buttonGroups = __spreadArrays(actionGroups.map(function (group) {
var buttons = group.actions.map(function (groupAction) {
return transformAction(appBridge, groupAction);
});
return actions_1.ButtonGroup.create(appBridge, { label: group.title, buttons: buttons });
}));
return buttonGroups;
}
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/MessageTransport.js":
/*!**************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/MessageTransport.js ***!
\**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.createTransportListener = exports.fromWindow = exports.fromFrame = exports.Context = void 0;
var Error_1 = __webpack_require__(/*! ./actions/Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js");
var validator_1 = __webpack_require__(/*! ./actions/validator */ "./node_modules/@shopify/app-bridge/actions/validator.js");
var types_1 = __webpack_require__(/*! ./client/types */ "./node_modules/@shopify/app-bridge/client/types.js");
var collection_1 = __webpack_require__(/*! ./util/collection */ "./node_modules/@shopify/app-bridge/util/collection.js");
var env_1 = __webpack_require__(/*! ./util/env */ "./node_modules/@shopify/app-bridge/util/env.js");
var Context;
(function (Context) {
Context["Modal"] = "Modal";
Context["Main"] = "Main";
})(Context = exports.Context || (exports.Context = {}));
/**
* Create a MessageTransport from an IFrame.
* @remarks
* Used on the host-side to create a postMessage MessageTransport.
* @beta
*/
function fromFrame(frame, localOrigin, context) {
var handlers = [];
if (typeof frame === 'undefined' || !frame.ownerDocument || !frame.ownerDocument.defaultView) {
throw Error_1.fromAction('App frame is undefined', Error_1.AppActionType.WINDOW_UNDEFINED);
}
var parent = frame.ownerDocument.defaultView;
parent.addEventListener('message', function (event) {
if (!validator_1.isAppMessage(event)) {
return;
}
if (event.origin !== localOrigin) {
var contentWindow = frame.contentWindow;
if (contentWindow) {
var errorMessage = "Message origin '" + event.origin + "' does not match app origin '" + localOrigin + "'.";
var payload = Error_1.invalidOriginAction(errorMessage);
var message = {
type: 'dispatch',
payload: payload,
};
contentWindow.postMessage(message, event.origin);
}
return;
}
for (var _i = 0, handlers_1 = handlers; _i < handlers_1.length; _i++) {
var handler = handlers_1[_i];
handler(event);
}
});
return {
context: context,
localOrigin: localOrigin,
frameWindow: frame.contentWindow,
hostFrame: parent,
dispatch: function (message) {
var contentWindow = frame.contentWindow;
if (contentWindow) {
contentWindow.postMessage(message, localOrigin);
}
},
subscribe: function (handler) {
return collection_1.addAndRemoveFromCollection(handlers, handler);
},
};
}
exports.fromFrame = fromFrame;
/**
* Create a MessageTransport from a parent window.
* @remarks
* Used on the client-side to create a postMessage MessageTransport.
* @internalremarks
* In frameless mode, message should be dispatched via SmartWebView.handleMessage instead of postMessage.
* @beta
*/
function fromWindow(contentWindow, localOrigin) {
var handlers = [];
if (typeof window !== undefined) {
window.addEventListener('message', function (event) {
if ((window === contentWindow && !env_1.isFrameless) ||
event.source !== contentWindow ||
!(validator_1.isAppBridgeAction(event.data.payload) || validator_1.isAppMessage(event))) {
return;
}
for (var _i = 0, handlers_2 = handlers; _i < handlers_2.length; _i++) {
var handler = handlers_2[_i];
handler(event);
}
});
}
return {
localOrigin: localOrigin,
hostFrame: contentWindow,
dispatch: function (message) {
if (!message.source || !message.source.shopOrigin) {
return;
}
if (env_1.isFrameless && window && window.SmartWebView) {
window.SmartWebView.handleMessage('frameless://fromClient', JSON.stringify(message));
return;
}
var messageOrigin = "https://" + message.source.shopOrigin;
contentWindow.postMessage(message, messageOrigin);
},
subscribe: function (handler) {
return collection_1.addAndRemoveFromCollection(handlers, handler);
},
};
}
exports.fromWindow = fromWindow;
function createTransportListener() {
var listeners = [];
var actionListeners = {};
function createSubscribeHandler(dispatcher) {
function subscribe() {
if (arguments.length < 2) {
// eslint-disable-next-line prefer-rest-params
return collection_1.addAndRemoveFromCollection(listeners, { callback: arguments[0] });
}
// eslint-disable-next-line prefer-rest-params
var _a = Array.from(arguments), type = _a[0], callback = _a[1], id = _a[2];
var actionCallback = { callback: callback, id: id };
var payload = { type: type, id: id };
if (!Object.prototype.hasOwnProperty.call(actionListeners, type)) {
actionListeners[type] = [];
}
if (dispatcher) {
dispatcher(types_1.MessageType.Subscribe, payload);
}
return collection_1.addAndRemoveFromCollection(actionListeners[type], actionCallback, function () {
if (dispatcher) {
dispatcher(types_1.MessageType.Unsubscribe, payload);
}
});
}
return subscribe;
}
return {
createSubscribeHandler: createSubscribeHandler,
handleMessage: function (message) {
listeners.forEach(function (listener) { return listener.callback(message); });
},
handleActionDispatch: function (_a) {
var type = _a.type, payload = _a.payload;
var hasCallback = false;
if (Object.prototype.hasOwnProperty.call(actionListeners, type)) {
for (var _i = 0, _b = actionListeners[type]; _i < _b.length; _i++) {
var listener = _b[_i];
var id = listener.id, callback = listener.callback;
var matchId = payload && payload.id === id;
if (matchId || !id) {
callback(payload);
hasCallback = true;
}
}
}
return hasCallback;
},
};
}
exports.createTransportListener = createTransportListener;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/AuthCode/index.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/AuthCode/index.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.respond = exports.request = exports.Action = exports.ActionType = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var ActionType;
(function (ActionType) {
ActionType["REQUEST"] = "APP::AUTH_CODE::REQUEST";
ActionType["RESPOND"] = "APP::AUTH_CODE::RESPOND";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["REQUEST"] = "REQUEST";
Action["RESPOND"] = "RESPOND";
})(Action = exports.Action || (exports.Action = {}));
function request(id) {
return helper_1.actionWrapper({
group: types_1.Group.AuthCode,
type: ActionType.REQUEST,
payload: { id: id },
});
}
exports.request = request;
function respond(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.AuthCode,
type: ActionType.RESPOND,
});
}
exports.respond = respond;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Button/actions.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Button/actions.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Button = exports.isValidButtonProps = exports.update = exports.clickButton = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Button/types.js");
function clickButton(group, component, payload) {
var id = component.id;
var action = helper_1.getEventNameSpace(group, types_2.Action.CLICK, component);
var buttonPayload = {
id: id,
payload: payload,
};
return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });
}
exports.clickButton = clickButton;
function update(group, component, props) {
var id = component.id;
var label = props.label;
var action = helper_1.getEventNameSpace(group, types_2.Action.UPDATE, component);
var buttonPayload = __assign(__assign({}, props), { id: id,
label: label });
return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });
}
exports.update = update;
function isValidButtonProps(button) {
return typeof button.id === 'string' && typeof button.label === 'string';
}
exports.isValidButtonProps = isValidButtonProps;
var Button = /** @class */ (function (_super) {
__extends(Button, _super);
function Button(app, options) {
var _this = _super.call(this, app, types_1.ComponentType.Button, types_1.Group.Button) || this;
_this.disabled = false;
_this.loading = false;
_this.set(options, false);
return _this;
}
Object.defineProperty(Button.prototype, "options", {
get: function () {
return {
disabled: this.disabled,
icon: this.icon,
label: this.label,
style: this.style,
loading: this.loading,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(Button.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { id: this.id });
},
enumerable: false,
configurable: true
});
Button.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var label = mergedOptions.label, disabled = mergedOptions.disabled, icon = mergedOptions.icon, style = mergedOptions.style, loading = mergedOptions.loading;
this.label = label;
this.disabled = Boolean(disabled);
this.icon = icon;
this.style = style;
this.loading = Boolean(loading);
if (shouldUpdate) {
this.dispatch(types_2.Action.UPDATE);
}
return this;
};
Button.prototype.dispatch = function (action, payload) {
switch (action) {
case types_2.Action.CLICK:
this.app.dispatch(clickButton(this.group, this.component, payload));
break;
case types_2.Action.UPDATE:
var updateAction = update(this.group, this.component, this.payload);
this.app.dispatch(updateAction);
break;
}
return this;
};
return Button;
}(helper_1.ActionSet));
exports.Button = Button;
function create(app, options) {
return new Button(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Button/index.js":
/*!******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Button/index.js ***!
\******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Button/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Button/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Button/types.js":
/*!******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Button/types.js ***!
\******************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Style = exports.Icon = exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["CLICK"] = "CLICK";
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["CLICK"] = "APP::BUTTON::CLICK";
ActionType["UPDATE"] = "APP::BUTTON::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Icon;
(function (Icon) {
Icon["Print"] = "print";
})(Icon = exports.Icon || (exports.Icon = {}));
var Style;
(function (Style) {
Style["Danger"] = "danger";
})(Style = exports.Style || (exports.Style = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/actions.js":
/*!*************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ButtonGroup/actions.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.ButtonGroup = exports.isGroupedButtonPayload = exports.isGroupedButton = exports.update = void 0;
var buttonHelper_1 = __webpack_require__(/*! ../buttonHelper */ "./node_modules/@shopify/app-bridge/actions/buttonHelper.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/types.js");
function update(group, component, props) {
return buttonActionWrapper(group, component, types_2.Action.UPDATE, props);
}
exports.update = update;
function isGroupedButton(options) {
var castOptions = options;
return castOptions.buttons && castOptions.buttons.length > 0 && castOptions.label !== undefined;
}
exports.isGroupedButton = isGroupedButton;
function isGroupedButtonPayload(payload) {
var castOptions = payload;
return (Array.isArray(castOptions.buttons) &&
typeof castOptions.id === 'string' &&
typeof castOptions.label === 'string');
}
exports.isGroupedButtonPayload = isGroupedButtonPayload;
var ButtonGroup = /** @class */ (function (_super) {
__extends(ButtonGroup, _super);
function ButtonGroup(app, options) {
var _this = _super.call(this, app, types_1.ComponentType.ButtonGroup, types_1.Group.ButtonGroup) || this;
_this.disabled = false;
_this.buttonsOptions = [];
_this.buttons = [];
_this.set(options, false);
return _this;
}
Object.defineProperty(ButtonGroup.prototype, "options", {
get: function () {
return {
buttons: this.buttonsOptions,
disabled: this.disabled,
label: this.label,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(ButtonGroup.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { buttons: this.buttons, id: this.id });
},
enumerable: false,
configurable: true
});
ButtonGroup.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var label = mergedOptions.label, disabled = mergedOptions.disabled, buttons = mergedOptions.buttons;
this.label = label;
this.disabled = Boolean(disabled);
this.buttons = this.getButtons(buttons);
if (shouldUpdate) {
this.dispatch(types_2.Action.UPDATE);
}
return this;
};
ButtonGroup.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.UPDATE:
var updateAction = update(this.group, this.component, this.payload);
this.app.dispatch(updateAction);
break;
}
return this;
};
ButtonGroup.prototype.updateButtons = function (newPayload) {
if (!this.buttons || this.buttons.length === 0) {
return;
}
var updated;
for (var _i = 0, _a = this.buttons; _i < _a.length; _i++) {
var action = _a[_i];
updated = helper_1.updateActionFromPayload(action, newPayload);
if (updated) {
break;
}
}
if (updated) {
this.dispatch(types_2.Action.UPDATE);
}
};
ButtonGroup.prototype.getSingleButton = function (button) {
return buttonHelper_1.getSingleButton(this, button, this.subgroups, this.updateButtons);
};
ButtonGroup.prototype.getButtons = function (buttonOptions) {
var _this = this;
var buttons = [];
if (!buttonOptions) {
return [];
}
buttonOptions.forEach(function (button) {
var singleButton = buttonHelper_1.getSingleButton(_this, button, _this.subgroups, _this.updateButtons);
buttons.push(singleButton);
});
this.buttonsOptions = buttonOptions;
return buttons;
};
return ButtonGroup;
}(helper_1.ActionSetWithChildren));
exports.ButtonGroup = ButtonGroup;
function create(app, options) {
return new ButtonGroup(app, options);
}
exports.create = create;
function buttonActionWrapper(group, component, eventName, props, payload) {
var id = component.id;
var label = props.label;
var action = helper_1.getEventNameSpace(group, eventName, component);
var buttonPayload = __assign(__assign({}, props), { id: id,
label: label,
payload: payload });
return helper_1.actionWrapper({ type: action, group: group, payload: buttonPayload });
}
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js ***!
\***********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/types.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ButtonGroup/types.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::BUTTONGROUP::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Cart/actions.js":
/*!******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Cart/actions.js ***!
\******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Cart = exports.setLineItemProperties = exports.removeLineItemDiscount = exports.setLineItemDiscount = exports.removeLineItem = exports.updateLineItem = exports.addLineItem = exports.removeProperties = exports.setProperties = exports.setDiscount = exports.updateCustomerAddress = exports.addCustomerAddress = exports.setCustomer = exports.update = exports.fetch = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Cart/types.js");
/**
* Cart action
* @internal
*/
function createCartAction(type, payload) {
if (payload === void 0) { payload = {}; }
return helper_1.actionWrapper({
group: types_1.Group.Cart,
type: type,
payload: payload,
});
}
function fetch() {
return createCartAction(types_2.ActionType.FETCH);
}
exports.fetch = fetch;
function update(payload) {
return createCartAction(types_2.ActionType.UPDATE, payload);
}
exports.update = update;
function setCustomer(payload) {
return createCartAction(types_2.ActionType.SET_CUSTOMER, payload);
}
exports.setCustomer = setCustomer;
function addCustomerAddress(payload) {
return createCartAction(types_2.ActionType.ADD_CUSTOMER_ADDRESS, payload);
}
exports.addCustomerAddress = addCustomerAddress;
function updateCustomerAddress(payload) {
return createCartAction(types_2.ActionType.UPDATE_CUSTOMER_ADDRESS, payload);
}
exports.updateCustomerAddress = updateCustomerAddress;
function setDiscount(payload) {
return createCartAction(types_2.ActionType.SET_DISCOUNT, payload);
}
exports.setDiscount = setDiscount;
function setProperties(payload) {
return createCartAction(types_2.ActionType.SET_PROPERTIES, payload);
}
exports.setProperties = setProperties;
function removeProperties(payload) {
return createCartAction(types_2.ActionType.REMOVE_PROPERTIES, payload);
}
exports.removeProperties = removeProperties;
function addLineItem(payload) {
return createCartAction(types_2.ActionType.ADD_LINE_ITEM, payload);
}
exports.addLineItem = addLineItem;
function updateLineItem(payload) {
return createCartAction(types_2.ActionType.UPDATE_LINE_ITEM, payload);
}
exports.updateLineItem = updateLineItem;
function removeLineItem(payload) {
return createCartAction(types_2.ActionType.REMOVE_LINE_ITEM, payload);
}
exports.removeLineItem = removeLineItem;
function setLineItemDiscount(payload) {
return createCartAction(types_2.ActionType.SET_LINE_ITEM_DISCOUNT, payload);
}
exports.setLineItemDiscount = setLineItemDiscount;
function removeLineItemDiscount(payload) {
return createCartAction(types_2.ActionType.REMOVE_LINE_ITEM_DISCOUNT, payload);
}
exports.removeLineItemDiscount = removeLineItemDiscount;
function setLineItemProperties(payload) {
return createCartAction(types_2.ActionType.SET_LINE_ITEM_PROPERTIES, payload);
}
exports.setLineItemProperties = setLineItemProperties;
/**
* Cart
*/
var Cart = /** @class */ (function (_super) {
__extends(Cart, _super);
function Cart(app, options) {
return _super.call(this, app, types_1.Group.Cart, types_1.Group.Cart, options ? options.id : undefined) || this;
}
Cart.prototype.dispatch = function (action, payload) {
switch (action) {
case types_2.Action.FETCH:
this.dispatchCartAction(types_2.ActionType.FETCH);
break;
case types_2.Action.UPDATE:
this.dispatchCartAction(types_2.ActionType.UPDATE, payload);
break;
case types_2.Action.SET_CUSTOMER:
this.dispatchCartAction(types_2.ActionType.SET_CUSTOMER, payload);
break;
case types_2.Action.REMOVE_CUSTOMER:
this.dispatchCartAction(types_2.ActionType.REMOVE_CUSTOMER, payload);
break;
case types_2.Action.ADD_CUSTOMER_ADDRESS:
this.dispatchCartAction(types_2.ActionType.ADD_CUSTOMER_ADDRESS, payload);
break;
case types_2.Action.UPDATE_CUSTOMER_ADDRESS:
this.dispatchCartAction(types_2.ActionType.UPDATE_CUSTOMER_ADDRESS, payload);
break;
case types_2.Action.SET_DISCOUNT:
this.dispatchCartAction(types_2.ActionType.SET_DISCOUNT, payload);
break;
case types_2.Action.REMOVE_DISCOUNT:
this.dispatchCartAction(types_2.ActionType.REMOVE_DISCOUNT, payload);
break;
case types_2.Action.SET_PROPERTIES:
this.dispatchCartAction(types_2.ActionType.SET_PROPERTIES, payload);
break;
case types_2.Action.REMOVE_PROPERTIES:
this.dispatchCartAction(types_2.ActionType.REMOVE_PROPERTIES, payload);
break;
case types_2.Action.CLEAR:
this.dispatchCartAction(types_2.ActionType.CLEAR, payload);
break;
case types_2.Action.ADD_LINE_ITEM:
this.dispatchCartAction(types_2.ActionType.ADD_LINE_ITEM, payload);
break;
case types_2.Action.UPDATE_LINE_ITEM:
this.dispatchCartAction(types_2.ActionType.UPDATE_LINE_ITEM, payload);
break;
case types_2.Action.REMOVE_LINE_ITEM:
this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM, payload);
break;
case types_2.Action.SET_LINE_ITEM_DISCOUNT:
this.dispatchCartAction(types_2.ActionType.SET_LINE_ITEM_DISCOUNT, payload);
break;
case types_2.Action.REMOVE_LINE_ITEM_DISCOUNT:
this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM_DISCOUNT, payload);
break;
case types_2.Action.SET_LINE_ITEM_PROPERTIES:
this.dispatchCartAction(types_2.ActionType.SET_LINE_ITEM_PROPERTIES, payload);
break;
case types_2.Action.REMOVE_LINE_ITEM_PROPERTIES:
this.dispatchCartAction(types_2.ActionType.REMOVE_LINE_ITEM_PROPERTIES, payload);
break;
}
return this;
};
Cart.prototype.dispatchCartAction = function (type, payload) {
this.app.dispatch(createCartAction(type, __assign(__assign({}, payload), { id: this.id })));
};
return Cart;
}(helper_1.ActionSet));
exports.Cart = Cart;
function create(app, options) {
return new Cart(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Cart/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Cart/index.js ***!
\****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Cart/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Cart/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Cart/types.js":
/*!****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Cart/types.js ***!
\****************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["FETCH"] = "APP::CART::FETCH";
ActionType["UPDATE"] = "APP::CART::UPDATE";
ActionType["SET_CUSTOMER"] = "APP::CART::SET_CUSTOMER";
ActionType["REMOVE_CUSTOMER"] = "APP::CART::REMOVE_CUSTOMER";
ActionType["ADD_CUSTOMER_ADDRESS"] = "APP::CART::ADD_CUSTOMER_ADDRESS";
ActionType["UPDATE_CUSTOMER_ADDRESS"] = "APP::CART::UPDATE_CUSTOMER_ADDRESS";
ActionType["SET_DISCOUNT"] = "APP::CART::SET_DISCOUNT";
ActionType["REMOVE_DISCOUNT"] = "APP::CART::REMOVE_DISCOUNT";
ActionType["SET_PROPERTIES"] = "APP::CART::SET_PROPERTIES";
ActionType["REMOVE_PROPERTIES"] = "APP::CART::REMOVE_PROPERTIES";
ActionType["CLEAR"] = "APP::CART::CLEAR";
ActionType["ADD_LINE_ITEM"] = "APP::CART::ADD_LINE_ITEM";
ActionType["UPDATE_LINE_ITEM"] = "APP::CART::UPDATE_LINE_ITEM";
ActionType["REMOVE_LINE_ITEM"] = "APP::CART::REMOVE_LINE_ITEM";
ActionType["SET_LINE_ITEM_DISCOUNT"] = "APP::CART::SET_LINE_ITEM_DISCOUNT";
ActionType["REMOVE_LINE_ITEM_DISCOUNT"] = "APP::CART::REMOVE_LINE_ITEM_DISCOUNT";
ActionType["SET_LINE_ITEM_PROPERTIES"] = "APP::CART::SET_LINE_ITEM_PROPERTIES";
ActionType["REMOVE_LINE_ITEM_PROPERTIES"] = "APP::CART::REMOVE_LINE_ITEM_PROPERTIES";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["FETCH"] = "FETCH";
Action["UPDATE"] = "UPDATE";
Action["SET_CUSTOMER"] = "SET_CUSTOMER";
Action["REMOVE_CUSTOMER"] = "REMOVE_CUSTOMER";
Action["ADD_CUSTOMER_ADDRESS"] = "ADD_CUSTOMER_ADDRESS";
Action["UPDATE_CUSTOMER_ADDRESS"] = "UPDATE_CUSTOMER_ADDRESS";
Action["SET_DISCOUNT"] = "SET_DISCOUNT";
Action["REMOVE_DISCOUNT"] = "REMOVE_DISCOUNT";
Action["SET_PROPERTIES"] = "SET_PROPERTIES";
Action["REMOVE_PROPERTIES"] = "REMOVE_PROPERTIES";
Action["CLEAR"] = "CLEAR";
Action["ADD_LINE_ITEM"] = "ADD_LINE_ITEM";
Action["UPDATE_LINE_ITEM"] = "UPDATE_LINE_ITEM";
Action["REMOVE_LINE_ITEM"] = "REMOVE_LINE_ITEM";
Action["SET_LINE_ITEM_DISCOUNT"] = "SET_LINE_ITEM_DISCOUNT";
Action["REMOVE_LINE_ITEM_DISCOUNT"] = "REMOVE_LINE_ITEM_DISCOUNT";
Action["SET_LINE_ITEM_PROPERTIES"] = "SET_LINE_ITEM_PROPERTIES";
Action["REMOVE_LINE_ITEM_PROPERTIES"] = "REMOVE_LINE_ITEM_PROPERTIES";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ContextualSaveBar/index.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ContextualSaveBar/index.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.ContextualSaveBar = exports.discard = exports.save = exports.hide = exports.show = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
/**
* ContextualSaveBar action enum
*/
var Action;
(function (Action) {
Action["DISCARD"] = "DISCARD";
Action["SAVE"] = "SAVE";
Action["SHOW"] = "SHOW";
Action["HIDE"] = "HIDE";
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
/**
* ContextualSaveBar action type enum
* @remarks includes the action prefix and group
*
*/
var ActionType;
(function (ActionType) {
ActionType["DISCARD"] = "APP::CONTEXTUAL_SAVE_BAR::DISCARD";
ActionType["SAVE"] = "APP::CONTEXTUAL_SAVE_BAR::SAVE";
ActionType["SHOW"] = "APP::CONTEXTUAL_SAVE_BAR::SHOW";
ActionType["HIDE"] = "APP::CONTEXTUAL_SAVE_BAR::HIDE";
ActionType["UPDATE"] = "APP::CONTEXTUAL_SAVE_BAR::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function createContextBarAction(action, payload) {
return helper_1.actionWrapper({
group: types_1.Group.ContextualSaveBar,
type: ActionType[action],
payload: payload,
});
}
function show(payload) {
return createContextBarAction(Action.SHOW, payload);
}
exports.show = show;
function hide(payload) {
return createContextBarAction(Action.HIDE, payload);
}
exports.hide = hide;
function save(payload) {
return createContextBarAction(Action.SAVE, payload);
}
exports.save = save;
function discard(payload) {
return createContextBarAction(Action.DISCARD, payload);
}
exports.discard = discard;
/**
* ContextualSaveBar action set
*/
var ContextualSaveBar = /** @class */ (function (_super) {
__extends(ContextualSaveBar, _super);
/**
* Returns a new instance of a ContextualSaveBar action set
* @param app the client application
*/
function ContextualSaveBar(app, options) {
if (options === void 0) { options = {}; }
var _this = _super.call(this, app, types_1.Group.ContextualSaveBar, types_1.Group.ContextualSaveBar) || this;
_this.options = options;
_this.set(options, false);
return _this;
}
Object.defineProperty(ContextualSaveBar.prototype, "payload", {
/**
* Returns the action set payload
*/
get: function () {
return __assign({ id: this.id }, this.options);
},
enumerable: false,
configurable: true
});
ContextualSaveBar.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
this.options = mergedOptions;
if (shouldUpdate) {
this.dispatch(Action.UPDATE);
}
return this;
};
/**
* Dispatches a given action with the action set payload
* @param action the action enum
* @returns the action set instance
*/
ContextualSaveBar.prototype.dispatch = function (action) {
this.app.dispatch(createContextBarAction(action, this.payload));
return this;
};
return ContextualSaveBar;
}(helper_1.ActionSet));
exports.ContextualSaveBar = ContextualSaveBar;
/**
* Returns a new instance of a ContextualSaveBar action set
* @param app the client application
*
*/
function create(app, options) {
return new ContextualSaveBar(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Error/actions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Error/actions.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.throwError = exports.fromAction = exports.AppBridgeError = exports.invalidOriginAction = exports.isErrorEventName = exports.permissionAction = exports.networkAction = exports.persistenceAction = exports.unsupportedOperationAction = exports.unexpectedAction = exports.invalidAction = exports.invalidActionType = exports.invalidPayload = exports.Message = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Error/types.js");
function errorActionWrapperWithId(type, action, message) {
var castPayload = action.payload;
return helper_1.actionWrapper({
type: type,
group: types_1.Group.Error,
payload: {
action: action,
message: message,
type: type,
id: castPayload && castPayload.id ? castPayload.id : undefined,
},
});
}
var Message;
(function (Message) {
Message["MISSING_PAYLOAD"] = "Missing payload";
Message["INVALID_PAYLOAD_ID"] = "Id in payload is missing or invalid";
})(Message = exports.Message || (exports.Message = {}));
function invalidPayload(action, message) {
return errorActionWrapperWithId(types_2.ActionType.INVALID_PAYLOAD, action, message || "The action's payload is missing required properties or has invalid properties");
}
exports.invalidPayload = invalidPayload;
function invalidActionType(action, message) {
return helper_1.actionWrapper({
group: types_1.Group.Error,
payload: {
action: action,
message: message || 'The action type is invalid or unsupported',
type: types_2.ActionType.INVALID_ACTION_TYPE,
},
type: types_2.ActionType.INVALID_ACTION_TYPE,
});
}
exports.invalidActionType = invalidActionType;
function invalidAction(action, message) {
return helper_1.actionWrapper({
group: types_1.Group.Error,
payload: {
action: action,
message: message || "The action's has missing/invalid values for `group`, `type` or `version`",
type: types_2.ActionType.INVALID_ACTION,
},
type: types_2.ActionType.INVALID_ACTION,
});
}
exports.invalidAction = invalidAction;
function unexpectedAction(action, message) {
return helper_1.actionWrapper({
group: types_1.Group.Error,
payload: {
action: action,
message: message || 'Action cannot be called at this time',
type: types_2.ActionType.UNEXPECTED_ACTION,
},
type: types_2.ActionType.UNEXPECTED_ACTION,
});
}
exports.unexpectedAction = unexpectedAction;
function unsupportedOperationAction(action, message) {
return errorActionWrapperWithId(types_2.ActionType.UNSUPPORTED_OPERATION, action, message || 'The action type is unsupported');
}
exports.unsupportedOperationAction = unsupportedOperationAction;
function persistenceAction(action, message) {
return errorActionWrapperWithId(types_2.ActionType.PERSISTENCE, action, message || 'Action cannot be persisted on server');
}
exports.persistenceAction = persistenceAction;
function networkAction(action, message) {
return errorActionWrapperWithId(types_2.ActionType.NETWORK, action, message || 'Network error');
}
exports.networkAction = networkAction;
function permissionAction(action, message) {
return errorActionWrapperWithId(types_2.ActionType.PERMISSION, action, message || 'Action is not permitted');
}
exports.permissionAction = permissionAction;
function isErrorEventName(eventName) {
var match = helper_1.findMatchInEnum(types_2.Action, eventName);
return typeof match === 'string';
}
exports.isErrorEventName = isErrorEventName;
function invalidOriginAction(message) {
return helper_1.actionWrapper({
group: types_1.Group.Error,
payload: {
message: message,
type: types_2.ActionType.INVALID_ORIGIN,
},
type: types_2.ActionType.INVALID_ORIGIN,
});
}
exports.invalidOriginAction = invalidOriginAction;
var AppBridgeError = /** @class */ (function () {
function AppBridgeError(message) {
this.name = 'AppBridgeError';
this.message = message;
if (typeof Error.captureStackTrace === 'function') {
Error.captureStackTrace(this, this.constructor);
}
else {
this.stack = new Error(this.message).stack;
}
}
return AppBridgeError;
}());
exports.AppBridgeError = AppBridgeError;
AppBridgeError.prototype = Object.create(Error.prototype);
function fromAction(message, type, action) {
var errorMessage = message ? type + ": " + message : type;
var error = new AppBridgeError(errorMessage);
error.action = action;
error.type = type;
return error;
}
exports.fromAction = fromAction;
function throwError() {
var type = arguments[0];
var message;
var action;
if (typeof arguments[1] === 'string') {
message = arguments[1];
}
else {
action = arguments[1];
message = arguments[2] || '';
}
throw fromAction(message, type, action);
}
exports.throwError = throwError;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Error/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Error/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Error/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Error/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Error/types.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Error/types.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AppActionType = exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["INVALID_ACTION"] = "INVALID_ACTION";
Action["INVALID_ACTION_TYPE"] = "INVALID_ACTION_TYPE";
Action["INVALID_OPTIONS"] = "INVALID_OPTIONS";
Action["INVALID_PAYLOAD"] = "INVALID_PAYLOAD";
Action["UNEXPECTED_ACTION"] = "UNEXPECTED_ACTION";
Action["PERSISTENCE"] = "PERSISTENCE";
Action["UNSUPPORTED_OPERATION"] = "UNSUPPORTED_OPERATION";
Action["NETWORK"] = "NETWORK";
Action["PERMISSION"] = "PERMISSION";
})(Action = exports.Action || (exports.Action = {}));
// Errors triggered in response to an action
var ActionType;
(function (ActionType) {
ActionType["INVALID_ACTION"] = "APP::ERROR::INVALID_ACTION";
ActionType["INVALID_ACTION_TYPE"] = "APP::ERROR::INVALID_ACTION_TYPE";
ActionType["INVALID_PAYLOAD"] = "APP::ERROR::INVALID_PAYLOAD";
ActionType["INVALID_OPTIONS"] = "APP::ERROR::INVALID_OPTIONS";
ActionType["UNEXPECTED_ACTION"] = "APP::ERROR::UNEXPECTED_ACTION";
ActionType["PERSISTENCE"] = "APP::ERROR::PERSISTENCE";
ActionType["UNSUPPORTED_OPERATION"] = "APP::ERROR::UNSUPPORTED_OPERATION";
ActionType["NETWORK"] = "APP::ERROR::NETWORK";
ActionType["PERMISSION"] = "APP::ERROR::PERMISSION";
ActionType["FAILED_AUTHENTICATION"] = "APP::ERROR::FAILED_AUTHENTICATION";
ActionType["INVALID_ORIGIN"] = "APP::ERROR::INVALID_ORIGIN";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
// Errors thrown in response to app setup
var AppActionType;
(function (AppActionType) {
AppActionType["INVALID_CONFIG"] = "APP::ERROR::INVALID_CONFIG";
AppActionType["MISSING_CONFIG"] = "APP::APP_ERROR::MISSING_CONFIG";
AppActionType["MISSING_APP_BRIDGE_MIDDLEWARE"] = "APP::APP_ERROR::MISSING_APP_BRIDGE_MIDDLEWARE";
AppActionType["WINDOW_UNDEFINED"] = "APP::APP_ERROR::WINDOW_UNDEFINED";
AppActionType["MISSING_LOCAL_ORIGIN"] = "APP::APP_ERROR::MISSING_LOCAL_ORIGIN";
AppActionType["MISSING_HOST_PROVIDER"] = "APP::APP_ERROR::MISSING_HOST_PROVIDER";
AppActionType["MISSING_ROUTER_CONTEXT"] = "APP::APP_ERROR::MISSING_ROUTER_CONTEXT";
AppActionType["MISSING_HISTORY_BLOCK"] = "APP::APP_ERROR::MISSING_HISTORY_BLOCK";
})(AppActionType = exports.AppActionType || (exports.AppActionType = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Features/actions.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Features/actions.js ***!
\**********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Features = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Features/types.js");
/**
* A set of Actions for Updating, Requesting Features of AppBridge
* @public
*/
var Features = /** @class */ (function (_super) {
__extends(Features, _super);
function Features(app, options) {
return _super.call(this, app, types_1.Group.Features, types_1.Group.Features, options ? options.id : undefined) || this;
}
/**
* @public
*/
Features.prototype.dispatch = function (action, payload) {
switch (action) {
case types_2.Action.REQUEST:
this.dispatchFeaturesAction(types_2.ActionType.REQUEST, payload);
break;
}
return this;
};
/**
* @internal
*/
Features.prototype.dispatchFeaturesAction = function (type, payload) {
this.app.dispatch(helper_1.actionWrapper({
group: types_1.Group.Features,
type: type,
payload: __assign(__assign({}, (payload || {})), { id: this.id }),
}));
};
return Features;
}(helper_1.ActionSet));
exports.Features = Features;
/**
* @public
*/
function create(app, options) {
return new Features(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Features/index.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Features/index.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Features/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Features/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Features/types.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Features/types.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
/**
* Action Types for the Features group
* @public
*/
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::FEATURES::UPDATE";
ActionType["REQUEST"] = "APP::FEATURES::REQUEST";
ActionType["REQUEST_UPDATE"] = "APP::FEATURES::REQUEST::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/**
* Actions available to the Features group
* @public
*/
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
Action["REQUEST"] = "REQUEST";
Action["REQUEST_UPDATE"] = "REQUEST::UPDATE";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/FeedbackModal/index.js":
/*!*************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/FeedbackModal/index.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.FeedbackModal = exports.close = exports.open = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
/**
* Action for the Feedback Modal group
* @public
*/
var Action;
(function (Action) {
Action["OPEN"] = "OPEN";
Action["CLOSE"] = "CLOSE";
})(Action = exports.Action || (exports.Action = {}));
/**
* Action types for the Feedback Modal group
* @public
*/
var ActionType;
(function (ActionType) {
ActionType["OPEN"] = "APP::FEEDBACK_MODAL::OPEN";
ActionType["CLOSE"] = "APP::FEEDBACK_MODAL::CLOSE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function open(payload) {
return helper_1.actionWrapper({
group: types_1.Group.FeedbackModal,
payload: payload,
type: ActionType.OPEN,
});
}
exports.open = open;
function close(payload) {
return helper_1.actionWrapper({
group: types_1.Group.FeedbackModal,
payload: payload,
type: ActionType.CLOSE,
});
}
exports.close = close;
/**
* FeedbackModal action set
*/
var FeedbackModal = /** @class */ (function (_super) {
__extends(FeedbackModal, _super);
/**
* Returns a new instance of a FeedbackModal action set
* @param app the client application
*/
function FeedbackModal(app, options) {
var _this = _super.call(this, app, types_1.Group.FeedbackModal, types_1.Group.FeedbackModal) || this;
_this.options = options;
_this.set(options);
return _this;
}
Object.defineProperty(FeedbackModal.prototype, "payload", {
/**
* Returns the action set payload
*/
get: function () {
return __assign({ id: this.id }, this.options);
},
enumerable: false,
configurable: true
});
FeedbackModal.prototype.set = function (options) {
this.options = helper_1.getMergedProps(this.options, options);
return this;
};
/**
* Dispatches a given action with the action set payload
* @param action the action enum
* @returns the action set instance
*/
FeedbackModal.prototype.dispatch = function (action) {
switch (action) {
case Action.OPEN:
var openAction = open(this.payload);
this.app.dispatch(openAction);
break;
case Action.CLOSE:
var closeAction = close(this.payload);
this.app.dispatch(closeAction);
break;
}
return this;
};
return FeedbackModal;
}(helper_1.ActionSet));
exports.FeedbackModal = FeedbackModal;
/**
* Returns a new instance of a FeedbackModal action set
* @param app the client application
*/
function create(app, options) {
return new FeedbackModal(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Flash/actions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Flash/actions.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Flash = void 0;
var Toast_1 = __webpack_require__(/*! ../Toast */ "./node_modules/@shopify/app-bridge/actions/Toast/index.js");
var Toast_2 = __webpack_require__(/*! ../Toast */ "./node_modules/@shopify/app-bridge/actions/Toast/index.js");
Object.defineProperty(exports, "clear", ({ enumerable: true, get: function () { return Toast_2.clear; } }));
Object.defineProperty(exports, "show", ({ enumerable: true, get: function () { return Toast_2.show; } }));
var Flash = /** @class */ (function (_super) {
__extends(Flash, _super);
function Flash() {
return _super !== null && _super.apply(this, arguments) || this;
}
return Flash;
}(Toast_1.Toast));
exports.Flash = Flash;
function create(app, options) {
return new Flash(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Flash/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Flash/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Flash/actions.js"), exports);
__exportStar(__webpack_require__(/*! ../Toast/types */ "./node_modules/@shopify/app-bridge/actions/Toast/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Fullscreen/index.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Fullscreen/index.js ***!
\**********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Fullscreen = exports.exit = exports.enter = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
/**
* Fullscreen action enum
* @beta
*/
var Action;
(function (Action) {
Action["ENTER"] = "ENTER";
Action["EXIT"] = "EXIT";
})(Action = exports.Action || (exports.Action = {}));
/**
* Fullscreen action type enum
* @remarks includes the action prefix and group
*
* @beta
*/
var ActionType;
(function (ActionType) {
ActionType["ENTER"] = "APP::FULLSCREEN::ENTER";
ActionType["EXIT"] = "APP::FULLSCREEN::EXIT";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function enter() {
return helper_1.actionWrapper({
group: types_1.Group.Fullscreen,
type: ActionType.ENTER,
});
}
exports.enter = enter;
function exit() {
return helper_1.actionWrapper({
group: types_1.Group.Fullscreen,
type: ActionType.EXIT,
});
}
exports.exit = exit;
/**
* Fullscreen action set
* @beta
*/
var Fullscreen = /** @class */ (function (_super) {
__extends(Fullscreen, _super);
/**
* Returns a new instance of a Fullscreen action set
* @param app the client application
*/
function Fullscreen(app) {
return _super.call(this, app, types_1.Group.Fullscreen, types_1.Group.Fullscreen) || this;
}
Object.defineProperty(Fullscreen.prototype, "payload", {
/**
* Returns the action set payload
*/
get: function () {
return { id: this.id };
},
enumerable: false,
configurable: true
});
/**
* Dispatches a given action with the action set payload
* @param action the action enum
* @returns the action set instance
*/
Fullscreen.prototype.dispatch = function (action) {
this.app.dispatch(helper_1.actionWrapper({
group: this.group,
type: ActionType[action],
payload: this.payload,
}));
return this;
};
return Fullscreen;
}(helper_1.ActionSet));
exports.Fullscreen = Fullscreen;
/**
* Returns a new instance of a Fullscreen action set
* @param app the client application
*
* @beta
*/
function create(app) {
return new Fullscreen(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/LeaveConfirmation/index.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/LeaveConfirmation/index.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.LeaveConfirmation = exports.confirm = exports.disable = exports.enable = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
/**
* Action for the Leave Confirmation group
* @public
*/
var Action;
(function (Action) {
Action["ENABLE"] = "ENABLE";
Action["DISABLE"] = "DISABLE";
Action["CONFIRM"] = "CONFIRM";
})(Action = exports.Action || (exports.Action = {}));
/**
* Action types for the Leave Confirmation group
* @public
*/
var ActionType;
(function (ActionType) {
ActionType["ENABLE"] = "APP::LEAVE_CONFIRMATION::ENABLE";
ActionType["DISABLE"] = "APP::LEAVE_CONFIRMATION::DISABLE";
ActionType["CONFIRM"] = "APP::LEAVE_CONFIRMATION::CONFIRM";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function enable(payload) {
if (payload === void 0) { payload = {}; }
return helper_1.actionWrapper({
group: types_1.Group.LeaveConfirmation,
payload: payload,
type: ActionType.ENABLE,
});
}
exports.enable = enable;
function disable(payload) {
if (payload === void 0) { payload = {}; }
return helper_1.actionWrapper({
group: types_1.Group.LeaveConfirmation,
payload: payload,
type: ActionType.DISABLE,
});
}
exports.disable = disable;
function confirm(payload) {
if (payload === void 0) { payload = {}; }
return helper_1.actionWrapper({
group: types_1.Group.LeaveConfirmation,
payload: payload,
type: ActionType.CONFIRM,
});
}
exports.confirm = confirm;
/**
* Leave Confirmation action set
*/
var LeaveConfirmation = /** @class */ (function (_super) {
__extends(LeaveConfirmation, _super);
/**
* Returns a new instance of a Leave Confirmation action set
* @param app the client application
*/
function LeaveConfirmation(app, options) {
if (options === void 0) { options = {}; }
var _this = _super.call(this, app, types_1.Group.LeaveConfirmation, types_1.Group.LeaveConfirmation) || this;
_this.options = options;
_this.set(options);
return _this;
}
Object.defineProperty(LeaveConfirmation.prototype, "payload", {
/**
* Returns the action set payload
*/
get: function () {
return __assign({ id: this.id }, this.options);
},
enumerable: false,
configurable: true
});
LeaveConfirmation.prototype.set = function (options) {
this.options = helper_1.getMergedProps(this.options, options);
return this;
};
/**
* Dispatches a given action with the action set payload
* @param action the action enum
* @returns the action set instance
*/
LeaveConfirmation.prototype.dispatch = function (action) {
switch (action) {
case Action.ENABLE:
var enableAction = enable(this.payload);
this.app.dispatch(enableAction);
break;
case Action.DISABLE:
var disableAction = disable(this.payload);
this.app.dispatch(disableAction);
break;
case Action.CONFIRM:
var confirmAction = confirm(this.payload);
this.app.dispatch(confirmAction);
break;
}
return this;
};
return LeaveConfirmation;
}(helper_1.ActionSet));
exports.LeaveConfirmation = LeaveConfirmation;
/**
* Returns a new instance of a Leave Confirmation action set
* @param app the client application
*/
function create(app, options) {
if (options === void 0) { options = {}; }
return new LeaveConfirmation(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js ***!
\************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.AppLink = exports.update = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var Redirect_1 = __webpack_require__(/*! ../../Navigation/Redirect */ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/index.js");
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::LINK::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function update(updatePayload) {
return helper_1.actionWrapper({
group: types_1.Group.Link,
type: ActionType.UPDATE,
payload: updatePayload,
});
}
exports.update = update;
var AppLink = /** @class */ (function (_super) {
__extends(AppLink, _super);
function AppLink(app, options) {
var _this = _super.call(this, app, types_1.Group.Link, types_1.Group.Link) || this;
_this.label = '';
_this.destination = '';
_this.set(options, false);
return _this;
}
Object.defineProperty(AppLink.prototype, "options", {
get: function () {
var _a = this, label = _a.label, destination = _a.destination;
return {
label: label,
destination: destination,
redirectType: Redirect_1.Action.APP,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(AppLink.prototype, "payload", {
get: function () {
var _a = this.options, label = _a.label, destination = _a.destination, redirectType = _a.redirectType;
var path = destination;
return {
id: this.id,
label: label,
destination: { path: path },
redirectType: redirectType,
};
},
enumerable: false,
configurable: true
});
AppLink.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var _a = helper_1.getMergedProps(this.options, options), label = _a.label, destination = _a.destination;
this.label = label;
this.destination = destination;
if (shouldUpdate) {
this.dispatch(ActionType.UPDATE);
}
return this;
};
AppLink.prototype.dispatch = function (action) {
switch (action) {
case ActionType.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
return AppLink;
}(helper_1.ActionSet));
exports.AppLink = AppLink;
function create(app, options) {
return new AppLink(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Loading/actions.js":
/*!*********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Loading/actions.js ***!
\*********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Loading = exports.stop = exports.start = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Loading/types.js");
function start(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Loading,
type: types_2.ActionType.START,
});
}
exports.start = start;
function stop(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Loading,
type: types_2.ActionType.STOP,
});
}
exports.stop = stop;
var Loading = /** @class */ (function (_super) {
__extends(Loading, _super);
function Loading(app) {
return _super.call(this, app, types_1.Group.Loading, types_1.Group.Loading) || this;
}
Object.defineProperty(Loading.prototype, "payload", {
get: function () {
return { id: this.id };
},
enumerable: false,
configurable: true
});
Loading.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.START:
this.app.dispatch(start(this.payload));
break;
case types_2.Action.STOP:
this.app.dispatch(stop(this.payload));
break;
}
return this;
};
return Loading;
}(helper_1.ActionSet));
exports.Loading = Loading;
function create(app) {
return new Loading(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Loading/index.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Loading/index.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Loading/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Loading/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Loading/types.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Loading/types.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["START"] = "APP::LOADING::START";
ActionType["STOP"] = "APP::LOADING::STOP";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["START"] = "START";
Action["STOP"] = "STOP";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/MarketingExternalActivityTopBar/index.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/MarketingExternalActivityTopBar/index.js ***!
\*******************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.MarketingExternalActivityTopBar = exports.update = exports.clickActionButton = exports.MarketingActivityStatusBadgeType = exports.ActionType = exports.Action = void 0;
var Button_1 = __webpack_require__(/*! ../Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
var buttonHelper_1 = __webpack_require__(/*! ../buttonHelper */ "./node_modules/@shopify/app-bridge/actions/buttonHelper.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::UPDATE";
ActionType["BUTTON_CLICK"] = "APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::BUTTONS::BUTTON::CLICK";
ActionType["BUTTON_UPDATE"] = "APP::MARKETING_EXTERNAL_ACTIVITY_TOP_BAR::BUTTONS::BUTTON::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var MarketingActivityStatusBadgeType;
(function (MarketingActivityStatusBadgeType) {
MarketingActivityStatusBadgeType["Default"] = "DEFAULT";
MarketingActivityStatusBadgeType["Success"] = "SUCCESS";
MarketingActivityStatusBadgeType["Attention"] = "ATTENTION";
MarketingActivityStatusBadgeType["Warning"] = "WARNING";
MarketingActivityStatusBadgeType["Info"] = "INFO";
})(MarketingActivityStatusBadgeType = exports.MarketingActivityStatusBadgeType || (exports.MarketingActivityStatusBadgeType = {}));
var MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS = {
group: types_1.Group.MarketingExternalActivityTopBar,
subgroups: ['Buttons'],
};
function clickActionButton(id, payload) {
var type = types_1.ComponentType.Button;
var component = __assign({ id: id, type: type }, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS);
return Button_1.clickButton(types_1.Group.MarketingExternalActivityTopBar, component, payload);
}
exports.clickActionButton = clickActionButton;
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.MarketingExternalActivityTopBar,
type: ActionType.UPDATE,
});
}
exports.update = update;
var MarketingExternalActivityTopBar = /** @class */ (function (_super) {
__extends(MarketingExternalActivityTopBar, _super);
function MarketingExternalActivityTopBar(app, options) {
var _this = _super.call(this, app, types_1.Group.MarketingExternalActivityTopBar, types_1.Group.MarketingExternalActivityTopBar) || this;
// Trigger 'update' on creation
_this.set(options);
return _this;
}
Object.defineProperty(MarketingExternalActivityTopBar.prototype, "buttons", {
get: function () {
if (!this.primary && !this.secondary) {
return undefined;
}
return {
primary: this.primary,
secondary: this.secondary,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(MarketingExternalActivityTopBar.prototype, "buttonsOptions", {
get: function () {
if (!this.primaryOptions && !this.secondaryOptions) {
return undefined;
}
return {
primary: this.primaryOptions,
secondary: this.secondaryOptions,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(MarketingExternalActivityTopBar.prototype, "options", {
get: function () {
return {
title: this.title,
status: this.status,
saving: this.saving,
saved: this.saved,
buttons: this.buttonsOptions,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(MarketingExternalActivityTopBar.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { buttons: this.buttons, id: this.id });
},
enumerable: false,
configurable: true
});
MarketingExternalActivityTopBar.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var title = mergedOptions.title, buttons = mergedOptions.buttons, saved = mergedOptions.saved, saving = mergedOptions.saving, status = mergedOptions.status;
this.title = title;
this.saving = saving;
this.saved = saved;
this.status = status;
this.setPrimaryButton(buttons ? buttons.primary : undefined);
this.setSecondaryButtons(buttons ? buttons.secondary : undefined);
if (shouldUpdate) {
this.dispatch(Action.UPDATE);
}
return this;
};
MarketingExternalActivityTopBar.prototype.dispatch = function (action) {
switch (action) {
case Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
MarketingExternalActivityTopBar.prototype.getButton = function (button, subgroups, updateCb) {
return buttonHelper_1.getSingleButton(this, button, subgroups, updateCb);
};
MarketingExternalActivityTopBar.prototype.updatePrimaryButton = function (newPayload) {
if (!this.primary) {
return;
}
if (helper_1.updateActionFromPayload(this.primary, newPayload)) {
this.dispatch(Action.UPDATE);
}
};
MarketingExternalActivityTopBar.prototype.updateSecondaryButtons = function (newPayload) {
if (!this.secondary) {
return;
}
var buttonToUpdate = this.secondary.find(function (action) { return action.id === newPayload.id; });
if (!buttonToUpdate) {
return;
}
var updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);
if (updated) {
this.dispatch(Action.UPDATE);
}
};
MarketingExternalActivityTopBar.prototype.setPrimaryButton = function (newOptions) {
this.primaryOptions = this.getChildButton(newOptions, this.primaryOptions);
this.primary = this.primaryOptions
? this.getButton(this.primaryOptions, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS.subgroups, this.updatePrimaryButton)
: undefined;
};
MarketingExternalActivityTopBar.prototype.setSecondaryButtons = function (newOptions) {
var _this = this;
var newButtons = newOptions || [];
var currentButtons = this.secondaryOptions || [];
this.secondaryOptions = this.getUpdatedChildActions(newButtons, currentButtons);
this.secondary = this.secondaryOptions
? this.secondaryOptions.map(function (action) {
return _this.getButton(action, MARKETING_ACTIVITY_TOPBAR_BUTTON_PROPS.subgroups, _this.updateSecondaryButtons);
})
: undefined;
};
MarketingExternalActivityTopBar.prototype.updateSaving = function (saving) {
this.saving = saving;
this.dispatch(Action.UPDATE);
};
MarketingExternalActivityTopBar.prototype.updateSaved = function (saved) {
this.saved = saved;
this.dispatch(Action.UPDATE);
};
MarketingExternalActivityTopBar.prototype.updateStatus = function (newPayload) {
this.status = newPayload;
this.dispatch(Action.UPDATE);
};
MarketingExternalActivityTopBar.prototype.getChildButton = function (newAction, currentAction) {
var newButtons = newAction ? [newAction] : [];
var currentButtons = currentAction ? [currentAction] : [];
var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);
return updatedButton ? updatedButton[0] : undefined;
};
return MarketingExternalActivityTopBar;
}(helper_1.ActionSetWithChildren));
exports.MarketingExternalActivityTopBar = MarketingExternalActivityTopBar;
function create(app, options) {
return new MarketingExternalActivityTopBar(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/actions.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/actions.js ***!
\******************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.ChannelMenu = exports.update = exports.ActionType = exports.Action = void 0;
var AppLink_1 = __webpack_require__(/*! ../../Link/AppLink */ "./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js");
var helper_1 = __webpack_require__(/*! ../../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var SUBGROUPS = ['Channel_Menu'];
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
Action["LINK_UPDATE"] = "LINK::UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::MENU::CHANNEL_MENU::UPDATE";
ActionType["LINK_UPDATE"] = "APP::MENU::CHANNEL_MENU::LINK::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Menu,
type: ActionType.UPDATE,
});
}
exports.update = update;
var ChannelMenu = /** @class */ (function (_super) {
__extends(ChannelMenu, _super);
function ChannelMenu(app, options) {
var _this = _super.call(this, app, 'Channel_Menu', types_1.Group.Menu) || this;
_this.items = [];
// Trigger 'update' on creation
_this.set(options);
return _this;
}
Object.defineProperty(ChannelMenu.prototype, "options", {
get: function () {
return {
items: this.itemsOptions,
active: this.activeOptions,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(ChannelMenu.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { active: this.active, items: this.items, id: this.id });
},
enumerable: false,
configurable: true
});
ChannelMenu.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var items = mergedOptions.items, active = mergedOptions.active;
this.setItems(items);
this.activeOptions = active;
this.active = active && active.id;
if (shouldUpdate) {
this.dispatch(Action.UPDATE);
}
return this;
};
ChannelMenu.prototype.dispatch = function (action) {
switch (action) {
case Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
ChannelMenu.prototype.updateItem = function (newPayload) {
if (!this.items) {
return;
}
var itemToUpdate = this.items.find(function (action) { return action.id === newPayload.id; });
if (!itemToUpdate) {
return;
}
if (helper_1.updateActionFromPayload(itemToUpdate, newPayload)) {
this.dispatch(Action.UPDATE);
}
};
ChannelMenu.prototype.setItems = function (newOptions) {
var _this = this;
var newItems = newOptions || [];
var currentItems = this.itemsOptions || [];
this.itemsOptions = this.getUpdatedChildActions(newItems, currentItems);
this.items = this.itemsOptions
? this.itemsOptions.map(function (action) {
_this.addChild(action, _this.group, SUBGROUPS);
_this.subscribeToChild(action, AppLink_1.Action.UPDATE, _this.updateItem);
return action.payload;
})
: [];
};
return ChannelMenu;
}(helper_1.ActionSetWithChildren));
exports.ChannelMenu = ChannelMenu;
function create(app, options) {
return new ChannelMenu(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/index.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/index.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/actions.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/actions.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/actions.js ***!
\*********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.NavigationMenu = exports.update = exports.ActionType = exports.Action = void 0;
var AppLink_1 = __webpack_require__(/*! ../../Link/AppLink */ "./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js");
var helper_1 = __webpack_require__(/*! ../../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var SUBGROUPS = ['Navigation_Menu'];
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
Action["LINK_UPDATE"] = "LINK::UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::MENU::NAVIGATION_MENU::UPDATE";
ActionType["LINK_UPDATE"] = "APP::MENU::NAVIGATION_MENU::LINK::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Menu,
type: ActionType.UPDATE,
});
}
exports.update = update;
var NavigationMenu = /** @class */ (function (_super) {
__extends(NavigationMenu, _super);
function NavigationMenu(app, options) {
var _this = _super.call(this, app, 'Navigation_Menu', types_1.Group.Menu) || this;
_this.items = [];
// Trigger 'update' on creation
_this.set(options);
return _this;
}
Object.defineProperty(NavigationMenu.prototype, "options", {
get: function () {
return {
items: this.itemsOptions,
active: this.activeOptions,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(NavigationMenu.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { active: this.active, items: this.items, id: this.id });
},
enumerable: false,
configurable: true
});
NavigationMenu.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var items = mergedOptions.items, active = mergedOptions.active;
this.setItems(items);
this.activeOptions = active;
this.active = active && active.id;
if (shouldUpdate) {
this.dispatch(Action.UPDATE);
}
return this;
};
NavigationMenu.prototype.dispatch = function (action) {
switch (action) {
case Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
NavigationMenu.prototype.updateItem = function (newPayload) {
if (!this.items) {
return;
}
var itemToUpdate = this.items.find(function (action) { return action.id === newPayload.id; });
if (!itemToUpdate) {
return;
}
if (helper_1.updateActionFromPayload(itemToUpdate, newPayload)) {
this.dispatch(Action.UPDATE);
}
};
NavigationMenu.prototype.setItems = function (newOptions) {
var _this = this;
var newItems = newOptions || [];
var currentItems = this.itemsOptions || [];
this.itemsOptions = this.getUpdatedChildActions(newItems, currentItems);
this.items = this.itemsOptions
? this.itemsOptions.map(function (action) {
_this.addChild(action, _this.group, SUBGROUPS);
_this.subscribeToChild(action, AppLink_1.Action.UPDATE, _this.updateItem);
return action.payload;
})
: [];
};
return NavigationMenu;
}(helper_1.ActionSetWithChildren));
exports.NavigationMenu = NavigationMenu;
function create(app, options) {
return new NavigationMenu(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/index.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/index.js ***!
\*******************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/actions.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Modal/actions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Modal/actions.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.ModalIframe = exports.ModalMessage = exports.Modal = exports.isMessageModal = exports.isIframeModal = exports.data = exports.update = exports.clickFooterButton = exports.updateModalSize = exports.closeModal = exports.openModal = void 0;
var buttonHelper_1 = __webpack_require__(/*! ../buttonHelper */ "./node_modules/@shopify/app-bridge/actions/buttonHelper.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var Button_1 = __webpack_require__(/*! ../Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Modal/types.js");
var FOOTER_BUTTON_PROPS = {
group: types_1.Group.Modal,
subgroups: ['Footer'],
type: types_1.ComponentType.Button,
};
function openModal(modalPayload) {
return helper_1.actionWrapper({
group: types_1.Group.Modal,
payload: modalPayload,
type: types_2.ActionType.OPEN,
});
}
exports.openModal = openModal;
function closeModal(modalClosePayload) {
return helper_1.actionWrapper({
group: types_1.Group.Modal,
payload: modalClosePayload,
type: types_2.ActionType.CLOSE,
});
}
exports.closeModal = closeModal;
/**
* Action creator for modal update size action
* @internal
*/
function updateModalSize(updateSizePayload) {
return helper_1.actionWrapper({
group: types_1.Group.Modal,
payload: updateSizePayload,
type: types_2.ActionType.UPDATE_SIZE,
});
}
exports.updateModalSize = updateModalSize;
function clickFooterButton(id, payload) {
var component = __assign({ id: id }, FOOTER_BUTTON_PROPS);
return Button_1.clickButton(types_1.Group.Modal, component, payload);
}
exports.clickFooterButton = clickFooterButton;
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Modal,
type: types_2.ActionType.UPDATE,
});
}
exports.update = update;
function data(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Modal,
type: types_2.ActionType.DATA,
});
}
exports.data = data;
function isIframeModal(options) {
return (typeof options.url === 'string' ||
typeof options.path === 'string');
}
exports.isIframeModal = isIframeModal;
function isMessageModal(options) {
return typeof options.message === 'string';
}
exports.isMessageModal = isMessageModal;
var Modal = /** @class */ (function (_super) {
__extends(Modal, _super);
function Modal() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.size = types_2.Size.Small;
return _this;
}
Object.defineProperty(Modal.prototype, "footer", {
get: function () {
if (!this.footerPrimary && !this.footerSecondary) {
return undefined;
}
return {
buttons: {
primary: this.footerPrimary,
secondary: this.footerSecondary,
},
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(Modal.prototype, "footerOptions", {
get: function () {
if (!this.footerPrimaryOptions && !this.footerSecondaryOptions) {
return undefined;
}
return {
buttons: {
primary: this.footerPrimaryOptions,
secondary: this.footerSecondaryOptions,
},
};
},
enumerable: false,
configurable: true
});
Modal.prototype.close = function () {
this.app.dispatch(closeModal({ id: this.id }));
};
Modal.prototype.setFooterPrimaryButton = function (newOptions, updateCb) {
var _this = this;
var subgroups = FOOTER_BUTTON_PROPS.subgroups;
this.footerPrimaryOptions = this.getChildButton(newOptions, this.footerPrimaryOptions);
this.footerPrimary = this.footerPrimaryOptions
? buttonHelper_1.getSingleButton(this, this.footerPrimaryOptions, subgroups, function (newPayload) {
_this.updatePrimaryFooterButton(newPayload, updateCb);
})
: undefined;
};
Modal.prototype.setFooterSecondaryButtons = function (newOptions, updateCb) {
var _this = this;
var subgroups = FOOTER_BUTTON_PROPS.subgroups;
var newButtons = newOptions || [];
var currentOptions = (this.footerOptions && this.footerOptions.buttons.secondary) || [];
this.footerSecondaryOptions = this.getUpdatedChildActions(newButtons, currentOptions);
this.footerSecondary = this.footerSecondaryOptions
? this.footerSecondaryOptions.map(function (action) {
return buttonHelper_1.getSingleButton(_this, action, subgroups, function (newPayload) {
_this.updateSecondaryFooterButton(newPayload, updateCb);
});
})
: undefined;
};
Modal.prototype.getChildButton = function (newAction, currentAction) {
var newButtons = newAction ? [newAction] : [];
var currentButtons = currentAction ? [currentAction] : [];
var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);
return updatedButton ? updatedButton[0] : undefined;
};
Modal.prototype.updatePrimaryFooterButton = function (newPayload, updateCb) {
if (!this.footer || !this.footer.buttons.primary) {
return;
}
if (helper_1.updateActionFromPayload(this.footer.buttons.primary, newPayload)) {
updateCb();
}
};
Modal.prototype.updateSecondaryFooterButton = function (newPayload, updateCb) {
if (!this.footer || !this.footer.buttons || !this.footer.buttons.secondary) {
return;
}
var updated;
for (var _i = 0, _a = this.footer.buttons.secondary; _i < _a.length; _i++) {
var action = _a[_i];
updated = helper_1.updateActionFromPayload(action, newPayload);
if (updated) {
break;
}
}
if (updated) {
updateCb();
}
};
return Modal;
}(helper_1.ActionSetWithChildren));
exports.Modal = Modal;
var ModalMessage = /** @class */ (function (_super) {
__extends(ModalMessage, _super);
function ModalMessage(app, options) {
var _this = _super.call(this, app, types_1.Group.Modal, types_1.Group.Modal) || this;
_this.set(options, false);
return _this;
}
Object.defineProperty(ModalMessage.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { footer: this.footer, id: this.id });
},
enumerable: false,
configurable: true
});
Object.defineProperty(ModalMessage.prototype, "options", {
get: function () {
return {
footer: this.footerOptions,
message: this.message,
size: this.size,
title: this.title,
};
},
enumerable: false,
configurable: true
});
ModalMessage.prototype.set = function (options, shouldUpdate) {
var _this = this;
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var title = mergedOptions.title, footer = mergedOptions.footer, message = mergedOptions.message, size = mergedOptions.size;
this.title = title;
this.message = message;
this.size = size;
this.setFooterPrimaryButton(footer ? footer.buttons.primary : undefined, function () {
_this.dispatch(types_2.Action.UPDATE);
});
this.setFooterSecondaryButtons(footer ? footer.buttons.secondary : undefined, function () {
_this.dispatch(types_2.Action.UPDATE);
});
if (shouldUpdate) {
this.dispatch(types_2.Action.UPDATE);
}
return this;
};
ModalMessage.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.OPEN:
this.app.dispatch(openModal(this.payload));
break;
case types_2.Action.CLOSE:
this.close();
break;
case types_2.Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
return ModalMessage;
}(Modal));
exports.ModalMessage = ModalMessage;
var ModalIframe = /** @class */ (function (_super) {
__extends(ModalIframe, _super);
function ModalIframe(app, options) {
var _this = _super.call(this, app, types_1.Group.Modal, types_1.Group.Modal) || this;
_this.set(options, false);
return _this;
}
Object.defineProperty(ModalIframe.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { footer: this.footer, id: this.id });
},
enumerable: false,
configurable: true
});
Object.defineProperty(ModalIframe.prototype, "options", {
get: function () {
return {
footer: this.footerOptions,
path: this.path,
size: this.size,
title: this.title,
url: this.url,
};
},
enumerable: false,
configurable: true
});
ModalIframe.prototype.set = function (options, shouldUpdate) {
var _this = this;
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var title = mergedOptions.title, footer = mergedOptions.footer, path = mergedOptions.path, url = mergedOptions.url, size = mergedOptions.size;
this.title = title;
this.url = url;
this.path = path;
this.size = size;
this.setFooterPrimaryButton(footer ? footer.buttons.primary : undefined, function () {
_this.dispatch(types_2.Action.UPDATE);
});
this.setFooterSecondaryButtons(footer ? footer.buttons.secondary : undefined, function () {
_this.dispatch(types_2.Action.UPDATE);
});
if (shouldUpdate) {
this.dispatch(types_2.Action.UPDATE);
}
return this;
};
ModalIframe.prototype.dispatch = function (action, payload) {
switch (action) {
case types_2.Action.OPEN:
this.app.dispatch(openModal(this.payload));
break;
case types_2.Action.CLOSE:
this.close();
break;
case types_2.Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
case types_2.Action.DATA:
this.app.dispatch(data(payload || {}));
break;
}
return this;
};
return ModalIframe;
}(Modal));
exports.ModalIframe = ModalIframe;
exports.create = function (app, options) {
if (isIframeModal(options)) {
return new ModalIframe(app, options);
}
return new ModalMessage(app, options);
};
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Modal/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Modal/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Modal/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Modal/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Modal/types.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Modal/types.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Size = exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["OPEN"] = "OPEN";
Action["CLOSE"] = "CLOSE";
Action["UPDATE"] = "UPDATE";
Action["UPDATE_SIZE"] = "UPDATE_SIZE";
Action["DATA"] = "DATA";
})(Action = exports.Action || (exports.Action = {}));
/**
* Action types for the Modal group
* @public
*/
var ActionType;
(function (ActionType) {
ActionType["OPEN"] = "APP::MODAL::OPEN";
ActionType["CLOSE"] = "APP::MODAL::CLOSE";
ActionType["UPDATE"] = "APP::MODAL::UPDATE";
ActionType["FOOTER_BUTTON_CLICK"] = "APP::MODAL::FOOTER::BUTTON::CLICK";
ActionType["FOOTER_BUTTON_UPDATE"] = "APP::MODAL::FOOTER::BUTTON::UPDATE";
ActionType["UPDATE_SIZE"] = "APP::MODAL::UPDATE_SIZE";
ActionType["DATA"] = "APP::MODAL::DATA";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/**
* Options available to the Modal `size` param
* @public
*/
var Size;
(function (Size) {
/** Small modal size */
Size["Small"] = "small";
/** Medium modal size */
Size["Medium"] = "medium";
/** Large modal size (wider than medium) */
Size["Large"] = "large";
/** @deprecated as of 1.6.5 */
Size["Full"] = "full";
/**
* @deprecated as of 1.12.x
* @remarks
* This option has been removed in favour of the `setUpModalAutoSizing` utility.
* See `app-bridge-utils` package for more information
*/
Size["Auto"] = "auto";
})(Size = exports.Size || (exports.Size = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/History/actions.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/History/actions.js ***!
\********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.History = exports.replace = exports.push = void 0;
var helper_1 = __webpack_require__(/*! ../../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Navigation/History/types.js");
function push(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.PUSH,
});
}
exports.push = push;
function replace(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.REPLACE,
});
}
exports.replace = replace;
var History = /** @class */ (function (_super) {
__extends(History, _super);
function History(app) {
return _super.call(this, app, 'History', types_1.Group.Navigation) || this;
}
Object.defineProperty(History.prototype, "payload", {
get: function () {
return { id: this.id };
},
enumerable: false,
configurable: true
});
History.prototype.dispatch = function (type, path) {
var payload = __assign(__assign({}, this.payload), { path: path });
switch (type) {
case types_2.Action.PUSH:
this.app.dispatch(push(payload));
break;
case types_2.Action.REPLACE:
this.app.dispatch(replace(payload));
break;
}
return this;
};
return History;
}(helper_1.ActionSet));
exports.History = History;
function create(app) {
return new History(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/History/index.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/History/index.js ***!
\******************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Navigation/History/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Navigation/History/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/History/types.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/History/types.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["PUSH"] = "APP::NAVIGATION::HISTORY::PUSH";
ActionType["REPLACE"] = "APP::NAVIGATION::HISTORY::REPLACE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["PUSH"] = "PUSH";
Action["REPLACE"] = "REPLACE";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/actions.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/actions.js ***!
\*********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Redirect = exports.isRemotePayload = exports.isAdminSectionPayload = exports.isAdminPathPayload = exports.isAppPayload = exports.toDestination = exports.toApp = exports.toRemote = exports.toAdminSection = exports.toAdminPath = exports.isProductVariantCreateResourcePayload = exports.isProductVariantResourcePayload = exports.isCreateResourcePayload = exports.isResourcePayload = void 0;
var helper_1 = __webpack_require__(/*! ../../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/types.js");
function isResourcePayload(resource) {
// tslint:disable-next-line:no-boolean-literal-compare
return typeof resource.id === 'string';
}
exports.isResourcePayload = isResourcePayload;
function isCreateResourcePayload(resource) {
// tslint:disable-next-line:no-boolean-literal-compare
return resource.create === true;
}
exports.isCreateResourcePayload = isCreateResourcePayload;
function isProductVariantResourcePayload(resource) {
var castResource = resource;
// tslint:disable-next-line:no-boolean-literal-compare
return castResource.id !== undefined && castResource.variant !== undefined;
}
exports.isProductVariantResourcePayload = isProductVariantResourcePayload;
function isProductVariantCreateResourcePayload(resource) {
if (!isProductVariantResourcePayload(resource)) {
return false;
}
return isCreateResourcePayload(resource.variant);
}
exports.isProductVariantCreateResourcePayload = isProductVariantCreateResourcePayload;
function toAdminPath(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.ADMIN_PATH,
});
}
exports.toAdminPath = toAdminPath;
function toAdminSection(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.ADMIN_SECTION,
});
}
exports.toAdminSection = toAdminSection;
function toRemote(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.REMOTE,
});
}
exports.toRemote = toRemote;
function toApp(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Navigation,
type: types_2.ActionType.APP,
});
}
exports.toApp = toApp;
function toDestination(action, payload, id) {
switch (action) {
case types_2.Action.APP:
var appPayload = isAppPayload(payload) ? payload : { path: payload };
return toApp(__assign({ id: id }, appPayload));
case types_2.Action.ADMIN_PATH:
var adminPathPayload = isAdminPathPayload(payload) ? payload : { path: payload };
return toAdminPath(__assign({ id: id }, adminPathPayload));
case types_2.Action.ADMIN_SECTION:
var adminSectionPayload = isAdminSectionPayload(payload)
? payload
: { section: payload };
return toAdminSection(__assign({ id: id }, adminSectionPayload));
case types_2.Action.REMOTE:
var remotePayload = isRemotePayload(payload) ? payload : { url: payload };
return toRemote(__assign({ id: id }, remotePayload));
}
}
exports.toDestination = toDestination;
function isAppPayload(payload) {
return typeof payload === 'object' && payload.hasOwnProperty('path');
}
exports.isAppPayload = isAppPayload;
function isAdminPathPayload(payload) {
return typeof payload === 'object' && payload.hasOwnProperty('path');
}
exports.isAdminPathPayload = isAdminPathPayload;
function isAdminSectionPayload(payload) {
return (typeof payload === 'object' &&
typeof payload.section === 'object' &&
payload.section.hasOwnProperty('name'));
}
exports.isAdminSectionPayload = isAdminSectionPayload;
function isRemotePayload(payload) {
return typeof payload === 'object' && payload.hasOwnProperty('url');
}
exports.isRemotePayload = isRemotePayload;
var Redirect = /** @class */ (function (_super) {
__extends(Redirect, _super);
function Redirect(app) {
return _super.call(this, app, 'Redirect', types_1.Group.Navigation) || this;
}
Object.defineProperty(Redirect.prototype, "payload", {
get: function () {
return { id: this.id };
},
enumerable: false,
configurable: true
});
Redirect.prototype.dispatch = function (action, payload) {
var redirectAction = toDestination(action, payload, this.payload.id);
this.app.dispatch(redirectAction);
return this;
};
return Redirect;
}(helper_1.ActionSet));
exports.Redirect = Redirect;
function create(app) {
return new Redirect(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/index.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/index.js ***!
\*******************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/types.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/types.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ResourceType = exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["ADMIN_PATH"] = "ADMIN::PATH";
Action["ADMIN_SECTION"] = "ADMIN::SECTION";
Action["REMOTE"] = "REMOTE";
Action["APP"] = "APP";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["ADMIN_SECTION"] = "APP::NAVIGATION::REDIRECT::ADMIN::SECTION";
ActionType["ADMIN_PATH"] = "APP::NAVIGATION::REDIRECT::ADMIN::PATH";
ActionType["REMOTE"] = "APP::NAVIGATION::REDIRECT::REMOTE";
ActionType["APP"] = "APP::NAVIGATION::REDIRECT::APP";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var ResourceType;
(function (ResourceType) {
ResourceType["Product"] = "products";
ResourceType["Collection"] = "collections";
ResourceType["Order"] = "orders";
ResourceType["Customer"] = "customers";
ResourceType["Discount"] = "discounts";
})(ResourceType = exports.ResourceType || (exports.ResourceType = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Performance/index.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Performance/index.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.fullPageLoad = exports.skeletonPageLoad = exports.Action = exports.ActionType = void 0;
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var ActionType;
(function (ActionType) {
ActionType["SKELETON_PAGE_LOAD"] = "APP::PERFORMANCE::SKELETON_PAGE_LOAD";
ActionType["FULL_PAGE_LOAD"] = "APP::PERFORMANCE::FULL_PAGE_LOAD";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["SKELETON_PAGE_LOAD"] = "SKELETON_PAGE_LOAD";
Action["FULL_PAGE_LOAD"] = "FULL_PAGE_LOAD";
})(Action = exports.Action || (exports.Action = {}));
function skeletonPageLoad() {
return helper_1.actionWrapper({
group: types_1.Group.Performance,
type: ActionType.SKELETON_PAGE_LOAD,
});
}
exports.skeletonPageLoad = skeletonPageLoad;
function fullPageLoad() {
return helper_1.actionWrapper({
group: types_1.Group.Performance,
type: ActionType.FULL_PAGE_LOAD,
});
}
exports.fullPageLoad = fullPageLoad;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Pos/index.js":
/*!***************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Pos/index.js ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Pos = exports.close = exports.ActionType = exports.Action = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var Action;
(function (Action) {
Action["CLOSE"] = "CLOSE";
})(Action = exports.Action || (exports.Action = {}));
/**
* Pos action type enum
* @remarks includes the action prefix and group
*
*/
var ActionType;
(function (ActionType) {
ActionType["CLOSE"] = "APP::POS::CLOSE";
ActionType["LOCATION_UPDATE"] = "APP::POS::LOCATION::UPDATE";
ActionType["USER_UPDATE"] = "APP::POS::USER::UPDATE";
ActionType["DEVICE_UPDATE"] = "APP::POS::DEVICE::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
function close() {
return helper_1.actionWrapper({
group: types_1.Group.Pos,
type: ActionType.CLOSE,
});
}
exports.close = close;
var Pos = /** @class */ (function (_super) {
__extends(Pos, _super);
function Pos(app) {
return _super.call(this, app, types_1.Group.Pos, types_1.Group.Pos) || this;
}
Pos.prototype.dispatch = function (action) {
switch (action) {
case ActionType.CLOSE:
this.app.dispatch(close());
break;
}
return this;
};
return Pos;
}(helper_1.ActionSet));
exports.Pos = Pos;
function create(app) {
return new Pos(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Print/actions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Print/actions.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.app = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Print/types.js");
function app() {
return helper_1.actionWrapper({
group: types_1.Group.Print,
type: types_2.ActionType.APP,
});
}
exports.app = app;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Print/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Print/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Print/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Print/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Print/types.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Print/types.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["APP"] = "APP::PRINT::APP";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["APP"] = "APP";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/actions.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ResourcePicker/actions.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.ResourcePicker = exports.update = exports.close = exports.cancel = exports.open = exports.select = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/types.js");
function select(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.ResourcePicker,
type: types_2.ActionType.SELECT,
});
}
exports.select = select;
function open(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.ResourcePicker,
type: types_2.ActionType.OPEN,
});
}
exports.open = open;
function cancel(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.ResourcePicker,
type: types_2.ActionType.CANCEL,
});
}
exports.cancel = cancel;
function close(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.ResourcePicker,
type: types_2.ActionType.CANCEL,
});
}
exports.close = close;
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.ResourcePicker,
type: types_2.ActionType.UPDATE,
});
}
exports.update = update;
var ResourcePicker = /** @class */ (function (_super) {
__extends(ResourcePicker, _super);
function ResourcePicker(app, options, resourceType) {
var _this = _super.call(this, app, types_1.Group.ResourcePicker, types_1.Group.ResourcePicker) || this;
_this.initialSelectionIds = [];
_this.selection = [];
_this.resourceType = resourceType;
_this.set(options, false);
return _this;
}
Object.defineProperty(ResourcePicker.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { id: this.id, resourceType: this.resourceType });
},
enumerable: false,
configurable: true
});
Object.defineProperty(ResourcePicker.prototype, "options", {
get: function () {
var options = {
initialQuery: this.initialQuery,
selectMultiple: this.selectMultiple,
initialSelectionIds: this.initialSelectionIds,
showHidden: this.showHidden,
actionVerb: this.actionVerb,
};
if (this.resourceType === types_2.ResourceType.Product) {
var productOptions = __assign(__assign({}, options), { showVariants: this.showVariants, showDraft: this.showDraft, showArchived: this.showArchived, showDraftBadge: this.showDraftBadge, showArchivedBadge: this.showArchivedBadge });
return productOptions;
}
return options;
},
enumerable: false,
configurable: true
});
ResourcePicker.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var initialQuery = mergedOptions.initialQuery, _a = mergedOptions.initialSelectionIds, initialSelectionIds = _a === void 0 ? [] : _a, _b = mergedOptions.showHidden, showHidden = _b === void 0 ? true : _b, _c = mergedOptions.showVariants, showVariants = _c === void 0 ? true : _c, _d = mergedOptions.showDraft, showDraft = _d === void 0 ? true : _d, _e = mergedOptions.showArchived, showArchived = _e === void 0 ? true : _e, _f = mergedOptions.showDraftBadge, showDraftBadge = _f === void 0 ? false : _f, _g = mergedOptions.showArchivedBadge, showArchivedBadge = _g === void 0 ? false : _g, _h = mergedOptions.selectMultiple, selectMultiple = _h === void 0 ? true : _h, _j = mergedOptions.actionVerb, actionVerb = _j === void 0 ? types_2.ActionVerb.Add : _j;
this.initialQuery = initialQuery;
this.initialSelectionIds = initialSelectionIds;
this.showHidden = showHidden;
this.showVariants = showVariants;
this.showDraft = showDraft;
this.showArchived = showArchived;
this.showDraftBadge = showDraftBadge;
this.showArchivedBadge = showArchivedBadge;
this.selectMultiple = selectMultiple;
this.actionVerb = actionVerb;
if (shouldUpdate) {
this.update();
}
return this;
};
ResourcePicker.prototype.dispatch = function (action, selection) {
if (action === types_2.Action.OPEN) {
this.open();
}
else if (action === types_2.Action.UPDATE) {
this.update();
}
else if (action === types_2.Action.CLOSE || action === types_2.Action.CANCEL) {
this.cancel();
}
else if (action === types_2.Action.SELECT) {
this.selection = selection;
this.app.dispatch(select({ id: this.id, selection: this.selection }));
}
return this;
};
ResourcePicker.prototype.update = function () {
this.app.dispatch(update(this.payload));
};
ResourcePicker.prototype.open = function () {
this.app.dispatch(open(this.payload));
};
ResourcePicker.prototype.cancel = function () {
this.app.dispatch(cancel({ id: this.id }));
};
ResourcePicker.prototype.close = function () {
this.cancel();
};
return ResourcePicker;
}(helper_1.ActionSet));
exports.ResourcePicker = ResourcePicker;
exports.create = function (app, baseOptions) {
var resourceType = baseOptions.resourceType, _a = baseOptions.options, options = _a === void 0 ? {} : _a;
return new ResourcePicker(app, options, resourceType);
};
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/index.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ResourcePicker/index.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/types.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/ResourcePicker/types.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionVerb = exports.ResourceType = exports.ProductStatus = exports.ProductVariantInventoryManagement = exports.ProductVariantInventoryPolicy = exports.WeightUnit = exports.FulfillmentServiceType = exports.CollectionSortOrder = exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["OPEN"] = "OPEN";
Action["SELECT"] = "SELECT";
Action["CLOSE"] = "CLOSE";
Action["UPDATE"] = "UPDATE";
Action["CANCEL"] = "CANCEL";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["OPEN"] = "APP::RESOURCE_PICKER::OPEN";
ActionType["SELECT"] = "APP::RESOURCE_PICKER::SELECT";
ActionType["CLOSE"] = "APP::RESOURCE_PICKER::CLOSE";
ActionType["UPDATE"] = "APP::RESOURCE_PICKER::UPDATE";
ActionType["CANCEL"] = "APP::RESOURCE_PICKER::CANCEL";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var CollectionSortOrder;
(function (CollectionSortOrder) {
CollectionSortOrder["Manual"] = "MANUAL";
CollectionSortOrder["BestSelling"] = "BEST_SELLING";
CollectionSortOrder["AlphaAsc"] = "ALPHA_ASC";
CollectionSortOrder["AlphaDesc"] = "ALPHA_DESC";
CollectionSortOrder["PriceDesc"] = "PRICE_DESC";
CollectionSortOrder["PriceAsc"] = "PRICE_ASC";
CollectionSortOrder["CreatedDesc"] = "CREATED_DESC";
CollectionSortOrder["Created"] = "CREATED";
})(CollectionSortOrder = exports.CollectionSortOrder || (exports.CollectionSortOrder = {}));
var FulfillmentServiceType;
(function (FulfillmentServiceType) {
FulfillmentServiceType["GiftCard"] = "GIFT_CARD";
FulfillmentServiceType["Manual"] = "MANUAL";
FulfillmentServiceType["ThirdParty"] = "THIRD_PARTY";
})(FulfillmentServiceType = exports.FulfillmentServiceType || (exports.FulfillmentServiceType = {}));
var WeightUnit;
(function (WeightUnit) {
WeightUnit["Kilograms"] = "KILOGRAMS";
WeightUnit["Grams"] = "GRAMS";
WeightUnit["Pounds"] = "POUNDS";
WeightUnit["Ounces"] = "OUNCES";
})(WeightUnit = exports.WeightUnit || (exports.WeightUnit = {}));
var ProductVariantInventoryPolicy;
(function (ProductVariantInventoryPolicy) {
ProductVariantInventoryPolicy["Deny"] = "DENY";
ProductVariantInventoryPolicy["Continue"] = "CONTINUE";
})(ProductVariantInventoryPolicy = exports.ProductVariantInventoryPolicy || (exports.ProductVariantInventoryPolicy = {}));
var ProductVariantInventoryManagement;
(function (ProductVariantInventoryManagement) {
ProductVariantInventoryManagement["Shopify"] = "SHOPIFY";
ProductVariantInventoryManagement["NotManaged"] = "NOT_MANAGED";
ProductVariantInventoryManagement["FulfillmentService"] = "FULFILLMENT_SERVICE";
})(ProductVariantInventoryManagement = exports.ProductVariantInventoryManagement || (exports.ProductVariantInventoryManagement = {}));
var ProductStatus;
(function (ProductStatus) {
ProductStatus["Active"] = "ACTIVE";
ProductStatus["Archived"] = "ARCHIVED";
ProductStatus["Draft"] = "DRAFT";
})(ProductStatus = exports.ProductStatus || (exports.ProductStatus = {}));
var ResourceType;
(function (ResourceType) {
ResourceType["Product"] = "product";
ResourceType["ProductVariant"] = "variant";
ResourceType["Collection"] = "collection";
})(ResourceType = exports.ResourceType || (exports.ResourceType = {}));
var ActionVerb;
(function (ActionVerb) {
ActionVerb["Add"] = "add";
ActionVerb["Select"] = "select";
})(ActionVerb = exports.ActionVerb || (exports.ActionVerb = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Scanner/actions.js":
/*!*********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Scanner/actions.js ***!
\*********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Scanner = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Scanner/types.js");
/**
* A set of Actions for displaying a Camera Scanner component
* @public
*/
var Scanner = /** @class */ (function (_super) {
__extends(Scanner, _super);
function Scanner(app, options) {
return _super.call(this, app, types_1.Group.Scanner, types_1.Group.Scanner, options ? options.id : undefined) || this;
}
/**
* @public
*/
Scanner.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.OPEN_CAMERA:
this.dispatchScannerAction(types_2.ActionType.OPEN_CAMERA);
break;
break;
}
return this;
};
/**
* @internal
*/
Scanner.prototype.dispatchScannerAction = function (type) {
this.app.dispatch(helper_1.actionWrapper({
type: type,
group: types_1.Group.Scanner,
payload: {
id: this.id,
},
}));
};
return Scanner;
}(helper_1.ActionSet));
exports.Scanner = Scanner;
/**
* @public
*/
function create(app, options) {
return new Scanner(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Scanner/index.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Scanner/index.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Scanner/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Scanner/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Scanner/types.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Scanner/types.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
/**
* Action Types for the Features group
* @public
*/
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["OPEN_CAMERA"] = "APP::SCANNER::OPEN::CAMERA";
ActionType["CAPTURE"] = "APP::SCANNER::CAPTURE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/**
* Actions available to the Features group
* @public
*/
var Action;
(function (Action) {
Action["OPEN_CAMERA"] = "OPEN::CAMERA";
Action["CAPTURE"] = "CAPTURE";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/SessionToken/index.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/SessionToken/index.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.respond = exports.request = exports.Action = exports.ActionType = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var ActionType;
(function (ActionType) {
ActionType["REQUEST"] = "APP::SESSION_TOKEN::REQUEST";
ActionType["RESPOND"] = "APP::SESSION_TOKEN::RESPOND";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["REQUEST"] = "REQUEST";
Action["RESPOND"] = "RESPOND";
})(Action = exports.Action || (exports.Action = {}));
function request() {
return helper_1.actionWrapper({
group: types_1.Group.SessionToken,
type: ActionType.REQUEST,
});
}
exports.request = request;
function respond(sessionToken) {
return helper_1.actionWrapper({
payload: sessionToken,
group: types_1.Group.SessionToken,
type: ActionType.RESPOND,
});
}
exports.respond = respond;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Share/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Share/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Share = exports.Action = exports.ActionType = void 0;
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
/**
* Types
*/
/**
* @public
*/
var ActionType;
(function (ActionType) {
ActionType["SHOW"] = "APP::SHARE::SHOW";
ActionType["CLOSE"] = "APP::SHARE::CLOSE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/**
* @public
*/
var Action;
(function (Action) {
Action["SHOW"] = "SHOW";
Action["CLOSE"] = "CLOSE";
})(Action = exports.Action || (exports.Action = {}));
/**
* Action
*/
/**
* A set of actions for displaying a Share Sheet component
* @public
*/
var Share = /** @class */ (function (_super) {
__extends(Share, _super);
function Share(app) {
return _super.call(this, app, types_1.Group.Share, types_1.Group.Share) || this;
}
/**
* @public
*/
Share.prototype.dispatch = function (action, payload) {
switch (action) {
case Action.SHOW:
this.dispatchShareAction(ActionType.SHOW, payload);
break;
default:
throw "Action: " + action + " not supported";
}
return this;
};
/**
* @internal
*/
Share.prototype.dispatchShareAction = function (actionType, payload) {
this.app.dispatch(helper_1.actionWrapper({
type: actionType,
group: types_1.Group.Share,
payload: __assign({ id: this.id }, payload),
}));
};
return Share;
}(helper_1.ActionSet));
exports.Share = Share;
/**
* @public
*/
function create(app) {
return new Share(app);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/TitleBar/actions.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/TitleBar/actions.js ***!
\**********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.TitleBar = exports.update = exports.clickBreadcrumb = exports.clickActionButton = void 0;
var Button_1 = __webpack_require__(/*! ../Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
var ButtonGroup_1 = __webpack_require__(/*! ../ButtonGroup */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js");
var buttonGroupHelper_1 = __webpack_require__(/*! ../buttonGroupHelper */ "./node_modules/@shopify/app-bridge/actions/buttonGroupHelper.js");
var buttonHelper_1 = __webpack_require__(/*! ../buttonHelper */ "./node_modules/@shopify/app-bridge/actions/buttonHelper.js");
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/TitleBar/types.js");
var TITLEBAR_BUTTON_PROPS = {
group: types_1.Group.TitleBar,
subgroups: ['Buttons'],
};
var BREADCRUMB_BUTTON_PROPS = {
group: types_1.Group.TitleBar,
subgroups: ['Breadcrumbs'],
type: types_1.ComponentType.Button,
};
function clickActionButton(id, payload) {
var type = types_1.ComponentType.Button;
var component = __assign({ id: id, type: type }, TITLEBAR_BUTTON_PROPS);
return Button_1.clickButton(types_1.Group.TitleBar, component, payload);
}
exports.clickActionButton = clickActionButton;
function clickBreadcrumb(id, payload) {
var component = __assign({ id: id }, BREADCRUMB_BUTTON_PROPS);
return Button_1.clickButton(types_1.Group.TitleBar, component, payload);
}
exports.clickBreadcrumb = clickBreadcrumb;
function update(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.TitleBar,
type: types_2.ActionType.UPDATE,
});
}
exports.update = update;
var TitleBar = /** @class */ (function (_super) {
__extends(TitleBar, _super);
function TitleBar(app, options) {
var _this = _super.call(this, app, types_1.Group.TitleBar, types_1.Group.TitleBar) || this;
// Trigger 'update' on creation
_this.set(options);
return _this;
}
Object.defineProperty(TitleBar.prototype, "buttons", {
get: function () {
if (!this.primary && !this.secondary) {
return undefined;
}
return {
primary: this.primary,
secondary: this.secondary,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(TitleBar.prototype, "buttonsOptions", {
get: function () {
if (!this.primaryOptions && !this.secondaryOptions) {
return undefined;
}
return {
primary: this.primaryOptions,
secondary: this.secondaryOptions,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(TitleBar.prototype, "options", {
get: function () {
return {
breadcrumbs: this.breadcrumbsOption,
buttons: this.buttonsOptions,
title: this.title,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(TitleBar.prototype, "payload", {
get: function () {
return __assign(__assign({}, this.options), { breadcrumbs: this.breadcrumb, buttons: this.buttons, id: this.id });
},
enumerable: false,
configurable: true
});
TitleBar.prototype.set = function (options, shouldUpdate) {
if (shouldUpdate === void 0) { shouldUpdate = true; }
var mergedOptions = helper_1.getMergedProps(this.options, options);
var title = mergedOptions.title, buttons = mergedOptions.buttons, breadcrumbs = mergedOptions.breadcrumbs;
this.title = title;
this.setBreadcrumbs(breadcrumbs);
this.setPrimaryButton(buttons ? buttons.primary : undefined);
this.setSecondaryButton(buttons ? buttons.secondary : undefined);
if (shouldUpdate) {
this.dispatch(types_2.Action.UPDATE);
}
return this;
};
TitleBar.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.UPDATE:
this.app.dispatch(update(this.payload));
break;
}
return this;
};
TitleBar.prototype.getButton = function (button, subgroups, updateCb) {
if (button instanceof ButtonGroup_1.ButtonGroup) {
return buttonGroupHelper_1.getGroupedButton(this, button, subgroups, updateCb);
}
return buttonHelper_1.getSingleButton(this, button, subgroups, updateCb);
};
TitleBar.prototype.updatePrimaryButton = function (newPayload) {
if (!this.primary) {
return;
}
if (helper_1.updateActionFromPayload(this.primary, newPayload)) {
this.dispatch(types_2.Action.UPDATE);
}
};
TitleBar.prototype.updateSecondaryButtons = function (newPayload) {
if (!this.secondary) {
return;
}
var buttonToUpdate = this.secondary.find(function (action) { return action.id === newPayload.id; });
if (!buttonToUpdate) {
return;
}
var updated = false;
if (ButtonGroup_1.isGroupedButtonPayload(newPayload)) {
updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);
}
else {
updated = helper_1.updateActionFromPayload(buttonToUpdate, newPayload);
}
if (updated) {
this.dispatch(types_2.Action.UPDATE);
}
};
TitleBar.prototype.updateBreadcrumbButton = function (newPayload) {
if (!this.breadcrumb) {
return;
}
if (helper_1.updateActionFromPayload(this.breadcrumb, newPayload)) {
this.dispatch(types_2.Action.UPDATE);
}
};
TitleBar.prototype.setPrimaryButton = function (newOptions) {
this.primaryOptions = this.getChildButton(newOptions, this.primaryOptions);
this.primary = this.primaryOptions
? this.getButton(this.primaryOptions, TITLEBAR_BUTTON_PROPS.subgroups, this.updatePrimaryButton)
: undefined;
};
TitleBar.prototype.setSecondaryButton = function (newOptions) {
var _this = this;
var newButtons = newOptions || [];
var currentButtons = this.secondaryOptions || [];
this.secondaryOptions = this.getUpdatedChildActions(newButtons, currentButtons);
this.secondary = this.secondaryOptions
? this.secondaryOptions.map(function (action) {
return _this.getButton(action, TITLEBAR_BUTTON_PROPS.subgroups, _this.updateSecondaryButtons);
})
: undefined;
};
TitleBar.prototype.setBreadcrumbs = function (breadcrumb) {
this.breadcrumbsOption = this.getChildButton(breadcrumb, this.breadcrumbsOption);
this.breadcrumb = this.breadcrumbsOption
? this.getButton(this.breadcrumbsOption, BREADCRUMB_BUTTON_PROPS.subgroups, this.updateBreadcrumbButton)
: undefined;
};
TitleBar.prototype.getChildButton = function (newAction, currentAction) {
var newButtons = newAction ? [newAction] : [];
var currentButtons = currentAction ? [currentAction] : [];
var updatedButton = this.getUpdatedChildActions(newButtons, currentButtons);
return updatedButton ? updatedButton[0] : undefined;
};
return TitleBar;
}(helper_1.ActionSetWithChildren));
exports.TitleBar = TitleBar;
function create(app, options) {
return new TitleBar(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/TitleBar/index.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/TitleBar/index.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/TitleBar/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/TitleBar/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/TitleBar/types.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/TitleBar/types.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.Action = void 0;
var Action;
(function (Action) {
Action["UPDATE"] = "UPDATE";
})(Action = exports.Action || (exports.Action = {}));
var ActionType;
(function (ActionType) {
ActionType["UPDATE"] = "APP::TITLEBAR::UPDATE";
ActionType["BUTTON_CLICK"] = "APP::TITLEBAR::BUTTONS::BUTTON::CLICK";
ActionType["BUTTON_UPDATE"] = "APP::TITLEBAR::BUTTONS::BUTTON::UPDATE";
ActionType["BUTTON_GROUP_UPDATE"] = "APP::TITLEBAR::BUTTONS::BUTTONGROUP::UPDATE";
ActionType["BREADCRUMBS_CLICK"] = "APP::TITLEBAR::BREADCRUMBS::BUTTON::CLICK";
ActionType["BREADCRUMBS_UPDATE"] = "APP::TITLEBAR::BREADCRUMBS::BUTTON::UPDATE";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Toast/actions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Toast/actions.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.create = exports.Toast = exports.clear = exports.show = void 0;
var helper_1 = __webpack_require__(/*! ../helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var types_1 = __webpack_require__(/*! ../types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Toast/types.js");
function show(toastMessage) {
return helper_1.actionWrapper({
group: types_1.Group.Toast,
payload: toastMessage,
type: types_2.ActionType.SHOW,
});
}
exports.show = show;
function clear(payload) {
return helper_1.actionWrapper({
payload: payload,
group: types_1.Group.Toast,
type: types_2.ActionType.CLEAR,
});
}
exports.clear = clear;
var Toast = /** @class */ (function (_super) {
__extends(Toast, _super);
function Toast(app, options) {
var _this = _super.call(this, app, types_1.Group.Toast, types_1.Group.Toast) || this;
_this.message = '';
_this.duration = 5000;
_this.set(options);
return _this;
}
Object.defineProperty(Toast.prototype, "options", {
get: function () {
return {
duration: this.duration,
isError: this.isError,
message: this.message,
};
},
enumerable: false,
configurable: true
});
Object.defineProperty(Toast.prototype, "payload", {
get: function () {
return __assign({ id: this.id }, this.options);
},
enumerable: false,
configurable: true
});
Toast.prototype.set = function (options) {
var mergedOptions = helper_1.getMergedProps(this.options, options);
var message = mergedOptions.message, duration = mergedOptions.duration, isError = mergedOptions.isError;
this.message = message;
this.duration = duration;
this.isError = isError;
return this;
};
Toast.prototype.dispatch = function (action) {
switch (action) {
case types_2.Action.SHOW:
var openAction = show(this.payload);
this.app.dispatch(openAction);
break;
case types_2.Action.CLEAR:
this.app.dispatch(clear({ id: this.id }));
break;
}
return this;
};
return Toast;
}(helper_1.ActionSet));
exports.Toast = Toast;
function create(app, options) {
return new Toast(app, options);
}
exports.create = create;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Toast/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Toast/index.js ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/actions/Toast/actions.js"), exports);
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/Toast/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/Toast/types.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/Toast/types.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Action = exports.ActionType = void 0;
var ActionType;
(function (ActionType) {
ActionType["SHOW"] = "APP::TOAST::SHOW";
ActionType["CLEAR"] = "APP::TOAST::CLEAR";
})(ActionType = exports.ActionType || (exports.ActionType = {}));
var Action;
(function (Action) {
Action["SHOW"] = "SHOW";
Action["CLEAR"] = "CLEAR";
})(Action = exports.Action || (exports.Action = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/buttonGroupHelper.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/buttonGroupHelper.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getGroupedButton = void 0;
var ButtonGroup_1 = __webpack_require__(/*! ./ButtonGroup */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js");
function getGroupedButton(action, button, subgroups, updateCb) {
action.addChild(button, action.group, subgroups);
var id = button.id, label = button.label, disabled = button.disabled, buttons = button.buttons;
action.subscribeToChild(button, ButtonGroup_1.Action.UPDATE, updateCb);
return { id: id, label: label, buttons: buttons, disabled: disabled };
}
exports.getGroupedButton = getGroupedButton;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/buttonHelper.js":
/*!******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/buttonHelper.js ***!
\******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getSingleButton = void 0;
var Button_1 = __webpack_require__(/*! ./Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
function getSingleButton(action, button, subgroups, updateCb) {
action.addChild(button, action.group, subgroups);
action.subscribeToChild(button, Button_1.Action.UPDATE, updateCb);
return button.payload;
}
exports.getSingleButton = getSingleButton;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/constants.js":
/*!***************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/constants.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.SEPARATOR = exports.PREFIX = void 0;
exports.PREFIX = 'APP';
exports.SEPARATOR = '::';
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/helper.js":
/*!************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/helper.js ***!
\************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.NonSnakeCaseGroup = exports.findMatchInEnum = exports.forEachInEnum = exports.getMergedProps = exports.updateActionFromPayload = exports.ActionSetWithChildren = exports.ActionSet = exports.isValidOptionalString = exports.isValidOptionalNumber = exports.getEventNameSpace = exports.getVersion = exports.actionWrapper = void 0;
var types_1 = __webpack_require__(/*! ../client/types */ "./node_modules/@shopify/app-bridge/client/types.js");
var collection_1 = __webpack_require__(/*! ../util/collection */ "./node_modules/@shopify/app-bridge/util/collection.js");
var Error_1 = __webpack_require__(/*! ./Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js");
var constants_1 = __webpack_require__(/*! ./constants */ "./node_modules/@shopify/app-bridge/actions/constants.js");
var merge_1 = __importDefault(__webpack_require__(/*! ./merge */ "./node_modules/@shopify/app-bridge/actions/merge.js"));
var types_2 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var uuid_1 = __importDefault(__webpack_require__(/*! ./uuid */ "./node_modules/@shopify/app-bridge/actions/uuid.js"));
var packageJson = __webpack_require__(/*! ../package.json */ "./node_modules/@shopify/app-bridge/package.json");
function actionWrapper(action) {
return __assign(__assign({}, action), { version: getVersion(), clientInterface: {
name: packageJson.name,
version: getVersion(),
} });
}
exports.actionWrapper = actionWrapper;
function getVersion() {
return packageJson.version;
}
exports.getVersion = getVersion;
/**
* Returns full event name with prefix, group, subgroups and type formatted with separators
* @internal
* */
function getEventNameSpace(group, eventName, component) {
var eventNameSpace = groupToEventNameSpace(group);
if (component) {
var subgroups_1 = component.subgroups, type = component.type;
if (subgroups_1 && subgroups_1.length > 0) {
eventNameSpace += eventNameSpace.length > 0 ? constants_1.SEPARATOR : '';
subgroups_1.forEach(function (subgroup, index) {
eventNameSpace += "" + subgroup.toUpperCase() + (index < subgroups_1.length - 1 ? constants_1.SEPARATOR : '');
});
}
if (type !== group && type) {
eventNameSpace += "" + (eventNameSpace.length > 0 ? constants_1.SEPARATOR : '') + type.toUpperCase();
}
}
if (eventNameSpace) {
eventNameSpace += "" + (eventNameSpace.length > 0 ? constants_1.SEPARATOR : '') + eventName.toUpperCase();
}
return "" + constants_1.PREFIX + constants_1.SEPARATOR + eventNameSpace;
}
exports.getEventNameSpace = getEventNameSpace;
function isValidOptionalNumber(value) {
return value === null || value === undefined || typeof value === 'number';
}
exports.isValidOptionalNumber = isValidOptionalNumber;
function isValidOptionalString(value) {
return value === null || value === undefined || typeof value === 'string';
}
exports.isValidOptionalString = isValidOptionalString;
var ActionSet = /** @class */ (function () {
function ActionSet(app, type, group, id) {
var _this = this;
this.app = app;
this.type = type;
this.group = group;
this.subgroups = [];
this.subscriptions = [];
if (!app) {
Error_1.throwError(Error_1.ActionType.INVALID_OPTIONS, 'Missing required `app`');
}
this.id = id || uuid_1.default();
this.defaultGroup = group;
var defaultSet = this.set;
this.set = function () {
var _a;
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!_this.app.hooks) {
return defaultSet.apply(_this, args);
}
return (_a = _this.app.hooks).run.apply(_a, __spreadArrays([types_1.LifecycleHook.UpdateAction, defaultSet, _this], args));
};
}
ActionSet.prototype.set = function () {
var _ = [];
for (var _i = 0; _i < arguments.length; _i++) {
_[_i] = arguments[_i];
}
};
Object.defineProperty(ActionSet.prototype, "component", {
get: function () {
return {
id: this.id,
subgroups: this.subgroups,
type: this.type,
};
},
enumerable: false,
configurable: true
});
ActionSet.prototype.updateSubscription = function (subscriptionToRemove, group, subgroups) {
var eventType = subscriptionToRemove.eventType, callback = subscriptionToRemove.callback, component = subscriptionToRemove.component;
var currentIndex;
currentIndex = this.subscriptions.findIndex(function (subscription) { return subscription === subscriptionToRemove; });
if (currentIndex >= 0) {
this.subscriptions[currentIndex].unsubscribe();
}
else {
currentIndex = undefined;
}
this.group = group;
this.subgroups = subgroups;
Object.assign(component, { subgroups: this.subgroups });
return this.subscribe(eventType, callback, component, currentIndex);
};
ActionSet.prototype.error = function (callback) {
var _this = this;
var subscriptionIndices = [];
forEachInEnum(Error_1.Action, function (eventNameSpace) {
// Keep track of subscription index so we can call unsubscribe later
// This ensure it will continue to work even when the subscription has been updated
subscriptionIndices.push(_this.subscriptions.length);
_this.subscribe(eventNameSpace, callback);
});
return function () {
var subscriptionsToRemove = subscriptionIndices.map(function (index) { return _this.subscriptions[index]; });
subscriptionsToRemove.forEach(function (toRemove) {
collection_1.removeFromCollection(_this.subscriptions, toRemove, function (removed) {
removed.unsubscribe();
});
});
};
};
ActionSet.prototype.subscribe = function (eventName, callback, component, currentIndex) {
var _this = this;
var eventComponent = component || this.component;
var eventType = eventName.toUpperCase();
var boundedCallback = typeof currentIndex === 'number' ? callback : callback.bind(this);
var eventNameSpace;
if (Error_1.isErrorEventName(eventName)) {
eventNameSpace = getEventNameSpace(types_2.Group.Error, eventName, __assign(__assign({}, eventComponent), { type: '' }));
}
else {
eventNameSpace = getEventNameSpace(this.group, eventName, eventComponent);
}
var unsubscribe = this.app.subscribe(eventNameSpace, boundedCallback, component ? component.id : this.id);
var subscription = {
eventType: eventType,
unsubscribe: unsubscribe,
callback: boundedCallback,
component: eventComponent,
updateSubscribe: function (group, subgroups) {
return _this.updateSubscription.call(_this, subscription, group, subgroups);
},
};
if (typeof currentIndex === 'number' &&
currentIndex >= 0 &&
currentIndex < this.subscriptions.length) {
this.subscriptions[currentIndex] = subscription;
}
else {
this.subscriptions.push(subscription);
}
return unsubscribe;
};
ActionSet.prototype.unsubscribe = function (resetOnly) {
if (resetOnly === void 0) { resetOnly = false; }
unsubscribeActions(this.subscriptions, this.defaultGroup, resetOnly);
return this;
};
return ActionSet;
}());
exports.ActionSet = ActionSet;
var ActionSetWithChildren = /** @class */ (function (_super) {
__extends(ActionSetWithChildren, _super);
function ActionSetWithChildren() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.children = [];
return _this;
}
ActionSetWithChildren.prototype.unsubscribe = function (unsubscribeChildren, resetParentOnly) {
if (unsubscribeChildren === void 0) { unsubscribeChildren = true; }
if (resetParentOnly === void 0) { resetParentOnly = false; }
unsubscribeActions(this.subscriptions, this.defaultGroup, resetParentOnly);
this.children.forEach(function (child) {
if (ActionSetWithChildren.prototype.isPrototypeOf(child)) {
child.unsubscribe(unsubscribeChildren, !unsubscribeChildren);
}
else {
child.unsubscribe(!unsubscribeChildren);
}
});
return this;
};
ActionSetWithChildren.prototype.getChild = function (id) {
var childIndex = this.children.findIndex(function (child) { return child.id === id; });
return childIndex >= 0 ? this.children[childIndex] : undefined;
};
ActionSetWithChildren.prototype.getChildIndex = function (id) {
return this.children.findIndex(function (child) { return child.id === id; });
};
ActionSetWithChildren.prototype.getChildSubscriptions = function (id, eventType) {
return this.subscriptions.filter(function (sub) { return sub.component.id === id && (!eventType || eventType === sub.eventType); });
};
ActionSetWithChildren.prototype.addChild = function (child, group, subgroups) {
var _this = this;
var subscriptions = child.subscriptions;
var existingChild = this.getChild(child.id);
// Add child if it doesn't already exist
if (!existingChild) {
this.children.push(child);
}
if (!subscriptions || (group === child.group && subgroups === child.subgroups)) {
return this;
}
subscriptions.forEach(function (subscription) {
var updateSubscribe = subscription.updateSubscribe;
updateSubscribe(group, subgroups);
});
// Update child's group and subgroups
Object.assign(child, { group: group, subgroups: subgroups });
// Update child's children subscriptions
if (ActionSetWithChildren.prototype.isPrototypeOf(child)) {
child.children.forEach(function (c) { return _this.addChild(c, group, subgroups); });
}
return this;
};
ActionSetWithChildren.prototype.removeChild = function (id) {
var _this = this;
collection_1.removeFromCollection(this.children, this.getChild(id), function () {
var toBeRemoved = _this.subscriptions.filter(function (subs) { return subs.component.id === id; });
toBeRemoved.forEach(function (toRemove) {
collection_1.removeFromCollection(_this.subscriptions, toRemove, function (removed) {
removed.unsubscribe();
});
});
});
return this;
};
ActionSetWithChildren.prototype.subscribeToChild = function (child, eventName, callback) {
var _this = this;
var boundedCallback = callback.bind(this);
if (eventName instanceof Array) {
eventName.forEach(function (e) { return _this.subscribeToChild(child, e, callback); });
return this;
}
if (typeof eventName !== 'string') {
return this;
}
var eventType = eventName.toUpperCase();
var currentSubscriptions = this.getChildSubscriptions(child.id, eventType);
if (currentSubscriptions.length > 0) {
// Subscription is already there, simply update it
currentSubscriptions.forEach(function (subs) { return subs.updateSubscribe(_this.group, child.subgroups); });
}
else {
var childComponent = {
id: child.id,
subgroups: child.subgroups,
type: child.type,
};
this.subscribe(eventType, boundedCallback, childComponent);
}
return this;
};
ActionSetWithChildren.prototype.getUpdatedChildActions = function (newActions, currentActions) {
if (newActions.length === 0) {
while (currentActions.length > 0) {
var action = currentActions.pop();
if (!action) {
break;
}
this.removeChild(action.id);
}
return undefined;
}
// Only allow unique actions
var uniqueActions = newActions.filter(function (action, index, actionsArr) { return index === actionsArr.indexOf(action); });
var newActionIds = uniqueActions.map(function (action) { return action.id; });
// Remove unused actions
var unusedActions = currentActions.filter(function (action) {
return newActionIds.indexOf(action.id) < 0;
});
while (unusedActions.length > 0) {
var action = unusedActions.pop();
if (!action) {
break;
}
this.removeChild(action.id);
}
return uniqueActions;
};
return ActionSetWithChildren;
}(ActionSet));
exports.ActionSetWithChildren = ActionSetWithChildren;
function unsubscribeActions(subscriptions, defaultGroup, reassign) {
if (reassign === void 0) { reassign = false; }
subscriptions.forEach(function (subscription) {
if (reassign) {
var updateSubscribe = subscription.updateSubscribe;
// TODO: Support cases where we don't wipe out group and subgroups to defaults
updateSubscribe(defaultGroup, []);
}
else {
var unsubscribe = subscription.unsubscribe;
unsubscribe();
}
});
if (!reassign) {
subscriptions.length = 0;
}
}
function updateActionFromPayload(action, newProps) {
var id = action.id;
if (id === newProps.id) {
// Merge new properties
Object.assign(action, getMergedProps(action, newProps));
return true;
}
return false;
}
exports.updateActionFromPayload = updateActionFromPayload;
function getMergedProps(props, newProps) {
var merged = merge_1.default(props, newProps);
if (!merged) {
// tslint:disable-next-line:prefer-object-spread
var cloned = Object.assign(props, newProps);
return cloned;
}
return merged;
}
exports.getMergedProps = getMergedProps;
function forEachInEnum(types, callback) {
Object.keys(types).forEach(function (key) {
callback(types[key]);
});
}
exports.forEachInEnum = forEachInEnum;
function findMatchInEnum(types, lookup) {
var match = Object.keys(types).find(function (key) {
return lookup === types[key];
});
return match ? types[match] : undefined;
}
exports.findMatchInEnum = findMatchInEnum;
function camelCaseToSnakeCase(value) {
return value.replace(/([A-Z])/g, function (matcher, _val, index) {
return "" + (index !== 0 ? '_' : '') + matcher[0].toLowerCase();
});
}
exports.NonSnakeCaseGroup = [
types_2.Group.AuthCode,
types_2.Group.Button,
types_2.Group.ButtonGroup,
types_2.Group.Cart,
types_2.Group.Error,
types_2.Group.Features,
types_2.Group.Fullscreen,
types_2.Group.Link,
types_2.Group.Loading,
types_2.Group.Menu,
types_2.Group.Modal,
types_2.Group.Navigation,
types_2.Group.Pos,
types_2.Group.Print,
types_2.Group.ResourcePicker,
types_2.Group.Scanner,
types_2.Group.SessionToken,
types_2.Group.Share,
types_2.Group.TitleBar,
types_2.Group.Toast,
];
/**
* Maps the group name to its event name
* @internal
* @remarks - This method is necessary for the new pattern of using snake case
* which makes it more readable and easier to reconstruct the group from an event name.
* Example: `ContextualSaveBar` becomes `CONTEXTUAL_SAVE_BAR`
* */
function groupToEventNameSpace(group) {
if (exports.NonSnakeCaseGroup.includes(group)) {
return group.toUpperCase();
}
return camelCaseToSnakeCase(group).toUpperCase();
}
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/index.js":
/*!***********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/index.js ***!
\***********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Performance = exports.Pos = exports.AppLink = exports.ChannelMenu = exports.NavigationMenu = exports.Share = exports.ContextualSaveBar = exports.MarketingExternalActivityTopBar = exports.TitleBar = exports.SessionToken = exports.ResourcePicker = exports.Redirect = exports.Print = exports.Modal = exports.Loading = exports.LeaveConfirmation = exports.History = exports.Toast = exports.Fullscreen = exports.FeedbackModal = exports.Features = exports.Flash = exports.Error = exports.Cart = exports.Scanner = exports.ButtonGroup = exports.Button = exports.AuthCode = void 0;
var AuthCode = __importStar(__webpack_require__(/*! ./AuthCode */ "./node_modules/@shopify/app-bridge/actions/AuthCode/index.js"));
exports.AuthCode = AuthCode;
var Button = __importStar(__webpack_require__(/*! ./Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js"));
exports.Button = Button;
var ButtonGroup = __importStar(__webpack_require__(/*! ./ButtonGroup */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js"));
exports.ButtonGroup = ButtonGroup;
var Cart = __importStar(__webpack_require__(/*! ./Cart */ "./node_modules/@shopify/app-bridge/actions/Cart/index.js"));
exports.Cart = Cart;
var Error = __importStar(__webpack_require__(/*! ./Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js"));
exports.Error = Error;
var Flash = __importStar(__webpack_require__(/*! ./Flash */ "./node_modules/@shopify/app-bridge/actions/Flash/index.js"));
exports.Flash = Flash;
var Features = __importStar(__webpack_require__(/*! ./Features */ "./node_modules/@shopify/app-bridge/actions/Features/index.js"));
exports.Features = Features;
var FeedbackModal = __importStar(__webpack_require__(/*! ./FeedbackModal */ "./node_modules/@shopify/app-bridge/actions/FeedbackModal/index.js"));
exports.FeedbackModal = FeedbackModal;
var Fullscreen = __importStar(__webpack_require__(/*! ./Fullscreen */ "./node_modules/@shopify/app-bridge/actions/Fullscreen/index.js"));
exports.Fullscreen = Fullscreen;
var LeaveConfirmation = __importStar(__webpack_require__(/*! ./LeaveConfirmation */ "./node_modules/@shopify/app-bridge/actions/LeaveConfirmation/index.js"));
exports.LeaveConfirmation = LeaveConfirmation;
var Loading = __importStar(__webpack_require__(/*! ./Loading */ "./node_modules/@shopify/app-bridge/actions/Loading/index.js"));
exports.Loading = Loading;
var Modal = __importStar(__webpack_require__(/*! ./Modal */ "./node_modules/@shopify/app-bridge/actions/Modal/index.js"));
exports.Modal = Modal;
var History = __importStar(__webpack_require__(/*! ./Navigation/History */ "./node_modules/@shopify/app-bridge/actions/Navigation/History/index.js"));
exports.History = History;
var Redirect = __importStar(__webpack_require__(/*! ./Navigation/Redirect */ "./node_modules/@shopify/app-bridge/actions/Navigation/Redirect/index.js"));
exports.Redirect = Redirect;
var Print = __importStar(__webpack_require__(/*! ./Print */ "./node_modules/@shopify/app-bridge/actions/Print/index.js"));
exports.Print = Print;
var ResourcePicker = __importStar(__webpack_require__(/*! ./ResourcePicker */ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/index.js"));
exports.ResourcePicker = ResourcePicker;
var Scanner = __importStar(__webpack_require__(/*! ./Scanner */ "./node_modules/@shopify/app-bridge/actions/Scanner/index.js"));
exports.Scanner = Scanner;
var SessionToken = __importStar(__webpack_require__(/*! ./SessionToken */ "./node_modules/@shopify/app-bridge/actions/SessionToken/index.js"));
exports.SessionToken = SessionToken;
var TitleBar = __importStar(__webpack_require__(/*! ./TitleBar */ "./node_modules/@shopify/app-bridge/actions/TitleBar/index.js"));
exports.TitleBar = TitleBar;
var Toast = __importStar(__webpack_require__(/*! ./Toast */ "./node_modules/@shopify/app-bridge/actions/Toast/index.js"));
exports.Toast = Toast;
var ContextualSaveBar = __importStar(__webpack_require__(/*! ./ContextualSaveBar */ "./node_modules/@shopify/app-bridge/actions/ContextualSaveBar/index.js"));
exports.ContextualSaveBar = ContextualSaveBar;
var Share = __importStar(__webpack_require__(/*! ./Share */ "./node_modules/@shopify/app-bridge/actions/Share/index.js"));
exports.Share = Share;
var NavigationMenu = __importStar(__webpack_require__(/*! ./Menu/NavigationMenu */ "./node_modules/@shopify/app-bridge/actions/Menu/NavigationMenu/index.js"));
exports.NavigationMenu = NavigationMenu;
var ChannelMenu = __importStar(__webpack_require__(/*! ./Menu/ChannelMenu */ "./node_modules/@shopify/app-bridge/actions/Menu/ChannelMenu/index.js"));
exports.ChannelMenu = ChannelMenu;
var AppLink = __importStar(__webpack_require__(/*! ./Link/AppLink */ "./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js"));
exports.AppLink = AppLink;
var Pos = __importStar(__webpack_require__(/*! ./Pos */ "./node_modules/@shopify/app-bridge/actions/Pos/index.js"));
exports.Pos = Pos;
var MarketingExternalActivityTopBar = __importStar(__webpack_require__(/*! ./MarketingExternalActivityTopBar */ "./node_modules/@shopify/app-bridge/actions/MarketingExternalActivityTopBar/index.js"));
exports.MarketingExternalActivityTopBar = MarketingExternalActivityTopBar;
var Performance = __importStar(__webpack_require__(/*! ./Performance */ "./node_modules/@shopify/app-bridge/actions/Performance/index.js"));
exports.Performance = Performance;
var validator_1 = __webpack_require__(/*! ./validator */ "./node_modules/@shopify/app-bridge/actions/validator.js");
Object.defineProperty(exports, "isAppBridgeAction", ({ enumerable: true, get: function () { return validator_1.isAppBridgeAction; } }));
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/actions/types.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/merge.js":
/*!***********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/merge.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
/**
* Returns a deeply merged object with properties from the 2 provided objects
* @remarks - Only deeply merge objects. The second argument overrides the
* first if it is provided as `null`, `undefined` or an array.
* @public
* */
function mergeProps(obj, newObj) {
if (newObj == null) {
return newObj;
}
// If setting to a different prototype or a non-object or non-array, don't merge any props
if (typeof obj === 'undefined' ||
!Object.getPrototypeOf(obj).isPrototypeOf(newObj) ||
(newObj.constructor.name !== 'Object' && newObj.constructor.name !== 'Array')) {
return newObj;
}
var clone = {};
Object.keys(newObj).forEach(function (key) {
var exists = obj.hasOwnProperty(key);
if (!exists) {
clone[key] = newObj[key];
}
else if (typeof obj[key] === 'object' && !Array.isArray(obj[key])) {
clone[key] = mergeProps(obj[key], newObj[key]);
}
else {
clone[key] = newObj[key];
}
});
// Copy old props that are not present in new object only if this is a simple object
Object.keys(obj).forEach(function (key) {
var exists = newObj.hasOwnProperty(key);
if (!exists) {
clone[key] = obj[key];
}
});
// Set prototype of cloned object to match original
Object.setPrototypeOf(clone, Object.getPrototypeOf(obj));
return clone;
}
exports.default = mergeProps;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/types.js":
/*!***********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/types.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ComponentType = exports.Group = void 0;
/**
* Various action groups.
* @public
*/
var Group;
(function (Group) {
Group["AuthCode"] = "AuthCode";
Group["Button"] = "Button";
Group["ButtonGroup"] = "ButtonGroup";
Group["Cart"] = "Cart";
Group["ContextualSaveBar"] = "ContextualSaveBar";
Group["Error"] = "Error";
Group["Features"] = "Features";
Group["FeedbackModal"] = "FeedbackModal";
Group["Fullscreen"] = "Fullscreen";
Group["LeaveConfirmation"] = "LeaveConfirmation";
Group["Link"] = "Link";
Group["Loading"] = "Loading";
Group["Menu"] = "Menu";
Group["Modal"] = "Modal";
Group["Navigation"] = "Navigation";
Group["Performance"] = "Performance";
Group["Pos"] = "Pos";
Group["Print"] = "Print";
Group["ResourcePicker"] = "Resource_Picker";
Group["Scanner"] = "Scanner";
Group["SessionToken"] = "SessionToken";
Group["Share"] = "Share";
Group["TitleBar"] = "TitleBar";
Group["Toast"] = "Toast";
Group["MarketingExternalActivityTopBar"] = "MarketingExternalActivityTopBar";
})(Group = exports.Group || (exports.Group = {}));
/**
* @internal
*/
var ComponentType;
(function (ComponentType) {
ComponentType["Button"] = "Button";
ComponentType["ButtonGroup"] = "ButtonGroup";
})(ComponentType = exports.ComponentType || (exports.ComponentType = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/uuid.js":
/*!**********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/uuid.js ***!
\**********************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.generateUuid = void 0;
/**
* Convert a number or array of integers to a string of padded hex octets.
*/
function asHex(value) {
return Array.from(value)
.map(function (i) { return ("00" + i.toString(16)).slice(-2); })
.join('');
}
/**
* Attempt to securely generate random bytes/
*/
function getRandomBytes(size) {
// SPRNG
if (typeof Uint8Array === 'function' && typeof window === 'object' && window.crypto) {
var buffer = new Uint8Array(size);
var randomValues = window.crypto.getRandomValues(buffer);
if (randomValues) {
return randomValues;
}
}
// Insecure random
return Array.from(new Array(size), function () { return (Math.random() * 255) | 0; });
}
/**
* Generate a RFC4122-compliant v4 UUID.
*
* @see http://www.ietf.org/rfc/rfc4122.txt
*/
function generateUuid() {
var version = 64;
var clockSeqHiAndReserved = getRandomBytes(1);
var timeHiAndVersion = getRandomBytes(2);
clockSeqHiAndReserved[0] &= 63 | 128;
// tslint:disable-next-line:binary-expression-operand-order
timeHiAndVersion[0] &= 15 | version;
return [
asHex(getRandomBytes(4)),
'-',
asHex(getRandomBytes(2)),
'-',
asHex(timeHiAndVersion),
'-',
asHex(clockSeqHiAndReserved),
asHex(getRandomBytes(1)),
'-',
asHex(getRandomBytes(6)),
].join('');
}
exports.generateUuid = generateUuid;
// Default
exports.default = generateUuid;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/actions/validator.js":
/*!***************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/actions/validator.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isAppMessage = exports.isPermitted = exports.getPermissionKey = exports.isFromApp = exports.isAppBridgeAction = void 0;
var types_1 = __webpack_require__(/*! ../client/types */ "./node_modules/@shopify/app-bridge/client/types.js");
var constants_1 = __webpack_require__(/*! ./constants */ "./node_modules/@shopify/app-bridge/actions/constants.js");
var helper_1 = __webpack_require__(/*! ./helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
/**
* Predicate to determine if an action is an App Bridge action.
* @public
*/
function isAppBridgeAction(action) {
return (action instanceof Object &&
action.hasOwnProperty('type') &&
action.type.toString().startsWith(constants_1.PREFIX));
}
exports.isAppBridgeAction = isAppBridgeAction;
/**
* Predicate to determine if an action originated from an application.
* @internal
*/
function isFromApp(action) {
if (typeof action !== 'object' || typeof action.source !== 'object') {
return false;
}
return typeof action.source.apiKey === 'string';
}
exports.isFromApp = isFromApp;
/**
* Returns the action type without the prefix and group
* @internal
*/
function getPermissionKey(type) {
return type.replace(new RegExp("^" + constants_1.PREFIX + constants_1.SEPARATOR + "\\w+" + constants_1.SEPARATOR), '');
}
exports.getPermissionKey = getPermissionKey;
/**
* Predicate to determine if an action is permitted
* @internal
*/
function isPermitted(features, _a, permissionType) {
var group = _a.group, type = _a.type;
if (!group || !features.hasOwnProperty(group)) {
return false;
}
var feature = features[group];
if (!feature) {
return false;
}
var actionType = getPermissionKey(type);
return feature[actionType] ? feature[actionType][permissionType] === true : false;
}
exports.isPermitted = isPermitted;
/**
* Predicate to determine if an event originated from an application.
* @internal
*/
function isAppMessage(event) {
if (typeof event !== 'object' || !event.data || typeof event.data !== 'object') {
return false;
}
var data = event.data;
return data.hasOwnProperty('type') && helper_1.findMatchInEnum(types_1.MessageType, data.type) !== undefined;
}
exports.isAppMessage = isAppMessage;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/Client.js":
/*!***********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/Client.js ***!
\***********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.createApp = exports.createAppWrapper = exports.createClientApp = exports.getShopOrigin = exports.getUrlParams = exports.WINDOW_UNDEFINED_MESSAGE = void 0;
var helper_1 = __webpack_require__(/*! ../actions/helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var Error_1 = __webpack_require__(/*! ../actions/Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js");
var Print_1 = __webpack_require__(/*! ../actions/Print */ "./node_modules/@shopify/app-bridge/actions/Print/index.js");
var MessageTransport_1 = __webpack_require__(/*! ../MessageTransport */ "./node_modules/@shopify/app-bridge/MessageTransport.js");
var shared_1 = __webpack_require__(/*! ../util/shared */ "./node_modules/@shopify/app-bridge/util/shared.js");
var env_1 = __webpack_require__(/*! ../util/env */ "./node_modules/@shopify/app-bridge/util/env.js");
var print_1 = __webpack_require__(/*! ./print */ "./node_modules/@shopify/app-bridge/client/print.js");
var redirect_1 = __webpack_require__(/*! ./redirect */ "./node_modules/@shopify/app-bridge/client/redirect.js");
var types_1 = __webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/client/types.js");
var Hooks_1 = __importDefault(__webpack_require__(/*! ./Hooks */ "./node_modules/@shopify/app-bridge/client/Hooks.js"));
exports.WINDOW_UNDEFINED_MESSAGE = 'window is not defined. Running an app outside a browser is not supported';
function redirectHandler(hostFrame, config) {
var apiKey = config.apiKey, shopOrigin = config.shopOrigin, _a = config.forceRedirect, forceRedirect = _a === void 0 ? !env_1.isDevelopmentClient : _a;
var location = redirect_1.getLocation();
if (env_1.isFrameless ||
!location ||
!apiKey ||
!shopOrigin ||
!forceRedirect ||
!redirect_1.shouldRedirect(hostFrame)) {
return;
}
var url = "https://" + shopOrigin + "/admin/apps/" + apiKey + location.pathname + (location.search || '');
redirect_1.redirect(url);
}
function appSetUp(app) {
app.subscribe(Print_1.ActionType.APP, print_1.handleAppPrint);
}
/**
* Extracts the query parameters from the current URL.
* @deprecated This function has been deprecated.
* @public
*/
function getUrlParams() {
var params = {};
var location = redirect_1.getLocation();
if (!location) {
return params;
}
var hashes = location.search.slice(location.search.indexOf('?') + 1).split('&');
return hashes.reduce(function (acc, hash) {
var _a;
var _b = hash.split('='), key = _b[0], val = _b[1];
return __assign(__assign({}, acc), (_a = {}, _a[decodeURIComponent(key)] = decodeURIComponent(val), _a));
}, params);
}
exports.getUrlParams = getUrlParams;
/**
* Extracts the `shop` query parameter from the current URL.
* @deprecated This function has been deprecated, see {@link https://help.shopify.com/api/embedded-apps/shop-origin}
* @public
*/
function getShopOrigin() {
var params = getUrlParams();
return params.shop;
}
exports.getShopOrigin = getShopOrigin;
/**
* @internal
*/
exports.createClientApp = function (transport, middlewares) {
if (middlewares === void 0) { middlewares = []; }
var getStateListeners = [];
var transportListener = MessageTransport_1.createTransportListener();
var handler = function (event) {
var message = event.data;
var type = message.type, payload = message.payload;
switch (type) {
case 'getState':
var resolvers = getStateListeners.splice(0);
resolvers.forEach(function (resolver) { return resolver(payload); });
break;
case 'dispatch':
transportListener.handleMessage(payload);
var hasCallback = transportListener.handleActionDispatch(payload);
if (hasCallback) {
return;
}
// Throw an error if there are no subscriptions to this error
var errorType = helper_1.findMatchInEnum(Error_1.ActionType, payload.type);
if (errorType) {
Error_1.throwError(errorType, payload);
}
break;
default:
// Silently swallow unknown actions
}
};
transport.subscribe(handler);
return function (config) {
if (!config.shopOrigin) {
throw Error_1.fromAction('shopOrigin must be provided', Error_1.AppActionType.INVALID_CONFIG);
}
var protocol = /^https?:\/\//;
if (protocol.test(config.shopOrigin)) {
var message = "shopOrigin should not include protocol, please use: " + config.shopOrigin.replace(protocol, '');
throw Error_1.fromAction(message, Error_1.AppActionType.INVALID_CONFIG);
}
if (!config.apiKey) {
throw Error_1.fromAction('apiKey must be provided', Error_1.AppActionType.INVALID_CONFIG);
}
var dispatcher = createDispatcher(transport, config);
var subscribe = transportListener.createSubscribeHandler(dispatcher);
// It is possible to initialize an app multiple times
// Therefore we need to clear subscriptions to be safe
dispatcher(types_1.MessageType.Unsubscribe);
function dispatch(action) {
dispatcher(types_1.MessageType.Dispatch, action);
return action;
}
redirectHandler(transport.hostFrame, config);
var hooks = new Hooks_1.default();
var app = {
localOrigin: transport.localOrigin,
hooks: hooks,
dispatch: function (action) {
if (!app.hooks) {
return dispatch(action);
}
return app.hooks.run(types_1.LifecycleHook.DispatchAction, dispatch, app, action);
},
featuresAvailable: function (features) {
return app.getState('features').then(function (state) {
if (features) {
Object.keys(state).forEach(function (feature) {
if (!features.includes(feature)) {
delete state[feature];
}
});
}
return state;
});
},
getState: function (query) {
return new Promise(function (resolve) {
getStateListeners.push(resolve);
dispatcher(types_1.MessageType.GetState);
}).then(function (state) {
if (query) {
return query.split('.').reduce(function (value, key) {
if (typeof state !== 'object' || Array.isArray(state)) {
return undefined;
}
value = state[key];
state = value;
return value;
}, undefined);
}
return state;
});
},
subscribe: subscribe,
error: function (listener, id) {
var unsubscribeCb = [];
helper_1.forEachInEnum(Error_1.ActionType, function (eventNameSpace) {
unsubscribeCb.push(subscribe(eventNameSpace, listener, id));
});
return function () {
unsubscribeCb.forEach(function (unsubscribe) { return unsubscribe(); });
};
},
};
for (var _i = 0, middlewares_1 = middlewares; _i < middlewares_1.length; _i++) {
var middleware = middlewares_1[_i];
middleware(hooks, app);
}
appSetUp(app);
return app;
};
};
/**
* @public
*/
function createAppWrapper(frame, localOrigin, middleware) {
if (middleware === void 0) { middleware = []; }
if (!frame) {
throw Error_1.fromAction(exports.WINDOW_UNDEFINED_MESSAGE, Error_1.AppActionType.WINDOW_UNDEFINED);
}
var location = redirect_1.getLocation();
var origin = localOrigin || (location && location.origin);
if (!origin) {
throw Error_1.fromAction('local origin cannot be blank', Error_1.AppActionType.MISSING_LOCAL_ORIGIN);
}
var transport = MessageTransport_1.fromWindow(frame, origin);
var appCreator = exports.createClientApp(transport, middleware);
return appCreator;
}
exports.createAppWrapper = createAppWrapper;
/**
* Creates your application instance.
* @param config - Both `apiKey` and `shopOrigin` are required.
* @remarks
* You will need to store `shopOrigin` during the authentication process and then retrieve it for the code to work properly. To learn more about this process, see {@link https://help.shopify.com/api/embedded-apps/shop-origin | Getting and storing the shop origin}.
* @public
*/
function createApp(config) {
var currentWindow = redirect_1.getWindow();
if (!currentWindow) {
return shared_1.serverAppBridge;
}
return createAppWrapper(currentWindow.top)(config);
}
exports.createApp = createApp;
function createDispatcher(transport, config) {
return function (type, payload) {
transport.dispatch({
payload: payload,
source: config,
type: type,
});
};
}
/**
* {@inheritdocs createApp}
* @public
*/
exports.default = createApp;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/Hooks.js":
/*!**********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/Hooks.js ***!
\**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var collection_1 = __webpack_require__(/*! ../util/collection */ "./node_modules/@shopify/app-bridge/util/collection.js");
/**
* Shopify App Bridge can be extended with hooks, which run when actions are dispatched and updated.
* Hooks are middleware functions that can modify or cancel actions.
*
* The [validation middleware](../validate/README.md) is implemented using hooks.
*
* @remarks
* Here’s an example hook that modifies all Toast show actions to have a duration of five seconds.
*
* ```ts
* import createApp, {LifecycleHook, DispatchActionHook} from '@shopify/app-bridge';
* import {Toast} from '@shopify/app-bridge/actions'
*
* const app = createApp({apiKey: API_KEY, shopOrigin: SHOP_ORIGIN});
*
* function makeToastsFiveSeconds: DispatchActionHook(next) {
* return function(action){
* if(action.type === Toast.ActionType.SHOW) {
* const modifiedAction = {
* ...action,
* payload: {
* ...action.payload,
* duration: 5000,
* },
* };
* return next(modifiedAction);
* } else {
* // don’t modify non-Toast actions
* return next(action);
* }
* }
* }
*
* app.hooks.set(LifecycleHook.DispatchAction, makeToastsFiveSeconds);
* ```
*
* The hook function `makeToastsFiveSeconds()` takes a `next()` function as its argument.
* The hook function returns an anonymous function, which takes the action being dispatched as its argument.
*
* To modify an action, call `next()` with the modified action, as in the example.
* To cancel an action, don’t call `next()`, and the action will not be dispatched.
*/
var Hooks = /** @class */ (function () {
function Hooks() {
this.map = {};
}
Hooks.prototype.set = function (hook, handler) {
if (!this.map.hasOwnProperty(hook)) {
this.map[hook] = [];
}
var value = { handler: handler, remove: function () { } };
var remove = collection_1.addAndRemoveFromCollection(this.map[hook], value);
value = { handler: handler, remove: remove };
return remove;
};
Hooks.prototype.get = function (hook) {
var value = this.map[hook];
return value ? value.map(function (val) { return val.handler; }) : undefined;
};
Hooks.prototype.run = function (hook, final, context) {
var initialArgs = [];
for (var _i = 3; _i < arguments.length; _i++) {
initialArgs[_i - 3] = arguments[_i];
}
var index = 0;
var handlers = this.get(hook) || [];
function handler() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var childHandler = handlers[index++];
if (childHandler) {
return childHandler(handler).apply(context, args);
}
return final.apply(context, args);
}
return handler.apply(context, initialArgs);
};
return Hooks;
}());
exports.default = Hooks;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/index.js ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var Client_1 = __webpack_require__(/*! ./Client */ "./node_modules/@shopify/app-bridge/client/Client.js");
__exportStar(__webpack_require__(/*! ./types */ "./node_modules/@shopify/app-bridge/client/types.js"), exports);
__exportStar(__webpack_require__(/*! ./Client */ "./node_modules/@shopify/app-bridge/client/Client.js"), exports);
exports.default = Client_1.createClientApp;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/print.js":
/*!**********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/print.js ***!
\**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.handleAppPrint = void 0;
var redirect_1 = __webpack_require__(/*! ./redirect */ "./node_modules/@shopify/app-bridge/client/redirect.js");
function isRunningOniOS() {
return navigator.userAgent.indexOf('iOS') >= 0;
}
function createHiddenInput() {
var currentWindow = redirect_1.getWindow();
if (!currentWindow || !currentWindow.document || !currentWindow.document.body) {
return;
}
var inputElement = window.document.createElement('input');
inputElement.style.display = 'none';
window.document.body.appendChild(inputElement);
return inputElement;
}
function printWindow() {
if (!redirect_1.getWindow()) {
return;
}
// @ts-ignore: Fixed in TypeScript 2.8.2
window.print();
}
function handleMobileAppPrint() {
var input = createHiddenInput();
if (!input) {
return;
}
input.select();
printWindow();
input.remove();
}
function handleAppPrint() {
if (isRunningOniOS()) {
handleMobileAppPrint();
}
else {
printWindow();
}
}
exports.handleAppPrint = handleAppPrint;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/redirect.js":
/*!*************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/redirect.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getWindow = exports.getLocation = exports.redirect = exports.shouldRedirect = void 0;
function shouldRedirect(frame) {
return frame === window;
}
exports.shouldRedirect = shouldRedirect;
function redirect(url) {
var location = getLocation();
if (!location) {
return;
}
location.assign(url);
}
exports.redirect = redirect;
function getLocation() {
return hasWindow() ? window.location : undefined;
}
exports.getLocation = getLocation;
function getWindow() {
return hasWindow() ? window : undefined;
}
exports.getWindow = getWindow;
function hasWindow() {
return typeof window !== 'undefined';
}
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/client/types.js":
/*!**********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/client/types.js ***!
\**********************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.LifecycleHook = exports.MessageType = exports.PermissionType = void 0;
/**
* @internal
*/
var PermissionType;
(function (PermissionType) {
PermissionType["Dispatch"] = "Dispatch";
PermissionType["Subscribe"] = "Subscribe";
})(PermissionType = exports.PermissionType || (exports.PermissionType = {}));
/**
* @internal
*/
var MessageType;
(function (MessageType) {
MessageType["GetState"] = "getState";
MessageType["Dispatch"] = "dispatch";
MessageType["Subscribe"] = "subscribe";
MessageType["Unsubscribe"] = "unsubscribe";
})(MessageType = exports.MessageType || (exports.MessageType = {}));
/**
*
* There are two types of hooks: `LifecycleHook.DispatchAction` and `LifecycleHook.UpdateAction`.
*
* @remarks
* `DispatchAction` hooks are run when an action is dispatched with the `.dispatch()` function:
*
* ```js
* const toastNotice = Toast.create(app, {message: 'Product saved'});
* toastNotice.dispatch(Toast.Action.SHOW);
* ```
*
* `UpdateAction` hooks are run when an action is updated, using the `.set()` function:
*
* ```js
* toastNotice.set({message: 'Product could not be saved', isError: true});
* ```
*
* @public
*/
var LifecycleHook;
(function (LifecycleHook) {
LifecycleHook["UpdateAction"] = "UpdateAction";
LifecycleHook["DispatchAction"] = "DispatchAction";
})(LifecycleHook = exports.LifecycleHook || (exports.LifecycleHook = {}));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/development.js":
/*!*********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/development.js ***!
\*********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.createApp = void 0;
var validate_1 = __importDefault(__webpack_require__(/*! ./validate */ "./node_modules/@shopify/app-bridge/validate/index.js"));
var utils_1 = __webpack_require__(/*! ./validate/utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var redirect_1 = __webpack_require__(/*! ./client/redirect */ "./node_modules/@shopify/app-bridge/client/redirect.js");
var client_1 = __webpack_require__(/*! ./client */ "./node_modules/@shopify/app-bridge/client/index.js");
var shared_1 = __webpack_require__(/*! ./util/shared */ "./node_modules/@shopify/app-bridge/util/shared.js");
/**
* Creates your application instance with validator middleware.
* @param config - Both `apiKey` and `shopOrigin` are required.
* @remarks
* Please note that `forceRedirect` only works in production environment (`shopname.myshopify.com/admin`).
* You will need to store `shopOrigin` during the authentication process and then retrieve it for the code
* to work properly. To learn more about this process, see
* {@link https://help.shopify.com/api/embedded-apps/shop-origin | Getting and storing the shop origin}.
* @public
*/
function createApp(config) {
var currentWindow = redirect_1.getWindow();
if (!currentWindow) {
return shared_1.serverAppBridge;
}
utils_1.mixedAppClientCheck(currentWindow);
return client_1.createAppWrapper(currentWindow.top, currentWindow.location.origin, [validate_1.default])(config);
}
exports.createApp = createApp;
exports.default = createApp;
__exportStar(__webpack_require__(/*! ./MessageTransport */ "./node_modules/@shopify/app-bridge/MessageTransport.js"), exports);
__exportStar(__webpack_require__(/*! ./client */ "./node_modules/@shopify/app-bridge/client/index.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/index.js":
/*!***************************************************!*\
!*** ./node_modules/@shopify/app-bridge/index.js ***!
\***************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var env_1 = __webpack_require__(/*! ./util/env */ "./node_modules/@shopify/app-bridge/util/env.js");
var createApp = env_1.isDevelopment
? __webpack_require__(/*! ./development */ "./node_modules/@shopify/app-bridge/development.js").default
: __webpack_require__(/*! ./production */ "./node_modules/@shopify/app-bridge/production.js").default;
exports.default = createApp;
__exportStar(__webpack_require__(/*! ./MessageTransport */ "./node_modules/@shopify/app-bridge/MessageTransport.js"), exports);
__exportStar(__webpack_require__(/*! ./client */ "./node_modules/@shopify/app-bridge/client/index.js"), exports);
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/package.json":
/*!*******************************************************!*\
!*** ./node_modules/@shopify/app-bridge/package.json ***!
\*******************************************************/
/***/ ((module) => {
"use strict";
module.exports = JSON.parse('{"name":"@shopify/app-bridge","version":"1.29.0","types":"index.d.ts","main":"index.js","unpkg":"umd/index.js","jsdelivr":"umd/index.js","files":["/actions/","/client/","/umd/","/util/","/validate/","/development.d.ts","/development.js","/index.d.ts","/index.js","/MessageTransport.d.ts","/MessageTransport.js","/production.d.ts","/production.js"],"private":false,"publishConfig":{"access":"public","@shopify:registry":"https://registry.npmjs.org"},"repository":"git@github.com:Shopify/app-bridge.git","homepage":"https://shopify.dev/tools/app-bridge","author":"Shopify Inc.","license":"MIT","scripts":{"build":"yarn build:tsc && yarn build:umd","build:tsc":"NODE_ENV=production tsc","build:umd":"NODE_ENV=production webpack -p","check":"tsc","clean":"cat package.json | node -pe \\"JSON.parse(require(\'fs\').readFileSync(\'/dev/stdin\').toString()).files.map(f => \'./\'+f).join(\' \')\\" | xargs rm -rf","pack":"yarn pack","size":"size-limit"},"sideEffects":false,"size-limit":[{"limit":"16 KB","path":"production.js"}],"devDependencies":{"@types/node":"^10.12.5"},"gitHead":"fa8339c05712e71d806084d74fea466df4f4273e"}');
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/production.js":
/*!********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/production.js ***!
\********************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
__exportStar(__webpack_require__(/*! ./MessageTransport */ "./node_modules/@shopify/app-bridge/MessageTransport.js"), exports);
__exportStar(__webpack_require__(/*! ./client */ "./node_modules/@shopify/app-bridge/client/index.js"), exports);
var production_1 = __webpack_require__(/*! ./production */ "./node_modules/@shopify/app-bridge/production.js");
Object.defineProperty(exports, "default", ({ enumerable: true, get: function () { return production_1.createApp; } }));
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/util/collection.js":
/*!*************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/util/collection.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.removeFromCollection = exports.addAndRemoveFromCollection = void 0;
/**
* Add an item to a collection, return a function that can then be used to
* remove the item from the collection. Optionally accepting a callback that is
* invoked when the item is removed from the collection.
*
* @internal
*/
function addAndRemoveFromCollection(collection, item, then) {
collection.push(item);
return function () {
return removeFromCollection(collection, item, then);
};
}
exports.addAndRemoveFromCollection = addAndRemoveFromCollection;
/**
* Remove the item from the collection. Optionally accepting a callback that is
* invoked when the item is removed from the collection.
*
* @internal
*/
function removeFromCollection(collection, item, then) {
var idx = collection.findIndex(function (i) { return i === item; });
if (idx >= 0) {
collection.splice(idx, 1);
if (then) {
then(item);
}
return true;
}
return false;
}
exports.removeFromCollection = removeFromCollection;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/util/env.js":
/*!******************************************************!*\
!*** ./node_modules/@shopify/app-bridge/util/env.js ***!
\******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
/* provided dependency */ var process = __webpack_require__(/*! process/browser */ "./node_modules/process/browser.js");
var _a, _b;
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.isFrameless = exports.isDevelopmentClient = exports.isProduction = exports.isDevelopment = exports.isClient = exports.isServer = void 0;
exports.isServer = typeof window === 'undefined';
exports.isClient = !exports.isServer;
exports.isDevelopment = typeof process !== 'undefined' && process.env && "development" === 'development';
exports.isProduction = !exports.isDevelopment;
exports.isDevelopmentClient = exports.isDevelopment && exports.isClient;
exports.isFrameless = exports.isClient && ((_b = (_a = window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent) === null || _b === void 0 ? void 0 : _b.indexOf(' Frameless ')) > 0;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/util/shared.js":
/*!*********************************************************!*\
!*** ./node_modules/@shopify/app-bridge/util/shared.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.serverAppBridge = void 0;
var Error_1 = __webpack_require__(/*! ../actions/Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js");
var noop = function () { };
/**
* @internal
*/
exports.serverAppBridge = {
dispatch: function () {
return {};
},
error: function () {
return noop;
},
featuresAvailable: function () {
return Promise.reject(Error_1.fromAction('Feature detection is only available on the client side.', Error_1.AppActionType.WINDOW_UNDEFINED));
},
getState: function () {
return Promise.reject(Error_1.fromAction('State is only available on the client side.', Error_1.AppActionType.WINDOW_UNDEFINED));
},
localOrigin: '',
subscribe: function () {
return noop;
},
};
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/button.js":
/*!*********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/button.js ***!
\*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.buttonSchemaWithId = exports.buttonSchema = void 0;
var Button_1 = __webpack_require__(/*! ../../actions/Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Button_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
exports.buttonSchema = type_validate_1.matchesObject({
disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
label: type_validate_1.matchesString(),
style: type_validate_1.makeOptional(type_validate_1.matchesEnum(Button_1.Style)),
icon: type_validate_1.makeOptional(type_validate_1.matchesEnum(Button_1.Icon)),
loading: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
});
exports.buttonSchemaWithId = type_validate_1.composeSchemas(type_validate_1.matchesObject({
id: type_validate_1.matchesString(),
}), exports.buttonSchema);
function validateProps(props) {
return type_validate_1.validate(props, exports.buttonSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
var validator = utils_1.createActionValidator(Button_1.ActionType, action.type === Button_1.ActionType.UPDATE ? exports.buttonSchema : undefined, true, true);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/buttonGroup.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/buttonGroup.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.buttonGroupSchema = void 0;
var ButtonGroup_1 = __webpack_require__(/*! ../../actions/ButtonGroup */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return ButtonGroup_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var button_1 = __webpack_require__(/*! ./button */ "./node_modules/@shopify/app-bridge/validate/actions/button.js");
exports.buttonGroupSchema = type_validate_1.composeSchemas(button_1.buttonSchema, type_validate_1.matchesObject({
buttons: type_validate_1.matchesArray(type_validate_1.makeOptional(button_1.buttonSchemaWithId)),
}));
function validateProps(props) {
return type_validate_1.validate(props, exports.buttonGroupSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
var validator = utils_1.createActionValidator(ButtonGroup_1.ActionType, exports.buttonGroupSchema, true, true);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/cart.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/cart.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var Cart_1 = __webpack_require__(/*! ../../actions/Cart */ "./node_modules/@shopify/app-bridge/actions/Cart/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Cart_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var addressSchema = type_validate_1.matchesObject({
address1: type_validate_1.makeOptional(type_validate_1.matchesString()),
address2: type_validate_1.makeOptional(type_validate_1.matchesString()),
city: type_validate_1.makeOptional(type_validate_1.matchesString()),
company: type_validate_1.makeOptional(type_validate_1.matchesString()),
firstName: type_validate_1.makeOptional(type_validate_1.matchesString()),
lastName: type_validate_1.makeOptional(type_validate_1.matchesString()),
phone: type_validate_1.makeOptional(type_validate_1.matchesString()),
province: type_validate_1.makeOptional(type_validate_1.matchesString()),
country: type_validate_1.makeOptional(type_validate_1.matchesString()),
zip: type_validate_1.makeOptional(type_validate_1.matchesString()),
name: type_validate_1.makeOptional(type_validate_1.matchesString()),
provinceCode: type_validate_1.makeOptional(type_validate_1.matchesString()),
countryCode: type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var discountSchema = type_validate_1.matchesObject({
amount: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),
discountDescription: type_validate_1.makeOptional(type_validate_1.matchesString()),
type: type_validate_1.makeOptional(type_validate_1.matchesString()),
discountCode: type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var discountAmount = type_validate_1.matchesObject({
amount: type_validate_1.matchesPositiveNumber(),
discountDescription: type_validate_1.makeOptional(type_validate_1.matchesString()),
type: type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var discountCode = type_validate_1.matchesObject({
discountCode: type_validate_1.matchesString(),
});
var lineItemSchema = type_validate_1.matchesObject({
price: type_validate_1.makeOptional(type_validate_1.matchesPositiveNumber()),
quantity: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),
title: type_validate_1.makeOptional(type_validate_1.matchesString()),
variantId: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),
discount: type_validate_1.makeOptional(discountAmount),
});
var updateLineItemSchema = type_validate_1.matchesObject({
quantity: type_validate_1.matchesPositiveInteger(),
});
var customerSchema = type_validate_1.matchesObject({
id: type_validate_1.makeOptional(type_validate_1.matchesPositiveInteger()),
email: type_validate_1.makeOptional(type_validate_1.matchesString()),
firstName: type_validate_1.makeOptional(type_validate_1.matchesString()),
lastName: type_validate_1.makeOptional(type_validate_1.matchesString()),
note: type_validate_1.makeOptional(type_validate_1.matchesString()),
addresses: type_validate_1.makeOptional(type_validate_1.matchesArray(addressSchema)),
});
var noteSchema = type_validate_1.matchesObject({
name: type_validate_1.matchesString(),
value: type_validate_1.matchesString(),
});
var cartSchema = type_validate_1.matchesObject({
cartDiscount: type_validate_1.makeOptional(discountSchema),
customer: type_validate_1.makeOptional(customerSchema),
grandTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),
lineItems: type_validate_1.makeOptional(type_validate_1.matchesArray(lineItemSchema)),
noteAttributes: type_validate_1.makeOptional(type_validate_1.matchesArray(noteSchema)),
subTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),
taxTotal: type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var propertiesSchema = type_validate_1.composeSchemas(type_validate_1.matchesObject({}), function (value) {
var validator = type_validate_1.matchesString();
var schema = Object.keys(value).reduce(function (acc, key) {
acc[key] = validator;
return acc;
}, {});
return type_validate_1.validate(value, type_validate_1.matchesObject(schema));
});
var matchesStringArray = type_validate_1.matchesArray(type_validate_1.matchesString());
function createDataValidator(data) {
return utils_1.createActionValidator(Cart_1.ActionType, data ? type_validate_1.matchesObject({ data: data }) : undefined, true, true);
}
function createDataValidatorWithIndex(data) {
var indexSchema = type_validate_1.matchesObject({ index: type_validate_1.matchesPositiveInteger() });
if (data) {
var dataSchema = type_validate_1.matchesObject({ data: data });
return utils_1.createActionValidator(Cart_1.ActionType, type_validate_1.composeSchemas(indexSchema, dataSchema), true, true);
}
return utils_1.createActionValidator(Cart_1.ActionType, indexSchema, true, true);
}
function getDiscountSchema(data) {
if (data.amount) {
return discountAmount;
}
return discountCode;
}
function validateAction(action) {
switch (action.type) {
case Cart_1.ActionType.UPDATE:
return type_validate_1.validate(action, createDataValidator(cartSchema));
case Cart_1.ActionType.SET_CUSTOMER:
return type_validate_1.validate(action, createDataValidator(customerSchema));
case Cart_1.ActionType.ADD_CUSTOMER_ADDRESS:
return type_validate_1.validate(action, createDataValidator(addressSchema));
case Cart_1.ActionType.UPDATE_CUSTOMER_ADDRESS:
return type_validate_1.validate(action, createDataValidatorWithIndex(addressSchema));
case Cart_1.ActionType.SET_DISCOUNT:
return type_validate_1.validate(action, createDataValidator(getDiscountSchema(action.payload.data)));
case Cart_1.ActionType.SET_PROPERTIES:
return type_validate_1.validate(action, createDataValidator(propertiesSchema));
case Cart_1.ActionType.REMOVE_PROPERTIES:
return type_validate_1.validate(action, createDataValidator(matchesStringArray));
case Cart_1.ActionType.ADD_LINE_ITEM:
return type_validate_1.validate(action, createDataValidator(lineItemSchema));
case Cart_1.ActionType.UPDATE_LINE_ITEM:
return type_validate_1.validate(action, createDataValidatorWithIndex(updateLineItemSchema));
case Cart_1.ActionType.REMOVE_LINE_ITEM:
return type_validate_1.validate(action, createDataValidatorWithIndex());
case Cart_1.ActionType.SET_LINE_ITEM_DISCOUNT:
return type_validate_1.validate(action, createDataValidatorWithIndex(discountAmount));
case Cart_1.ActionType.REMOVE_LINE_ITEM_DISCOUNT:
return type_validate_1.validate(action, createDataValidatorWithIndex());
case Cart_1.ActionType.SET_LINE_ITEM_PROPERTIES:
return type_validate_1.validate(action, createDataValidatorWithIndex(propertiesSchema));
case Cart_1.ActionType.REMOVE_LINE_ITEM_PROPERTIES:
return type_validate_1.validate(action, createDataValidatorWithIndex(matchesStringArray));
case Cart_1.ActionType.FETCH:
case Cart_1.ActionType.REMOVE_CUSTOMER:
case Cart_1.ActionType.REMOVE_DISCOUNT:
case Cart_1.ActionType.CLEAR:
default:
return type_validate_1.validate(action, utils_1.createActionValidator(Cart_1.ActionType, undefined, false, true));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/contextualSaveBar.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/contextualSaveBar.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.contextSaveBarSchema = void 0;
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var ContextualSaveBar_1 = __webpack_require__(/*! ../../actions/ContextualSaveBar */ "./node_modules/@shopify/app-bridge/actions/ContextualSaveBar/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return ContextualSaveBar_1.ActionType; } }));
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
exports.contextSaveBarSchema = type_validate_1.makeOptional(type_validate_1.matchesObject({
fullWidth: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
discardAction: type_validate_1.makeOptional(type_validate_1.matchesObject({
disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
discardConfirmationModal: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
})),
saveAction: type_validate_1.makeOptional(type_validate_1.matchesObject({
disabled: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
})),
leaveConfirmationDisable: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
}));
function validateProps(props) {
return type_validate_1.validate(props, exports.contextSaveBarSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
var validator = utils_1.createActionValidator(ContextualSaveBar_1.ActionType, exports.contextSaveBarSchema);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/feedbackModal.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/feedbackModal.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.feedbackModalSchema = void 0;
var FeedbackModal_1 = __webpack_require__(/*! ../../actions/FeedbackModal */ "./node_modules/@shopify/app-bridge/actions/FeedbackModal/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return FeedbackModal_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
exports.feedbackModalSchema = type_validate_1.matchesObject({
formId: type_validate_1.matchesPositiveInteger(),
});
function validateProps(props) {
return type_validate_1.validate(props, exports.feedbackModalSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
switch (action.type) {
case FeedbackModal_1.ActionType.OPEN:
return type_validate_1.validate(action, utils_1.createActionValidator(FeedbackModal_1.ActionType, exports.feedbackModalSchema, true));
case FeedbackModal_1.ActionType.CLOSE:
default:
return type_validate_1.validate(action, utils_1.createActionValidator(FeedbackModal_1.ActionType));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/fullscreen.js":
/*!*************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/fullscreen.js ***!
\*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var Fullscreen_1 = __webpack_require__(/*! ../../actions/Fullscreen */ "./node_modules/@shopify/app-bridge/actions/Fullscreen/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Fullscreen_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
/**
* Performs validation for an fullscreen action
* @param action the action being dispatched
* @returns undefined or an array of validation errors
*
* @beta
*/
function validateAction(action) {
var validator = utils_1.createActionValidator(Fullscreen_1.ActionType);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/index.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/index.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Link = exports.Menu = exports.TitleBar = exports.Toast = exports.ResourcePicker = exports.Print = exports.Navigation = exports.Modal = exports.Loading = exports.LeaveConfirmation = exports.Fullscreen = exports.FeedbackModal = exports.ContextualSaveBar = exports.Cart = exports.Scanner = exports.ButtonGroup = exports.Button = void 0;
var Button = __importStar(__webpack_require__(/*! ./button */ "./node_modules/@shopify/app-bridge/validate/actions/button.js"));
exports.Button = Button;
var Scanner = __importStar(__webpack_require__(/*! ./scanner */ "./node_modules/@shopify/app-bridge/validate/actions/scanner.js"));
exports.Scanner = Scanner;
var Cart = __importStar(__webpack_require__(/*! ./cart */ "./node_modules/@shopify/app-bridge/validate/actions/cart.js"));
exports.Cart = Cart;
var ContextualSaveBar = __importStar(__webpack_require__(/*! ./contextualSaveBar */ "./node_modules/@shopify/app-bridge/validate/actions/contextualSaveBar.js"));
exports.ContextualSaveBar = ContextualSaveBar;
var FeedbackModal = __importStar(__webpack_require__(/*! ./feedbackModal */ "./node_modules/@shopify/app-bridge/validate/actions/feedbackModal.js"));
exports.FeedbackModal = FeedbackModal;
var Fullscreen = __importStar(__webpack_require__(/*! ./fullscreen */ "./node_modules/@shopify/app-bridge/validate/actions/fullscreen.js"));
exports.Fullscreen = Fullscreen;
var LeaveConfirmation = __importStar(__webpack_require__(/*! ./leaveConfirmation */ "./node_modules/@shopify/app-bridge/validate/actions/leaveConfirmation.js"));
exports.LeaveConfirmation = LeaveConfirmation;
var Loading = __importStar(__webpack_require__(/*! ./loading */ "./node_modules/@shopify/app-bridge/validate/actions/loading.js"));
exports.Loading = Loading;
var Modal = __importStar(__webpack_require__(/*! ./modal */ "./node_modules/@shopify/app-bridge/validate/actions/modal.js"));
exports.Modal = Modal;
var Navigation = __importStar(__webpack_require__(/*! ./navigation */ "./node_modules/@shopify/app-bridge/validate/actions/navigation.js"));
exports.Navigation = Navigation;
var Print = __importStar(__webpack_require__(/*! ./print */ "./node_modules/@shopify/app-bridge/validate/actions/print.js"));
exports.Print = Print;
var ButtonGroup = __importStar(__webpack_require__(/*! ./buttonGroup */ "./node_modules/@shopify/app-bridge/validate/actions/buttonGroup.js"));
exports.ButtonGroup = ButtonGroup;
var ResourcePicker = __importStar(__webpack_require__(/*! ./resourcePicker */ "./node_modules/@shopify/app-bridge/validate/actions/resourcePicker.js"));
exports.ResourcePicker = ResourcePicker;
var Toast = __importStar(__webpack_require__(/*! ./toast */ "./node_modules/@shopify/app-bridge/validate/actions/toast.js"));
exports.Toast = Toast;
var TitleBar = __importStar(__webpack_require__(/*! ./titleBar */ "./node_modules/@shopify/app-bridge/validate/actions/titleBar.js"));
exports.TitleBar = TitleBar;
var Menu = __importStar(__webpack_require__(/*! ./menu */ "./node_modules/@shopify/app-bridge/validate/actions/menu.js"));
exports.Menu = Menu;
var Link = __importStar(__webpack_require__(/*! ./link */ "./node_modules/@shopify/app-bridge/validate/actions/link.js"));
exports.Link = Link;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/leaveConfirmation.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/leaveConfirmation.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var LeaveConfirmation_1 = __webpack_require__(/*! ../../actions/LeaveConfirmation */ "./node_modules/@shopify/app-bridge/actions/LeaveConfirmation/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return LeaveConfirmation_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function validateAction(action) {
var validator = utils_1.createActionValidator(LeaveConfirmation_1.ActionType);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/link.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/link.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.linkActionSchema = exports.linkPropsSchema = void 0;
var actions_1 = __webpack_require__(/*! ../../actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var AppLink_1 = __webpack_require__(/*! ../../actions/Link/AppLink */ "./node_modules/@shopify/app-bridge/actions/Link/AppLink/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return AppLink_1.ActionType; } }));
var allowedRedirectTypes;
(function (allowedRedirectTypes) {
allowedRedirectTypes["APP"] = "APP";
})(allowedRedirectTypes || (allowedRedirectTypes = {}));
exports.linkPropsSchema = type_validate_1.matchesObject({
label: type_validate_1.matchesString(),
destination: utils_1.relativeUrlSchema,
redirectType: type_validate_1.matchesEnum(allowedRedirectTypes),
});
exports.linkActionSchema = type_validate_1.matchesObject({
label: type_validate_1.matchesString(),
destination: utils_1.relativePathSchema,
redirectType: type_validate_1.matchesEnum(allowedRedirectTypes),
});
function validateProps(props) {
return type_validate_1.validate(props, exports.linkPropsSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
var actionType = actions_1.AppLink.ActionType;
var schema;
switch (action.type) {
case actions_1.AppLink.ActionType.UPDATE:
actionType = actions_1.AppLink.ActionType;
schema = exports.linkActionSchema;
}
return type_validate_1.validate(action, utils_1.createActionValidator(actionType, schema, true, true));
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/loading.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/loading.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var Loading_1 = __webpack_require__(/*! ../../actions/Loading */ "./node_modules/@shopify/app-bridge/actions/Loading/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Loading_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function validateAction(action) {
var validator = utils_1.createActionValidator(Loading_1.ActionType);
return type_validate_1.validate(action, validator);
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/menu.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/menu.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.validateAction = exports.validateProps = void 0;
var actions_1 = __webpack_require__(/*! ../../actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var link_1 = __webpack_require__(/*! ./link */ "./node_modules/@shopify/app-bridge/validate/actions/link.js");
var linkOptionsValidator = type_validate_1.matchesObject({ id: type_validate_1.matchesString(), options: link_1.linkPropsSchema });
function activeLinkError(value) {
return [
{
error: 'invalid_active_item',
value: value,
message: 'expected active item to exist in menu items',
},
];
}
function getOptionsSchema(options) {
var baseSchema = type_validate_1.matchesObject({
items: type_validate_1.makeOptional(type_validate_1.matchesArray(linkOptionsValidator)),
active: type_validate_1.makeOptional(linkOptionsValidator),
});
var items = options.items, active = options.active;
if (items && active) {
var activeItemSchema = type_validate_1.matchesObject({
active: type_validate_1.composeSchemas(linkOptionsValidator, function (value) {
return items.find(function (item) { return item.id === value.id; }) ? undefined : activeLinkError(value);
}),
});
return type_validate_1.composeSchemas(baseSchema, activeItemSchema);
}
return baseSchema;
}
function getPayloadSchema(payload) {
var baseSchema = type_validate_1.matchesObject({
items: type_validate_1.makeOptional(type_validate_1.matchesArray(link_1.linkActionSchema)),
active: type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var items = payload.items, active = payload.active;
if (items && active) {
var activeItemSchema = type_validate_1.matchesObject({
active: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {
return items.find(function (item) { return item.id === value; })
? undefined
: activeLinkError(value);
}),
});
return type_validate_1.composeSchemas(baseSchema, activeItemSchema);
}
return baseSchema;
}
function validateProps(props) {
var result = type_validate_1.validate(props, getOptionsSchema(props));
return result;
}
exports.validateProps = validateProps;
function validateAction(action) {
var actionType = actions_1.NavigationMenu.ActionType;
if (action.type === actions_1.ChannelMenu.ActionType.LINK_UPDATE ||
action.type === actions_1.ChannelMenu.ActionType.UPDATE) {
actionType = actions_1.ChannelMenu.ActionType;
}
return type_validate_1.validate(action, utils_1.createActionValidator(actionType, getPayloadSchema(action.payload), true, false));
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/modal.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/modal.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = void 0;
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var Modal_1 = __webpack_require__(/*! ../../actions/Modal */ "./node_modules/@shopify/app-bridge/actions/Modal/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Modal_1.ActionType; } }));
var Button_1 = __webpack_require__(/*! ../../actions/Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
var safe_redirect_1 = __webpack_require__(/*! ../safe-redirect */ "./node_modules/@shopify/app-bridge/validate/safe-redirect.js");
var button_1 = __webpack_require__(/*! ./button */ "./node_modules/@shopify/app-bridge/validate/actions/button.js");
function matchesSafeOrigin(value, localOrigin) {
var hostName;
try {
hostName = new URL(localOrigin).hostname;
}
catch (error) {
return [
{
error: 'invalid_app_origin',
value: localOrigin,
message: "Provided value for app origin: `" + localOrigin + "` is invalid",
},
];
}
var isSafeSrc = safe_redirect_1.isSafe(value, {
requireAbsolute: true,
requireSSL: true,
allowedDomains: [hostName],
});
if (!isSafeSrc) {
return [
{
error: 'not_matching_app_origin',
value: value,
message: "Provided URL origin does not match app origin `" + hostName + "`",
},
];
}
}
function matchesSize() {
return function (value) {
var values = [Modal_1.Size.Small, Modal_1.Size.Medium, Modal_1.Size.Large];
if (values.includes(value)) {
return;
}
var message = "expected:" + values.map(function (val) { return "`" + val + "`"; }).join(' or ');
if (value === Modal_1.Size.Full) {
message += ". Size `" + value + "` is deprecated as of version 1.6.5 and will fall back to size `medium`";
}
if (value === Modal_1.Size.Auto) {
message += ". Size `" + value + "` is deprecated as of version 1.12.x and will fall back to size `medium`. Use the `setUpModalAutoSizing` utility from `app-bridge-utils` instead";
}
return [
{
error: 'invalid_enum_value',
value: value,
message: message,
},
];
};
}
function getModalSchema(props, localOrigin) {
if (props === void 0) { props = {}; }
var baseModalSchema = type_validate_1.matchesObject({
title: type_validate_1.makeOptional(type_validate_1.matchesString()),
footer: type_validate_1.makeOptional(type_validate_1.matchesObject({
buttons: type_validate_1.matchesObject({
primary: type_validate_1.makeOptional(button_1.buttonSchemaWithId),
secondary: type_validate_1.makeOptional(type_validate_1.matchesArray(button_1.buttonSchemaWithId)),
}),
})),
size: type_validate_1.makeOptional(matchesSize()),
});
if (Modal_1.isIframeModal(props)) {
if (props.url) {
var urlSchema = type_validate_1.matchesObject({
url: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {
return value.startsWith('https://')
? undefined
: [
{
error: 'invalid_secure_url',
value: value,
message: 'expected string to start with `https://`',
},
];
}, function (value) { return (localOrigin ? matchesSafeOrigin(value, localOrigin) : undefined); }),
});
return type_validate_1.composeSchemas(baseModalSchema, urlSchema);
}
return type_validate_1.composeSchemas(baseModalSchema, utils_1.relativePathSchema);
}
return type_validate_1.composeSchemas(baseModalSchema, type_validate_1.matchesObject({ message: type_validate_1.matchesString() }));
}
function validateProps(props, localOrigin) {
return type_validate_1.validate(props, getModalSchema(props, localOrigin));
}
exports.validateProps = validateProps;
function validateAction(action, localOrigin) {
var schema = getModalSchema(action.payload, localOrigin);
switch (action.type) {
case Modal_1.ActionType.OPEN:
case Modal_1.ActionType.UPDATE:
return type_validate_1.validate(action, utils_1.createActionValidator(Modal_1.ActionType, schema, true, action.type === Modal_1.ActionType.UPDATE));
case Modal_1.ActionType.FOOTER_BUTTON_CLICK:
return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.CLICK }));
case Modal_1.ActionType.FOOTER_BUTTON_UPDATE:
return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.UPDATE }));
case Modal_1.ActionType.CLOSE:
default:
return type_validate_1.validate(action, utils_1.createActionValidator(Modal_1.ActionType));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/navigation.js":
/*!*************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/navigation.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.validateAction = exports.getSectionSchema = exports.matchesAbsolutePath = void 0;
var actions_1 = __webpack_require__(/*! ../../actions */ "./node_modules/@shopify/app-bridge/actions/index.js");
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function matchesAbsolutePath(value) {
return value.match('^https?://')
? undefined
: [
{
value: value,
error: 'invalid_absolute_url',
message: 'expected string to start with `https://` or `http://`',
},
];
}
exports.matchesAbsolutePath = matchesAbsolutePath;
function getSectionSchema(payload) {
var isProductVariant = payload &&
payload.section &&
payload.section.resource &&
payload.section.name === actions_1.Redirect.ResourceType.Product;
var resourceSchema = {
create: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
id: type_validate_1.makeOptional(type_validate_1.matchesString()),
};
var productVariantSchema = __assign(__assign({}, resourceSchema), { variant: type_validate_1.makeOptional(type_validate_1.matchesObject(resourceSchema)) });
return type_validate_1.matchesObject({
section: type_validate_1.matchesObject({
name: type_validate_1.matchesEnum(actions_1.Redirect.ResourceType),
resource: type_validate_1.makeOptional(type_validate_1.matchesObject(isProductVariant ? productVariantSchema : resourceSchema)),
}),
});
}
exports.getSectionSchema = getSectionSchema;
function validateAction(action) {
var newContextSchema = type_validate_1.matchesObject({ newContext: type_validate_1.makeOptional(type_validate_1.matchesBoolean()) });
var actionType = actions_1.Redirect.ActionType;
var schema;
switch (action.type) {
case actions_1.History.ActionType.PUSH:
case actions_1.History.ActionType.REPLACE:
actionType = actions_1.History.ActionType;
schema = utils_1.relativePathSchema;
break;
case actions_1.Redirect.ActionType.APP:
schema = utils_1.relativePathSchema;
break;
case actions_1.Redirect.ActionType.REMOTE:
schema = type_validate_1.composeSchemas(type_validate_1.matchesObject({
url: type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) { return matchesAbsolutePath(value); }),
}), newContextSchema);
break;
case actions_1.Redirect.ActionType.ADMIN_PATH:
schema = type_validate_1.composeSchemas(utils_1.relativePathSchema, newContextSchema);
break;
case actions_1.Redirect.ActionType.ADMIN_SECTION:
schema = type_validate_1.composeSchemas(getSectionSchema(action.payload), newContextSchema);
break;
}
return type_validate_1.validate(action, utils_1.createActionValidator(actionType, schema));
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/print.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/print.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var Print_1 = __webpack_require__(/*! ../../actions/Print */ "./node_modules/@shopify/app-bridge/actions/Print/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Print_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function validateAction(action) {
return type_validate_1.validate(action, utils_1.createActionValidator(Print_1.ActionType));
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/resourcePicker.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/resourcePicker.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = void 0;
var ResourcePicker_1 = __webpack_require__(/*! ../../actions/ResourcePicker */ "./node_modules/@shopify/app-bridge/actions/ResourcePicker/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return ResourcePicker_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var resourceSelectionSchema = type_validate_1.matchesArray(type_validate_1.matchesObject({
id: type_validate_1.matchesString(),
}));
var resourcePickerOptions = type_validate_1.matchesObject({
initialQuery: type_validate_1.makeOptional(type_validate_1.matchesString()),
initialSelectionIds: type_validate_1.makeOptional(resourceSelectionSchema),
selectMultiple: type_validate_1.makeOptional(type_validate_1.oneOf(type_validate_1.matchesBoolean(), type_validate_1.matchesPositiveInteger())),
showHidden: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
showVariants: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
showDraft: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
showArchived: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
showDraftBadge: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
showArchivedBadge: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
actionVerb: type_validate_1.makeOptional(type_validate_1.matchesEnum(ResourcePicker_1.ActionVerb)),
});
var resourcePickerActionSchema = type_validate_1.matchesObject({
resourceType: type_validate_1.matchesEnum(ResourcePicker_1.ResourceType),
options: type_validate_1.makeOptional(resourcePickerOptions),
});
var selectionSchema = type_validate_1.matchesObject({
selection: resourceSelectionSchema,
});
function validateProps(props) {
return type_validate_1.validate(props, resourcePickerOptions);
}
exports.validateProps = validateProps;
function validateAction(action) {
switch (action.type) {
case ResourcePicker_1.ActionType.UPDATE:
case ResourcePicker_1.ActionType.OPEN:
return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType, resourcePickerActionSchema, false, true));
case ResourcePicker_1.ActionType.SELECT:
return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType, selectionSchema, true, true));
case ResourcePicker_1.ActionType.CANCEL:
case ResourcePicker_1.ActionType.CLOSE:
default:
return type_validate_1.validate(action, utils_1.createActionValidator(ResourcePicker_1.ActionType));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/scanner.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/scanner.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = void 0;
var Scanner_1 = __webpack_require__(/*! ../../actions/Scanner */ "./node_modules/@shopify/app-bridge/actions/Scanner/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Scanner_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function validateAction(action) {
return type_validate_1.validate(action, utils_1.createActionValidator(Scanner_1.ActionType));
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/titleBar.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/titleBar.js ***!
\***********************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.titleBarSchema = void 0;
var TitleBar_1 = __webpack_require__(/*! ../../actions/TitleBar */ "./node_modules/@shopify/app-bridge/actions/TitleBar/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return TitleBar_1.ActionType; } }));
var Button_1 = __webpack_require__(/*! ../../actions/Button */ "./node_modules/@shopify/app-bridge/actions/Button/index.js");
var ButtonGroup_1 = __webpack_require__(/*! ../../actions/ButtonGroup */ "./node_modules/@shopify/app-bridge/actions/ButtonGroup/index.js");
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
var button_1 = __webpack_require__(/*! ./button */ "./node_modules/@shopify/app-bridge/validate/actions/button.js");
var buttonGroup_1 = __webpack_require__(/*! ./buttonGroup */ "./node_modules/@shopify/app-bridge/validate/actions/buttonGroup.js");
var buttonSchemaWithId = type_validate_1.composeSchemas(button_1.buttonSchema, type_validate_1.matchesObject({
id: type_validate_1.matchesString(),
}));
exports.titleBarSchema = type_validate_1.matchesObject({
breadcrumbs: type_validate_1.makeOptional(button_1.buttonSchema),
title: type_validate_1.makeOptional(type_validate_1.matchesString()),
buttons: type_validate_1.makeOptional(type_validate_1.matchesObject({
primary: type_validate_1.makeOptional(buttonSchemaWithId),
secondary: type_validate_1.makeOptional(type_validate_1.matchesArray(type_validate_1.composeSchemas(buttonSchemaWithId, type_validate_1.matchesObject({
buttons: type_validate_1.makeOptional(type_validate_1.matchesArray(buttonSchemaWithId)),
})))),
})),
});
function validateProps(props) {
return type_validate_1.validate(props, exports.titleBarSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
switch (action.type) {
default:
case TitleBar_1.ActionType.UPDATE:
return type_validate_1.validate(action, utils_1.createActionValidator(TitleBar_1.ActionType, exports.titleBarSchema, true, false));
case TitleBar_1.ActionType.BUTTON_CLICK:
case TitleBar_1.ActionType.BREADCRUMBS_CLICK:
return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.CLICK }));
case TitleBar_1.ActionType.BUTTON_UPDATE:
case TitleBar_1.ActionType.BREADCRUMBS_UPDATE:
return button_1.validateAction(__assign(__assign({}, action), { type: Button_1.ActionType.UPDATE }));
case TitleBar_1.ActionType.BUTTON_GROUP_UPDATE:
return buttonGroup_1.validateAction(__assign(__assign({}, action), { type: ButtonGroup_1.ActionType.UPDATE }));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/actions/toast.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/actions/toast.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ActionType = exports.validateAction = exports.validateProps = exports.toastSchema = void 0;
var Toast_1 = __webpack_require__(/*! ../../actions/Toast */ "./node_modules/@shopify/app-bridge/actions/Toast/index.js");
Object.defineProperty(exports, "ActionType", ({ enumerable: true, get: function () { return Toast_1.ActionType; } }));
var type_validate_1 = __webpack_require__(/*! ../type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
exports.toastSchema = type_validate_1.matchesObject({
message: type_validate_1.matchesString(),
duration: type_validate_1.matchesPositiveInteger(),
isError: type_validate_1.makeOptional(type_validate_1.matchesBoolean()),
});
function validateProps(props) {
return type_validate_1.validate(props, exports.toastSchema);
}
exports.validateProps = validateProps;
function validateAction(action) {
switch (action.type) {
case Toast_1.ActionType.SHOW:
return type_validate_1.validate(action, utils_1.createActionValidator(Toast_1.ActionType, exports.toastSchema, true));
default:
return type_validate_1.validate(action, utils_1.createActionValidator(Toast_1.ActionType));
}
}
exports.validateAction = validateAction;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/index.js":
/*!************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/index.js ***!
\************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
var validator_1 = __webpack_require__(/*! ./validator */ "./node_modules/@shopify/app-bridge/validate/validator.js");
exports.default = validator_1.validatorMiddleware;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/safe-redirect.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/safe-redirect.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.makeSafe = exports.isSafe = void 0;
var FILE_URI_MATCH = /\/\/\//;
var INVALID_RELATIVE_URL = /[/\\][/\\]/;
var VALID_PROTOCOLS = ['https:', 'http:'];
var DUMMY_HOSTNAME = 'http://test.com';
function isSafe(redirectUrl, _a) {
var _b = _a === void 0 ? {} : _a, _c = _b.allowedDomains, allowedDomains = _c === void 0 ? [] : _c, _d = _b.subdomains, subdomains = _d === void 0 ? [] : _d, matchPath = _b.matchPath, requireAbsolute = _b.requireAbsolute, requireSSL = _b.requireSSL;
if (FILE_URI_MATCH.test(redirectUrl)) {
return false;
}
if (redirectUrl.startsWith('/')) {
if (allowedDomains.length > 0 || subdomains.length > 0 || requireAbsolute || requireSSL) {
return false;
}
if (matchPath) {
// Creating a new URL expands the pathname in case of things like `/a/../b`
return pathMatches(new URL(redirectUrl, DUMMY_HOSTNAME), redirectUrl, matchPath);
}
return !INVALID_RELATIVE_URL.test(redirectUrl);
}
var url;
try {
url = new URL(redirectUrl);
}
catch (error) {
return false;
}
if (!VALID_PROTOCOLS.includes(url.protocol)) {
return false;
}
if (requireSSL && url.protocol !== 'https:') {
return false;
}
if (url.username || url.password) {
return false;
}
if (matchPath && !pathMatches(url, redirectUrl, matchPath)) {
return false;
}
if (!hostIsValid(url, allowedDomains, subdomains)) {
return false;
}
return true;
}
exports.isSafe = isSafe;
function hostIsValid(url, allowedDomains, subdomains) {
if (!subdomains.every(function (subdomain) { return subdomain.startsWith('.'); })) {
throw new TypeError('Subdomains must begin with .');
}
var hostname = url.hostname;
return ((allowedDomains.length === 0 && subdomains.length === 0) ||
allowedDomains.includes(hostname) ||
subdomains.some(function (subdomain) { return hostname.endsWith(subdomain); }));
}
function pathMatches(url, originalUrl, matcher) {
var pathname = url.pathname;
// Gets just the unresolve pathname, i.e., `http://foo.com/a/../b => /a/../b
var originalPathname = originalUrl.replace(url.origin, '').split('?')[0];
return typeof matcher === 'string'
? pathname === matcher && originalPathname === matcher
: matcher.test(pathname) && matcher.test(originalPathname);
}
function makeSafe(url, fallback, options) {
return isSafe(url, options) ? encodeURI(url) : fallback;
}
exports.makeSafe = makeSafe;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/type-validate.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/type-validate.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.validate = exports.composeSchemas = exports.makeOptional = exports.oneOf = exports.matchesObject = exports.matchesArray = exports.matchesEnum = exports.matchesPositiveNumber = exports.matchesPositiveInteger = exports.matchesString = exports.matchesBoolean = void 0;
var TYPE_ERROR = 'type_error_expected';
function constructErrors(value, error, options) {
if (options === void 0) { options = { message: undefined }; }
return [
{
value: value,
error: error,
message: typeof options.message === 'function' ? options.message(error, value) : options.message,
},
];
}
function getErrors(obj, validator, key) {
var value = key ? obj[key] : obj;
var path = key ? "['" + key + "']" : undefined;
var error = validator(value);
if (!error) {
return;
}
return error.map(function (o) { return (__assign(__assign({}, o), { path: "" + (path || '') + (o.path || '') || undefined })); });
}
function matchesBoolean(options) {
return function (value) {
return typeof value === 'boolean'
? undefined
: constructErrors(value, TYPE_ERROR + "_boolean", options);
};
}
exports.matchesBoolean = matchesBoolean;
function matchesString(options) {
return function (value) {
return typeof value === 'string' ? undefined : constructErrors(value, TYPE_ERROR + "_string", options);
};
}
exports.matchesString = matchesString;
function matchesPositiveInteger(options) {
return function (value) {
return !Number.isInteger(value) || value < 0
? constructErrors(value, TYPE_ERROR + "_integer", options)
: undefined;
};
}
exports.matchesPositiveInteger = matchesPositiveInteger;
function matchesPositiveNumber(options) {
return function (value) {
return Number.isNaN(value) || !Number.isFinite(value) || value < 0
? constructErrors(value, TYPE_ERROR + "_number", options)
: undefined;
};
}
exports.matchesPositiveNumber = matchesPositiveNumber;
/**
* Returns a validator that matches values in the given enum
* @param type - enum to use for match values
* @public
*/
function matchesEnum(types, options) {
return function (value) {
var values = Object.keys(types).map(function (key) { return types[key]; });
var message = (options && options.message) || "expected:" + values.map(function (val) { return "`" + val + "`"; }).join(' or ');
return values.includes(value)
? undefined
: constructErrors(value, 'invalid_enum_value', __assign(__assign({}, options), { message: message }));
};
}
exports.matchesEnum = matchesEnum;
function matchesArray(validator, options) {
return function (value) {
if (!Array.isArray(value)) {
return constructErrors(value, TYPE_ERROR + "_array", options);
}
if (!validator) {
return;
}
var errors = [];
value.forEach(function (val, key) {
var objectError = validator(val);
if (objectError) {
errors = errors.concat(objectError.map(function (error) { return (__assign(__assign({}, error), { path: "['" + key + "']" + (error.path || '') })); }));
}
});
return errors.length ? errors : undefined;
};
}
exports.matchesArray = matchesArray;
function matchesObject(schema, options) {
return function (val) {
if (typeof val !== 'object' || !val || Array.isArray(val)) {
return constructErrors(val, TYPE_ERROR + "_object", options);
}
var flattened = Object.keys(schema).reduce(function (acc, key) {
return __spreadArrays(acc, (getErrors(val, schema[key], key) || []));
}, []);
return flattened.length ? flattened : undefined;
};
}
exports.matchesObject = matchesObject;
function oneOf() {
var validators = [];
for (var _i = 0; _i < arguments.length; _i++) {
validators[_i] = arguments[_i];
}
return function (val) {
var errors = [];
for (var _i = 0, validators_1 = validators; _i < validators_1.length; _i++) {
var validator = validators_1[_i];
var result = validator(val);
if (result == null)
return result;
errors.push.apply(errors, result);
}
return errors;
};
}
exports.oneOf = oneOf;
function makeOptional(validator) {
return function (value) {
if (value === undefined || value === null) {
return undefined;
}
return validator(value);
};
}
exports.makeOptional = makeOptional;
function composeSchemas() {
var validators = [];
for (var _i = 0; _i < arguments.length; _i++) {
validators[_i] = arguments[_i];
}
return function (val) {
var error;
var i = 0;
var len = validators.length;
while (!error && i < len) {
error = validators[i](val);
if (error) {
return error;
}
i++;
}
};
}
exports.composeSchemas = composeSchemas;
function validate(obj, validator) {
return getErrors(obj, validator);
}
exports.validate = validate;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/utils.js":
/*!************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/utils.js ***!
\************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.mixedAppClientCheck = exports.relativePathSchema = exports.relativeUrlSchema = exports.isValidRelativePath = exports.actionMessage = exports.createActionValidator = void 0;
var type_validate_1 = __webpack_require__(/*! ./type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
function createActionValidator(type, payloadSchema, payloadRequired, idRequired) {
if (payloadSchema === void 0) { payloadSchema = undefined; }
if (payloadRequired === void 0) { payloadRequired = false; }
if (idRequired === void 0) { idRequired = false; }
var idSchema = type_validate_1.matchesObject({
id: idRequired ? type_validate_1.matchesString() : type_validate_1.makeOptional(type_validate_1.matchesString()),
});
var schema = payloadSchema ? type_validate_1.composeSchemas(idSchema, payloadSchema) : idSchema;
return type_validate_1.matchesObject({
type: type_validate_1.matchesEnum(type, {
message: function (_, val) { return "The action type `" + val + "` is invalid or unsupported"; },
}),
payload: payloadRequired ? schema : type_validate_1.makeOptional(schema),
});
}
exports.createActionValidator = createActionValidator;
function actionMessage(errors) {
return errors
.map(function (err) {
var path = err.path, error = err.error, message = err.message, value = err.value;
var valueStr = typeof value === 'object' ? JSON.stringify(value) : value;
return "`" + error + "` thrown for" + (path ? " path: " + path + " and" : '') + " value: `" + valueStr + "`" + (message ? " with message: " + message : '');
})
.join(' | ');
}
exports.actionMessage = actionMessage;
function isValidRelativePath(path) {
return typeof path === 'string' && (path === '' || path.startsWith('/'));
}
exports.isValidRelativePath = isValidRelativePath;
exports.relativeUrlSchema = type_validate_1.composeSchemas(type_validate_1.matchesString(), function (value) {
return isValidRelativePath(value)
? undefined
: [{ error: 'invalid_relative_path', value: value, message: 'expected string to start with `/`' }];
});
exports.relativePathSchema = type_validate_1.matchesObject({
path: exports.relativeUrlSchema,
});
function mixedAppClientCheck(window) {
window.addEventListener('DOMContentLoaded', function () {
if (!window.hasOwnProperty('ShopifyApp')) {
return;
}
console.error("%cException Detected \uD83D\uDEAB\n\n%cAn instance of the EASDK client was detected while initializing Shopify App Bridge. Using Shopify App Bridge and the EASDK simultaneously is not supported.\n\nIf you're migrating an existing app that was built with the shopify_app gem, then the EASDK client might have been included in the home page view template. In this case, remove it from your app before initializing Shopify App Bridge again.", 'font-size: large;', 'font-size: normal;');
}, { once: true });
}
exports.mixedAppClientCheck = mixedAppClientCheck;
/***/ }),
/***/ "./node_modules/@shopify/app-bridge/validate/validator.js":
/*!****************************************************************!*\
!*** ./node_modules/@shopify/app-bridge/validate/validator.js ***!
\****************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.validatorMiddleware = exports.connectValidatorToDispatchHook = exports.connectValidatorToUpdateHook = void 0;
var client_1 = __webpack_require__(/*! ../client */ "./node_modules/@shopify/app-bridge/client/index.js");
var types_1 = __webpack_require__(/*! ../actions/types */ "./node_modules/@shopify/app-bridge/actions/types.js");
var Error_1 = __webpack_require__(/*! ../actions/Error */ "./node_modules/@shopify/app-bridge/actions/Error/index.js");
var helper_1 = __webpack_require__(/*! ../actions/helper */ "./node_modules/@shopify/app-bridge/actions/helper.js");
var actions_1 = __webpack_require__(/*! ./actions */ "./node_modules/@shopify/app-bridge/validate/actions/index.js");
var type_validate_1 = __webpack_require__(/*! ./type-validate */ "./node_modules/@shopify/app-bridge/validate/type-validate.js");
var utils_1 = __webpack_require__(/*! ./utils */ "./node_modules/@shopify/app-bridge/validate/utils.js");
function updateValidator(localOrigin, group, options) {
switch (group) {
case types_1.Group.Button:
return actions_1.Button.validateProps(options);
case types_1.Group.ButtonGroup:
return actions_1.ButtonGroup.validateProps(options);
case types_1.Group.Modal:
return actions_1.Modal.validateProps(options, localOrigin);
case types_1.Group.Menu:
return actions_1.Menu.validateProps(options);
case types_1.Group.Link:
return actions_1.Link.validateProps(options);
case types_1.Group.TitleBar:
return actions_1.TitleBar.validateProps(options);
case types_1.Group.ResourcePicker:
return actions_1.ResourcePicker.validateProps(options);
case types_1.Group.Toast:
return actions_1.Toast.validateProps(options);
case types_1.Group.ContextualSaveBar:
return actions_1.ContextualSaveBar.validateProps(options);
}
}
function dispatchPayloadValidator(action, localOrigin) {
switch (action.group) {
case types_1.Group.Button:
return actions_1.Button.validateAction(action);
case types_1.Group.ButtonGroup:
return actions_1.ButtonGroup.validateAction(action);
case types_1.Group.Modal:
return actions_1.Modal.validateAction(action, localOrigin);
case types_1.Group.Menu:
return actions_1.Menu.validateAction(action);
case types_1.Group.TitleBar:
return actions_1.TitleBar.validateAction(action);
case types_1.Group.ResourcePicker:
return actions_1.ResourcePicker.validateAction(action);
case types_1.Group.Loading:
return actions_1.Loading.validateAction(action);
case types_1.Group.Toast:
return actions_1.Toast.validateAction(action);
case types_1.Group.Cart:
return actions_1.Cart.validateAction(action);
case types_1.Group.Navigation:
return actions_1.Navigation.validateAction(action);
case types_1.Group.Print:
return actions_1.Print.validateAction(action);
case types_1.Group.Scanner:
return actions_1.Scanner.validateAction(action);
case types_1.Group.Fullscreen:
return actions_1.Fullscreen.validateAction(action);
case types_1.Group.ContextualSaveBar:
return actions_1.ContextualSaveBar.validateAction(action);
case types_1.Group.Link:
return actions_1.Link.validateAction(action);
}
}
function dispatchValidator(action, origin) {
var errors = type_validate_1.validate(action, type_validate_1.matchesObject({
group: type_validate_1.matchesEnum(types_1.Group, {
message: function (_, value) { return "Unknown or unsupported action group `" + value + "`"; },
}),
version: type_validate_1.matchesString(),
}));
if (errors) {
return Error_1.invalidAction(action, utils_1.actionMessage(errors));
}
var payloadErrors = dispatchPayloadValidator(action, origin);
return payloadErrors ? Error_1.invalidPayload(action, utils_1.actionMessage(payloadErrors)) : action;
}
exports.connectValidatorToUpdateHook = function (next) {
return function (options) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
// The group should be staticly set to the default initial group as certain components
// (ex. Button and ButtonGroup) can be dynamically grouped under a new group (ex. TitleBar)
// We accept partial options so the validator should be called on merged new and old options
var mergedOptions = helper_1.getMergedProps(this.options, options);
var errors = updateValidator(this.app.localOrigin, this.defaultGroup, mergedOptions);
if (errors) {
throw Error_1.fromAction(utils_1.actionMessage(errors), Error_1.ActionType.INVALID_OPTIONS);
}
return next.apply(void 0, __spreadArrays([options], args));
};
};
exports.connectValidatorToDispatchHook = function (next) {
return function (action) {
var finalAction = dispatchValidator(action, this.localOrigin);
return next(finalAction);
};
};
exports.validatorMiddleware = function (hooks) {
hooks.set(client_1.LifecycleHook.UpdateAction, exports.connectValidatorToUpdateHook);
hooks.set(client_1.LifecycleHook.DispatchAction, exports.connectValidatorToDispatchHook);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/AlertMinor.svg.mjs":
/*!***************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/AlertMinor.svg.mjs ***!
\***************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgAlertMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M10 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zM9 9a1 1 0 0 0 2 0V7a1 1 0 1 0-2 0v2zm0 4a1 1 0 1 0 2 0 1 1 0 0 0-2 0z"
});
var SvgAlertMinor = function SvgAlertMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/ArrowLeftMinor.svg.mjs":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/ArrowLeftMinor.svg.mjs ***!
\*******************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgArrowLeftMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M17 9H5.414l3.293-3.293a.999.999 0 1 0-1.414-1.414l-5 5a.999.999 0 0 0 0 1.414l5 5a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414L5.414 11H17a1 1 0 1 0 0-2z"
});
var SvgArrowLeftMinor = function SvgArrowLeftMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CancelSmallMinor.svg.mjs":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CancelSmallMinor.svg.mjs ***!
\*********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCancelSmallMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M11.414 10l4.293-4.293a.999.999 0 1 0-1.414-1.414L10 8.586 5.707 4.293a.999.999 0 1 0-1.414 1.414L8.586 10l-4.293 4.293a.999.999 0 1 0 1.414 1.414L10 11.414l4.293 4.293a.997.997 0 0 0 1.414 0 .999.999 0 0 0 0-1.414L11.414 10z"
});
var SvgCancelSmallMinor = function SvgCancelSmallMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CaretDownMinor.svg.mjs":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CaretDownMinor.svg.mjs ***!
\*******************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCaretDownMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M5 8l5 5 5-5H5z"
});
var SvgCaretDownMinor = function SvgCaretDownMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CaretUpMinor.svg.mjs":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CaretUpMinor.svg.mjs ***!
\*****************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCaretUpMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M15 12l-5-5-5 5h10z"
});
var SvgCaretUpMinor = function SvgCaretUpMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/ChevronLeftMinor.svg.mjs":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/ChevronLeftMinor.svg.mjs ***!
\*********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgChevronLeftMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M12 16a.997.997 0 0 1-.707-.293l-5-5a.999.999 0 0 1 0-1.414l5-5a.999.999 0 1 1 1.414 1.414L8.414 10l4.293 4.293A.999.999 0 0 1 12 16z"
});
var SvgChevronLeftMinor = function SvgChevronLeftMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/ChevronRightMinor.svg.mjs":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/ChevronRightMinor.svg.mjs ***!
\**********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgChevronRightMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M8 16a.999.999 0 0 1-.707-1.707L11.586 10 7.293 5.707a.999.999 0 1 1 1.414-1.414l5 5a.999.999 0 0 1 0 1.414l-5 5A.997.997 0 0 1 8 16z"
});
var SvgChevronRightMinor = function SvgChevronRightMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CircleAlertMajor.svg.mjs":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CircleAlertMajor.svg.mjs ***!
\*********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCircleAlertMajor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
fillRule: "evenodd",
d: "M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0zM9 6a1 1 0 1 1 2 0v4a1 1 0 1 1-2 0V6zm1 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2z"
});
var SvgCircleAlertMajor = function SvgCircleAlertMajor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CircleCancelMinor.svg.mjs":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CircleCancelMinor.svg.mjs ***!
\**********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCircleCancelMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
fillRule: "evenodd",
d: "M10 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16zM7.707 6.293a1 1 0 0 0-1.414 1.414L8.586 10l-2.293 2.293a1 1 0 1 0 1.414 1.414L10 11.414l2.293 2.293a1 1 0 1 0 1.414-1.414L11.414 10l2.293-2.293a1 1 0 0 0-1.414-1.414L10 8.586 7.707 6.293z"
});
var SvgCircleCancelMinor = function SvgCircleCancelMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CircleInformationMajor.svg.mjs":
/*!***************************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CircleInformationMajor.svg.mjs ***!
\***************************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCircleInformationMajor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
fillRule: "evenodd",
d: "M10 20c5.514 0 10-4.486 10-10S15.514 0 10 0 0 4.486 0 10s4.486 10 10 10zm1-6a1 1 0 1 1-2 0v-4a1 1 0 1 1 2 0v4zm-1-9a1 1 0 1 0 0 2 1 1 0 0 0 0-2z"
});
var SvgCircleInformationMajor = function SvgCircleInformationMajor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/CircleTickMajor.svg.mjs":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/CircleTickMajor.svg.mjs ***!
\********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgCircleTickMajor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
fillRule: "evenodd",
d: "M0 10a10 10 0 1 0 20 0 10 10 0 0 0-20 0zm15.2-1.8a1 1 0 0 0-1.4-1.4L9 11.6 6.7 9.3a1 1 0 0 0-1.4 1.4l3 3c.4.4 1 .4 1.4 0l5.5-5.5z"
});
var SvgCircleTickMajor = function SvgCircleTickMajor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/DiamondAlertMajor.svg.mjs":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/DiamondAlertMajor.svg.mjs ***!
\**********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgDiamondAlertMajor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M11.768.768a2.5 2.5 0 0 0-3.536 0L.768 8.232a2.5 2.5 0 0 0 0 3.536l7.464 7.464a2.5 2.5 0 0 0 3.536 0l7.464-7.464a2.5 2.5 0 0 0 0-3.536L11.768.768zM9 6a1 1 0 1 1 2 0v4a1 1 0 1 1-2 0V6zm2 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0z"
});
var SvgDiamondAlertMajor = function SvgDiamondAlertMajor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/HorizontalDotsMinor.svg.mjs":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/HorizontalDotsMinor.svg.mjs ***!
\************************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgHorizontalDotsMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M6 10a2 2 0 1 1-4.001-.001A2 2 0 0 1 6 10zm6 0a2 2 0 1 1-4.001-.001A2 2 0 0 1 12 10zm6 0a2 2 0 1 1-4.001-.001A2 2 0 0 1 18 10z"
});
var SvgHorizontalDotsMinor = function SvgHorizontalDotsMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/MinusMinor.svg.mjs":
/*!***************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/MinusMinor.svg.mjs ***!
\***************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgMinusMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M15 9H5a1 1 0 1 0 0 2h10a1 1 0 1 0 0-2z"
});
var SvgMinusMinor = function SvgMinusMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/SelectMinor.svg.mjs":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/SelectMinor.svg.mjs ***!
\****************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgSelectMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M10 16l-4-4h8l-4 4zm0-12l4 4H6l4-4z"
});
var SvgSelectMinor = function SvgSelectMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-icons/dist/icons/TickSmallMinor.svg.mjs":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris-icons/dist/icons/TickSmallMinor.svg.mjs ***!
\*******************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "S": () => (/* binding */ SvgTickSmallMinor)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _ref =
/*#__PURE__*/
react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M8.315 13.859l-3.182-3.417a.506.506 0 0 1 0-.684l.643-.683a.437.437 0 0 1 .642 0l2.22 2.393 4.942-5.327a.436.436 0 0 1 .643 0l.643.684a.504.504 0 0 1 0 .683l-5.91 6.35a.437.437 0 0 1-.642 0"
});
var SvgTickSmallMinor = function SvgTickSmallMinor(props) {
return react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
viewBox: "0 0 20 20"
}, props), _ref);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist-modern/color-factory.js":
/*!***************************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist-modern/color-factory.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.colorFactory = void 0;
const tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/@shopify/polaris-tokens/node_modules/tslib/tslib.es6.js");
const hsluv_1 = __webpack_require__(/*! hsluv */ "./node_modules/hsluv/hsluv.js");
const base_1 = __webpack_require__(/*! ./configs/base */ "./node_modules/@shopify/polaris-tokens/dist-modern/configs/base.js");
function colorFactory(theme, scheme, config = base_1.config) {
return Object.assign({}, ...Object.entries(theme).map(([role, hex]) => {
if (typeof hex !== 'string') {
return null;
}
const base = hsluv_1.hexToHsluv(hex);
const variants = config[role] || [];
return Object.assign({}, variants.reduce((accumulator, _a) => {
var { name } = _a, settings = tslib_1.__rest(_a, ["name"]);
const { hue = base[0], saturation = base[1], lightness = base[2], alpha = 1, } = settings[scheme];
const resolve = (value, baseToResolve) => {
return typeof value === 'number' ? value : value(baseToResolve);
};
const [red, green, blue] = hsluv_1.hsluvToRgb([
resolve(hue, base[0]),
resolve(saturation, base[1]),
resolve(lightness, base[2]),
]).map((channel) => Math.round(channel * 255));
return Object.assign(Object.assign({}, accumulator), { [name]: `rgba(${red}, ${green}, ${blue}, ${alpha})` });
}, {}));
}));
}
exports.colorFactory = colorFactory;
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist-modern/configs/base.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist-modern/configs/base.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.config = void 0;
const utils_1 = __webpack_require__(/*! ../utils */ "./node_modules/@shopify/polaris-tokens/dist-modern/utils.js");
exports.config = {
surface: [
{
name: 'background',
description: 'For use as a background color, in components such as Page and Frame backgrounds.',
light: { lightness: 97 },
dark: { lightness: 3.3 },
meta: {
figmaName: 'Background/Default',
},
},
{
name: 'backgroundHovered',
description: 'For use when an action or navigation is used on a background.',
light: { lightness: 95.5 },
dark: { lightness: 3.3 },
meta: {
figmaName: 'Background/Hovered',
},
},
{
name: 'backgroundPressed',
description: 'For use when an action or navigation is used on a background.',
light: { lightness: 94 },
dark: { lightness: 3.3 },
meta: {
figmaName: 'Background/Pressed',
},
},
{
name: 'backgroundSelected',
description: 'For use in the selected item in navigation',
light: { lightness: 94 },
dark: { lightness: 3.3 },
meta: {
figmaName: 'Background/Selected',
},
},
{
name: 'surface',
description: 'For use as a background color, in components such as Card, Modal, and Popover.',
light: { lightness: 100 },
dark: { lightness: 12.7 },
meta: {
figmaName: 'Surface/Default',
},
},
{
name: 'surfaceNeutral',
description: 'For use as a background color in neutral badges.',
light: { lightness: 91 },
dark: { lightness: 21 },
meta: {
figmaName: 'Surface Neutral/Default',
},
},
{
name: 'surfaceNeutralHovered',
description: 'For use as a hovered background color in neutral badges.',
light: { lightness: 88 },
dark: { lightness: 21 },
meta: {
figmaName: 'Surface Neutral/Hovered',
},
},
{
name: 'surfaceNeutralPressed',
description: 'For use as a pressed background color in neutral badges.',
light: { lightness: 82 },
dark: { lightness: 21 },
meta: {
figmaName: 'Surface Neutral/Pressed',
},
},
{
name: 'surfaceNeutralDisabled',
description: 'For use as a disabled background color in neutral badges.',
light: { lightness: 95.5 },
dark: { lightness: 21 },
meta: {
figmaName: 'Surface Neutral/Disabled',
},
},
{
name: 'surfaceNeutralSubdued',
description: 'For use as a background color in neutral banners.',
light: { lightness: 97 },
dark: { lightness: 30 },
meta: {
figmaName: 'Surface Neutral/Subdued',
},
},
{
name: 'surfaceSubdued',
description: 'For use as a subdued background color, in components such as Card, Modal, and Popover.',
light: { lightness: 98.5 },
dark: { lightness: 10 },
meta: {
figmaName: 'Surface/Subdued',
},
},
{
name: 'surfaceDisabled',
description: 'For use as a surface color on disabled interactive elements such as option list items and action list items when in a disabled state.',
light: { lightness: 98.5 },
dark: { lightness: 10 },
meta: {
figmaName: 'Surface/Disabled',
},
},
{
name: 'surfaceHovered',
description: 'For use as a surface color on interactive elements such as resource list items and action list items when in a hovered state.',
light: { lightness: 97 },
dark: { lightness: 20 },
meta: {
figmaName: 'Surface/Hovered',
},
},
{
name: 'surfacePressed',
description: 'For use as a surface color on interactive elements such as resource list items and action list items when in a pressed state.',
light: { lightness: 95.5 },
dark: { lightness: 27 },
meta: {
figmaName: 'Surface/Pressed',
},
},
{
name: 'surfaceDepressed',
description: 'For use as a surface color on interactive elements such as resource list items and action list items when in a depressed state.',
light: { lightness: 94 },
dark: { lightness: 35 },
meta: {
figmaName: 'Surface/Depressed',
},
},
{
name: 'surfaceSearchField',
description: 'For use as a background color, in components on surface elements such as SearchField',
light: { lightness: 95.5 },
dark: { lightness: 20 },
meta: {
figmaName: 'Surface/SearchField',
},
},
{
name: 'backdrop',
description: 'For use as the background color of the backdrop component for navigation and modal. This color has an alpha of `0.5`.',
light: {
hue: 0,
saturation: 0,
lightness: 0,
alpha: 0.5,
},
dark: {
hue: 0,
saturation: 0,
lightness: 0,
alpha: 0.5,
},
meta: {
figmaName: 'Backdrop',
},
},
{
name: 'overlay',
description: 'For use as the background color of elements which lay on top of surfaces to obscure their contents. This color has an alpha of `0.5`.',
light: {
hue: 0,
saturation: 0,
lightness: 100,
alpha: 0.5,
},
dark: {
hue: 0,
saturation: 0,
lightness: 12.7,
alpha: 0.5,
},
meta: {
figmaName: 'Overlay',
},
},
{
name: 'shadowFromDimLight',
description: 'For use in building shadows for modals. This color has an alpha of `0.02`.',
light: {
lightness: 0,
alpha: 0.2,
},
dark: {
lightness: 100,
alpha: 0.2,
},
meta: {
figmaName: 'Shadow/From dim light',
},
},
{
name: 'shadowFromAmbientLight',
description: 'For use in building shadows for popovers, and cards. This color has an alpha of `0.05`.',
light: {
hue: 180,
saturation: 5,
lightness: 8,
alpha: 0.05,
},
dark: {
hue: 180,
saturation: 5,
lightness: 8,
alpha: 0.05,
},
meta: {
figmaName: 'Shadow/From ambient light',
},
},
{
name: 'shadowFromDirectLight',
description: 'For use in building shadows for popovers and cards. This color has an alpha of `0.15`.',
light: {
hue: 0,
saturation: 0,
lightness: 0,
alpha: 0.15,
},
dark: {
hue: 0,
saturation: 0,
lightness: 100,
alpha: 0.15,
},
meta: {
figmaName: 'Shadow/From direct light',
},
},
{
name: 'hintFromDirectLight',
description: 'For use in building shadows scrollables.',
light: {
hue: 0,
saturation: 0,
lightness: 0,
alpha: 0.15,
},
dark: {
hue: 0,
saturation: 0,
lightness: 75,
alpha: 0.2,
},
meta: {
figmaName: 'Hint/From direct light',
},
},
],
onSurface: [
{
name: 'border',
description: 'For use as the default border on elements.',
light: { lightness: 60 },
dark: { lightness: 35 },
meta: {
figmaName: 'Border/Default',
},
},
{
name: 'borderNeutralSubdued',
description: 'For use as the border on banners.',
light: { lightness: 77 },
dark: { lightness: 56 },
meta: {
figmaName: 'Border Neutral/Subdued',
},
},
{
name: 'borderHovered',
description: 'Used for borders on hovered interactive elements',
light: { lightness: 65 },
dark: { lightness: 35 },
meta: {
figmaName: 'Border/Hovered',
},
},
{
name: 'borderDisabled',
description: 'Used for disabled borders on interactive elements',
light: { lightness: 85 },
dark: { lightness: 45 },
meta: {
figmaName: 'Border/Disabled',
},
},
{
name: 'borderSubdued',
description: 'For use as a subdued border on elements.',
light: {
saturation: utils_1.saturationAdjustmentFn(-1),
lightness: 81.9,
},
dark: { lightness: 56 },
meta: {
figmaName: 'Border/Subdued',
},
},
{
name: 'borderDepressed',
description: 'For use as a border on depressed elements.',
light: {
hue: utils_1.hueRotationFn(-45),
saturation: utils_1.saturationAdjustmentFn(-4),
lightness: 37.7,
},
dark: {
hue: utils_1.hueRotationFn(-45),
saturation: utils_1.saturationAdjustmentFn(-4),
lightness: 60,
},
meta: {
figmaName: 'Border/Depressed',
},
},
{
name: 'borderShadow',
description: 'For use as an additional bottom border on elements.',
light: {
lightness: 73,
},
dark: {
lightness: 40,
},
meta: {
figmaName: 'BorderShadow',
},
},
{
name: 'borderShadowSubdued',
description: 'For use as an additional, subdued bottom border on elements.',
light: {
lightness: 77.1,
},
dark: {
lightness: 56,
},
meta: {
figmaName: 'BorderShadow/Subdued',
},
},
{
name: 'divider',
description: 'For use as a divider between elements.',
light: {
saturation: utils_1.saturationAdjustmentFn(-1),
lightness: 90.1,
},
dark: {
saturation: utils_1.saturationAdjustmentFn(-1),
lightness: 30,
},
meta: {
figmaName: 'Divider',
},
},
{
name: 'icon',
description: 'For use as the fill color of icons.',
light: { lightness: 40.1 },
dark: { lightness: 70.1 },
meta: {
figmaName: 'Icon/Default',
},
},
{
name: 'iconHovered',
description: 'For use as the fill color of hovered icons.',
light: { lightness: 10 },
dark: { lightness: 90 },
meta: {
figmaName: 'Icon/Hovered',
},
},
{
name: 'iconPressed',
description: 'For use as the fill color of pressed icons.',
light: { lightness: 30 },
dark: { lightness: 70 },
meta: {
figmaName: 'Icon/Pressed',
},
},
{
name: 'iconDisabled',
description: 'For use as the fill color of disabled icons.',
light: { lightness: 76.9 },
dark: { lightness: 36.8 },
meta: {
figmaName: 'Icon/Disabled',
},
},
{
name: 'iconSubdued',
description: 'For use as the fill color of subdued icons.',
light: { lightness: 59.8 },
dark: { lightness: 52.1 },
meta: {
figmaName: 'Icon/Subdued',
},
},
{
name: 'text',
description: 'For use as a text color.',
light: { lightness: 13.1 },
dark: { lightness: 90.8 },
meta: {
figmaName: 'Text/Default',
},
},
{
name: 'textDisabled',
description: 'For use as a disabled text color and as a placeholder text color.',
light: { lightness: 60 },
dark: { lightness: 48.2 },
meta: {
figmaName: 'Text/Disabled',
},
},
{
name: 'textSubdued',
description: 'For use as a subdued text color.',
light: { lightness: 47.4 },
dark: { lightness: 65.1 },
meta: {
figmaName: 'Text/Subdued',
},
},
],
interactive: [
{
name: 'interactive',
description: 'Used for links, plain buttons, and as the fill color for selected checkboxes and radio buttons.',
light: { lightness: 47 },
dark: {
lightness: 65,
saturation: utils_1.saturationAdjustmentFn(11.2),
hue: utils_1.hueRotationFn(-7.1),
},
meta: {
figmaName: 'Interactive/Default',
},
},
{
name: 'interactiveDisabled',
description: 'Used for disabled links and plain buttons.',
light: { lightness: 78, saturation: 17 },
dark: {
lightness: 42,
},
meta: {
figmaName: 'Interactive/Disabled',
},
},
{
name: 'interactiveHovered',
description: 'Used for hovered links and plain buttons.',
light: { lightness: 35 },
dark: {
lightness: 70,
saturation: utils_1.saturationAdjustmentFn(11.2),
hue: utils_1.hueRotationFn(-7.1),
},
meta: {
figmaName: 'Interactive/Hovered',
},
},
{
name: 'interactivePressed',
description: 'Used for pressed links and plain buttons.',
light: { lightness: 21 },
dark: {
lightness: 75,
saturation: utils_1.saturationAdjustmentFn(11.2),
hue: utils_1.hueRotationFn(-7.1),
},
meta: {
figmaName: 'Interactive/Pressed',
},
},
{
name: 'focused',
description: 'For use in the focus ring on interactive elements.',
light: { lightness: 60, saturation: utils_1.saturationAdjustmentFn(11.2) },
dark: { lightness: 42 },
meta: {
figmaName: 'Focused/Default',
},
},
{
name: 'surfaceSelected',
description: 'For use as a surface color in selected interactive elements, in components such as action list and resource list.',
light: { lightness: 97, hue: utils_1.hueRotationFn(-12) },
dark: { lightness: 4 },
meta: {
figmaName: 'Surface Selected/Default',
},
},
{
name: 'surfaceSelectedHovered',
description: 'For use as a surface color in selected interactive elements that are hovered, in components such as action list and resource list.',
light: { lightness: 96, hue: utils_1.hueRotationFn(-12) },
dark: { lightness: 11 },
meta: {
figmaName: 'Surface Selected/Hovered',
},
},
{
name: 'surfaceSelectedPressed',
description: 'For use as a surface color in selected interactive elements that are pressed, in components such as action list and resource list.',
light: { lightness: 94, hue: utils_1.hueRotationFn(-10) },
dark: { lightness: 18 },
meta: {
figmaName: 'Surface Selected/Pressed',
},
},
{
name: 'iconOnInteractive',
description: 'For use as a fill color for icons on interactive elements.',
light: { lightness: 100 },
dark: { lightness: 100 },
meta: {
figmaName: 'Icon On/Interactive',
},
},
{
name: 'textOnInteractive',
description: 'For use as a text color on interactive elements.',
light: { lightness: 100 },
dark: { lightness: 100 },
meta: {
figmaName: 'Text On/Interactive',
},
},
],
secondary: [
{
name: 'actionSecondary',
description: 'Used for secondary buttons and tertiary buttons, as well as in form elements as a background color and pontentially other secondary surfaces.',
light: { lightness: 100 },
dark: { lightness: 34 },
meta: {
figmaName: 'Action Secondary/Default',
},
},
{
name: 'actionSecondaryDisabled',
description: 'Used as a disabled state for secondary buttons',
light: { lightness: 100 },
dark: { lightness: 13 },
meta: {
figmaName: 'Action Secondary/Disabled',
},
},
{
name: 'actionSecondaryHovered',
description: 'Used as a hovered state for secondary buttons',
light: { lightness: 97 },
dark: { lightness: 37 },
meta: {
figmaName: 'Action Secondary/Hovered',
},
},
{
name: 'actionSecondaryPressed',
description: 'Used as a pressed state for secondary buttons',
light: { lightness: 95.5 },
dark: { lightness: 42 },
meta: {
figmaName: 'Action Secondary/Pressed',
},
},
{
name: 'actionSecondaryDepressed',
description: 'Used as a depressed state for secondary buttons',
light: {
hue: utils_1.hueRotationFn(4),
lightness: 47.4,
},
dark: {
hue: utils_1.hueRotationFn(4),
lightness: 53,
},
meta: {
figmaName: 'Action Secondary/Depressed',
},
},
],
primary: [
{
name: 'actionPrimary',
description: 'Used as the background color for primary actions, and as the fill color for icons and the text color in navigation and tabs to communicate interaction states.',
light: { lightness: 47.3 },
dark: { lightness: 47.3 },
meta: {
figmaName: 'Action Primary/Default',
},
},
{
name: 'actionPrimaryDisabled',
description: 'Used as the background color for disabled primary actions, and as the fill color for icons and the text color in navigation and tabs to communicate interaction states.',
light: { lightness: 95, saturation: 0 },
dark: { lightness: 32 },
meta: {
figmaName: 'Action Primary/Disabled',
},
},
{
name: 'actionPrimaryHovered',
description: 'Used as the background color for hovered primary actions, and as the fill color for icons and the text color in navigation and tabs to communicate interaction states.',
light: { lightness: 41 },
dark: { lightness: 55 },
meta: {
figmaName: 'Action Primary/Hovered',
},
},
{
name: 'actionPrimaryPressed',
description: 'Used as the background color for pressed primary actions, and as the fill color for icons and the text color in navigation and tabs to communicate interaction states.',
light: { lightness: 35 },
dark: { lightness: 60 },
meta: {
figmaName: 'Action Primary/Pressed',
},
},
{
name: 'actionPrimaryDepressed',
description: 'Used as the background color for pressed primary actions, and as the fill color for icons and the text color in navigation and tabs to communicate interaction states.',
light: { lightness: 22 },
dark: { lightness: 65 },
meta: {
figmaName: 'Action Primary/Depressed',
},
},
{
name: 'iconOnPrimary',
description: 'For use as a fill color for icons on primary actions. Not for use in icons on navigation and tabs.',
light: { lightness: 100 },
dark: { lightness: 98 },
meta: {
figmaName: 'Icon On/Primary',
},
},
{
name: 'textOnPrimary',
description: 'For use as a text color on primary actions. Not for use in text on navigation and tabs.',
light: { lightness: 100 },
dark: { lightness: 100 },
meta: {
figmaName: 'Text On/Primary',
},
},
{
name: 'textPrimary',
description: 'For use as primary text color on background. For use in text in components such as Navigation.',
light: { lightness: 45.7 },
dark: { lightness: 52 },
meta: {
figmaName: 'Text Primary/Default',
},
},
{
name: 'textPrimaryHovered',
description: 'For use as primary hovered text color on background. For use in text in components such as Navigation.',
light: { lightness: 40 },
dark: { lightness: 58 },
meta: {
figmaName: 'Text Primary/hover',
},
},
{
name: 'textPrimaryPressed',
description: 'For use as primary pressed text color on background. For use in text in components such as Navigation.',
light: { lightness: 34 },
dark: { lightness: 64 },
meta: {
figmaName: 'Text Primary/Pressed',
},
},
{
name: 'surfacePrimarySelected',
description: 'Used as a surface color to indicate selected interactive states in navigation and tabs.',
light: { lightness: 97, saturation: 20 },
dark: { lightness: 5, saturation: 30 },
meta: {
figmaName: 'Surface Primary/Selected',
},
},
{
name: 'surfacePrimarySelectedHovered',
description: 'Used as a surface color to indicate selected interactive states that are hovered in navigation and tabs.',
light: { lightness: 81, saturation: 22 },
dark: { lightness: 19, saturation: 22 },
meta: {
figmaName: 'Surface Primary/Selected Hovered',
},
},
{
name: 'surfacePrimarySelectedPressed',
description: 'Used as a surface color to indicate selected interactive states that are pressed in navigation and tabs.',
light: { lightness: 74, saturation: 22 },
dark: { lightness: 26, saturation: 22 },
meta: {
figmaName: 'Surface Primary/Selected Pressed',
},
},
],
critical: [
{
name: 'borderCritical',
description: 'For use as a border on critical components such as an outline on interactive elements in an error state.',
light: { lightness: 60 },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Critical/Default',
},
},
{
name: 'borderCriticalSubdued',
description: 'For use as a border on critical components such as banners.',
light: { lightness: 77, saturation: utils_1.saturationAdjustmentFn(-50) },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Critical/Subdued',
},
},
{
name: 'borderCriticalDisabled',
description: 'For use as a disabled border on critical components such as banners, and as an outline on interactive elements in an error state.',
light: { lightness: 77, saturation: utils_1.saturationAdjustmentFn(2.7) },
dark: { lightness: 28 },
meta: {
figmaName: 'Border Critical/Disabled',
},
},
{
name: 'iconCritical',
description: 'For use as an icon fill color on top of critical elements.',
light: { lightness: 47.3 },
dark: { lightness: 48 },
meta: {
figmaName: 'Icon/Critical',
},
},
{
name: 'surfaceCritical',
description: 'For use as a surface color on critical elements including badges.',
light: { lightness: 88 },
dark: { lightness: 12 },
meta: {
figmaName: 'Surface Critical/Default',
},
},
{
name: 'surfaceCriticalSubdued',
description: 'For use as a subdued surface color on critical elements including banners.',
light: { lightness: 97 },
dark: { lightness: 12 },
meta: {
figmaName: 'Surface Critical/Subdued',
},
},
{
name: 'surfaceCriticalSubduedHovered',
description: 'For use as a surface color on critical interactive elements including action list items in a hovered state.',
light: { lightness: 96 },
dark: { lightness: 15, saturation: 60 },
meta: {
figmaName: 'Surface Critical/Subdued Hovered',
figmaDescription: 'Used on action lists',
},
},
{
name: 'surfaceCriticalSubduedPressed',
description: 'For use as a surface color on critical interactive elements including action list items in a pressed state.',
light: { lightness: 94 },
dark: { lightness: 22 },
meta: {
figmaName: 'Surface Critical/Subdued Pressed',
},
},
{
name: 'surfaceCriticalSubduedDepressed',
description: 'For use as a surface color on critical interactive elements including action list items in a depressed state.',
light: { lightness: 82 },
dark: { lightness: 29 },
meta: {
figmaName: 'Surface Critical/Subdued Depressed',
},
},
{
name: 'textCritical',
description: 'For use as a text color in inert critical elements such as exception list. Not for use as a text color on banners and badges.',
light: { lightness: 47.3 },
dark: { lightness: 65, saturation: 70 },
meta: {
figmaName: 'Text/Critical',
},
},
{
name: 'actionCritical',
description: 'For use as the background color for destructive buttons, and as the background color for error toast messages.',
light: { lightness: 47.5 },
dark: { lightness: 45 },
meta: {
figmaName: 'Action Critical/Default',
},
},
{
name: 'actionCriticalDisabled',
description: 'For use as the background color for disabled destructive buttons, and as the background color for error toast messages.',
light: { lightness: 95, saturation: 0 },
dark: { lightness: 41 },
meta: {
figmaName: 'Action Critical/Disabled',
},
},
{
name: 'actionCriticalHovered',
description: 'For use as the background color for hovered destructive buttons, and as the background color for error toast messages.',
light: { lightness: 41, saturation: utils_1.saturationAdjustmentFn(2.7) },
dark: { lightness: 50 },
meta: {
figmaName: 'Action Critical/Hovered',
},
},
{
name: 'actionCriticalPressed',
description: 'For use as the background color for pressed destructive buttons, and as the background color for error toast messages.',
light: { lightness: 35, saturation: utils_1.saturationAdjustmentFn(2.7) },
dark: { lightness: 55 },
meta: {
figmaName: 'Action Critical/Pressed',
},
},
{
name: 'actionCriticalDepressed',
description: 'For use as the background color for depressed destructive buttons, and as the background color for error toast messages.',
light: { lightness: 22, saturation: utils_1.saturationAdjustmentFn(2.7) },
dark: { lightness: 60 },
meta: {
figmaName: 'Action Critical/Depressed',
},
},
{
name: 'iconOnCritical',
description: 'For use as a fill color for icons on critical actions.',
light: { lightness: 100 },
dark: { lightness: 98 },
meta: {
figmaName: 'Icon On/Critical',
},
},
{
name: 'textOnCritical',
description: 'For use as a text color on critical actions.',
light: { lightness: 100 },
dark: { lightness: 100 },
meta: {
figmaName: 'Text On/Critical',
},
},
{
name: 'interactiveCritical',
description: 'For use as the text color for destructive interactive elements: links, plain buttons, error state of selected checkboxes and radio buttons, as well as a text color on destructive action list items. Not for use on critical banners and badges.',
light: { lightness: 47.5 },
dark: { lightness: 65 },
meta: {
figmaName: 'Interactive/Critical',
},
},
{
name: 'interactiveCriticalDisabled',
description: 'For use as a text color in disabled destructive plain buttons, as well as a text color on destructive action list items. Not for use on critical banners and badges.',
light: { lightness: 72 },
dark: { lightness: 78 },
meta: {
figmaName: 'Interactive/Critical Disabled',
},
},
{
name: 'interactiveCriticalHovered',
description: 'For use as a text color in hovered destructive plain buttons, as well as a text color on destructive action list items. Not for use on critical banners and badges.',
light: { lightness: 45 },
dark: { lightness: 70 },
meta: {
figmaName: 'Interactive/Critical Hovered',
},
},
{
name: 'interactiveCriticalPressed',
description: 'For use as a text color in pressed destructive plain buttons, as well as a text color on destructive action list items. Not for use on critical banners and badges.',
light: { lightness: 21 },
dark: { lightness: 75 },
meta: {
figmaName: 'Interactive/Critical Pressed',
},
},
],
warning: [
{
name: 'borderWarning',
description: 'For use as a border on warning components such as...',
light: { lightness: 60 },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Warning/Default',
},
},
{
name: 'borderWarningSubdued',
description: 'For use as a border on warning components such as banners.',
light: { lightness: 77, saturation: utils_1.saturationAdjustmentFn(-40) },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Warning/Subdued',
},
},
{
name: 'iconWarning',
description: 'For use as an icon fill color on top of warning elements.',
light: { lightness: 60 },
dark: { lightness: 34 },
meta: {
figmaName: 'Icon/Warning',
},
},
{
name: 'surfaceWarning',
description: 'For use as a surface color on warning elements including badges.',
light: { lightness: 88 },
dark: { lightness: 50 },
meta: {
figmaName: 'Surface Warning/Default',
figmaDescription: 'Use for badges',
},
},
{
name: 'surfaceWarningSubdued',
description: 'For use as a subdued surface color on warning elements including banners.',
light: { lightness: 97 },
dark: { lightness: 26, saturation: 71 },
meta: {
figmaName: 'Surface Warning/Subdued',
figmaDescription: 'Used for banners',
},
},
{
name: 'surfaceWarningSubduedHovered',
description: 'For use as a subdued surface color on warning elements including banners.',
light: { lightness: 96 },
dark: { lightness: 28, saturation: 71 },
meta: {
figmaName: 'Surface Warning/Subdued Hovered',
figmaDescription: 'Used for banners',
},
},
{
name: 'surfaceWarningSubduedPressed',
description: 'For use as a subdued surface color on warning elements including banners.',
light: { lightness: 94 },
dark: { lightness: 30, saturation: 71 },
meta: {
figmaName: 'Surface Warning/Subdued Pressed',
figmaDescription: 'Used for banners',
},
},
{
name: 'textWarning',
description: 'For use as a text color in inert critical elements such as exception list. Not for use as a text color on banners and badges.',
light: { lightness: 47.4 },
dark: { lightness: 64.9 },
meta: {
figmaName: 'Text/Warning',
},
},
],
highlight: [
{
name: 'borderHighlight',
description: 'For use as a border on informational components such as...',
light: { lightness: 60 },
dark: { lightness: 60 },
meta: {
figmaName: 'Border Highlight/Default',
},
},
{
name: 'borderHighlightSubdued',
description: 'For use as a border on informational components such as banners.',
light: { lightness: 77, saturation: utils_1.saturationAdjustmentFn(-40) },
dark: { lightness: 60 },
meta: {
figmaName: 'Border Highlight/Subdued',
},
},
{
name: 'iconHighlight',
description: 'For use as an icon fill color on top of informational elements.',
light: { lightness: 60, saturation: utils_1.saturationAdjustmentFn(19.6) },
dark: { lightness: 42 },
meta: {
figmaName: 'Icon/Highlight',
},
},
{
name: 'surfaceHighlight',
description: 'For use as a surface color on information elements including badges.',
light: { lightness: 88, saturation: utils_1.saturationAdjustmentFn(-20.4) },
dark: { lightness: 40, saturation: 100 },
meta: {
figmaName: 'Surface Highlight/Default',
},
},
{
name: 'surfaceHighlightSubdued',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 97, saturation: utils_1.saturationAdjustmentFn(-20.4) },
dark: { lightness: 20 },
meta: {
figmaName: 'Surface Highlight/Subdued',
},
},
{
name: 'surfaceHighlightSubduedHovered',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 96, saturation: utils_1.saturationAdjustmentFn(-20.4) },
dark: { lightness: 22 },
meta: {
figmaName: 'Surface Highlight/Subdued Hovered',
},
},
{
name: 'surfaceHighlightSubduedPressed',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 94, saturation: utils_1.saturationAdjustmentFn(-20.4) },
dark: { lightness: 25 },
meta: {
figmaName: 'Surface Highlight/Subdued Pressed',
},
},
{
name: 'textHighlight',
description: 'For use as a text color in inert informational elements. Not for use as a text color on banners and badges.',
light: { lightness: 48 },
dark: { lightness: 90 },
meta: {
figmaName: 'Text/Highlight',
},
},
],
success: [
{
name: 'borderSuccess',
description: 'For use as a border on success components such as text inputs.',
light: { lightness: 60 },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Success/Default',
},
},
{
name: 'borderSuccessSubdued',
description: 'For use as a border on success components such as banners.',
light: { lightness: 77, saturation: utils_1.saturationAdjustmentFn(-60) },
dark: { lightness: 50 },
meta: {
figmaName: 'Border Success/Subdued',
},
},
{
name: 'iconSuccess',
description: 'For use as an icon fill color on top of success elements.',
light: { lightness: 47 },
dark: { lightness: 35 },
meta: {
figmaName: 'Icon/Success',
},
},
{
name: 'surfaceSuccess',
description: 'For use as a surface color on success elements including badges.',
light: { lightness: 88, saturation: utils_1.saturationAdjustmentFn(-60) },
dark: { lightness: 35 },
meta: {
figmaName: 'Surface Success/Default',
},
},
{
name: 'surfaceSuccessSubdued',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 97, saturation: utils_1.saturationAdjustmentFn(-80) },
dark: { lightness: 20, saturation: utils_1.saturationAdjustmentFn(-40) },
meta: {
figmaName: 'Surface Success/Subdued',
},
},
{
name: 'surfaceSuccessSubduedHovered',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 96, saturation: utils_1.saturationAdjustmentFn(-80) },
dark: { lightness: 22, saturation: utils_1.saturationAdjustmentFn(-40) },
meta: {
figmaName: 'Surface Success/Subdued Hovered',
},
},
{
name: 'surfaceSuccessSubduedPressed',
description: 'For use as a surface color on information elements including banners.',
light: { lightness: 94, saturation: utils_1.saturationAdjustmentFn(-80) },
dark: { lightness: 25, saturation: utils_1.saturationAdjustmentFn(-40) },
meta: {
figmaName: 'Surface Success/Subdued Pressed',
},
},
{
name: 'textSuccess',
description: 'For use as a text color in inert success elements. Not for use as a text color on banners and badges.',
light: { lightness: 47.3 },
dark: { lightness: 65, saturation: utils_1.saturationAdjustmentFn(-30) },
meta: {
figmaName: 'Text/Success',
},
},
],
decorative: [
{
name: 'decorativeOneIcon',
description: 'For use as a decorative icon color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(-4.5),
lightness: 40,
},
dark: {
hue: utils_1.hueRotationFn(-4.5),
lightness: 80,
},
meta: {
figmaName: 'Decorative/Icon/One',
},
},
{
name: 'decorativeOneSurface',
description: 'For use as a decorative surface color.',
light: {
lightness: 84,
},
dark: {
hue: utils_1.hueRotationFn(-2.5),
saturation: utils_1.saturationAdjustmentFn(-2),
lightness: 46,
},
meta: {
figmaName: 'Decorative/Surface/One',
},
},
{
name: 'decorativeOneText',
description: 'For use as a decorative text color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(-4.5),
lightness: 18,
},
dark: { lightness: 100 },
meta: {
figmaName: 'Decorative/Text/One',
},
},
{
name: 'decorativeTwoIcon',
description: 'For use as a decorative icon color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(305.5),
saturation: utils_1.saturationAdjustmentFn(-20),
lightness: 40,
},
dark: {
hue: utils_1.hueRotationFn(305.5),
saturation: utils_1.saturationAdjustmentFn(-20),
lightness: 80,
},
meta: {
figmaName: 'Decorative/Icon/Two',
},
},
{
name: 'decorativeTwoSurface',
description: 'For use as a decorative surface color.',
light: {
hue: utils_1.hueRotationFn(-26.5),
lightness: 84,
},
dark: {
hue: utils_1.hueRotationFn(-32.5),
saturation: utils_1.saturationAdjustmentFn(-4),
lightness: 52,
},
meta: {
figmaName: 'Decorative/Surface/Two',
},
},
{
name: 'decorativeTwoText',
description: 'For use as a decorative text color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(305.5),
saturation: utils_1.saturationAdjustmentFn(-20),
lightness: 14,
},
dark: { lightness: 100 },
meta: {
figmaName: 'Decorative/Text/Two',
},
},
{
name: 'decorativeThreeIcon',
description: 'For use as a decorative icon color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(87.5),
lightness: 40,
},
dark: {
hue: utils_1.hueRotationFn(87.5),
lightness: 80,
},
meta: {
figmaName: 'Decorative/Icon/Three',
},
},
{
name: 'decorativeThreeSurface',
description: 'For use as a decorative surface color.',
light: {
hue: utils_1.hueRotationFn(87.5),
saturation: utils_1.saturationAdjustmentFn(-46),
lightness: 85,
},
dark: {
hue: utils_1.hueRotationFn(97.5),
lightness: 46,
},
meta: {
figmaName: 'Decorative/Surface/Three',
},
},
{
name: 'decorativeThreeText',
description: 'For use as a decorative text color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(87.5),
lightness: 16,
},
dark: { lightness: 100 },
meta: {
figmaName: 'Decorative/Text/Three',
},
},
{
name: 'decorativeFourIcon',
description: 'For use as a decorative icon color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(133.5),
lightness: 40,
},
dark: {
hue: utils_1.hueRotationFn(133.5),
lightness: 80,
},
meta: {
figmaName: 'Decorative/Icon/Four',
},
},
{
name: 'decorativeFourSurface',
description: 'For use as a decorative surface color.',
light: {
hue: utils_1.hueRotationFn(123.5),
saturation: utils_1.saturationAdjustmentFn(-44),
lightness: 84,
},
dark: {
hue: utils_1.hueRotationFn(131.5),
saturation: utils_1.saturationAdjustmentFn(-5),
lightness: 47,
},
meta: {
figmaName: 'Decorative/Surface/Four',
},
},
{
name: 'decorativeFourText',
description: 'For use as a decorative text color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(133.5),
lightness: 16,
},
dark: { lightness: 100 },
meta: {
figmaName: 'Decorative/Text/Four',
},
},
{
name: 'decorativeFiveIcon',
description: 'For use as a decorative icon color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(306.5),
saturation: utils_1.saturationAdjustmentFn(-22),
lightness: 40,
},
dark: {
hue: utils_1.hueRotationFn(306.5),
saturation: utils_1.saturationAdjustmentFn(-22),
lightness: 80,
},
meta: {
figmaName: 'Decorative/Icon/Five',
},
},
{
name: 'decorativeFiveSurface',
description: 'For use as a decorative surface color.',
light: {
hue: utils_1.hueRotationFn(-53.4),
saturation: utils_1.saturationAdjustmentFn(-5.4),
lightness: 85.6,
},
dark: {
hue: utils_1.hueRotationFn(306.5),
saturation: utils_1.saturationAdjustmentFn(-23),
lightness: 45,
},
meta: {
figmaName: 'Decorative/Surface/Five',
},
},
{
name: 'decorativeFiveText',
description: 'For use as a decorative text color that is applied on a decorative surface.',
light: {
hue: utils_1.hueRotationFn(306.5),
saturation: utils_1.saturationAdjustmentFn(-22),
lightness: 16,
},
dark: { lightness: 100 },
meta: {
figmaName: 'Decorative/Text/Five',
},
},
],
};
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist-modern/index.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist-modern/index.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.mergeConfigs = exports.colorFactory = void 0;
var color_factory_1 = __webpack_require__(/*! ./color-factory */ "./node_modules/@shopify/polaris-tokens/dist-modern/color-factory.js");
Object.defineProperty(exports, "colorFactory", ({ enumerable: true, get: function () { return color_factory_1.colorFactory; } }));
var utils_1 = __webpack_require__(/*! ./utils */ "./node_modules/@shopify/polaris-tokens/dist-modern/utils.js");
Object.defineProperty(exports, "mergeConfigs", ({ enumerable: true, get: function () { return utils_1.mergeConfigs; } }));
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist-modern/theme/base.json":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist-modern/theme/base.json ***!
\**************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = JSON.parse('{"surface":"#111213","onSurface":"#111213","interactive":"#2e72d2","secondary":"#111213","primary":"#008060","critical":"#d82c0d","warning":"#ffc453","highlight":"#5bcdda","success":"#008060","decorative":"#ffc96b"}');
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist-modern/utils.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist-modern/utils.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.mergeConfigs = exports.saturationAdjustmentFn = exports.hueRotationFn = void 0;
function hueRotationFn(rotation) {
return (hue) => (360 + hue + rotation) % 360;
}
exports.hueRotationFn = hueRotationFn;
function saturationAdjustmentFn(adjustment) {
return (saturation) => Math.min(Math.max(saturation + adjustment, 0), 100);
}
exports.saturationAdjustmentFn = saturationAdjustmentFn;
function mergeConfigs(base, extended) {
return Object.entries(base).reduce((accumulator, [role, variants]) => {
const extendedVariants = extended[role];
const mergedVariants = [...variants];
if (extendedVariants != null) {
extendedVariants.forEach((variant) => {
const { name } = variant;
const indexToReplace = mergedVariants.findIndex((baseVariant) => baseVariant.name === name);
if (indexToReplace === -1) {
mergedVariants.push(variant);
}
else {
mergedVariants.splice(indexToReplace, 1, variant);
}
});
}
return Object.assign(Object.assign({}, accumulator), { [role]: mergedVariants });
}, {});
}
exports.mergeConfigs = mergeConfigs;
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/dist/index.esm.js":
/*!****************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/dist/index.esm.js ***!
\****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "colorPurpleText": () => (/* binding */ colorPurpleText),
/* harmony export */ "colorPurpleDarker": () => (/* binding */ colorPurpleDarker),
/* harmony export */ "colorPurpleDark": () => (/* binding */ colorPurpleDark),
/* harmony export */ "colorPurple": () => (/* binding */ colorPurple),
/* harmony export */ "colorPurpleLight": () => (/* binding */ colorPurpleLight),
/* harmony export */ "colorPurpleLighter": () => (/* binding */ colorPurpleLighter),
/* harmony export */ "colorIndigoText": () => (/* binding */ colorIndigoText),
/* harmony export */ "colorIndigoDarker": () => (/* binding */ colorIndigoDarker),
/* harmony export */ "colorIndigoDark": () => (/* binding */ colorIndigoDark),
/* harmony export */ "colorIndigo": () => (/* binding */ colorIndigo),
/* harmony export */ "colorIndigoLight": () => (/* binding */ colorIndigoLight),
/* harmony export */ "colorIndigoLighter": () => (/* binding */ colorIndigoLighter),
/* harmony export */ "colorBlueText": () => (/* binding */ colorBlueText),
/* harmony export */ "colorBlueDarker": () => (/* binding */ colorBlueDarker),
/* harmony export */ "colorBlueDark": () => (/* binding */ colorBlueDark),
/* harmony export */ "colorBlue": () => (/* binding */ colorBlue),
/* harmony export */ "colorBlueLight": () => (/* binding */ colorBlueLight),
/* harmony export */ "colorBlueLighter": () => (/* binding */ colorBlueLighter),
/* harmony export */ "colorTealText": () => (/* binding */ colorTealText),
/* harmony export */ "colorTealDarker": () => (/* binding */ colorTealDarker),
/* harmony export */ "colorTealDark": () => (/* binding */ colorTealDark),
/* harmony export */ "colorTeal": () => (/* binding */ colorTeal),
/* harmony export */ "colorTealLight": () => (/* binding */ colorTealLight),
/* harmony export */ "colorTealLighter": () => (/* binding */ colorTealLighter),
/* harmony export */ "colorGreenText": () => (/* binding */ colorGreenText),
/* harmony export */ "colorGreenDarker": () => (/* binding */ colorGreenDarker),
/* harmony export */ "colorGreenDark": () => (/* binding */ colorGreenDark),
/* harmony export */ "colorGreen": () => (/* binding */ colorGreen),
/* harmony export */ "colorGreenLight": () => (/* binding */ colorGreenLight),
/* harmony export */ "colorGreenLighter": () => (/* binding */ colorGreenLighter),
/* harmony export */ "colorYellowText": () => (/* binding */ colorYellowText),
/* harmony export */ "colorYellowDarker": () => (/* binding */ colorYellowDarker),
/* harmony export */ "colorYellowDark": () => (/* binding */ colorYellowDark),
/* harmony export */ "colorYellow": () => (/* binding */ colorYellow),
/* harmony export */ "colorYellowLight": () => (/* binding */ colorYellowLight),
/* harmony export */ "colorYellowLighter": () => (/* binding */ colorYellowLighter),
/* harmony export */ "colorOrangeText": () => (/* binding */ colorOrangeText),
/* harmony export */ "colorOrangeDarker": () => (/* binding */ colorOrangeDarker),
/* harmony export */ "colorOrangeDark": () => (/* binding */ colorOrangeDark),
/* harmony export */ "colorOrange": () => (/* binding */ colorOrange),
/* harmony export */ "colorOrangeLight": () => (/* binding */ colorOrangeLight),
/* harmony export */ "colorOrangeLighter": () => (/* binding */ colorOrangeLighter),
/* harmony export */ "colorRedText": () => (/* binding */ colorRedText),
/* harmony export */ "colorRedDarker": () => (/* binding */ colorRedDarker),
/* harmony export */ "colorRedDark": () => (/* binding */ colorRedDark),
/* harmony export */ "colorRed": () => (/* binding */ colorRed),
/* harmony export */ "colorRedLight": () => (/* binding */ colorRedLight),
/* harmony export */ "colorRedLighter": () => (/* binding */ colorRedLighter),
/* harmony export */ "colorInk": () => (/* binding */ colorInk),
/* harmony export */ "colorInkLight": () => (/* binding */ colorInkLight),
/* harmony export */ "colorInkLighter": () => (/* binding */ colorInkLighter),
/* harmony export */ "colorInkLightest": () => (/* binding */ colorInkLightest),
/* harmony export */ "colorSkyDark": () => (/* binding */ colorSkyDark),
/* harmony export */ "colorSky": () => (/* binding */ colorSky),
/* harmony export */ "colorSkyLight": () => (/* binding */ colorSkyLight),
/* harmony export */ "colorSkyLighter": () => (/* binding */ colorSkyLighter),
/* harmony export */ "colorBlack": () => (/* binding */ colorBlack),
/* harmony export */ "colorWhite": () => (/* binding */ colorWhite),
/* harmony export */ "durationNone": () => (/* binding */ durationNone),
/* harmony export */ "durationFast": () => (/* binding */ durationFast),
/* harmony export */ "durationBase": () => (/* binding */ durationBase),
/* harmony export */ "durationSlow": () => (/* binding */ durationSlow),
/* harmony export */ "durationSlower": () => (/* binding */ durationSlower),
/* harmony export */ "durationSlowest": () => (/* binding */ durationSlowest),
/* harmony export */ "spacingNone": () => (/* binding */ spacingNone),
/* harmony export */ "spacingExtraTight": () => (/* binding */ spacingExtraTight),
/* harmony export */ "spacingTight": () => (/* binding */ spacingTight),
/* harmony export */ "spacingBaseTight": () => (/* binding */ spacingBaseTight),
/* harmony export */ "spacingBase": () => (/* binding */ spacingBase),
/* harmony export */ "spacingLoose": () => (/* binding */ spacingLoose),
/* harmony export */ "spacingExtraLoose": () => (/* binding */ spacingExtraLoose),
/* harmony export */ "fontStackBase": () => (/* binding */ fontStackBase),
/* harmony export */ "fontStackMonospace": () => (/* binding */ fontStackMonospace),
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
const colorPurpleText = 'rgb(80, 73, 90)';
const colorPurpleDarker = 'rgb(35, 0, 81)';
const colorPurpleDark = 'rgb(80, 36, 143)';
const colorPurple = 'rgb(156, 106, 222)';
const colorPurpleLight = 'rgb(227, 208, 255)';
const colorPurpleLighter = 'rgb(246, 240, 253)';
const colorIndigoText = 'rgb(62, 65, 85)';
const colorIndigoDarker = 'rgb(0, 6, 57)';
const colorIndigoDark = 'rgb(32, 46, 120)';
const colorIndigo = 'rgb(92, 106, 196)';
const colorIndigoLight = 'rgb(179, 188, 245)';
const colorIndigoLighter = 'rgb(244, 245, 250)';
const colorBlueText = 'rgb(62, 78, 87)';
const colorBlueDarker = 'rgb(0, 20, 41)';
const colorBlueDark = 'rgb(8, 78, 138)';
const colorBlue = 'rgb(0, 111, 187)';
const colorBlueLight = 'rgb(180, 225, 250)';
const colorBlueLighter = 'rgb(235, 245, 250)';
const colorTealText = 'rgb(64, 83, 82)';
const colorTealDarker = 'rgb(0, 49, 53)';
const colorTealDark = 'rgb(0, 132, 142)';
const colorTeal = 'rgb(71, 193, 191)';
const colorTealLight = 'rgb(183, 236, 236)';
const colorTealLighter = 'rgb(224, 245, 245)';
const colorGreenText = 'rgb(65, 79, 62)';
const colorGreenDarker = 'rgb(23, 54, 48)';
const colorGreenDark = 'rgb(16, 128, 67)';
const colorGreen = 'rgb(80, 184, 60)';
const colorGreenLight = 'rgb(187, 229, 179)';
const colorGreenLighter = 'rgb(227, 241, 223)';
const colorYellowText = 'rgb(89, 81, 48)';
const colorYellowDarker = 'rgb(87, 59, 0)';
const colorYellowDark = 'rgb(138, 97, 22)';
const colorYellow = 'rgb(238, 194, 0)';
const colorYellowLight = 'rgb(255, 234, 138)';
const colorYellowLighter = 'rgb(252, 241, 205)';
const colorOrangeText = 'rgb(89, 68, 48)';
const colorOrangeDarker = 'rgb(74, 21, 4)';
const colorOrangeDark = 'rgb(192, 87, 23)';
const colorOrange = 'rgb(244, 147, 66)';
const colorOrangeLight = 'rgb(255, 197, 139)';
const colorOrangeLighter = 'rgb(252, 235, 219)';
const colorRedText = 'rgb(88, 60, 53)';
const colorRedDarker = 'rgb(51, 1, 1)';
const colorRedDark = 'rgb(191, 7, 17)';
const colorRed = 'rgb(222, 54, 24)';
const colorRedLight = 'rgb(254, 173, 154)';
const colorRedLighter = 'rgb(251, 234, 229)';
const colorInk = 'rgb(33, 43, 54)';
const colorInkLight = 'rgb(69, 79, 91)';
const colorInkLighter = 'rgb(99, 115, 129)';
const colorInkLightest = 'rgb(145, 158, 171)';
const colorSkyDark = 'rgb(196, 205, 213)';
const colorSky = 'rgb(223, 227, 232)';
const colorSkyLight = 'rgb(244, 246, 248)';
const colorSkyLighter = 'rgb(249, 250, 251)';
const colorBlack = 'rgb(0, 0, 0)';
const colorWhite = 'rgb(255, 255, 255)';
const durationNone = 0;
const durationFast = 100;
const durationBase = 200;
const durationSlow = 300;
const durationSlower = 400;
const durationSlowest = 500;
const spacingNone = 0;
const spacingExtraTight = '4px';
const spacingTight = '8px';
const spacingBaseTight = '12px';
const spacingBase = '16px';
const spacingLoose = '20px';
const spacingExtraLoose = '32px';
const fontStackBase = "-apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif";
const fontStackMonospace = "Monaco, Consolas, 'Lucida Console', monospace";
// When this package shipped only CJS, bundlers applied some cjs-to-esm interop
// dark magic that meant you could access content from index.common.js from an
// esm file in many ways.
// The following were all valid ways to access tokens:
//
// import {colorInk as namedImport} from '@shopify/polaris-tokens'
// import * as namespaceImport from '@shopify/polaris-tokens'
// import defaultImport from '@shopify/polaris-tokens'
// console.log(colorInk, namespaceImport.colorInk, defaultImport.colorInk)
//
// In order to avoid adding this esm file being a breaking change, we must
// provide a default export to maintain compatibility.
// This is a deprecated way of accessing tokens. Consumers should use either
// named imports (`import {colorInk}`) or a namespace import
// (`import * as tokens`).
// This default export should be removed in polaris-tokens v3 if we don't
// remove this file entirely.
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
colorPurpleText,
colorPurpleDarker,
colorPurpleDark,
colorPurple,
colorPurpleLight,
colorPurpleLighter,
colorIndigoText,
colorIndigoDarker,
colorIndigoDark,
colorIndigo,
colorIndigoLight,
colorIndigoLighter,
colorBlueText,
colorBlueDarker,
colorBlueDark,
colorBlue,
colorBlueLight,
colorBlueLighter,
colorTealText,
colorTealDarker,
colorTealDark,
colorTeal,
colorTealLight,
colorTealLighter,
colorGreenText,
colorGreenDarker,
colorGreenDark,
colorGreen,
colorGreenLight,
colorGreenLighter,
colorYellowText,
colorYellowDarker,
colorYellowDark,
colorYellow,
colorYellowLight,
colorYellowLighter,
colorOrangeText,
colorOrangeDarker,
colorOrangeDark,
colorOrange,
colorOrangeLight,
colorOrangeLighter,
colorRedText,
colorRedDarker,
colorRedDark,
colorRed,
colorRedLight,
colorRedLighter,
colorInk,
colorInkLight,
colorInkLighter,
colorInkLightest,
colorSkyDark,
colorSky,
colorSkyLight,
colorSkyLighter,
colorBlack,
colorWhite,
durationNone,
durationFast,
durationBase,
durationSlow,
durationSlower,
durationSlowest,
spacingNone,
spacingExtraTight,
spacingTight,
spacingBaseTight,
spacingBase,
spacingLoose,
spacingExtraLoose,
fontStackBase,
fontStackMonospace,
});
/***/ }),
/***/ "./node_modules/@shopify/polaris-tokens/node_modules/tslib/tslib.es6.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris-tokens/node_modules/tslib/tslib.es6.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "__extends": () => (/* binding */ __extends),
/* harmony export */ "__assign": () => (/* binding */ __assign),
/* harmony export */ "__rest": () => (/* binding */ __rest),
/* harmony export */ "__decorate": () => (/* binding */ __decorate),
/* harmony export */ "__param": () => (/* binding */ __param),
/* harmony export */ "__metadata": () => (/* binding */ __metadata),
/* harmony export */ "__awaiter": () => (/* binding */ __awaiter),
/* harmony export */ "__generator": () => (/* binding */ __generator),
/* harmony export */ "__createBinding": () => (/* binding */ __createBinding),
/* harmony export */ "__exportStar": () => (/* binding */ __exportStar),
/* harmony export */ "__values": () => (/* binding */ __values),
/* harmony export */ "__read": () => (/* binding */ __read),
/* harmony export */ "__spread": () => (/* binding */ __spread),
/* harmony export */ "__spreadArrays": () => (/* binding */ __spreadArrays),
/* harmony export */ "__await": () => (/* binding */ __await),
/* harmony export */ "__asyncGenerator": () => (/* binding */ __asyncGenerator),
/* harmony export */ "__asyncDelegator": () => (/* binding */ __asyncDelegator),
/* harmony export */ "__asyncValues": () => (/* binding */ __asyncValues),
/* harmony export */ "__makeTemplateObject": () => (/* binding */ __makeTemplateObject),
/* harmony export */ "__importStar": () => (/* binding */ __importStar),
/* harmony export */ "__importDefault": () => (/* binding */ __importDefault),
/* harmony export */ "__classPrivateFieldGet": () => (/* binding */ __classPrivateFieldGet),
/* harmony export */ "__classPrivateFieldSet": () => (/* binding */ __classPrivateFieldSet)
/* harmony export */ });
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
}
return __assign.apply(this, arguments);
}
function __rest(s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
}
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __createBinding(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}
function __exportStar(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
}
function __asyncValues(o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
function __importStar(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result.default = mod;
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, privateMap) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to get private field on non-instance");
}
return privateMap.get(receiver);
}
function __classPrivateFieldSet(receiver, privateMap, value) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to set private field on non-instance");
}
privateMap.set(receiver, value);
return value;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "defineProperty": () => (/* binding */ _defineProperty),
/* harmony export */ "objectSpread2": () => (/* binding */ _objectSpread2),
/* harmony export */ "objectWithoutProperties": () => (/* binding */ _objectWithoutProperties),
/* harmony export */ "objectWithoutPropertiesLoose": () => (/* binding */ _objectWithoutPropertiesLoose)
/* harmony export */ });
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys.push.apply(keys, symbols);
}
return keys;
}
function _objectSpread2(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
ownKeys(Object(source), true).forEach(function (key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for (i = 0; i < sourceKeys.length; i++) {
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for (i = 0; i < sourceSymbolKeys.length; i++) {
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ActionList": () => (/* binding */ ActionList)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ActionList.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.scss.js");
/* harmony import */ var _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/Section/Section.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Section/Section.js");
function ActionList({
items,
sections = [],
actionRole,
onActionAnyItem
}) {
let finalSections = [];
if (items) {
finalSections = [{
items
}, ...sections];
} else if (sections) {
finalSections = sections;
}
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_ActionList_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.ActionList);
const hasMultipleSections = finalSections.length > 1;
const Element = hasMultipleSections ? 'ul' : 'div';
const sectionMarkup = finalSections.map((section, index) => {
return section.items.length > 0 ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Section_Section_js__WEBPACK_IMPORTED_MODULE_3__.Section, {
key: section.title || index,
section: section,
hasMultipleSections: hasMultipleSections,
actionRole: actionRole,
onActionAnyItem: onActionAnyItem
}) : null;
});
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Element, {
className: className
}, sectionMarkup);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.scss.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.scss.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"ActionList": "Polaris-ActionList",
"Section-withoutTitle": "Polaris-ActionList__Section--withoutTitle",
"Actions": "Polaris-ActionList__Actions",
"Title": "Polaris-ActionList__Title",
"Section": "Polaris-ActionList__Section",
"Item": "Polaris-ActionList__Item",
"active": "Polaris-ActionList--active",
"destructive": "Polaris-ActionList--destructive",
"disabled": "Polaris-ActionList--disabled",
"Prefix": "Polaris-ActionList__Prefix",
"Suffix": "Polaris-ActionList__Suffix",
"Content": "Polaris-ActionList__Content",
"ContentBlock": "Polaris-ActionList__ContentBlock",
"ContentBlockInner": "Polaris-ActionList__ContentBlockInner",
"Text": "Polaris-ActionList__Text"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Item/Item.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Item/Item.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Item": () => (/* binding */ Item)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../Scrollable/Scrollable.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.js");
/* harmony import */ var _UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../UnstyledLink/UnstyledLink.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js");
/* harmony import */ var _Badge_Badge_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../Badge/Badge.js */ "./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.js");
/* harmony import */ var _TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../TextStyle/TextStyle.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.js");
/* harmony import */ var _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../ActionList.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.scss.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_1__.Scrollable.ScrollTo, null);
function Item({
id,
badge,
content,
accessibilityLabel,
helpText,
url,
onAction,
icon,
image,
prefix,
suffix,
disabled,
external,
destructive,
ellipsis,
active,
role
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Item, disabled && _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.disabled, destructive && _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.destructive, active && _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.active);
let prefixMarkup = null;
if (prefix) {
prefixMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Prefix
}, prefix);
} else if (icon) {
prefixMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Prefix
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_4__.Icon, {
source: icon
}));
} else if (image) {
prefixMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
role: "presentation",
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Prefix,
style: {
backgroundImage: `url(${image}`
}
});
}
const contentText = ellipsis && content ? `${content}…` : content;
const contentMarkup = helpText ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.ContentBlock
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.ContentBlockInner
}, contentText), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_5__.TextStyle, {
variation: "subdued"
}, helpText)) : contentText;
const badgeMarkup = badge && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Suffix
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Badge_Badge_js__WEBPACK_IMPORTED_MODULE_6__.Badge, {
status: badge.status
}, badge.content));
const suffixMarkup = suffix && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Suffix
}, suffix);
const textMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Text
}, contentMarkup);
const contentElement = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Content
}, prefixMarkup, textMarkup, badgeMarkup, suffixMarkup);
const scrollMarkup = active ? _ref : null;
const control = url ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_7__.UnstyledLink, {
id: id,
url: disabled ? null : url,
className: className,
external: external,
"aria-label": accessibilityLabel,
onClick: disabled ? null : onAction
}, contentElement) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", {
id: id,
type: "button",
className: className,
disabled: disabled,
"aria-label": accessibilityLabel,
onClick: onAction,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_8__.handleMouseUpByBlurring
}, contentElement);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("li", {
role: role
}, scrollMarkup, control);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Section/Section.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Section/Section.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Section": () => (/* binding */ Section)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../ActionList.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.scss.js");
/* harmony import */ var _Item_Item_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/components/Item/Item.js");
function Section({
section,
hasMultipleSections,
actionRole,
onActionAnyItem
}) {
const handleAction = itemOnAction => {
return () => {
if (itemOnAction) {
itemOnAction();
}
if (onActionAnyItem) {
onActionAnyItem();
}
};
};
const actionMarkup = section.items.map((_ref, index) => {
let {
content,
helpText,
onAction
} = _ref,
item = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["content", "helpText", "onAction"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Item_Item_js__WEBPACK_IMPORTED_MODULE_2__.Item, Object.assign({
key: `${content}-${index}`,
content: content,
helpText: helpText,
role: actionRole,
onAction: handleAction(onAction)
}, item));
});
const className = section.title ? undefined : _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Section-withoutTitle"];
const titleMarkup = section.title ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Title
}, section.title) : null;
const sectionRole = actionRole === 'option' ? 'presentation' : undefined;
const sectionMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, titleMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("ul", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Actions,
role: sectionRole
}, actionMarkup));
return hasMultipleSections ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("li", {
className: _ActionList_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Section
}, sectionMarkup) : sectionMarkup;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ActionMenu": () => (/* binding */ ActionMenu),
/* harmony export */ "hasGroupsWithActions": () => (/* binding */ hasGroupsWithActions)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _components_Actions_Actions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Actions/Actions.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.js");
/* harmony import */ var _components_RollupActions_RollupActions_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/RollupActions/RollupActions.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.js");
/* harmony import */ var _ActionMenu_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ActionMenu.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.scss.js");
function ActionMenu({
actions = [],
groups = [],
rollup
}) {
if (actions.length === 0 && groups.length === 0) {
return null;
}
const actionMenuClassNames = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_ActionMenu_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.ActionMenu, rollup && _ActionMenu_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.rollup);
const rollupSections = groups.map(group => convertGroupToSection(group));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: actionMenuClassNames
}, rollup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_RollupActions_RollupActions_js__WEBPACK_IMPORTED_MODULE_3__.RollupActions, {
items: actions,
sections: rollupSections
}) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Actions_Actions_js__WEBPACK_IMPORTED_MODULE_4__.Actions, {
actions: actions,
groups: groups
}));
}
function hasGroupsWithActions(groups = []) {
return groups.length === 0 ? false : groups.some(group => group.actions.length > 0);
}
function convertGroupToSection({
title,
actions
}) {
return {
title,
items: actions
};
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.scss.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.scss.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"ActionMenu": "Polaris-ActionMenu",
"rollup": "Polaris-ActionMenu--rollup"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Actions": () => (/* binding */ Actions)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/debounce */ "./node_modules/lodash/debounce.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_debounce__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _SecondaryAction_SecondaryAction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../SecondaryAction/SecondaryAction.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.js");
/* harmony import */ var _MenuGroup_MenuGroup_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../MenuGroup/MenuGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.js");
/* harmony import */ var _Actions_scss_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Actions.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.scss.js");
const ACTION_SPACING = 8;
function Actions({
actions = [],
groups = []
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_2__.useI18n)();
const actionsLayoutRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const menuGroupWidthRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);
const availableWidthRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);
const actionsAndGroupsLengthRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);
const timesMeasured = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);
const actionWidthsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]);
const [activeMenuGroup, setActiveMenuGroup] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(undefined);
const [measuredActions, setMeasuredActions] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({
showable: [],
rolledUp: []
});
const defaultRollupGroup = {
title: i18n.translate('Polaris.Actions.moreActions'),
actions: []
};
const lastMenuGroup = [...groups].pop();
const lastMenuGroupWidth = [...actionWidthsRef.current].pop() || 0;
const handleActionsOffsetWidth = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(width => {
actionWidthsRef.current = [...actionWidthsRef.current, width];
}, []);
const handleMenuGroupToggle = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(group => setActiveMenuGroup(activeMenuGroup ? undefined : group), [activeMenuGroup]);
const handleMenuGroupClose = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => setActiveMenuGroup(undefined), []);
const updateActions = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
let actionsAndGroups = [...actions, ...groups];
if (groups.length > 0) {
// We don't want to include actions from the last group
// since it is always rendered with its own actions
actionsAndGroups = [...actionsAndGroups].slice(0, actionsAndGroups.length - 1);
}
const showable = actionsAndGroups.slice(0, measuredActions.showable.length);
const rolledUp = actionsAndGroups.slice(measuredActions.showable.length, actionsAndGroups.length);
setMeasuredActions({
showable,
rolledUp
});
}, [actions, groups, measuredActions.showable.length]);
const measureActions = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
if (actionWidthsRef.current.length === 0 || availableWidthRef.current === 0) {
return;
}
const actionsAndGroups = [...actions, ...groups];
if (actionsAndGroups.length === 1) {
setMeasuredActions({
showable: actionsAndGroups,
rolledUp: []
});
return;
}
let currentAvailableWidth = availableWidthRef.current;
let newShowableActions = [];
let newRolledUpActions = [];
actionsAndGroups.forEach((action, index) => {
const canFitAction = actionWidthsRef.current[index] + menuGroupWidthRef.current + ACTION_SPACING + lastMenuGroupWidth <= currentAvailableWidth;
if (canFitAction) {
currentAvailableWidth -= actionWidthsRef.current[index] + ACTION_SPACING * 2;
newShowableActions = [...newShowableActions, action];
} else {
currentAvailableWidth = 0; // Find last group if it exists and always render it as a rolled up action below
if (action === lastMenuGroup) return;
newRolledUpActions = [...newRolledUpActions, action];
}
});
setMeasuredActions({
showable: newShowableActions,
rolledUp: newRolledUpActions
});
timesMeasured.current += 1;
actionsAndGroupsLengthRef.current = actionsAndGroups.length;
}, [actions, groups, lastMenuGroup, lastMenuGroupWidth]);
const handleResize = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default()(() => {
if (!actionsLayoutRef.current) return;
availableWidthRef.current = actionsLayoutRef.current.offsetWidth; // Set timesMeasured to 0 to allow re-measuring
timesMeasured.current = 0;
measureActions();
}, 50, {
leading: false,
trailing: true
}), [measureActions]);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (!actionsLayoutRef.current) {
return;
}
availableWidthRef.current = actionsLayoutRef.current.offsetWidth;
if ( // Allow measuring twice
// This accounts for the initial paint and re-flow
timesMeasured.current >= 2 && [...actions, ...groups].length === actionsAndGroupsLengthRef.current) {
updateActions();
return;
}
measureActions();
}, [actions, groups, measureActions, updateActions]);
const actionsMarkup = actions.map(action => {
if (measuredActions.showable.length > 0 || measuredActions.rolledUp.includes(action)) return null;
const {
content,
onAction
} = action,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectWithoutProperties)(action, ["content", "onAction"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_SecondaryAction_SecondaryAction_js__WEBPACK_IMPORTED_MODULE_4__.SecondaryAction, Object.assign({
key: content,
onClick: onAction
}, rest, {
getOffsetWidth: handleActionsOffsetWidth
}), content);
});
const rollUppableActionsMarkup = measuredActions.showable.length > 0 ? measuredActions.showable.map(action => action.content && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_SecondaryAction_SecondaryAction_js__WEBPACK_IMPORTED_MODULE_4__.SecondaryAction, Object.assign({
key: action.content
}, action, {
getOffsetWidth: handleActionsOffsetWidth
}), action.content)) : null;
const filteredGroups = [...groups, defaultRollupGroup].filter(group => {
return groups.length === 0 ? group : group === lastMenuGroup || !measuredActions.rolledUp.some(rolledUpGroup => isMenuGroup(rolledUpGroup) && rolledUpGroup.title === group.title);
});
const groupsMarkup = filteredGroups.map(group => {
const {
title,
actions: groupActions
} = group,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectWithoutProperties)(group, ["title", "actions"]);
const isDefaultGroup = group === defaultRollupGroup;
const isLastMenuGroup = group === lastMenuGroup;
const finalRolledUpActions = measuredActions.rolledUp.reduce((memo, action) => {
memo.push(...(isMenuGroup(action) ? action.actions : [action]));
return memo;
}, []);
if (!isDefaultGroup && !isLastMenuGroup) {
// Render a normal MenuGroup with just its actions
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_MenuGroup_MenuGroup_js__WEBPACK_IMPORTED_MODULE_5__.MenuGroup, Object.assign({
key: title,
title: title,
active: title === activeMenuGroup,
actions: groupActions
}, rest, {
onOpen: handleMenuGroupToggle,
onClose: handleMenuGroupClose,
getOffsetWidth: handleActionsOffsetWidth
}));
} else if (!isDefaultGroup && isLastMenuGroup) {
// render the last, rollup group with its actions and finalRolledupActions
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_MenuGroup_MenuGroup_js__WEBPACK_IMPORTED_MODULE_5__.MenuGroup, Object.assign({
key: title,
title: title,
active: title === activeMenuGroup,
actions: [...finalRolledUpActions, ...groupActions]
}, rest, {
onOpen: handleMenuGroupToggle,
onClose: handleMenuGroupClose,
getOffsetWidth: handleActionsOffsetWidth
}));
} else if (isDefaultGroup && groups.length === 0 && finalRolledUpActions.length) {
// Render the default group to rollup into if one does not exist
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_MenuGroup_MenuGroup_js__WEBPACK_IMPORTED_MODULE_5__.MenuGroup, Object.assign({
key: title,
title: title,
active: title === activeMenuGroup,
actions: finalRolledUpActions
}, rest, {
onOpen: handleMenuGroupToggle,
onClose: handleMenuGroupClose,
getOffsetWidth: handleActionsOffsetWidth
}));
}
});
const groupedActionsMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_6__.ButtonGroup, {
spacing: "extraTight"
}, rollUppableActionsMarkup, actionsMarkup, groupsMarkup);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Actions_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.ActionsLayout,
ref: actionsLayoutRef
}, groupedActionsMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_8__.EventListener, {
event: "resize",
handler: handleResize
}));
}
function isMenuGroup(actionOrMenuGroup) {
return 'title' in actionOrMenuGroup;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.scss.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/Actions/Actions.scss.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"ActionsLayout": "Polaris-ActionMenu-Actions__ActionsLayout"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "MenuGroup": () => (/* binding */ MenuGroup)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Popover_Popover_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../Popover/Popover.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js");
/* harmony import */ var _ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../ActionList/ActionList.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js");
/* harmony import */ var _SecondaryAction_SecondaryAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../SecondaryAction/SecondaryAction.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.js");
/* harmony import */ var _MenuGroup_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./MenuGroup.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.scss.js");
function MenuGroup({
accessibilityLabel,
active,
actions,
details,
title,
icon,
onClose,
onOpen,
getOffsetWidth
}) {
const handleClose = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
onClose(title);
}, [onClose, title]);
const handleOpen = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
onOpen(title);
}, [onOpen, title]);
const handleOffsetWidth = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(width => {
if (!getOffsetWidth) return;
getOffsetWidth(width);
}, [getOffsetWidth]);
const popoverActivator = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_SecondaryAction_SecondaryAction_js__WEBPACK_IMPORTED_MODULE_1__.SecondaryAction, {
disclosure: true,
icon: icon,
accessibilityLabel: accessibilityLabel,
onClick: handleOpen,
getOffsetWidth: handleOffsetWidth
}, title);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Popover_Popover_js__WEBPACK_IMPORTED_MODULE_2__.Popover, {
active: Boolean(active),
activator: popoverActivator,
preferredAlignment: "left",
onClose: handleClose,
hideOnPrint: true
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_3__.ActionList, {
items: actions,
onActionAnyItem: handleClose
}), details && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _MenuGroup_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Details
}, details));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.scss.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/MenuGroup/MenuGroup.scss.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Details": "Polaris-ActionMenu-MenuGroup__Details"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "RollupActions": () => (/* binding */ RollupActions)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/HorizontalDotsMinor.svg.mjs");
/* harmony import */ var _Popover_Popover_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../Popover/Popover.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js");
/* harmony import */ var _ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../ActionList/ActionList.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js");
/* harmony import */ var _Button_Button_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../Button/Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _RollupActions_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./RollupActions.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.scss.js");
function RollupActions({
items = [],
sections = []
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const {
value: rollupOpen,
toggle: toggleRollupOpen
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__.useToggle)(false);
if (items.length === 0 && sections.length === 0) {
return null;
}
const activatorMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _RollupActions_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.RollupActivator
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_4__.Button, {
outline: true,
icon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_5__.S,
accessibilityLabel: i18n.translate('Polaris.ActionMenu.RollupActions.rollupButton'),
onClick: toggleRollupOpen
}));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Popover_Popover_js__WEBPACK_IMPORTED_MODULE_6__.Popover, {
active: rollupOpen,
activator: activatorMarkup,
preferredAlignment: "right",
onClose: toggleRollupOpen,
hideOnPrint: true
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_7__.ActionList, {
items: items,
sections: sections,
onActionAnyItem: toggleRollupOpen
}));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.scss.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/RollupActions/RollupActions.scss.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"RollupActivator": "Polaris-ActionMenu-RollupActions__RollupActivator"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "SecondaryAction": () => (/* binding */ SecondaryAction)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _Button_Button_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Button/Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
/* harmony import */ var _SecondaryAction_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SecondaryAction.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.scss.js");
function SecondaryAction(_ref) {
let {
children,
onAction,
getOffsetWidth
} = _ref,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["children", "onAction", "getOffsetWidth"]);
const secondaryActionsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
var _secondaryActionsRef$;
if (!getOffsetWidth || !secondaryActionsRef.current) return;
getOffsetWidth((_secondaryActionsRef$ = secondaryActionsRef.current) == null ? void 0 : _secondaryActionsRef$.offsetWidth);
}, [getOffsetWidth]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _SecondaryAction_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.SecondaryAction,
ref: secondaryActionsRef
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_3__.Button, Object.assign({
onClick: onAction
}, rest), children));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.scss.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/components/SecondaryAction/SecondaryAction.scss.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"SecondaryAction": "Polaris-ActionMenu-SecondaryAction"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/AppProvider/AppProvider.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/AppProvider/AppProvider.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "AppProvider": () => (/* binding */ AppProvider)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var focus_visible_dist_focus_visible__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! focus-visible/dist/focus-visible */ "./node_modules/focus-visible/dist/focus-visible.js");
/* harmony import */ var focus_visible_dist_focus_visible__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(focus_visible_dist_focus_visible__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _ThemeProvider_ThemeProvider_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../ThemeProvider/ThemeProvider.js */ "./node_modules/@shopify/polaris/dist/esm/components/ThemeProvider/ThemeProvider.js");
/* harmony import */ var _MediaQueryProvider_MediaQueryProvider_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../MediaQueryProvider/MediaQueryProvider.js */ "./node_modules/@shopify/polaris/dist/esm/components/MediaQueryProvider/MediaQueryProvider.js");
/* harmony import */ var _utilities_unique_id_context_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utilities/unique-id/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/context.js");
/* harmony import */ var _utilities_unique_id_unique_id_factory_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/unique-id/unique-id-factory.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/unique-id-factory.js");
/* harmony import */ var _FocusManager_FocusManager_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../FocusManager/FocusManager.js */ "./node_modules/@shopify/polaris/dist/esm/components/FocusManager/FocusManager.js");
/* harmony import */ var _PortalsManager_PortalsManager_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../PortalsManager/PortalsManager.js */ "./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/PortalsManager.js");
/* harmony import */ var _utilities_i18n_context_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utilities/i18n/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/context.js");
/* harmony import */ var _utilities_i18n_I18n_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utilities/i18n/I18n.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/I18n.js");
/* harmony import */ var _utilities_scroll_lock_manager_context_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utilities/scroll-lock-manager/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/context.js");
/* harmony import */ var _utilities_scroll_lock_manager_scroll_lock_manager_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/scroll-lock-manager/scroll-lock-manager.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/scroll-lock-manager.js");
/* harmony import */ var _utilities_sticky_manager_context_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utilities/sticky-manager/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/context.js");
/* harmony import */ var _utilities_sticky_manager_sticky_manager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/sticky-manager/sticky-manager.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/sticky-manager.js");
/* harmony import */ var _utilities_link_context_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utilities/link/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/link/context.js");
/* harmony import */ var _utilities_features_context_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utilities/features/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/features/context.js");
class AppProvider extends react__WEBPACK_IMPORTED_MODULE_0__.Component {
constructor(props) {
super(props);
this.stickyManager = void 0;
this.scrollLockManager = void 0;
this.uniqueIdFactory = void 0;
this.stickyManager = new _utilities_sticky_manager_sticky_manager_js__WEBPACK_IMPORTED_MODULE_2__.StickyManager();
this.scrollLockManager = new _utilities_scroll_lock_manager_scroll_lock_manager_js__WEBPACK_IMPORTED_MODULE_3__.ScrollLockManager();
this.uniqueIdFactory = new _utilities_unique_id_unique_id_factory_js__WEBPACK_IMPORTED_MODULE_4__.UniqueIdFactory(_utilities_unique_id_unique_id_factory_js__WEBPACK_IMPORTED_MODULE_4__.globalIdGeneratorFactory);
const {
i18n,
linkComponent
} = this.props; // eslint-disable-next-line react/state-in-constructor
this.state = {
link: linkComponent,
intl: new _utilities_i18n_I18n_js__WEBPACK_IMPORTED_MODULE_5__.I18n(i18n)
};
}
componentDidMount() {
if (document != null) {
this.stickyManager.setContainer(document);
}
}
componentDidUpdate({
i18n: prevI18n,
linkComponent: prevLinkComponent
}) {
const {
i18n,
linkComponent
} = this.props;
if (i18n === prevI18n && linkComponent === prevLinkComponent) {
return;
} // eslint-disable-next-line react/no-did-update-set-state
this.setState({
link: linkComponent,
intl: new _utilities_i18n_I18n_js__WEBPACK_IMPORTED_MODULE_5__.I18n(i18n)
});
}
render() {
const {
theme = {},
children
} = this.props;
const {
intl,
link
} = this.state;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_features_context_js__WEBPACK_IMPORTED_MODULE_6__.FeaturesContext.Provider, {
value: this.props.features || {}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_i18n_context_js__WEBPACK_IMPORTED_MODULE_7__.I18nContext.Provider, {
value: intl
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_scroll_lock_manager_context_js__WEBPACK_IMPORTED_MODULE_8__.ScrollLockManagerContext.Provider, {
value: this.scrollLockManager
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_sticky_manager_context_js__WEBPACK_IMPORTED_MODULE_9__.StickyManagerContext.Provider, {
value: this.stickyManager
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_unique_id_context_js__WEBPACK_IMPORTED_MODULE_10__.UniqueIdFactoryContext.Provider, {
value: this.uniqueIdFactory
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_link_context_js__WEBPACK_IMPORTED_MODULE_11__.LinkContext.Provider, {
value: link
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ThemeProvider_ThemeProvider_js__WEBPACK_IMPORTED_MODULE_12__.ThemeProvider, {
theme: theme
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_MediaQueryProvider_MediaQueryProvider_js__WEBPACK_IMPORTED_MODULE_13__.MediaQueryProvider, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PortalsManager_PortalsManager_js__WEBPACK_IMPORTED_MODULE_14__.PortalsManager, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_FocusManager_FocusManager_js__WEBPACK_IMPORTED_MODULE_15__.FocusManager, null, children))))))))));
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Badge": () => (/* binding */ Badge)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../VisuallyHidden/VisuallyHidden.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js");
/* harmony import */ var _utilities_within_filter_context_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/within-filter-context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/within-filter-context.js");
/* harmony import */ var _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Badge.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.scss.js");
const PROGRESS_LABELS = {
incomplete: 'incomplete',
partiallyComplete: 'partiallyComplete',
complete: 'complete'
};
const STATUS_LABELS = {
info: 'info',
success: 'success',
warning: 'warning',
critical: 'critical',
attention: 'attention',
new: 'new'
};
const DEFAULT_SIZE = 'medium';
function Badge({
children,
status,
progress,
size = DEFAULT_SIZE,
statusAndProgressLabelOverride
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const withinFilter = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_utilities_within_filter_context_js__WEBPACK_IMPORTED_MODULE_2__.WithinFilterContext);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(_Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Badge, status && _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.variationName)('status', status)], progress && _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.variationName)('progress', progress)], size && size !== DEFAULT_SIZE && _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.variationName)('size', size)], withinFilter && _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.withinFilter);
let progressLabel = '';
switch (progress) {
case PROGRESS_LABELS.incomplete:
progressLabel = i18n.translate('Polaris.Badge.PROGRESS_LABELS.incomplete');
break;
case PROGRESS_LABELS.partiallyComplete:
progressLabel = i18n.translate('Polaris.Badge.PROGRESS_LABELS.partiallyComplete');
break;
case PROGRESS_LABELS.complete:
progressLabel = i18n.translate('Polaris.Badge.PROGRESS_LABELS.complete');
break;
}
let statusLabel = '';
switch (status) {
case STATUS_LABELS.info:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.info');
break;
case STATUS_LABELS.success:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.success');
break;
case STATUS_LABELS.warning:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.warning');
break;
case STATUS_LABELS.critical:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.critical');
break;
case STATUS_LABELS.attention:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.attention');
break;
case STATUS_LABELS.new:
statusLabel = i18n.translate('Polaris.Badge.STATUS_LABELS.new');
break;
}
const accessibilityLabel = statusAndProgressLabelOverride ? statusAndProgressLabelOverride : i18n.translate('Polaris.Badge.progressAndStatus', {
progressLabel,
statusLabel
});
const hasAccessibilityLabel = progressLabel || statusLabel || statusAndProgressLabelOverride;
let accessibilityMarkup = hasAccessibilityLabel && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_5__.VisuallyHidden, null, accessibilityLabel);
if (progressLabel) {
accessibilityMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Badge_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Pip
}, accessibilityMarkup);
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: className
}, accessibilityMarkup, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.scss.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Badge/Badge.scss.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Badge": "Polaris-Badge",
"sizeSmall": "Polaris-Badge--sizeSmall",
"statusSuccess": "Polaris-Badge--statusSuccess",
"statusInfo": "Polaris-Badge--statusInfo",
"statusAttention": "Polaris-Badge--statusAttention",
"statusWarning": "Polaris-Badge--statusWarning",
"statusCritical": "Polaris-Badge--statusCritical",
"statusNew": "Polaris-Badge--statusNew",
"Pip": "Polaris-Badge__Pip",
"progressIncomplete": "Polaris-Badge--progressIncomplete",
"progressPartiallyComplete": "Polaris-Badge--progressPartiallyComplete",
"progressComplete": "Polaris-Badge--progressComplete",
"withinFilter": "Polaris-Badge--withinFilter"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Banner/Banner.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Banner/Banner.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Banner": () => (/* binding */ Banner)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CancelSmallMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CircleTickMajor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CircleInformationMajor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CircleAlertMajor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/DiamondAlertMajor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../UnstyledLink/UnstyledLink.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js");
/* harmony import */ var _UnstyledButton_UnstyledButton_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../UnstyledButton/UnstyledButton.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/UnstyledButton.js");
/* harmony import */ var _UnstyledButton_utils_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../UnstyledButton/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/utils.js");
/* harmony import */ var _Button_Button_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../Button/Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
/* harmony import */ var _utilities_within_content_context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/within-content-context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/within-content-context.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _Heading_Heading_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Heading/Heading.js */ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.js");
/* harmony import */ var _utilities_banner_context_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utilities/banner-context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/banner-context.js");
/* harmony import */ var _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Banner.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Banner/Banner.scss.js");
const Banner = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Banner({
icon,
action,
secondaryAction,
title,
children,
status,
onDismiss,
stopAnnouncements
}, bannerRef) {
const withinContentContainer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_utilities_within_content_context_js__WEBPACK_IMPORTED_MODULE_1__.WithinContentContext);
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__.useUniqueId)('Banner');
const {
wrapperRef,
handleKeyUp,
handleBlur,
handleMouseUp,
shouldShowFocus
} = useBannerFocus(bannerRef);
const {
defaultIcon,
iconColor,
ariaRoleType
} = useBannerAttributes(status);
const iconName = icon || defaultIcon;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(_Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Banner, status && _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.variationName)('status', status)], onDismiss && _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.hasDismiss, shouldShowFocus && _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.keyFocused, withinContentContainer ? _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.withinContentContainer : _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.withinPage);
let headingMarkup = null;
let headingID;
if (title) {
headingID = `${id}Heading`;
headingMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Heading,
id: headingID
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Heading_Heading_js__WEBPACK_IMPORTED_MODULE_5__.Heading, {
element: "p"
}, title));
}
const primaryActionMarkup = action ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.PrimaryAction
}, (0,_UnstyledButton_utils_js__WEBPACK_IMPORTED_MODULE_6__.unstyledButtonFrom)(action, {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Button
})) : null;
const secondaryActionMarkup = secondaryAction ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(SecondaryActionFrom, {
action: secondaryAction
}) : null;
const actionMarkup = action || secondaryAction ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Actions
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_7__.ButtonGroup, null, primaryActionMarkup, secondaryActionMarkup)) : null;
let contentMarkup = null;
let contentID;
if (children || actionMarkup) {
contentID = `${id}Content`;
contentMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Content,
id: contentID
}, children, actionMarkup);
}
const dismissButton = onDismiss && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Dismiss
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_8__.Button, {
plain: true,
icon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_9__.S,
onClick: onDismiss,
accessibilityLabel: "Dismiss notification"
}));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_banner_context_js__WEBPACK_IMPORTED_MODULE_10__.BannerContext.Provider, {
value: true
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
,
tabIndex: 0,
ref: wrapperRef,
role: ariaRoleType,
"aria-live": stopAnnouncements ? 'off' : 'polite',
onMouseUp: handleMouseUp,
onKeyUp: handleKeyUp,
onBlur: handleBlur,
"aria-labelledby": headingID,
"aria-describedby": contentID
}, dismissButton, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Ribbon
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_11__.Icon, {
source: iconName,
color: iconColor
})), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.ContentWrapper
}, headingMarkup, contentMarkup)));
});
function SecondaryActionFrom({
action
}) {
if (action.url) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_12__.UnstyledLink, {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.SecondaryAction,
url: action.url,
external: action.external
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Text
}, action.content));
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledButton_UnstyledButton_js__WEBPACK_IMPORTED_MODULE_13__.UnstyledButton, {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.SecondaryAction,
onClick: action.onAction
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Banner_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Text
}, action.content));
}
function useBannerAttributes(status) {
switch (status) {
case 'success':
return {
defaultIcon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_14__.S,
iconColor: 'success',
ariaRoleType: 'status'
};
case 'info':
return {
defaultIcon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_15__.S,
iconColor: 'highlight',
ariaRoleType: 'status'
};
case 'warning':
return {
defaultIcon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_16__.S,
iconColor: 'warning',
ariaRoleType: 'alert'
};
case 'critical':
return {
defaultIcon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_17__.S,
iconColor: 'critical',
ariaRoleType: 'alert'
};
default:
return {
defaultIcon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_15__.S,
iconColor: 'base',
ariaRoleType: 'status'
};
}
}
function useBannerFocus(bannerRef) {
const wrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const [shouldShowFocus, setShouldShowFocus] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(bannerRef, () => ({
focus: () => {
var _wrapperRef$current;
(_wrapperRef$current = wrapperRef.current) == null ? void 0 : _wrapperRef$current.focus();
setShouldShowFocus(true);
}
}), []);
const handleKeyUp = event => {
if (event.target === wrapperRef.current) {
setShouldShowFocus(true);
}
};
const handleBlur = () => setShouldShowFocus(false);
const handleMouseUp = event => {
event.currentTarget.blur();
setShouldShowFocus(false);
};
return {
wrapperRef,
handleKeyUp,
handleBlur,
handleMouseUp,
shouldShowFocus
};
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Banner/Banner.scss.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Banner/Banner.scss.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Banner": "Polaris-Banner",
"statusCritical": "Polaris-Banner--statusCritical",
"PrimaryAction": "Polaris-Banner__PrimaryAction",
"Button": "Polaris-Banner__Button",
"statusWarning": "Polaris-Banner--statusWarning",
"statusInfo": "Polaris-Banner--statusInfo",
"statusSuccess": "Polaris-Banner--statusSuccess",
"ContentWrapper": "Polaris-Banner__ContentWrapper",
"withinContentContainer": "Polaris-Banner--withinContentContainer",
"Dismiss": "Polaris-Banner__Dismiss",
"Ribbon": "Polaris-Banner__Ribbon",
"keyFocused": "Polaris-Banner--keyFocused",
"Actions": "Polaris-Banner__Actions",
"withinPage": "Polaris-Banner--withinPage",
"hasDismiss": "Polaris-Banner--hasDismiss",
"Heading": "Polaris-Banner__Heading",
"Content": "Polaris-Banner__Content",
"SecondaryAction": "Polaris-Banner__SecondaryAction",
"Text": "Polaris-Banner__Text",
"pressed": "Polaris-Banner--pressed"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Breadcrumbs": () => (/* binding */ Breadcrumbs)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/ArrowLeftMinor.svg.mjs");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../VisuallyHidden/VisuallyHidden.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js");
/* harmony import */ var _UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../UnstyledLink/UnstyledLink.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js");
/* harmony import */ var _Breadcrumbs_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Breadcrumbs.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.scss.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S
});
function Breadcrumbs({
breadcrumbs
}) {
const breadcrumb = breadcrumbs[breadcrumbs.length - 1];
if (breadcrumb == null) {
return null;
}
const {
content
} = breadcrumb;
const contentMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Breadcrumbs_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.ContentWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Breadcrumbs_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Icon
}, _ref), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_4__.VisuallyHidden, null, content));
const breadcrumbMarkup = 'url' in breadcrumb ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_5__.UnstyledLink, {
key: content,
url: breadcrumb.url,
className: _Breadcrumbs_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Breadcrumb,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_6__.handleMouseUpByBlurring,
"aria-label": breadcrumb.accessibilityLabel
}, contentMarkup) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", {
key: content,
className: _Breadcrumbs_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Breadcrumb,
onClick: breadcrumb.onAction,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_6__.handleMouseUpByBlurring,
type: "button",
"aria-label": breadcrumb.accessibilityLabel
}, contentMarkup);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("nav", {
role: "navigation"
}, breadcrumbMarkup);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.scss.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.scss.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Breadcrumb": "Polaris-Breadcrumbs__Breadcrumb",
"ContentWrapper": "Polaris-Breadcrumbs__ContentWrapper",
"Icon": "Polaris-Breadcrumbs__Icon",
"Content": "Polaris-Breadcrumbs__Content"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Button": () => (/* binding */ Button)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CaretDownMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/SelectMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CaretUpMinor.svg.mjs");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _Spinner_Spinner_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../Spinner/Spinner.js */ "./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.js");
/* harmony import */ var _Popover_Popover_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../Popover/Popover.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js");
/* harmony import */ var _ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../ActionList/ActionList.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js");
/* harmony import */ var _UnstyledButton_UnstyledButton_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../UnstyledButton/UnstyledButton.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/UnstyledButton.js");
/* harmony import */ var _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Button.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.scss.js");
const DEFAULT_SIZE = 'medium';
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S
});
function Button({
id,
children,
url,
disabled,
external,
download,
submit,
loading,
pressed,
accessibilityLabel,
role,
ariaControls,
ariaExpanded,
ariaDescribedBy,
onClick,
onFocus,
onBlur,
onKeyDown,
onKeyPress,
onKeyUp,
onMouseEnter,
onTouchStart,
icon,
primary,
outline,
destructive,
disclosure,
plain,
monochrome,
removeUnderline,
size = DEFAULT_SIZE,
textAlign,
fullWidth,
connectedDisclosure
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_3__.useI18n)();
const isDisabled = disabled || loading;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Button, primary && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.primary, outline && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.outline, destructive && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.destructive, isDisabled && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.disabled, loading && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.loading, plain && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.plain, pressed && !disabled && !url && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.pressed, monochrome && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.monochrome, size && size !== DEFAULT_SIZE && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.variationName)('size', size)], textAlign && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.variationName)('textAlign', textAlign)], fullWidth && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.fullWidth, icon && children == null && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.iconOnly, connectedDisclosure && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.connectedDisclosure, removeUnderline && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.removeUnderline);
const disclosureMarkup = disclosure ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Icon
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.DisclosureIcon, loading && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.hidden)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: loading ? 'placeholder' : getDisclosureIconSource(disclosure)
}))) : null;
const iconSource = isIconSource(icon) ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: loading ? 'placeholder' : icon
}) : icon;
const iconMarkup = iconSource ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Icon, loading && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.hidden)
}, iconSource) : null;
const childMarkup = children ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Text, removeUnderline && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.removeUnderline)
}, children) : null;
const spinnerSVGMarkup = loading ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Spinner
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Spinner_Spinner_js__WEBPACK_IMPORTED_MODULE_6__.Spinner, {
size: "small",
accessibilityLabel: i18n.translate('Polaris.Button.spinnerAccessibilityLabel')
})) : null;
const [disclosureActive, setDisclosureActive] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
const toggleDisclosureActive = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
setDisclosureActive(disclosureActive => !disclosureActive);
}, []);
let connectedDisclosureMarkup;
if (connectedDisclosure) {
const connectedDisclosureClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Button, primary && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.primary, outline && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.outline, size && size !== DEFAULT_SIZE && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.variationName)('size', size)], textAlign && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.variationName)('textAlign', textAlign)], destructive && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.destructive, connectedDisclosure.disabled && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.disabled, _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.iconOnly, _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.ConnectedDisclosure, monochrome && _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.monochrome);
const defaultLabel = i18n.translate('Polaris.Button.connectedDisclosureAccessibilityLabel');
const {
disabled: _disabled,
accessibilityLabel: disclosureLabel = defaultLabel
} = connectedDisclosure;
const connectedDisclosureActivator = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", {
type: "button",
className: connectedDisclosureClassName,
disabled: _disabled,
"aria-label": disclosureLabel,
"aria-describedby": ariaDescribedBy,
onClick: toggleDisclosureActive,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_7__.handleMouseUpByBlurring
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Icon
}, _ref));
connectedDisclosureMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Popover_Popover_js__WEBPACK_IMPORTED_MODULE_8__.Popover, {
active: disclosureActive,
onClose: toggleDisclosureActive,
activator: connectedDisclosureActivator,
preferredAlignment: "right"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_9__.ActionList, {
items: connectedDisclosure.actions,
onActionAnyItem: toggleDisclosureActive
}));
}
const commonProps = {
id,
className,
accessibilityLabel,
ariaDescribedBy,
role,
onClick,
onFocus,
onBlur,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_7__.handleMouseUpByBlurring,
onMouseEnter,
onTouchStart
};
const linkProps = {
url,
external,
download
};
const actionProps = {
submit,
disabled: isDisabled,
loading,
ariaControls,
ariaExpanded,
pressed,
onKeyDown,
onKeyUp,
onKeyPress
};
const buttonMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledButton_UnstyledButton_js__WEBPACK_IMPORTED_MODULE_10__.UnstyledButton, Object.assign({}, commonProps, linkProps, actionProps), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Content
}, spinnerSVGMarkup, iconMarkup, childMarkup, disclosureMarkup));
return connectedDisclosureMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Button_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.ConnectedDisclosureWrapper
}, buttonMarkup, connectedDisclosureMarkup) : buttonMarkup;
}
function isIconSource(x) {
return typeof x === 'string' || typeof x === 'object' && x.body || typeof x === 'function';
}
function getDisclosureIconSource(disclosure) {
if (disclosure === 'select') {
return _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_11__.S;
}
return disclosure === 'up' ? _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_12__.S : _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.scss.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Button/Button.scss.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Button": "Polaris-Button",
"pressed": "Polaris-Button--pressed",
"disabled": "Polaris-Button--disabled",
"connectedDisclosure": "Polaris-Button--connectedDisclosure",
"Content": "Polaris-Button__Content",
"plain": "Polaris-Button--plain",
"textAlignLeft": "Polaris-Button--textAlignLeft",
"textAlignCenter": "Polaris-Button--textAlignCenter",
"textAlignRight": "Polaris-Button--textAlignRight",
"Icon": "Polaris-Button__Icon",
"fullWidth": "Polaris-Button--fullWidth",
"hidden": "Polaris-Button--hidden",
"Spinner": "Polaris-Button__Spinner",
"primary": "Polaris-Button--primary",
"destructive": "Polaris-Button--destructive",
"outline": "Polaris-Button--outline",
"loading": "Polaris-Button--loading",
"removeUnderline": "Polaris-Button--removeUnderline",
"iconOnly": "Polaris-Button--iconOnly",
"sizeSlim": "Polaris-Button--sizeSlim",
"sizeLarge": "Polaris-Button--sizeLarge",
"monochrome": "Polaris-Button--monochrome",
"Text": "Polaris-Button__Text",
"ConnectedDisclosureWrapper": "Polaris-Button__ConnectedDisclosureWrapper",
"ConnectedDisclosure": "Polaris-Button__ConnectedDisclosure"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js":
/*!***************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "buttonFrom": () => (/* binding */ buttonFrom),
/* harmony export */ "buttonsFrom": () => (/* binding */ buttonsFrom)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _Button_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
function buttonsFrom(actions, overrides = {}) {
if (Array.isArray(actions)) {
return actions.map((action, index) => buttonFrom(action, overrides, index));
} else {
const action = actions;
return buttonFrom(action, overrides);
}
}
function buttonFrom(_ref, overrides, key) {
let {
content,
onAction
} = _ref,
action = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["content", "onAction"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_js__WEBPACK_IMPORTED_MODULE_2__.Button, Object.assign({
key: key,
onClick: onAction
}, action, overrides), content);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ButtonGroup": () => (/* binding */ ButtonGroup)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ButtonGroup.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.scss.js");
/* harmony import */ var _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/components/Item/Item.js");
function ButtonGroup({
children,
spacing,
segmented,
fullWidth,
connectedTop
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.ButtonGroup, spacing && _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[spacing], segmented && _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.segmented, fullWidth && _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.fullWidth);
const contents = (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.elementChildren)(children).map((child, index) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__.Item, {
button: child,
key: index
}));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className,
"data-buttongroup-segmented": segmented,
"data-buttongroup-connected-top": connectedTop,
"data-buttongroup-full-width": fullWidth
}, contents);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.scss.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.scss.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"ButtonGroup": "Polaris-ButtonGroup",
"Item": "Polaris-ButtonGroup__Item",
"Item-plain": "Polaris-ButtonGroup__Item--plain",
"segmented": "Polaris-ButtonGroup--segmented",
"Item-focused": "Polaris-ButtonGroup__Item--focused",
"fullWidth": "Polaris-ButtonGroup--fullWidth",
"extraTight": "Polaris-ButtonGroup--extraTight",
"tight": "Polaris-ButtonGroup--tight",
"loose": "Polaris-ButtonGroup--loose"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/components/Item/Item.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/components/Item/Item.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Item": () => (/* binding */ Item)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../ButtonGroup.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.scss.js");
function Item({
button
}) {
const {
value: focused,
setTrue: forceTrueFocused,
setFalse: forceFalseFocused
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__.useToggle)(false);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Item, focused && _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Item-focused"], button.props.plain && _ButtonGroup_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Item-plain"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className,
onFocus: forceTrueFocused,
onBlur: forceFalseFocused
}, button);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Card/Card.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Card": () => (/* binding */ Card)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Popover_Popover_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../Popover/Popover.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js");
/* harmony import */ var _ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../ActionList/ActionList.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionList/ActionList.js");
/* harmony import */ var _Button_Button_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../Button/Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
/* harmony import */ var _Button_utils_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../Button/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _utilities_within_content_context_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utilities/within-content-context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/within-content-context.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _Card_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Card.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js");
/* harmony import */ var _components_Header_Header_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/Header/Header.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Header/Header.js");
/* harmony import */ var _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/Section/Section.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Section/Section.js");
/* harmony import */ var _components_Subsection_Subsection_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./components/Subsection/Subsection.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Subsection/Subsection.js");
// TypeScript can't generate types that correctly infer the typing of
// subcomponents so explicitly state the subcomponents in the type definition.
// Letting this be implicit works in this project but fails in projects that use
// generated *.d.ts files.
const Card = function Card({
children,
title,
subdued,
sectioned,
actions,
primaryFooterAction,
secondaryFooterActions,
secondaryFooterActionsDisclosureText,
footerActionAlignment = 'right'
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const {
value: secondaryActionsPopoverOpen,
toggle: toggleSecondaryActionsPopoverOpen
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__.useToggle)(false);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(_Card_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Card, subdued && _Card_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.subdued);
const headerMarkup = title || actions ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Header_Header_js__WEBPACK_IMPORTED_MODULE_5__.Header, {
actions: actions,
title: title
}) : null;
const content = sectioned ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Section_Section_js__WEBPACK_IMPORTED_MODULE_6__.Section, null, children) : children;
const primaryFooterActionMarkup = primaryFooterAction ? (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_7__.buttonFrom)(primaryFooterAction, {
primary: true
}) : null;
let secondaryFooterActionsMarkup = null;
if (secondaryFooterActions && secondaryFooterActions.length) {
if (secondaryFooterActions.length === 1) {
secondaryFooterActionsMarkup = (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_7__.buttonFrom)(secondaryFooterActions[0]);
} else {
secondaryFooterActionsMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Popover_Popover_js__WEBPACK_IMPORTED_MODULE_8__.Popover, {
active: secondaryActionsPopoverOpen,
activator: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_9__.Button, {
disclosure: true,
onClick: toggleSecondaryActionsPopoverOpen
}, secondaryFooterActionsDisclosureText || i18n.translate('Polaris.Common.more')),
onClose: toggleSecondaryActionsPopoverOpen
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionList_ActionList_js__WEBPACK_IMPORTED_MODULE_10__.ActionList, {
items: secondaryFooterActions
})));
}
}
const footerMarkup = primaryFooterActionMarkup || secondaryFooterActionsMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(_Card_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Footer, footerActionAlignment === 'left' && _Card_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.LeftJustified)
}, footerActionAlignment === 'right' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_11__.ButtonGroup, null, secondaryFooterActionsMarkup, primaryFooterActionMarkup) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_11__.ButtonGroup, null, primaryFooterActionMarkup, secondaryFooterActionsMarkup)) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_within_content_context_js__WEBPACK_IMPORTED_MODULE_12__.WithinContentContext.Provider, {
value: true
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, headerMarkup, content, footerMarkup));
};
Card.Header = _components_Header_Header_js__WEBPACK_IMPORTED_MODULE_5__.Header;
Card.Section = _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_6__.Section;
Card.Subsection = _components_Subsection_Subsection_js__WEBPACK_IMPORTED_MODULE_13__.Subsection;
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Card": "Polaris-Card",
"subdued": "Polaris-Card--subdued",
"Header": "Polaris-Card__Header",
"Section": "Polaris-Card__Section",
"Section-fullWidth": "Polaris-Card__Section--fullWidth",
"Section-flush": "Polaris-Card__Section--flush",
"Section-subdued": "Polaris-Card__Section--subdued",
"SectionHeader": "Polaris-Card__SectionHeader",
"Subsection": "Polaris-Card__Subsection",
"Footer": "Polaris-Card__Footer",
"LeftJustified": "Polaris-Card__LeftJustified"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Header/Header.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Card/components/Header/Header.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Header": () => (/* binding */ Header)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Button_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../Button/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _Stack_Stack_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../Stack/Stack.js */ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.js");
/* harmony import */ var _Heading_Heading_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Heading/Heading.js */ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.js");
/* harmony import */ var _Card_scss_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../Card.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js");
function Header({
children,
title,
actions
}) {
const actionMarkup = actions ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_1__.ButtonGroup, null, (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_2__.buttonsFrom)(actions, {
plain: true
})) : null;
const titleMarkup = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(title) ? title : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Heading_Heading_js__WEBPACK_IMPORTED_MODULE_3__.Heading, null, title);
const headingMarkup = actionMarkup || children ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Stack_Stack_js__WEBPACK_IMPORTED_MODULE_4__.Stack, {
alignment: "baseline"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Stack_Stack_js__WEBPACK_IMPORTED_MODULE_4__.Stack.Item, {
fill: true
}, titleMarkup), actionMarkup, children) : titleMarkup;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Card_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Header
}, headingMarkup);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Section/Section.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Card/components/Section/Section.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Section": () => (/* binding */ Section)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Button_utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../Button/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _Stack_Stack_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../Stack/Stack.js */ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.js");
/* harmony import */ var _Card_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Card.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js");
/* harmony import */ var _Subheading_Subheading_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../Subheading/Subheading.js */ "./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.js");
function Section({
children,
title,
subdued,
flush,
fullWidth,
actions
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Card_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Section, flush && _Card_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-flush"], subdued && _Card_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-subdued"], fullWidth && _Card_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-fullWidth"]);
const actionMarkup = actions ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_3__.ButtonGroup, null, (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_4__.buttonsFrom)(actions, {
plain: true
})) : null;
const titleMarkup = typeof title === 'string' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Subheading_Subheading_js__WEBPACK_IMPORTED_MODULE_5__.Subheading, null, title) : title;
const titleAreaMarkup = titleMarkup || actionMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Card_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.SectionHeader
}, actionMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Stack_Stack_js__WEBPACK_IMPORTED_MODULE_6__.Stack, {
alignment: "baseline"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Stack_Stack_js__WEBPACK_IMPORTED_MODULE_6__.Stack.Item, {
fill: true
}, titleMarkup), actionMarkup) : titleMarkup) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, titleAreaMarkup, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Card/components/Subsection/Subsection.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Card/components/Subsection/Subsection.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Subsection": () => (/* binding */ Subsection)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Card_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../Card.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Card/Card.scss.js");
function Subsection({
children
}) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Card_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Subsection
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Checkbox/Checkbox.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Checkbox/Checkbox.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Checkbox": () => (/* binding */ Checkbox)
/* harmony export */ });
/* harmony import */ var _types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../types.js */ "./node_modules/@shopify/polaris/dist/esm/types.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/MinusMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/TickSmallMinor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../InlineError/InlineError.js */ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.js");
/* harmony import */ var _Choice_Choice_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Choice/Choice.js */ "./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.js");
/* harmony import */ var _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Checkbox.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Checkbox/Checkbox.scss.js");
const Checkbox = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Checkbox({
ariaDescribedBy: ariaDescribedByProp,
label,
labelHidden,
checked = false,
helpText,
disabled,
id: idProp,
name,
value,
error,
onChange,
onFocus,
onBlur
}, ref) {
const inputNode = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useUniqueId)('Checkbox', idProp);
const {
value: mouseOver,
setTrue: handleMouseOver,
setFalse: handleMouseOut
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_2__.useToggle)(false);
const [keyFocused, setKeyFocused] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, () => ({
focus: () => {
if (inputNode.current) {
inputNode.current.focus();
}
}
}));
const handleBlur = () => {
onBlur && onBlur();
setKeyFocused(false);
};
const handleInput = () => {
if (onChange == null || inputNode.current == null || disabled) {
return;
}
onChange(!inputNode.current.checked, id);
inputNode.current.focus();
};
const handleKeyUp = event => {
const {
keyCode
} = event;
!keyFocused && setKeyFocused(true);
if (keyCode === _types_js__WEBPACK_IMPORTED_MODULE_3__.Key.Space) {
handleInput();
}
};
const describedBy = [];
if (error && typeof error !== 'boolean') {
describedBy.push((0,_InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_4__.errorTextID)(id));
}
if (helpText) {
describedBy.push((0,_Choice_Choice_js__WEBPACK_IMPORTED_MODULE_5__.helpTextID)(id));
}
if (ariaDescribedByProp) {
describedBy.push(ariaDescribedByProp);
}
const ariaDescribedBy = describedBy.length ? describedBy.join(' ') : undefined;
const wrapperClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Checkbox, error && _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.error);
const backdropClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Backdrop, mouseOver && _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.hover);
const isIndeterminate = checked === 'indeterminate';
const isChecked = !isIndeterminate && Boolean(checked);
const indeterminateAttributes = isIndeterminate ? {
indeterminate: 'true',
'aria-checked': 'mixed'
} : {
'aria-checked': isChecked
};
const iconSource = isIndeterminate ? _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_8__.S : _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_9__.S;
const inputClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Input, isIndeterminate && _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["Input-indeterminate"], keyFocused && _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.keyFocused);
return (
/*#__PURE__*/
/* eslint-disable jsx-a11y/no-redundant-roles */
react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Choice_Choice_js__WEBPACK_IMPORTED_MODULE_5__.Choice, {
id: id,
label: label,
labelHidden: labelHidden,
helpText: helpText,
error: error,
disabled: disabled,
onClick: handleInput,
onMouseOver: handleMouseOver,
onMouseOut: handleMouseOut
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: wrapperClassName
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("input", Object.assign({
onKeyUp: handleKeyUp,
ref: inputNode,
id: id,
name: name,
value: value,
type: "checkbox",
checked: isChecked,
disabled: disabled,
className: inputClassName,
onFocus: onFocus,
onBlur: handleBlur,
onClick: stopPropagation,
onChange: noop,
"aria-invalid": error != null,
"aria-describedby": ariaDescribedBy,
role: "checkbox"
}, indeterminateAttributes)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: backdropClassName
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Checkbox_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Icon
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_10__.Icon, {
source: iconSource
}))))
/* eslint-enable jsx-a11y/no-redundant-roles */
);
});
function noop() {}
function stopPropagation(event) {
event.stopPropagation();
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Checkbox/Checkbox.scss.js":
/*!*************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Checkbox/Checkbox.scss.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Checkbox": "Polaris-Checkbox",
"Input": "Polaris-Checkbox__Input",
"keyFocused": "Polaris-Checkbox--keyFocused",
"Backdrop": "Polaris-Checkbox__Backdrop",
"Input-indeterminate": "Polaris-Checkbox__Input--indeterminate",
"Icon": "Polaris-Checkbox__Icon",
"hover": "Polaris-Checkbox--hover",
"error": "Polaris-Checkbox--error"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Choice": () => (/* binding */ Choice),
/* harmony export */ "helpTextID": () => (/* binding */ helpTextID)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../InlineError/InlineError.js */ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.js");
/* harmony import */ var _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Choice.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.scss.js");
function Choice({
id,
label,
disabled,
error,
children,
labelHidden,
helpText,
onClick,
onMouseOut,
onMouseOver
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Choice, labelHidden && _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.labelHidden, disabled && _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.disabled);
const labelMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("label", {
className: className,
htmlFor: id,
onClick: onClick,
onMouseOver: onMouseOver,
onMouseOut: onMouseOut
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Control
}, children), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Label
}, label));
const helpTextMarkup = helpText ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.HelpText,
id: helpTextID(id)
}, helpText) : null;
const errorMarkup = error && typeof error !== 'boolean' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Error
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_3__.InlineError, {
message: error,
fieldID: id
}));
const descriptionMarkup = helpTextMarkup || errorMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Choice_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Descriptions
}, errorMarkup, helpTextMarkup) : null;
return descriptionMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", null, labelMarkup, descriptionMarkup) : labelMarkup;
}
function helpTextID(id) {
return `${id}HelpText`;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.scss.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Choice/Choice.scss.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Choice": "Polaris-Choice",
"labelHidden": "Polaris-Choice--labelHidden",
"Label": "Polaris-Choice__Label",
"Control": "Polaris-Choice__Control",
"disabled": "Polaris-Choice--disabled",
"Descriptions": "Polaris-Choice__Descriptions",
"HelpText": "Polaris-Choice__HelpText"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ColorPicker": () => (/* binding */ ColorPicker)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_clamp_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/clamp.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js");
/* harmony import */ var _utilities_color_transformers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/color-transformers.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/color-transformers.js");
/* harmony import */ var _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ColorPicker.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js");
/* harmony import */ var _components_Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/Slidable/Slidable.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/Slidable/Slidable.js");
/* harmony import */ var _components_AlphaPicker_AlphaPicker_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/AlphaPicker/AlphaPicker.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/AlphaPicker.js");
/* harmony import */ var _components_HuePicker_HuePicker_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/HuePicker/HuePicker.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/HuePicker.js");
class ColorPicker extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(...args) {
super(...args);
this.state = {
pickerSize: 0
};
this.colorNode = null;
this.setColorNode = node => {
this.colorNode = node;
};
this.handleHueChange = hue => {
const {
color: {
brightness,
saturation,
alpha = 1
},
onChange
} = this.props;
onChange({
hue,
brightness,
saturation,
alpha
});
};
this.handleAlphaChange = alpha => {
const {
color: {
hue,
brightness,
saturation
},
onChange
} = this.props;
onChange({
hue,
brightness,
saturation,
alpha
});
};
this.handleDraggerMove = ({
x,
y
}) => {
const {
pickerSize
} = this.state;
const {
color: {
hue,
alpha = 1
},
onChange
} = this.props;
const saturation = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_1__.clamp)(x / pickerSize, 0, 1);
const brightness = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_1__.clamp)(1 - y / pickerSize, 0, 1);
onChange({
hue,
saturation,
brightness,
alpha
});
};
this.handlePickerDrag = event => {
// prevents external elements from being selected
event.preventDefault();
};
}
componentDidMount() {
const {
colorNode
} = this;
if (colorNode == null) {
return;
}
this.setState({
pickerSize: colorNode.clientWidth
});
if (true) {
setTimeout(() => {
this.setState({
pickerSize: colorNode.clientWidth
});
}, 0);
}
}
render() {
const {
id,
color,
allowAlpha
} = this.props;
const {
hue,
saturation,
brightness,
alpha: providedAlpha
} = color;
const {
pickerSize
} = this.state;
const alpha = providedAlpha != null && allowAlpha ? providedAlpha : 1;
const {
red,
green,
blue
} = (0,_utilities_color_transformers_js__WEBPACK_IMPORTED_MODULE_2__.hsbToRgb)({
hue,
saturation: 1,
brightness: 1
});
const colorString = `rgba(${red}, ${green}, ${blue}, ${alpha})`;
const draggerX = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_1__.clamp)(saturation * pickerSize, 0, pickerSize);
const draggerY = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_1__.clamp)(pickerSize - brightness * pickerSize, 0, pickerSize);
const alphaSliderMarkup = allowAlpha ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_AlphaPicker_AlphaPicker_js__WEBPACK_IMPORTED_MODULE_3__.AlphaPicker, {
alpha: alpha,
color: color,
onChange: this.handleAlphaChange
}) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.ColorPicker,
id: id,
onMouseDown: this.handlePickerDrag
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
ref: this.setColorNode,
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.MainColor
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.ColorLayer,
style: {
backgroundColor: colorString
}
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_5__.Slidable, {
onChange: this.handleDraggerMove,
draggerX: draggerX,
draggerY: draggerY
})), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_HuePicker_HuePicker_js__WEBPACK_IMPORTED_MODULE_6__.HuePicker, {
hue: hue,
onChange: this.handleHueChange
}), alphaSliderMarkup);
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"ColorPicker": "Polaris-ColorPicker",
"MainColor": "Polaris-ColorPicker__MainColor",
"Dragger": "Polaris-ColorPicker__Dragger",
"ColorLayer": "Polaris-ColorPicker__ColorLayer",
"HuePicker": "Polaris-ColorPicker__HuePicker",
"AlphaPicker": "Polaris-ColorPicker__AlphaPicker",
"Slidable": "Polaris-ColorPicker__Slidable"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/AlphaPicker.js":
/*!*************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/AlphaPicker.js ***!
\*************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "AlphaPicker": () => (/* binding */ AlphaPicker)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_color_transformers_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../utilities/color-transformers.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/color-transformers.js");
/* harmony import */ var _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../ColorPicker.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js");
/* harmony import */ var _Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../Slidable/Slidable.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/Slidable/Slidable.js");
/* harmony import */ var _utilities_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utilities.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/utilities.js");
class AlphaPicker extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(...args) {
super(...args);
this.state = {
sliderHeight: 0,
draggerHeight: 0
};
this.setSliderHeight = node => {
if (node == null) {
return;
}
this.setState({
sliderHeight: node.clientHeight
});
if (true) {
setTimeout(() => {
this.setState({
sliderHeight: node.clientHeight
});
}, 0);
}
};
this.setDraggerHeight = height => {
this.setState({
draggerHeight: height
});
};
this.handleChange = ({
y
}) => {
const {
onChange
} = this.props;
const {
sliderHeight
} = this.state;
const alpha = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_1__.alphaForDraggerY)(y, sliderHeight);
onChange(alpha);
};
}
render() {
const {
color,
alpha
} = this.props;
const {
sliderHeight,
draggerHeight
} = this.state;
const draggerY = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_1__.calculateDraggerY)(alpha, sliderHeight, draggerHeight);
const background = alphaGradientForColor(color);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.AlphaPicker,
ref: this.setSliderHeight
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.ColorLayer,
style: {
background
}
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_3__.Slidable, {
draggerY: draggerY,
draggerX: 0,
onChange: this.handleChange,
onDraggerHeight: this.setDraggerHeight
}));
}
}
function alphaGradientForColor(color) {
const {
red,
green,
blue
} = (0,_utilities_color_transformers_js__WEBPACK_IMPORTED_MODULE_4__.hsbToRgb)(color);
const rgb = `${red}, ${green}, ${blue}`;
return `linear-gradient(to top, rgba(${rgb}, 0) 18px, rgba(${rgb}, 1) calc(100% - 18px))`;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/utilities.js":
/*!***********************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/AlphaPicker/utilities.js ***!
\***********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "alphaForDraggerY": () => (/* binding */ alphaForDraggerY),
/* harmony export */ "alphaForOffset": () => (/* binding */ alphaForOffset),
/* harmony export */ "calculateDraggerY": () => (/* binding */ calculateDraggerY)
/* harmony export */ });
/* harmony import */ var _utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../utilities/clamp.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js");
const VERTICAL_PADDING = 13;
function calculateDraggerY(alpha, sliderHeight, draggerHeight) {
const offset = offsetForAlpha(alpha, sliderHeight, draggerHeight);
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(offset, 0, sliderHeight);
}
function alphaForDraggerY(y, sliderHeight) {
const offsetY = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(y, 0, sliderHeight);
return alphaForOffset(offsetY, sliderHeight);
}
function alphaForOffset(offset, sliderHeight) {
const selectionHeight = offset - VERTICAL_PADDING;
const slidableArea = sliderHeight - VERTICAL_PADDING * 2;
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(1 - selectionHeight / slidableArea, 0, 1);
}
function offsetForAlpha(alpha, sliderHeight, draggerHeight) {
const slidableArea = sliderHeight - (draggerHeight + VERTICAL_PADDING);
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)((1 - alpha) * slidableArea + VERTICAL_PADDING, 0, sliderHeight - draggerHeight);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/HuePicker.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/HuePicker.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "HuePicker": () => (/* binding */ HuePicker)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../ColorPicker.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js");
/* harmony import */ var _Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../Slidable/Slidable.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/Slidable/Slidable.js");
/* harmony import */ var _utilities_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utilities.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/utilities.js");
class HuePicker extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(...args) {
super(...args);
this.state = {
sliderHeight: 0,
draggerHeight: 0
};
this.setSliderHeight = node => {
if (node == null) {
return;
}
this.setState({
sliderHeight: node.clientHeight
});
if (true) {
setTimeout(() => {
this.setState({
sliderHeight: node.clientHeight
});
}, 0);
}
};
this.setDraggerHeight = height => {
this.setState({
draggerHeight: height
});
};
this.handleChange = ({
y
}) => {
const {
onChange
} = this.props;
const {
sliderHeight
} = this.state;
const hue = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_1__.hueForDraggerY)(y, sliderHeight);
onChange(hue);
};
}
render() {
const {
hue
} = this.props;
const {
sliderHeight,
draggerHeight
} = this.state;
const draggerY = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_1__.calculateDraggerY)(hue, sliderHeight, draggerHeight);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.HuePicker,
ref: this.setSliderHeight
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Slidable_Slidable_js__WEBPACK_IMPORTED_MODULE_3__.Slidable, {
draggerY: draggerY,
draggerX: 0,
onChange: this.handleChange,
onDraggerHeight: this.setDraggerHeight
}));
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/utilities.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/HuePicker/utilities.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "calculateDraggerY": () => (/* binding */ calculateDraggerY),
/* harmony export */ "hueForDraggerY": () => (/* binding */ hueForDraggerY)
/* harmony export */ });
/* harmony import */ var _utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../utilities/clamp.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js");
const VERTICAL_PADDING = 13;
function calculateDraggerY(hue, sliderHeight, draggerHeight) {
const offset = offsetForHue(hue, sliderHeight, draggerHeight);
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(offset, 0, sliderHeight);
}
function hueForDraggerY(y, sliderHeight) {
const offsetY = (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(y, 0, sliderHeight);
return hueForOffset(offsetY, sliderHeight);
}
function hueForOffset(offset, sliderHeight) {
const selectionHeight = offset - VERTICAL_PADDING;
const slidableArea = sliderHeight - VERTICAL_PADDING * 2;
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(selectionHeight / slidableArea * 360, 0, 360);
}
function offsetForHue(hue, sliderHeight, draggerHeight) {
const slidableArea = sliderHeight - (draggerHeight + VERTICAL_PADDING);
return (0,_utilities_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(hue / 360 * slidableArea + VERTICAL_PADDING, 0, sliderHeight - draggerHeight);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/Slidable/Slidable.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/components/Slidable/Slidable.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Slidable": () => (/* binding */ Slidable)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
/* harmony import */ var _utilities_target_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/target.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/target.js");
/* harmony import */ var _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../ColorPicker.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/ColorPicker/ColorPicker.scss.js");
let isDragging = false; // Required to solve a bug causing the underlying page/container to scroll
// while trying to drag the ColorPicker controls.
// This must be called as soon as possible to properly prevent the event.
// `passive: false` must also be set, as it seems webkit has changed the "default" behaviour
// https://bugs.webkit.org/show_bug.cgi?id=182521
if (!_utilities_target_js__WEBPACK_IMPORTED_MODULE_1__.isServer) {
window.addEventListener('touchmove', event => {
if (!isDragging) {
return;
}
event.preventDefault();
}, {
passive: false
});
}
class Slidable extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(...args) {
super(...args);
this.state = {
dragging: false
};
this.node = null;
this.draggerNode = null;
this.setDraggerNode = node => {
this.draggerNode = node;
};
this.setNode = node => {
this.node = node;
};
this.startDrag = event => {
if (isMouseDownEvent(event)) {
this.handleDraggerMove(event.clientX, event.clientY);
}
isDragging = true;
this.setState({
dragging: true
});
};
this.handleDragEnd = () => {
isDragging = false;
this.setState({
dragging: false
});
};
this.handleMove = event => {
event.stopImmediatePropagation();
event.stopPropagation();
if (event.cancelable) {
event.preventDefault();
}
if (isMouseMoveEvent(event)) {
this.handleDraggerMove(event.clientX, event.clientY);
return;
}
this.handleDraggerMove(event.touches[0].clientX, event.touches[0].clientY);
};
this.handleDraggerMove = (x, y) => {
if (this.node == null) {
return;
}
const {
onChange
} = this.props;
const rect = this.node.getBoundingClientRect();
const offsetX = x - rect.left;
const offsetY = y - rect.top;
onChange({
x: offsetX,
y: offsetY
});
};
}
componentDidMount() {
const {
onDraggerHeight
} = this.props;
if (onDraggerHeight == null) {
return;
}
const {
draggerNode
} = this;
if (draggerNode == null) {
return;
}
onDraggerHeight(draggerNode.clientWidth);
if (true) {
setTimeout(() => {
onDraggerHeight(draggerNode.clientWidth);
}, 0);
}
}
render() {
const {
dragging
} = this.state;
const {
draggerX = 0,
draggerY = 0
} = this.props;
const draggerPositioning = {
transform: `translate3d(${draggerX}px, ${draggerY}px, 0)`
};
const moveListener = dragging ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "mousemove",
handler: this.handleMove,
passive: false
}) : null;
const touchMoveListener = dragging ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "touchmove",
handler: this.handleMove,
passive: false
}) : null;
const endDragListener = dragging ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "mouseup",
handler: this.handleDragEnd
}) : null;
const touchEndListener = dragging ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "touchend",
handler: this.handleDragEnd
}) : null;
const touchCancelListener = dragging ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "touchcancel",
handler: this.handleDragEnd
}) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
ref: this.setNode,
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Slidable,
onMouseDown: this.startDrag,
onTouchStart: this.startDrag
}, endDragListener, moveListener, touchMoveListener, touchEndListener, touchCancelListener, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
style: draggerPositioning,
className: _ColorPicker_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Dragger,
ref: this.setDraggerNode
}));
}
}
function isMouseMoveEvent(event) {
return event.type === 'mousemove';
}
function isMouseDownEvent(event) {
return event.type === 'mousedown';
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.js":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Connected": () => (/* binding */ Connected)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Connected_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Connected.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.scss.js");
/* harmony import */ var _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/Connected/components/Item/Item.js");
function Connected({
children,
left,
right
}) {
const leftConnectionMarkup = left ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Item_Item_js__WEBPACK_IMPORTED_MODULE_1__.Item, {
position: "left"
}, left) : null;
const rightConnectionMarkup = right ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Item_Item_js__WEBPACK_IMPORTED_MODULE_1__.Item, {
position: "right"
}, right) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Connected_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Connected
}, leftConnectionMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Item_Item_js__WEBPACK_IMPORTED_MODULE_1__.Item, {
position: "primary"
}, children), rightConnectionMarkup);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.scss.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.scss.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Connected": "Polaris-Connected",
"Item": "Polaris-Connected__Item",
"Item-primary": "Polaris-Connected__Item--primary",
"Item-focused": "Polaris-Connected__Item--focused"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Connected/components/Item/Item.js":
/*!*********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Connected/components/Item/Item.js ***!
\*********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Item": () => (/* binding */ Item)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _Connected_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../Connected.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.scss.js");
function Item({
children,
position
}) {
const {
value: focused,
setTrue: forceTrueFocused,
setFalse: forceFalseFocused
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__.useToggle)(false);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Connected_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Item, focused && _Connected_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Item-focused"], position === 'primary' ? _Connected_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Item-primary"] : _Connected_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Item-connection"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
onBlur: forceFalseFocused,
onFocus: forceTrueFocused,
className: className
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js":
/*!******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "EventListener": () => (/* binding */ EventListener)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
// see https://github.com/oliviertassinari/react-event-listener/
class EventListener extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
componentDidMount() {
this.attachListener();
}
componentDidUpdate(_ref) {
let detachProps = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["passive"]);
this.detachListener(detachProps);
this.attachListener();
}
componentWillUnmount() {
this.detachListener();
}
render() {
return null;
}
attachListener() {
const {
event,
handler,
capture,
passive
} = this.props;
window.addEventListener(event, handler, {
capture,
passive
});
}
detachListener(prevProps) {
const {
event,
handler,
capture
} = prevProps || this.props;
window.removeEventListener(event, handler, capture);
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/FocusManager/FocusManager.js":
/*!****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/FocusManager/FocusManager.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "FocusManager": () => (/* binding */ FocusManager)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_focus_manager_context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/focus-manager/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus-manager/context.js");
function FocusManager({
children
}) {
const [trapFocusList, setTrapFocusList] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]);
const add = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(id => {
setTrapFocusList(list => [...list, id]);
}, []);
const remove = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(id => {
let removed = true;
setTrapFocusList(list => {
const clone = [...list];
const index = clone.indexOf(id);
if (index === -1) {
removed = false;
} else {
clone.splice(index, 1);
}
return clone;
});
return removed;
}, []);
const value = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
trapFocusList,
add,
remove
}), [add, trapFocusList, remove]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_focus_manager_context_js__WEBPACK_IMPORTED_MODULE_1__.FocusManagerContext.Provider, {
value: value
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Form/Form.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Form/Form.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Form": () => (/* binding */ Form)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../VisuallyHidden/VisuallyHidden.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js");
function Form({
acceptCharset,
action,
autoComplete,
children,
encType,
implicitSubmit = true,
method = 'post',
name,
noValidate,
preventDefault = true,
target,
onSubmit
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const handleSubmit = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(event => {
if (!preventDefault) {
return;
}
event.preventDefault();
onSubmit(event);
}, [onSubmit, preventDefault]);
const autoCompleteInputs = normalizeAutoComplete(autoComplete);
const submitMarkup = implicitSubmit ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_2__.VisuallyHidden, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", {
type: "submit",
"aria-hidden": "true",
tabIndex: -1
}, i18n.translate('Polaris.Common.submit'))) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("form", {
acceptCharset: acceptCharset,
action: action,
autoComplete: autoCompleteInputs,
encType: encType,
method: method,
name: name,
noValidate: noValidate,
target: target,
onSubmit: handleSubmit
}, children, submitMarkup);
}
function normalizeAutoComplete(autoComplete) {
if (autoComplete == null) {
return autoComplete;
}
return autoComplete ? 'on' : 'off';
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "FormLayout": () => (/* binding */ FormLayout)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FormLayout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.scss.js");
/* harmony import */ var _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Item/Item.js");
/* harmony import */ var _components_Group_Group_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/Group/Group.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Group/Group.js");
const FormLayout = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.memo)(function FormLayout({
children
}) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.FormLayout
}, react__WEBPACK_IMPORTED_MODULE_0__.Children.map(children, wrapChildren));
});
FormLayout.Group = _components_Group_Group_js__WEBPACK_IMPORTED_MODULE_2__.Group;
function wrapChildren(child, index) {
if ((0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.isElementOfType)(child, _components_Group_Group_js__WEBPACK_IMPORTED_MODULE_2__.Group)) {
return child;
}
const props = {
key: index
};
return (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.wrapWithComponent)(child, _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__.Item, props);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.scss.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.scss.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"FormLayout": "Polaris-FormLayout",
"Title": "Polaris-FormLayout__Title",
"Items": "Polaris-FormLayout__Items",
"HelpText": "Polaris-FormLayout__HelpText",
"Item": "Polaris-FormLayout__Item",
"grouped": "Polaris-FormLayout--grouped",
"condensed": "Polaris-FormLayout--condensed"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Group/Group.js":
/*!************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Group/Group.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Group": () => (/* binding */ Group)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../FormLayout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.scss.js");
/* harmony import */ var _Item_Item_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Item/Item.js");
function Group({
children,
condensed,
title,
helpText
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(condensed ? _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.condensed : _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.grouped);
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__.useUniqueId)('FormLayoutGroup');
let helpTextElement = null;
let helpTextID;
let titleElement = null;
let titleID;
if (helpText) {
helpTextID = `${id}HelpText`;
helpTextElement = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: helpTextID,
className: _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.HelpText
}, helpText);
}
if (title) {
titleID = `${id}Title`;
titleElement = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: titleID,
className: _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Title
}, title);
}
const itemsMarkup = react__WEBPACK_IMPORTED_MODULE_0__.Children.map(children, child => (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_4__.wrapWithComponent)(child, _Item_Item_js__WEBPACK_IMPORTED_MODULE_5__.Item, {}));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
role: "group",
className: className,
"aria-labelledby": titleID,
"aria-describedby": helpTextID
}, titleElement, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Items
}, itemsMarkup), helpTextElement);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Item/Item.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/FormLayout/components/Item/Item.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Item": () => (/* binding */ Item)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../FormLayout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/FormLayout/FormLayout.scss.js");
function Item(props) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _FormLayout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Item
}, props.children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Heading": () => (/* binding */ Heading)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Heading_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Heading.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.scss.js");
function Heading({
element: Element = 'h2',
children
}) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Element, {
className: _Heading_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Heading
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.scss.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.scss.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Heading": "Polaris-Heading"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Icon": () => (/* binding */ Icon)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Icon.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.scss.js");
function Icon({
source,
color,
backdrop,
accessibilityLabel
}) {
let sourceType;
if (typeof source === 'function') {
sourceType = 'function';
} else if (source === 'placeholder') {
sourceType = 'placeholder';
} else {
sourceType = 'external';
}
if (color && sourceType === 'external') {
// eslint-disable-next-line no-console
console.warn('Recoloring external SVGs is not supported. Set the intended color on your SVG instead.');
}
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Icon, color && _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('color', color)], color && _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.applyColor, backdrop && _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.hasBackdrop);
const SourceComponent = source;
const contentMarkup = {
function: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(SourceComponent, {
className: _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Svg,
focusable: "false",
"aria-hidden": "true"
}),
placeholder: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Placeholder
}),
external: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("img", {
className: _Icon_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Img,
src: `data:image/svg+xml;utf8,${source}`,
alt: "",
"aria-hidden": "true"
})
};
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: className,
"aria-label": accessibilityLabel
}, contentMarkup[sourceType]);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.scss.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.scss.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Icon": "Polaris-Icon",
"applyColor": "Polaris-Icon--applyColor",
"hasBackdrop": "Polaris-Icon--hasBackdrop",
"colorBase": "Polaris-Icon--colorBase",
"colorSubdued": "Polaris-Icon--colorSubdued",
"colorCritical": "Polaris-Icon--colorCritical",
"colorWarning": "Polaris-Icon--colorWarning",
"colorHighlight": "Polaris-Icon--colorHighlight",
"colorSuccess": "Polaris-Icon--colorSuccess",
"colorPrimary": "Polaris-Icon--colorPrimary",
"Svg": "Polaris-Icon__Svg",
"Img": "Polaris-Icon__Img",
"Placeholder": "Polaris-Icon__Placeholder"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.js":
/*!**************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.js ***!
\**************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "InlineError": () => (/* binding */ InlineError),
/* harmony export */ "errorTextID": () => (/* binding */ errorTextID)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/AlertMinor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _InlineError_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./InlineError.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.scss.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S
});
function InlineError({
message,
fieldID
}) {
if (!message) {
return null;
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: errorTextID(fieldID),
className: _InlineError_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.InlineError
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _InlineError_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Icon
}, _ref), message);
}
function errorTextID(id) {
return `${id}Error`;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.scss.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.scss.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"InlineError": "Polaris-InlineError",
"Icon": "Polaris-InlineError__Icon"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/KeypressListener/KeypressListener.js":
/*!************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/KeypressListener/KeypressListener.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "KeypressListener": () => (/* binding */ KeypressListener)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
function KeypressListener({
keyCode,
handler,
keyEvent = 'keyup'
}) {
const handleKeyEvent = event => {
if (event.keyCode === keyCode) {
handler(event);
}
};
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
document.addEventListener(keyEvent, handleKeyEvent);
return () => {
document.removeEventListener(keyEvent, handleKeyEvent);
};
});
return null;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Label/Label.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Label/Label.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Label": () => (/* binding */ Label),
/* harmony export */ "labelID": () => (/* binding */ labelID)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Label_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Label.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Label/Label.scss.js");
function labelID(id) {
return `${id}Label`;
}
function Label({
children,
id,
hidden
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Label_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Label, hidden && _Label_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.hidden);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("label", {
id: labelID(id),
htmlFor: id,
className: _Label_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Text
}, children));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Label/Label.scss.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Label/Label.scss.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Label": "Polaris-Label",
"hidden": "Polaris-Label--hidden",
"Text": "Polaris-Label__Text"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "labelID": () => (/* reexport safe */ _Label_Label_js__WEBPACK_IMPORTED_MODULE_1__.labelID),
/* harmony export */ "Labelled": () => (/* binding */ Labelled),
/* harmony export */ "helpTextID": () => (/* binding */ helpTextID)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Button_utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Button/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js");
/* harmony import */ var _Label_Label_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Label/Label.js */ "./node_modules/@shopify/polaris/dist/esm/components/Label/Label.js");
/* harmony import */ var _InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../InlineError/InlineError.js */ "./node_modules/@shopify/polaris/dist/esm/components/InlineError/InlineError.js");
/* harmony import */ var _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Labelled.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.scss.js");
function Labelled(_ref) {
let {
id,
label,
error,
action,
helpText,
children,
labelHidden
} = _ref,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__.objectWithoutProperties)(_ref, ["id", "label", "error", "action", "helpText", "children", "labelHidden"]);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(labelHidden && _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.hidden);
const actionMarkup = action ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Action
}, (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_5__.buttonFrom)(action, {
plain: true
})) : null;
const helpTextMarkup = helpText ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.HelpText,
id: helpTextID(id)
}, helpText) : null;
const errorMarkup = error && typeof error !== 'boolean' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Error
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_InlineError_InlineError_js__WEBPACK_IMPORTED_MODULE_6__.InlineError, {
message: error,
fieldID: id
}));
const labelMarkup = label ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Labelled_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.LabelWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Label_Label_js__WEBPACK_IMPORTED_MODULE_1__.Label, Object.assign({
id: id
}, rest, {
hidden: false
}), label), actionMarkup) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, labelMarkup, children, errorMarkup, helpTextMarkup);
}
function helpTextID(id) {
return `${id}HelpText`;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.scss.js":
/*!*************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.scss.js ***!
\*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"hidden": "Polaris-Labelled--hidden",
"LabelWrapper": "Polaris-Labelled__LabelWrapper",
"HelpText": "Polaris-Labelled__HelpText",
"Error": "Polaris-Labelled__Error",
"Action": "Polaris-Labelled__Action"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Layout": () => (/* binding */ Layout)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Layout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.scss.js");
/* harmony import */ var _components_AnnotatedSection_AnnotatedSection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/AnnotatedSection/AnnotatedSection.js */ "./node_modules/@shopify/polaris/dist/esm/components/Layout/components/AnnotatedSection/AnnotatedSection.js");
/* harmony import */ var _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/Section/Section.js */ "./node_modules/@shopify/polaris/dist/esm/components/Layout/components/Section/Section.js");
const Layout = function Layout({
sectioned,
children
}) {
const content = sectioned ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Section_Section_js__WEBPACK_IMPORTED_MODULE_1__.Section, null, children) : children;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Layout
}, content);
};
Layout.AnnotatedSection = _components_AnnotatedSection_AnnotatedSection_js__WEBPACK_IMPORTED_MODULE_3__.AnnotatedSection;
Layout.Section = _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_1__.Section;
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.scss.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.scss.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Layout": "Polaris-Layout",
"Section": "Polaris-Layout__Section",
"Section-secondary": "Polaris-Layout__Section--secondary",
"Section-fullWidth": "Polaris-Layout__Section--fullWidth",
"Section-oneHalf": "Polaris-Layout__Section--oneHalf",
"Section-oneThird": "Polaris-Layout__Section--oneThird",
"AnnotatedSection": "Polaris-Layout__AnnotatedSection",
"AnnotationWrapper": "Polaris-Layout__AnnotationWrapper",
"AnnotationContent": "Polaris-Layout__AnnotationContent",
"Annotation": "Polaris-Layout__Annotation",
"AnnotationDescription": "Polaris-Layout__AnnotationDescription"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Layout/components/AnnotatedSection/AnnotatedSection.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Layout/components/AnnotatedSection/AnnotatedSection.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "AnnotatedSection": () => (/* binding */ AnnotatedSection)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Heading_Heading_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Heading/Heading.js */ "./node_modules/@shopify/polaris/dist/esm/components/Heading/Heading.js");
/* harmony import */ var _TextContainer_TextContainer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../TextContainer/TextContainer.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.js");
/* harmony import */ var _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../Layout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.scss.js");
function AnnotatedSection(props) {
const {
children,
title,
description
} = props;
const descriptionMarkup = typeof description === 'string' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", null, description) : description;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.AnnotatedSection
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.AnnotationWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Annotation
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_TextContainer_TextContainer_js__WEBPACK_IMPORTED_MODULE_2__.TextContainer, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Heading_Heading_js__WEBPACK_IMPORTED_MODULE_3__.Heading, null, title), descriptionMarkup && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.AnnotationDescription
}, descriptionMarkup))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Layout_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.AnnotationContent
}, children)));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Layout/components/Section/Section.js":
/*!************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Layout/components/Section/Section.js ***!
\************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Section": () => (/* binding */ Section)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Layout.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Layout/Layout.scss.js");
function Section({
children,
secondary,
fullWidth,
oneHalf,
oneThird
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Section, secondary && _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-secondary"], fullWidth && _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-fullWidth"], oneHalf && _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-oneHalf"], oneThird && _Layout_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Section-oneThird"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/MediaQueryProvider/MediaQueryProvider.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/MediaQueryProvider/MediaQueryProvider.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "MediaQueryProvider": () => (/* binding */ MediaQueryProvider)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/debounce */ "./node_modules/lodash/debounce.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_debounce__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _utilities_media_query_context_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/media-query/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/media-query/context.js");
/* harmony import */ var _utilities_breakpoints_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/breakpoints.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/breakpoints.js");
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
const MediaQueryProvider = function MediaQueryProvider({
children
}) {
const [isNavigationCollapsed, setIsNavigationCollapsed] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)((0,_utilities_breakpoints_js__WEBPACK_IMPORTED_MODULE_2__.navigationBarCollapsed)().matches); // eslint-disable-next-line react-hooks/exhaustive-deps
const handleResize = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default()(() => {
if (isNavigationCollapsed !== (0,_utilities_breakpoints_js__WEBPACK_IMPORTED_MODULE_2__.navigationBarCollapsed)().matches) {
setIsNavigationCollapsed(!isNavigationCollapsed);
}
}, 40, {
trailing: true,
leading: true,
maxWait: 40
}), [isNavigationCollapsed]);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
setIsNavigationCollapsed((0,_utilities_breakpoints_js__WEBPACK_IMPORTED_MODULE_2__.navigationBarCollapsed)().matches);
}, []);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_media_query_context_js__WEBPACK_IMPORTED_MODULE_3__.MediaQueryContext.Provider, {
value: {
isNavigationCollapsed
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_4__.EventListener, {
event: "resize",
handler: handleResize
}), children);
};
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/Page.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/Page.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Page": () => (/* binding */ Page)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _components_Header_Header_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Header/Header.js */ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.js");
/* harmony import */ var _Page_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Page.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Page/Page.scss.js");
function Page(_ref) {
let {
children,
fullWidth,
narrowWidth
} = _ref,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["children", "fullWidth", "narrowWidth"]);
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Page_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Page, fullWidth && _Page_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.fullWidth, narrowWidth && _Page_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.narrowWidth);
const hasHeaderContent = rest.title != null && rest.title !== '' || rest.primaryAction != null || rest.secondaryActions != null && rest.secondaryActions.length > 0 || rest.actionGroups != null && rest.actionGroups.length > 0 || rest.breadcrumbs != null && rest.breadcrumbs.length > 0;
const headerMarkup = hasHeaderContent ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Header_Header_js__WEBPACK_IMPORTED_MODULE_4__.Header, rest) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, headerMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Page_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Content
}, children));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/Page.scss.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/Page.scss.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Page": "Polaris-Page",
"fullWidth": "Polaris-Page--fullWidth",
"narrowWidth": "Polaris-Page--narrowWidth",
"Content": "Polaris-Page__Content"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Header": () => (/* binding */ Header),
/* harmony export */ "isPrimaryAction": () => (/* binding */ isPrimaryAction)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_media_query_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/media-query/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/media-query/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../TextStyle/TextStyle.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.js");
/* harmony import */ var _Button_utils_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../Button/utils.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/utils.js");
/* harmony import */ var _ActionMenu_ActionMenu_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../ActionMenu/ActionMenu.js */ "./node_modules/@shopify/polaris/dist/esm/components/ActionMenu/ActionMenu.js");
/* harmony import */ var _Breadcrumbs_Breadcrumbs_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Breadcrumbs/Breadcrumbs.js */ "./node_modules/@shopify/polaris/dist/esm/components/Breadcrumbs/Breadcrumbs.js");
/* harmony import */ var _Pagination_Pagination_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../Pagination/Pagination.js */ "./node_modules/@shopify/polaris/dist/esm/components/Pagination/Pagination.js");
/* harmony import */ var _components_Title_Title_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/Title/Title.js */ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.js");
/* harmony import */ var _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Header.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.scss.js");
function isPrimaryAction(x) {
return ! /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(x) && x !== undefined;
}
const SHORT_TITLE = 20;
const REALLY_SHORT_TITLE = 8;
const LONG_TITLE = 34;
function Header({
title,
subtitle,
titleMetadata,
additionalMetadata,
thumbnail,
titleHidden = false,
primaryAction,
pagination,
additionalNavigation,
breadcrumbs = [],
secondaryActions = [],
actionGroups = []
}) {
const {
isNavigationCollapsed
} = (0,_utilities_media_query_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useMediaQuery)();
const isSingleRow = !primaryAction && !pagination && !secondaryActions.length && !actionGroups.length;
const breadcrumbMarkup = breadcrumbs.length > 0 ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.BreadcrumbWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Breadcrumbs_Breadcrumbs_js__WEBPACK_IMPORTED_MODULE_3__.Breadcrumbs, {
breadcrumbs: breadcrumbs
})) : null;
const paginationMarkup = pagination && !isNavigationCollapsed ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.PaginationWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Pagination_Pagination_js__WEBPACK_IMPORTED_MODULE_4__.Pagination, pagination)) : null;
const additionalNavigationMarkup = additionalNavigation ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.AdditionalNavigationWrapper
}, additionalNavigation) : null;
const navigationMarkup = breadcrumbMarkup || paginationMarkup || additionalNavigationMarkup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Navigation
}, breadcrumbMarkup, additionalNavigationMarkup, paginationMarkup) : null;
const pageTitleMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.TitleWrapper
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Title_Title_js__WEBPACK_IMPORTED_MODULE_5__.Title, {
title: title,
subtitle: subtitle,
titleMetadata: titleMetadata,
thumbnail: thumbnail
}));
const primaryActionMarkup = primaryAction ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(PrimaryActionMarkup, {
primaryAction: primaryAction
}) : null;
const actionMenuMarkup = secondaryActions.length > 0 || (0,_ActionMenu_ActionMenu_js__WEBPACK_IMPORTED_MODULE_6__.hasGroupsWithActions)(actionGroups) ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionMenu_ActionMenu_js__WEBPACK_IMPORTED_MODULE_6__.ActionMenu, {
actions: secondaryActions,
groups: actionGroups,
rollup: isNavigationCollapsed
}) : null;
const additionalMetadataMarkup = additionalMetadata ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.AdditionalMetaData
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_7__.TextStyle, {
variation: "subdued"
}, additionalMetadata)) : null;
const headerClassNames = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_8__.classNames)(_Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Header, isSingleRow && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.isSingleRow, titleHidden && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.titleHidden, navigationMarkup && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.hasNavigation, actionMenuMarkup && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.hasActionMenu, isNavigationCollapsed && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.mobileView, !breadcrumbs.length && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.noBreadcrumbs, title && title.length < LONG_TITLE && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.mediumTitle, title && title.length > LONG_TITLE && _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.longTitle);
const {
slot1,
slot2,
slot3,
slot4,
slot5,
slot6
} = determineLayout({
actionMenuMarkup,
additionalMetadataMarkup,
additionalNavigationMarkup,
breadcrumbMarkup,
isNavigationCollapsed,
pageTitleMarkup,
paginationMarkup,
primaryActionMarkup,
title
});
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: headerClassNames
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_components_js__WEBPACK_IMPORTED_MODULE_9__.ConditionalRender, {
condition: [slot1, slot2, slot3, slot4].some(notNull)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Row
}, slot1, slot2, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_components_js__WEBPACK_IMPORTED_MODULE_9__.ConditionalRender, {
condition: [slot3, slot4].some(notNull)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.RightAlign
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_components_js__WEBPACK_IMPORTED_MODULE_9__.ConditionalWrapper, {
condition: [slot3, slot4].every(notNull),
wrapper: children => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Actions
}, children)
}, slot3, slot4))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_components_js__WEBPACK_IMPORTED_MODULE_9__.ConditionalRender, {
condition: [slot5, slot6].some(notNull)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Row
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.LeftAlign
}, slot5), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_components_js__WEBPACK_IMPORTED_MODULE_9__.ConditionalRender, {
condition: slot6 != null
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.RightAlign
}, slot6)))));
}
function PrimaryActionMarkup({
primaryAction
}) {
const {
isNavigationCollapsed
} = (0,_utilities_media_query_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useMediaQuery)();
let content = primaryAction;
if (isPrimaryAction(primaryAction)) {
const primary = primaryAction.primary === undefined ? true : primaryAction.primary;
content = (0,_Button_utils_js__WEBPACK_IMPORTED_MODULE_10__.buttonsFrom)(shouldShowIconOnly(isNavigationCollapsed, primaryAction), {
primary
});
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Header_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.PrimaryActionWrapper
}, content);
}
function shouldShowIconOnly(isMobile, action) {
let {
content,
accessibilityLabel,
icon
} = action;
if (icon == null) return (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_11__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_11__.objectSpread2)({}, action), {}, {
icon: undefined
});
if (isMobile) {
accessibilityLabel = accessibilityLabel || content;
content = undefined;
} else {
icon = undefined;
}
return (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_11__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_11__.objectSpread2)({}, action), {}, {
content,
accessibilityLabel,
icon
});
}
function notNull(value) {
return value != null;
}
function determineLayout({
actionMenuMarkup,
additionalMetadataMarkup,
additionalNavigationMarkup,
breadcrumbMarkup,
isNavigationCollapsed,
pageTitleMarkup,
paginationMarkup,
primaryActionMarkup,
title
}) {
// Header Layout
// |----------------------------------------------------|
// | slot1 | slot2 | | slot3 | slot4 |
// |----------------------------------------------------|
// | slot5 | | slot6 |
// |----------------------------------------------------|
//
const layouts = {
mobileCompact: {
slots: {
slot1: null,
slot2: pageTitleMarkup,
slot3: actionMenuMarkup,
slot4: primaryActionMarkup,
slot5: additionalMetadataMarkup,
slot6: additionalNavigationMarkup
},
condition: isNavigationCollapsed && breadcrumbMarkup == null && title != null && title.length <= REALLY_SHORT_TITLE
},
mobileDefault: {
slots: {
slot1: breadcrumbMarkup,
slot2: pageTitleMarkup,
slot3: actionMenuMarkup,
slot4: primaryActionMarkup,
slot5: additionalMetadataMarkup,
slot6: additionalNavigationMarkup
},
condition: isNavigationCollapsed
},
desktopCompact: {
slots: {
slot1: breadcrumbMarkup,
slot2: pageTitleMarkup,
slot3: actionMenuMarkup,
slot4: primaryActionMarkup,
slot5: additionalMetadataMarkup,
slot6: additionalNavigationMarkup
},
condition: !isNavigationCollapsed && paginationMarkup == null && actionMenuMarkup == null && title != null && title.length <= SHORT_TITLE
},
desktopDefault: {
slots: {
slot1: breadcrumbMarkup,
slot2: pageTitleMarkup,
slot3: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, actionMenuMarkup, primaryActionMarkup),
slot4: paginationMarkup,
slot5: additionalMetadataMarkup,
slot6: additionalNavigationMarkup
},
condition: !isNavigationCollapsed
}
};
const layout = Object.values(layouts).find(layout => layout.condition) || layouts.desktopDefault;
return layout.slots;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.scss.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/Header.scss.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Header": "Polaris-Page-Header",
"titleHidden": "Polaris-Page-Header--titleHidden",
"TitleWrapper": "Polaris-Page-Header__TitleWrapper",
"Navigation": "Polaris-Page-Header__Navigation",
"hasActionMenu": "Polaris-Page-Header--hasActionMenu",
"mobileView": "Polaris-Page-Header--mobileView",
"BreadcrumbWrapper": "Polaris-Page-Header__BreadcrumbWrapper",
"PaginationWrapper": "Polaris-Page-Header__PaginationWrapper",
"AdditionalNavigationWrapper": "Polaris-Page-Header__AdditionalNavigationWrapper",
"MainContent": "Polaris-Page-Header__MainContent",
"TitleActionMenuWrapper": "Polaris-Page-Header__TitleActionMenuWrapper",
"hasNavigation": "Polaris-Page-Header--hasNavigation",
"PrimaryActionWrapper": "Polaris-Page-Header__PrimaryActionWrapper",
"ActionMenuWrapper": "Polaris-Page-Header__ActionMenuWrapper",
"Row": "Polaris-Page-Header__Row",
"RightAlign": "Polaris-Page-Header__RightAlign",
"LeftAlign": "Polaris-Page-Header__LeftAlign",
"noBreadcrumbs": "Polaris-Page-Header--noBreadcrumbs",
"AdditionalMetaData": "Polaris-Page-Header__AdditionalMetaData",
"Actions": "Polaris-Page-Header__Actions",
"longTitle": "Polaris-Page-Header--longTitle",
"mediumTitle": "Polaris-Page-Header--mediumTitle",
"isSingleRow": "Polaris-Page-Header--isSingleRow"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.js":
/*!************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.js ***!
\************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Title": () => (/* binding */ Title)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Title.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.scss.js");
function Title({
title,
subtitle,
titleMetadata,
thumbnail
}) {
const titleMarkup = title ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("h1", {
className: _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Title
}, title) : null;
const titleMetadataMarkup = titleMetadata ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.TitleMetadata
}, titleMetadata) : null;
const wrappedTitleMarkup = titleMetadata ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.TitleWithMetadataWrapper
}, titleMarkup, titleMetadataMarkup) : titleMarkup;
const subtitleMarkup = subtitle ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.SubTitle
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", null, subtitle)) : null;
const thumbnailMarkup = thumbnail ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", null, thumbnail) : null;
const pageTitleClassName = thumbnail ? _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.hasThumbnail : undefined;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: pageTitleClassName
}, thumbnailMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Title_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.TitleAndSubtitleWrapper
}, wrappedTitleMarkup, subtitleMarkup));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.scss.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Page/components/Header/components/Title/Title.scss.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Title": "Polaris-Header-Title",
"SubTitle": "Polaris-Header-Title__SubTitle",
"hasThumbnail": "Polaris-Header-Title--hasThumbnail",
"TitleAndSubtitleWrapper": "Polaris-Header-Title__TitleAndSubtitleWrapper",
"TitleWithMetadataWrapper": "Polaris-Header-Title__TitleWithMetadataWrapper",
"TitleMetadata": "Polaris-Header-Title__TitleMetadata"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Pagination/Pagination.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Pagination/Pagination.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Pagination": () => (/* binding */ Pagination)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/ChevronLeftMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/ChevronRightMinor.svg.mjs");
/* harmony import */ var _KeypressListener_KeypressListener_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../KeypressListener/KeypressListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/KeypressListener/KeypressListener.js");
/* harmony import */ var _TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../TextStyle/TextStyle.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.js");
/* harmony import */ var _Button_Button_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Button/Button.js */ "./node_modules/@shopify/polaris/dist/esm/components/Button/Button.js");
/* harmony import */ var _ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../ButtonGroup/ButtonGroup.js */ "./node_modules/@shopify/polaris/dist/esm/components/ButtonGroup/ButtonGroup.js");
/* harmony import */ var _utilities_is_input_focused_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utilities/is-input-focused.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/is-input-focused.js");
/* harmony import */ var _Tooltip_Tooltip_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Tooltip/Tooltip.js */ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/Tooltip.js");
function Pagination({
hasNext,
hasPrevious,
nextURL,
previousURL,
onNext,
onPrevious,
nextTooltip,
previousTooltip,
nextKeys,
previousKeys,
accessibilityLabel,
accessibilityLabels,
label
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const node = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)();
const navLabel = accessibilityLabel || i18n.translate('Polaris.Pagination.pagination');
const previousLabel = (accessibilityLabels == null ? void 0 : accessibilityLabels.previous) || i18n.translate('Polaris.Pagination.previous');
const nextLabel = (accessibilityLabels == null ? void 0 : accessibilityLabels.next) || i18n.translate('Polaris.Pagination.next');
const prev = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_2__.Button, {
outline: true,
icon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_3__.S,
accessibilityLabel: previousLabel,
url: previousURL,
onClick: onPrevious,
disabled: !hasPrevious,
id: "previousURL"
});
const constructedPrevious = previousTooltip && hasPrevious ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Tooltip_Tooltip_js__WEBPACK_IMPORTED_MODULE_4__.Tooltip, {
activatorWrapper: "span",
content: previousTooltip
}, prev) : prev;
const next = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Button_Button_js__WEBPACK_IMPORTED_MODULE_2__.Button, {
outline: true,
icon: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_5__.S,
accessibilityLabel: nextLabel,
url: nextURL,
onClick: onNext,
disabled: !hasNext,
id: "nextURL"
});
const constructedNext = nextTooltip && hasNext ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Tooltip_Tooltip_js__WEBPACK_IMPORTED_MODULE_4__.Tooltip, {
activatorWrapper: "span",
content: nextTooltip
}, next) : next;
const previousHandler = onPrevious || noop;
const previousButtonEvents = previousKeys && (previousURL || onPrevious) && hasPrevious && previousKeys.map(key => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_KeypressListener_KeypressListener_js__WEBPACK_IMPORTED_MODULE_6__.KeypressListener, {
key: key,
keyCode: key,
handler: previousURL ? handleCallback(clickPaginationLink('previousURL', node)) : handleCallback(previousHandler)
}));
const nextHandler = onNext || noop;
const nextButtonEvents = nextKeys && (nextURL || onNext) && hasNext && nextKeys.map(key => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_KeypressListener_KeypressListener_js__WEBPACK_IMPORTED_MODULE_6__.KeypressListener, {
key: key,
keyCode: key,
handler: nextURL ? handleCallback(clickPaginationLink('nextURL', node)) : handleCallback(nextHandler)
}));
const labelTextMarkup = hasNext && hasPrevious ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_7__.TextStyle, null, label) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_TextStyle_TextStyle_js__WEBPACK_IMPORTED_MODULE_7__.TextStyle, {
variation: "subdued"
}, label);
const labelMarkup = label ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
"aria-live": "polite"
}, labelTextMarkup) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("nav", {
"aria-label": navLabel,
ref: node
}, previousButtonEvents, nextButtonEvents, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonGroup_ButtonGroup_js__WEBPACK_IMPORTED_MODULE_8__.ButtonGroup, {
segmented: !label
}, constructedPrevious, labelMarkup, constructedNext));
}
function clickPaginationLink(id, node) {
return () => {
if (node.current == null) {
return;
}
const link = node.current.querySelector(`#${id}`);
if (link) {
link.click();
}
};
}
function handleCallback(fn) {
return () => {
if ((0,_utilities_is_input_focused_js__WEBPACK_IMPORTED_MODULE_9__.isInputFocused)()) {
return;
}
fn();
};
}
function noop() {}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PopoverCloseSource": () => (/* reexport safe */ _components_PopoverOverlay_PopoverOverlay_js__WEBPACK_IMPORTED_MODULE_1__.PopoverCloseSource),
/* harmony export */ "Popover": () => (/* binding */ Popover)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _Portal_Portal_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../Portal/Portal.js */ "./node_modules/@shopify/polaris/dist/esm/components/Portal/Portal.js");
/* harmony import */ var _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/Section/Section.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Section/Section.js");
/* harmony import */ var _components_Pane_Pane_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/Pane/Pane.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Pane/Pane.js");
/* harmony import */ var _components_PopoverOverlay_PopoverOverlay_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/PopoverOverlay/PopoverOverlay.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/PopoverOverlay/PopoverOverlay.js");
/* harmony import */ var _set_activator_attributes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./set-activator-attributes.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/set-activator-attributes.js");
// TypeScript can't generate types that correctly infer the typing of
// subcomponents so explicitly state the subcomponents in the type definition.
// Letting this be implicit works in this project but fails in projects that use
// generated *.d.ts files.
const Popover = function Popover(_ref) {
let {
activatorWrapper = 'div',
children,
onClose,
activator,
preventFocusOnClose,
active,
fixed,
ariaHaspopup,
preferInputActivator = true,
colorScheme,
zIndexOverride
} = _ref,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__.objectWithoutProperties)(_ref, ["activatorWrapper", "children", "onClose", "activator", "preventFocusOnClose", "active", "fixed", "ariaHaspopup", "preferInputActivator", "colorScheme", "zIndexOverride"]);
const [activatorNode, setActivatorNode] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();
const activatorContainer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const WrapperComponent = activatorWrapper;
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__.useUniqueId)('popover');
const setAccessibilityAttributes = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
if (activatorContainer.current == null) {
return;
}
const firstFocusable = (0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_4__.findFirstFocusableNodeIncludingDisabled)(activatorContainer.current);
const focusableActivator = firstFocusable || activatorContainer.current;
const activatorDisabled = 'disabled' in focusableActivator && Boolean(focusableActivator.disabled);
(0,_set_activator_attributes_js__WEBPACK_IMPORTED_MODULE_5__.setActivatorAttributes)(focusableActivator, {
id,
active,
ariaHaspopup,
activatorDisabled
});
}, [id, active, ariaHaspopup]);
const handleClose = source => {
onClose(source);
if (activatorContainer.current == null || preventFocusOnClose) {
return;
}
if ((source === _components_PopoverOverlay_PopoverOverlay_js__WEBPACK_IMPORTED_MODULE_1__.PopoverCloseSource.FocusOut || source === _components_PopoverOverlay_PopoverOverlay_js__WEBPACK_IMPORTED_MODULE_1__.PopoverCloseSource.EscapeKeypress) && activatorNode) {
const focusableActivator = (0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_4__.findFirstFocusableNodeIncludingDisabled)(activatorNode) || (0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_4__.findFirstFocusableNodeIncludingDisabled)(activatorContainer.current) || activatorContainer.current;
if (!(0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_4__.focusNextFocusableNode)(focusableActivator, isInPortal)) {
focusableActivator.focus();
}
}
};
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (!activatorNode && activatorContainer.current) {
setActivatorNode(activatorContainer.current.firstElementChild);
} else if (activatorNode && activatorContainer.current && !activatorContainer.current.contains(activatorNode)) {
setActivatorNode(activatorContainer.current.firstElementChild);
}
setAccessibilityAttributes();
}, [activatorNode, setAccessibilityAttributes]);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (activatorNode && activatorContainer.current) {
setActivatorNode(activatorContainer.current.firstElementChild);
}
setAccessibilityAttributes();
}, [activatorNode, setAccessibilityAttributes]);
const portal = activatorNode ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Portal_Portal_js__WEBPACK_IMPORTED_MODULE_6__.Portal, {
idPrefix: "popover"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_PopoverOverlay_PopoverOverlay_js__WEBPACK_IMPORTED_MODULE_1__.PopoverOverlay, Object.assign({
id: id,
activator: activatorNode,
preferInputActivator: preferInputActivator,
onClose: handleClose,
active: active,
fixed: fixed,
colorScheme: colorScheme,
zIndexOverride: zIndexOverride
}, rest), children)) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(WrapperComponent, {
ref: activatorContainer
}, react__WEBPACK_IMPORTED_MODULE_0__.Children.only(activator), portal);
};
function isInPortal(element) {
let parentElement = element.parentElement;
while (parentElement) {
if (parentElement.matches(_shared_js__WEBPACK_IMPORTED_MODULE_7__.portal.selector)) return false;
parentElement = parentElement.parentElement;
}
return true;
}
Popover.Pane = _components_Pane_Pane_js__WEBPACK_IMPORTED_MODULE_8__.Pane;
Popover.Section = _components_Section_Section_js__WEBPACK_IMPORTED_MODULE_9__.Section;
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.scss.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.scss.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Popover": "Polaris-Popover",
"PopoverOverlay": "Polaris-Popover__PopoverOverlay",
"PopoverOverlay-entering": "Polaris-Popover__PopoverOverlay--entering",
"PopoverOverlay-open": "Polaris-Popover__PopoverOverlay--open",
"PopoverOverlay-exiting": "Polaris-Popover__PopoverOverlay--exiting",
"measuring": "Polaris-Popover--measuring",
"fullWidth": "Polaris-Popover--fullWidth",
"Content": "Polaris-Popover__Content",
"positionedAbove": "Polaris-Popover--positionedAbove",
"Wrapper": "Polaris-Popover__Wrapper",
"Content-fullHeight": "Polaris-Popover__Content--fullHeight",
"Content-fluidContent": "Polaris-Popover__Content--fluidContent",
"Pane": "Polaris-Popover__Pane",
"Pane-fixed": "Polaris-Popover__Pane--fixed",
"Section": "Polaris-Popover__Section",
"FocusTracker": "Polaris-Popover__FocusTracker",
"PopoverOverlay-hideOnPrint": "Polaris-Popover__PopoverOverlay--hideOnPrint"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Pane/Pane.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Pane/Pane.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Pane": () => (/* binding */ Pane)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../Scrollable/Scrollable.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.js");
/* harmony import */ var _Popover_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Popover.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.scss.js");
/* harmony import */ var _Section_Section_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Section/Section.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Section/Section.js");
function Pane({
fixed,
sectioned,
children,
onScrolledToBottom
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Popover_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Pane, fixed && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Pane-fixed"]);
const content = sectioned ? (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.wrapWithComponent)(children, _Section_Section_js__WEBPACK_IMPORTED_MODULE_4__.Section, {}) : children;
return fixed ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, content) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_5__.Scrollable, {
hint: true,
shadow: true,
className: className,
onScrolledToBottom: onScrolledToBottom
}, content);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/PopoverOverlay/PopoverOverlay.js":
/*!***************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/components/PopoverOverlay/PopoverOverlay.js ***!
\***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PopoverCloseSource": () => (/* binding */ PopoverCloseSource),
/* harmony export */ "PopoverOverlay": () => (/* binding */ PopoverOverlay),
/* harmony export */ "nodeContainsDescendant": () => (/* binding */ nodeContainsDescendant)
/* harmony export */ });
/* harmony import */ var _types_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../types.js */ "./node_modules/@shopify/polaris/dist/esm/types.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _ThemeProvider_ThemeProvider_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../ThemeProvider/ThemeProvider.js */ "./node_modules/@shopify/polaris/dist/esm/components/ThemeProvider/ThemeProvider.js");
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
/* harmony import */ var _shopify_polaris_tokens__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @shopify/polaris-tokens */ "./node_modules/@shopify/polaris-tokens/dist/index.esm.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../Popover.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.scss.js");
/* harmony import */ var _Pane_Pane_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../Pane/Pane.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Pane/Pane.js");
/* harmony import */ var _KeypressListener_KeypressListener_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../KeypressListener/KeypressListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/KeypressListener/KeypressListener.js");
/* harmony import */ var _PositionedOverlay_PositionedOverlay_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../PositionedOverlay/PositionedOverlay.js */ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.js");
let PopoverCloseSource;
(function (PopoverCloseSource) {
PopoverCloseSource[PopoverCloseSource["Click"] = 0] = "Click";
PopoverCloseSource[PopoverCloseSource["EscapeKeypress"] = 1] = "EscapeKeypress";
PopoverCloseSource[PopoverCloseSource["FocusOut"] = 2] = "FocusOut";
PopoverCloseSource[PopoverCloseSource["ScrollOut"] = 3] = "ScrollOut";
})(PopoverCloseSource || (PopoverCloseSource = {}));
var TransitionStatus;
(function (TransitionStatus) {
TransitionStatus["Entering"] = "entering";
TransitionStatus["Entered"] = "entered";
TransitionStatus["Exiting"] = "exiting";
TransitionStatus["Exited"] = "exited";
})(TransitionStatus || (TransitionStatus = {}));
class PopoverOverlay extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(...args) {
super(...args);
this.state = {
transitionStatus: this.props.active ? TransitionStatus.Entering : TransitionStatus.Exited
};
this.contentNode = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)();
this.enteringTimer = void 0;
this.exitingTimer = void 0;
this.renderPopover = overlayDetails => {
const {
measuring,
desiredHeight,
positioning
} = overlayDetails;
const {
id,
children,
sectioned,
fullWidth,
fullHeight,
fluidContent,
hideOnPrint,
colorScheme,
autofocusTarget
} = this.props;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Popover, positioning === 'above' && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.positionedAbove, fullWidth && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.fullWidth, measuring && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.measuring, hideOnPrint && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["PopoverOverlay-hideOnPrint"]);
const contentStyles = measuring ? undefined : {
height: desiredHeight
};
const contentClassNames = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Content, fullHeight && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Content-fullHeight"], fluidContent && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["Content-fluidContent"]);
const content = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: id,
tabIndex: autofocusTarget === 'none' ? undefined : -1,
className: contentClassNames,
style: contentStyles,
ref: this.contentNode
}, renderPopoverContent(children, {
sectioned
}));
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", Object.assign({
className: className
}, _shared_js__WEBPACK_IMPORTED_MODULE_4__.overlay.props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_5__.EventListener, {
event: "click",
handler: this.handleClick
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_5__.EventListener, {
event: "touchstart",
handler: this.handleClick
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_KeypressListener_KeypressListener_js__WEBPACK_IMPORTED_MODULE_6__.KeypressListener, {
keyCode: _types_js__WEBPACK_IMPORTED_MODULE_7__.Key.Escape,
handler: this.handleEscape
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.FocusTracker // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
,
tabIndex: 0,
onFocus: this.handleFocusFirstItem
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ThemeProvider_ThemeProvider_js__WEBPACK_IMPORTED_MODULE_8__.ThemeProvider, {
alwaysRenderCustomProperties: true,
theme: {
colorScheme
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Wrapper
}, content)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.FocusTracker // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
,
tabIndex: 0,
onFocus: this.handleFocusLastItem
}));
};
this.handleClick = event => {
const target = event.target;
const {
contentNode,
props: {
activator,
onClose
}
} = this;
const isDescendant = contentNode.current != null && nodeContainsDescendant(contentNode.current, target);
const isActivatorDescendant = nodeContainsDescendant(activator, target);
if (isDescendant || isActivatorDescendant || this.state.transitionStatus !== TransitionStatus.Entered) {
return;
}
onClose(PopoverCloseSource.Click);
};
this.handleScrollOut = () => {
this.props.onClose(PopoverCloseSource.ScrollOut);
};
this.handleEscape = () => {
this.props.onClose(PopoverCloseSource.EscapeKeypress);
};
this.handleFocusFirstItem = () => {
this.props.onClose(PopoverCloseSource.FocusOut);
};
this.handleFocusLastItem = () => {
this.props.onClose(PopoverCloseSource.FocusOut);
};
}
changeTransitionStatus(transitionStatus, cb) {
this.setState({
transitionStatus
}, cb); // Forcing a reflow to enable the animation
this.contentNode.current && this.contentNode.current.getBoundingClientRect();
}
componentDidMount() {
if (this.props.active) {
this.focusContent();
this.changeTransitionStatus(TransitionStatus.Entered);
}
}
componentDidUpdate(oldProps) {
if (this.props.active && !oldProps.active) {
this.focusContent();
this.changeTransitionStatus(TransitionStatus.Entering, () => {
this.clearTransitionTimeout();
this.enteringTimer = window.setTimeout(() => {
this.setState({
transitionStatus: TransitionStatus.Entered
});
}, _shopify_polaris_tokens__WEBPACK_IMPORTED_MODULE_1__.durationBase);
});
}
if (!this.props.active && oldProps.active) {
this.changeTransitionStatus(TransitionStatus.Exiting, () => {
this.clearTransitionTimeout();
this.exitingTimer = window.setTimeout(() => {
this.setState({
transitionStatus: TransitionStatus.Exited
});
}, _shopify_polaris_tokens__WEBPACK_IMPORTED_MODULE_1__.durationBase);
});
}
}
componentWillUnmount() {
this.clearTransitionTimeout();
}
render() {
const {
active,
activator,
fullWidth,
preferredPosition = 'below',
preferredAlignment = 'center',
preferInputActivator = true,
fixed,
zIndexOverride
} = this.props;
const {
transitionStatus
} = this.state;
if (transitionStatus === TransitionStatus.Exited && !active) return null;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.PopoverOverlay, transitionStatus === TransitionStatus.Entering && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["PopoverOverlay-entering"], transitionStatus === TransitionStatus.Entered && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["PopoverOverlay-open"], transitionStatus === TransitionStatus.Exiting && _Popover_scss_js__WEBPACK_IMPORTED_MODULE_3__.default["PopoverOverlay-exiting"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PositionedOverlay_PositionedOverlay_js__WEBPACK_IMPORTED_MODULE_9__.PositionedOverlay, {
fullWidth: fullWidth,
active: active,
activator: activator,
preferInputActivator: preferInputActivator,
preferredPosition: preferredPosition,
preferredAlignment: preferredAlignment,
render: this.renderPopover.bind(this),
fixed: fixed,
onScrollOut: this.handleScrollOut,
classNames: className,
zIndexOverride: zIndexOverride
});
}
clearTransitionTimeout() {
if (this.enteringTimer) {
window.clearTimeout(this.enteringTimer);
}
if (this.exitingTimer) {
window.clearTimeout(this.exitingTimer);
}
}
focusContent() {
const {
autofocusTarget = 'container'
} = this.props;
if (autofocusTarget === 'none' || this.contentNode == null) {
return;
}
requestAnimationFrame(() => {
if (this.contentNode.current == null) {
return;
}
const focusableChild = (0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_10__.findFirstFocusableNode)(this.contentNode.current);
if (focusableChild && autofocusTarget === 'first-node') {
focusableChild.focus({
preventScroll: "development" === 'development'
});
} else {
this.contentNode.current.focus({
preventScroll: "development" === 'development'
});
}
});
} // eslint-disable-next-line @shopify/react-no-multiple-render-methods
}
function renderPopoverContent(children, props) {
const childrenArray = react__WEBPACK_IMPORTED_MODULE_0__.Children.toArray(children);
if ((0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_11__.isElementOfType)(childrenArray[0], _Pane_Pane_js__WEBPACK_IMPORTED_MODULE_12__.Pane)) {
return childrenArray;
}
return (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_11__.wrapWithComponent)(childrenArray, _Pane_Pane_js__WEBPACK_IMPORTED_MODULE_12__.Pane, props);
}
function nodeContainsDescendant(rootNode, descendant) {
if (rootNode === descendant) {
return true;
}
let parent = descendant.parentNode;
while (parent != null) {
if (parent === rootNode) {
return true;
}
parent = parent.parentNode;
}
return false;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Section/Section.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/components/Section/Section.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Section": () => (/* binding */ Section)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Popover_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../Popover.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Popover/Popover.scss.js");
function Section({
children
}) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Popover_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Section
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Popover/set-activator-attributes.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Popover/set-activator-attributes.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "setActivatorAttributes": () => (/* binding */ setActivatorAttributes)
/* harmony export */ });
function setActivatorAttributes(activator, {
id,
active = false,
ariaHaspopup,
activatorDisabled = false
}) {
if (!activatorDisabled) {
activator.tabIndex = activator.tabIndex || 0;
}
activator.setAttribute('aria-controls', id);
activator.setAttribute('aria-owns', id);
activator.setAttribute('aria-expanded', String(active));
if (ariaHaspopup != null) {
activator.setAttribute('aria-haspopup', String(ariaHaspopup));
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Portal/Portal.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Portal/Portal.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Portal": () => (/* binding */ Portal)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_portals_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/portals/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/portals/hooks.js");
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js");
/* harmony import */ var _utilities_use_is_mounted_ref_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/use-is-mounted-ref.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-is-mounted-ref.js");
function Portal({
children,
idPrefix = '',
onPortalCreated = noop
}) {
const isMounted = (0,_utilities_use_is_mounted_ref_js__WEBPACK_IMPORTED_MODULE_2__.useIsMountedRef)();
const {
container
} = (0,_utilities_portals_hooks_js__WEBPACK_IMPORTED_MODULE_3__.usePortalsManager)();
const uniqueId = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_4__.useUniqueId)('portal');
const portalId = idPrefix !== '' ? `${idPrefix}-${uniqueId}` : uniqueId;
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (isMounted) {
onPortalCreated();
}
}, [onPortalCreated, isMounted]);
return container ? /*#__PURE__*/(0,react_dom__WEBPACK_IMPORTED_MODULE_1__.createPortal)( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
"data-portal-id": portalId
}, children), container) : null;
}
function noop() {}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/PortalsManager.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/PortalsManager.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PortalsManager": () => (/* binding */ PortalsManager)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_portals_context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/portals/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/portals/context.js");
/* harmony import */ var _components_PortalsContainer_PortalsContainer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/PortalsContainer/PortalsContainer.js */ "./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/components/PortalsContainer/PortalsContainer.js");
function PortalsManager({
children,
container
}) {
const [portalContainerElement, setPortalContainerElement] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
const currentContainer = container != null ? container : portalContainerElement;
const contextValue = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
container: currentContainer
}), [currentContainer]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_portals_context_js__WEBPACK_IMPORTED_MODULE_1__.PortalsManagerContext.Provider, {
value: contextValue
}, children, container ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_PortalsContainer_PortalsContainer_js__WEBPACK_IMPORTED_MODULE_2__.PortalsContainer, {
ref: setPortalContainerElement
}));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/components/PortalsContainer/PortalsContainer.js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/PortalsManager/components/PortalsContainer/PortalsContainer.js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PortalsContainer": () => (/* binding */ PortalsContainer)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
function PortalsContainerComponent(_props, ref) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: "PolarisPortalsContainer",
ref: ref
});
}
const PortalsContainer = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(PortalsContainerComponent);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PositionedOverlay": () => (/* binding */ PositionedOverlay)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/geometry.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/geometry.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Scrollable/Scrollable.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.js");
/* harmony import */ var _utilities_math_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utilities/math.js */ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/utilities/math.js");
/* harmony import */ var _PositionedOverlay_scss_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./PositionedOverlay.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.scss.js");
const OBSERVER_CONFIG = {
childList: true,
subtree: true
};
class PositionedOverlay extends react__WEBPACK_IMPORTED_MODULE_0__.PureComponent {
constructor(props) {
super(props);
this.state = {
measuring: true,
activatorRect: (0,_utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.getRectForNode)(this.props.activator),
right: undefined,
left: undefined,
top: 0,
height: 0,
width: null,
positioning: 'below',
zIndex: null,
outsideScrollableContainer: false,
lockPosition: false
};
this.overlay = null;
this.scrollableContainer = null;
this.observer = void 0;
this.overlayDetails = () => {
const {
measuring,
left,
right,
positioning,
height,
activatorRect
} = this.state;
return {
measuring,
left,
right,
desiredHeight: height,
positioning,
activatorRect
};
};
this.setOverlay = node => {
this.overlay = node;
};
this.handleMeasurement = () => {
const {
lockPosition,
top
} = this.state;
this.observer.disconnect();
this.setState(({
left,
top,
right
}) => ({
left,
right,
top,
height: 0,
positioning: 'below',
measuring: true
}), () => {
if (this.overlay == null || this.scrollableContainer == null) {
return;
}
const {
activator,
preferredPosition = 'below',
preferredAlignment = 'center',
onScrollOut,
fullWidth,
fixed,
preferInputActivator = true
} = this.props;
const preferredActivator = preferInputActivator ? activator.querySelector('input') || activator : activator;
const activatorRect = (0,_utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.getRectForNode)(preferredActivator);
const currentOverlayRect = (0,_utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.getRectForNode)(this.overlay);
const scrollableElement = isDocument(this.scrollableContainer) ? document.body : this.scrollableContainer;
const scrollableContainerRect = (0,_utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.getRectForNode)(scrollableElement);
const overlayRect = fullWidth ? new _utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.Rect((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_2__.objectSpread2)({}, currentOverlayRect), {}, {
width: activatorRect.width
})) : currentOverlayRect; // If `body` is 100% height, it still acts as though it were not constrained to that size. This adjusts for that.
if (scrollableElement === document.body) {
scrollableContainerRect.height = document.body.scrollHeight;
}
const overlayMargins = this.overlay.firstElementChild && this.overlay.firstChild instanceof HTMLElement ? getMarginsForNode(this.overlay.firstElementChild) : {
activator: 0,
container: 0,
horizontal: 0
};
const containerRect = (0,_utilities_math_js__WEBPACK_IMPORTED_MODULE_3__.windowRect)();
const zIndexForLayer = getZIndexForLayerFromNode(activator);
const zIndex = zIndexForLayer == null ? zIndexForLayer : zIndexForLayer + 1;
const verticalPosition = (0,_utilities_math_js__WEBPACK_IMPORTED_MODULE_3__.calculateVerticalPosition)(activatorRect, overlayRect, overlayMargins, scrollableContainerRect, containerRect, preferredPosition, fixed);
const horizontalPosition = (0,_utilities_math_js__WEBPACK_IMPORTED_MODULE_3__.calculateHorizontalPosition)(activatorRect, overlayRect, containerRect, overlayMargins, preferredAlignment);
this.setState({
measuring: false,
activatorRect: (0,_utilities_geometry_js__WEBPACK_IMPORTED_MODULE_1__.getRectForNode)(activator),
left: preferredAlignment !== 'right' ? horizontalPosition : undefined,
right: preferredAlignment === 'right' ? horizontalPosition : undefined,
top: lockPosition ? top : verticalPosition.top,
lockPosition: Boolean(fixed),
height: verticalPosition.height || 0,
width: fullWidth ? overlayRect.width : null,
positioning: verticalPosition.positioning,
outsideScrollableContainer: onScrollOut != null && (0,_utilities_math_js__WEBPACK_IMPORTED_MODULE_3__.rectIsOutsideOfRect)(activatorRect, (0,_utilities_math_js__WEBPACK_IMPORTED_MODULE_3__.intersectionWithViewport)(scrollableContainerRect)),
zIndex
}, () => {
if (!this.overlay) return;
this.observer.observe(this.overlay, OBSERVER_CONFIG);
});
});
};
this.observer = new MutationObserver(this.handleMeasurement);
}
componentDidMount() {
this.scrollableContainer = _Scrollable_Scrollable_js__WEBPACK_IMPORTED_MODULE_4__.Scrollable.forNode(this.props.activator);
if (this.scrollableContainer && !this.props.fixed) {
this.scrollableContainer.addEventListener('scroll', this.handleMeasurement);
}
this.handleMeasurement();
}
componentWillUnmount() {
if (this.scrollableContainer && !this.props.fixed) {
this.scrollableContainer.removeEventListener('scroll', this.handleMeasurement);
}
}
componentDidUpdate() {
const {
outsideScrollableContainer,
top
} = this.state;
const {
onScrollOut,
active
} = this.props;
if (active && onScrollOut != null && top !== 0 && outsideScrollableContainer) {
onScrollOut();
}
}
render() {
const {
left,
right,
top,
zIndex,
width
} = this.state;
const {
render,
fixed,
preventInteraction,
classNames: propClassNames,
zIndexOverride
} = this.props;
const style = {
top: top == null || isNaN(top) ? undefined : top,
left: left == null || isNaN(left) ? undefined : left,
right: right == null || isNaN(right) ? undefined : right,
width: width == null || isNaN(width) ? undefined : width,
zIndex: zIndexOverride || zIndex || undefined
};
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_5__.classNames)(_PositionedOverlay_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.PositionedOverlay, fixed && _PositionedOverlay_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.fixed, preventInteraction && _PositionedOverlay_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.preventInteraction, propClassNames);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className,
style: style,
ref: this.setOverlay
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_7__.EventListener, {
event: "resize",
handler: this.handleMeasurement
}), render(this.overlayDetails()));
}
}
function getMarginsForNode(node) {
const nodeStyles = window.getComputedStyle(node);
return {
activator: parseFloat(nodeStyles.marginTop || '0'),
container: parseFloat(nodeStyles.marginBottom || '0'),
horizontal: parseFloat(nodeStyles.marginLeft || '0')
};
}
function getZIndexForLayerFromNode(node) {
const layerNode = node.closest(_shared_js__WEBPACK_IMPORTED_MODULE_8__.layer.selector) || document.body;
const zIndex = layerNode === document.body ? 'auto' : parseInt(window.getComputedStyle(layerNode).zIndex || '0', 10);
return zIndex === 'auto' || isNaN(zIndex) ? null : zIndex;
}
function isDocument(node) {
return node === document;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.scss.js":
/*!*******************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.scss.js ***!
\*******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"PositionedOverlay": "Polaris-PositionedOverlay",
"fixed": "Polaris-PositionedOverlay--fixed",
"calculating": "Polaris-PositionedOverlay--calculating",
"preventInteraction": "Polaris-PositionedOverlay--preventInteraction"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/utilities/math.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/utilities/math.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "calculateHorizontalPosition": () => (/* binding */ calculateHorizontalPosition),
/* harmony export */ "calculateVerticalPosition": () => (/* binding */ calculateVerticalPosition),
/* harmony export */ "intersectionWithViewport": () => (/* binding */ intersectionWithViewport),
/* harmony export */ "rectIsOutsideOfRect": () => (/* binding */ rectIsOutsideOfRect),
/* harmony export */ "windowRect": () => (/* binding */ windowRect)
/* harmony export */ });
/* harmony import */ var _utilities_geometry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utilities/geometry.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/geometry.js");
function calculateVerticalPosition(activatorRect, overlayRect, overlayMargins, scrollableContainerRect, containerRect, preferredPosition, fixed) {
const activatorTop = activatorRect.top;
const activatorBottom = activatorTop + activatorRect.height;
const spaceAbove = activatorRect.top;
const spaceBelow = containerRect.height - activatorRect.top - activatorRect.height;
const desiredHeight = overlayRect.height;
const verticalMargins = overlayMargins.activator + overlayMargins.container;
const minimumSpaceToScroll = overlayMargins.container;
const distanceToTopScroll = activatorRect.top - Math.max(scrollableContainerRect.top, 0);
const distanceToBottomScroll = containerRect.top + Math.min(containerRect.height, scrollableContainerRect.top + scrollableContainerRect.height) - (activatorRect.top + activatorRect.height);
const enoughSpaceFromTopScroll = distanceToTopScroll >= minimumSpaceToScroll;
const enoughSpaceFromBottomScroll = distanceToBottomScroll >= minimumSpaceToScroll;
const heightIfBelow = Math.min(spaceBelow, desiredHeight);
const heightIfAbove = Math.min(spaceAbove, desiredHeight);
const containerRectTop = fixed ? 0 : containerRect.top;
const positionIfAbove = {
height: heightIfAbove - verticalMargins,
top: activatorTop + containerRectTop - heightIfAbove,
positioning: 'above'
};
const positionIfBelow = {
height: heightIfBelow - verticalMargins,
top: activatorBottom + containerRectTop,
positioning: 'below'
};
if (preferredPosition === 'above') {
return (enoughSpaceFromTopScroll || distanceToTopScroll >= distanceToBottomScroll && !enoughSpaceFromBottomScroll) && (spaceAbove > desiredHeight || spaceAbove > spaceBelow) ? positionIfAbove : positionIfBelow;
}
if (preferredPosition === 'below') {
return (enoughSpaceFromBottomScroll || distanceToBottomScroll >= distanceToTopScroll && !enoughSpaceFromTopScroll) && (spaceBelow > desiredHeight || spaceBelow > spaceAbove) ? positionIfBelow : positionIfAbove;
}
if (enoughSpaceFromTopScroll && enoughSpaceFromBottomScroll) {
return spaceAbove > spaceBelow ? positionIfAbove : positionIfBelow;
}
return distanceToTopScroll > minimumSpaceToScroll ? positionIfAbove : positionIfBelow;
}
function calculateHorizontalPosition(activatorRect, overlayRect, containerRect, overlayMargins, preferredAlignment) {
const maximum = containerRect.width - overlayRect.width;
if (preferredAlignment === 'left') {
return Math.min(maximum, Math.max(0, activatorRect.left - overlayMargins.horizontal));
} else if (preferredAlignment === 'right') {
const activatorRight = containerRect.width - (activatorRect.left + activatorRect.width);
return Math.min(maximum, Math.max(0, activatorRight - overlayMargins.horizontal));
}
return Math.min(maximum, Math.max(0, activatorRect.center.x - overlayRect.width / 2));
}
function rectIsOutsideOfRect(inner, outer) {
const {
center
} = inner;
return center.y < outer.top || center.y > outer.top + outer.height;
}
function intersectionWithViewport(rect, viewport = windowRect()) {
const top = Math.max(rect.top, 0);
const left = Math.max(rect.left, 0);
const bottom = Math.min(rect.top + rect.height, viewport.height);
const right = Math.min(rect.left + rect.width, viewport.width);
return new _utilities_geometry_js__WEBPACK_IMPORTED_MODULE_0__.Rect({
top,
left,
height: bottom - top,
width: right - left
});
}
function windowRect() {
return new _utilities_geometry_js__WEBPACK_IMPORTED_MODULE_0__.Rect({
top: window.scrollY,
left: window.scrollX,
height: window.innerHeight,
width: document.body.clientWidth
});
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Scrollable": () => (/* binding */ Scrollable)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/debounce */ "./node_modules/lodash/debounce.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_debounce__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _utilities_sticky_manager_context_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utilities/sticky-manager/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/context.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_sticky_manager_sticky_manager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/sticky-manager/sticky-manager.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/sticky-manager.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./context.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/context.js");
/* harmony import */ var _components_ScrollTo_ScrollTo_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/ScrollTo/ScrollTo.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/components/ScrollTo/ScrollTo.js");
/* harmony import */ var _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Scrollable.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.scss.js");
const MAX_SCROLL_DISTANCE = 100;
const DELTA_THRESHOLD = 0.2;
const DELTA_PERCENTAGE = 0.2;
const EVENTS_TO_LOCK = ['scroll', 'touchmove', 'wheel'];
const PREFERS_REDUCED_MOTION = prefersReducedMotion();
class Scrollable extends react__WEBPACK_IMPORTED_MODULE_0__.Component {
constructor(...args) {
super(...args);
this.state = {
topShadow: false,
bottomShadow: false,
scrollPosition: 0,
canScroll: false
};
this.stickyManager = new _utilities_sticky_manager_sticky_manager_js__WEBPACK_IMPORTED_MODULE_2__.StickyManager();
this.scrollArea = null;
this.handleResize = lodash_debounce__WEBPACK_IMPORTED_MODULE_1___default()(() => {
this.handleScroll();
}, 50, {
trailing: true
});
this.setScrollArea = scrollArea => {
this.scrollArea = scrollArea;
};
this.handleScroll = () => {
const {
scrollArea
} = this;
const {
shadow,
onScrolledToBottom
} = this.props;
if (scrollArea == null) {
return;
}
const {
scrollTop,
clientHeight,
scrollHeight
} = scrollArea;
const shouldBottomShadow = Boolean(shadow && !(scrollTop + clientHeight >= scrollHeight));
const shouldTopShadow = Boolean(shadow && scrollTop > 0);
const canScroll = scrollHeight > clientHeight;
const hasScrolledToBottom = scrollHeight - scrollTop === clientHeight;
if (canScroll && hasScrolledToBottom && onScrolledToBottom) {
onScrolledToBottom();
}
this.setState({
topShadow: shouldTopShadow,
bottomShadow: shouldBottomShadow,
scrollPosition: scrollTop,
canScroll
});
};
this.scrollHint = () => {
const {
scrollArea
} = this;
if (scrollArea == null) {
return;
}
const {
clientHeight,
scrollHeight
} = scrollArea;
if (PREFERS_REDUCED_MOTION || this.state.scrollPosition > 0 || scrollHeight <= clientHeight) {
return;
}
const scrollDistance = scrollHeight - clientHeight;
this.toggleLock();
this.setState({
scrollPosition: scrollDistance > MAX_SCROLL_DISTANCE ? MAX_SCROLL_DISTANCE : scrollDistance
}, () => {
window.requestAnimationFrame(this.scrollStep);
});
};
this.scrollStep = () => {
this.setState(({
scrollPosition
}) => {
const delta = scrollPosition * DELTA_PERCENTAGE;
return {
scrollPosition: delta < DELTA_THRESHOLD ? 0 : scrollPosition - delta
};
}, () => {
if (this.state.scrollPosition > 0) {
window.requestAnimationFrame(this.scrollStep);
} else {
this.toggleLock(false);
}
});
};
this.scrollToPosition = scrollY => {
this.setState({
scrollPosition: scrollY
});
};
}
static forNode(node) {
const closestElement = node.closest(_shared_js__WEBPACK_IMPORTED_MODULE_3__.scrollable.selector);
return closestElement instanceof HTMLElement ? closestElement : document;
}
componentDidMount() {
if (this.scrollArea == null) {
return;
}
this.stickyManager.setContainer(this.scrollArea);
this.scrollArea.addEventListener('scroll', () => {
window.requestAnimationFrame(this.handleScroll);
});
window.addEventListener('resize', this.handleResize);
window.requestAnimationFrame(() => {
this.handleScroll();
if (this.props.hint) {
this.scrollHint();
}
});
}
componentWillUnmount() {
if (this.scrollArea == null) {
return;
}
this.scrollArea.removeEventListener('scroll', this.handleScroll);
window.removeEventListener('resize', this.handleResize);
this.stickyManager.removeScrollListener();
}
componentDidUpdate() {
const {
scrollPosition
} = this.state;
if (scrollPosition && this.scrollArea && scrollPosition > 0) {
this.scrollArea.scrollTop = scrollPosition;
}
}
render() {
const {
topShadow,
bottomShadow,
canScroll
} = this.state;
const _this$props = this.props,
{
children,
className,
horizontal,
vertical = true,
shadow,
hint,
focusable,
onScrolledToBottom
} = _this$props,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_4__.objectWithoutProperties)(_this$props, ["children", "className", "horizontal", "vertical", "shadow", "hint", "focusable", "onScrolledToBottom"]);
const finalClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_5__.classNames)(className, _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.Scrollable, vertical && _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.vertical, horizontal && _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.horizontal, topShadow && _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.hasTopShadow, bottomShadow && _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.hasBottomShadow, vertical && canScroll && _Scrollable_scss_js__WEBPACK_IMPORTED_MODULE_6__.default.verticalHasScrolling);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_context_js__WEBPACK_IMPORTED_MODULE_7__.ScrollableContext.Provider, {
value: this.scrollToPosition
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_sticky_manager_context_js__WEBPACK_IMPORTED_MODULE_8__.StickyManagerContext.Provider, {
value: this.stickyManager
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", Object.assign({
className: finalClassName
}, _shared_js__WEBPACK_IMPORTED_MODULE_3__.scrollable.props, rest, {
ref: this.setScrollArea // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
,
tabIndex: focusable ? 0 : undefined
}), children)));
}
toggleLock(shouldLock = true) {
const {
scrollArea
} = this;
if (scrollArea == null) {
return;
}
EVENTS_TO_LOCK.forEach(eventName => {
if (shouldLock) {
scrollArea.addEventListener(eventName, prevent);
} else {
scrollArea.removeEventListener(eventName, prevent);
}
});
}
}
Scrollable.ScrollTo = _components_ScrollTo_ScrollTo_js__WEBPACK_IMPORTED_MODULE_9__.ScrollTo;
function prevent(evt) {
evt.preventDefault();
}
function prefersReducedMotion() {
try {
return window.matchMedia('(prefers-reduced-motion: reduce)').matches;
} catch (err) {
return false;
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.scss.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Scrollable/Scrollable.scss.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Scrollable": "Polaris-Scrollable",
"horizontal": "Polaris-Scrollable--horizontal",
"vertical": "Polaris-Scrollable--vertical",
"verticalHasScrolling": "Polaris-Scrollable--verticalHasScrolling",
"hasTopShadow": "Polaris-Scrollable--hasTopShadow",
"hasBottomShadow": "Polaris-Scrollable--hasBottomShadow"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/components/ScrollTo/ScrollTo.js":
/*!******************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Scrollable/components/ScrollTo/ScrollTo.js ***!
\******************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ScrollTo": () => (/* binding */ ScrollTo)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../context.js */ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/context.js");
function ScrollTo() {
const anchorNode = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const scrollToPosition = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_js__WEBPACK_IMPORTED_MODULE_1__.ScrollableContext);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (!scrollToPosition || !anchorNode.current) {
return;
}
scrollToPosition(anchorNode.current.offsetTop);
}, [scrollToPosition]);
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__.useUniqueId)(`ScrollTo`); // eslint-disable-next-line jsx-a11y/anchor-is-valid
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("a", {
id: id,
ref: anchorNode
});
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Scrollable/context.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Scrollable/context.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ScrollableContext": () => (/* binding */ ScrollableContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const ScrollableContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Select/Select.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Select/Select.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Select": () => (/* binding */ Select)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/SelectMinor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../Labelled/Labelled.js */ "./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.js");
/* harmony import */ var _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Select.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Select/Select.scss.js");
const PLACEHOLDER_VALUE = '';
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S
});
function Select({
options: optionsProp,
label,
labelAction,
labelHidden: labelHiddenProp,
labelInline,
disabled,
helpText,
placeholder,
id: idProp,
name,
value = PLACEHOLDER_VALUE,
error,
onChange,
onFocus,
onBlur
}) {
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_3__.useUniqueId)('Select', idProp);
const labelHidden = labelInline ? true : labelHiddenProp;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_4__.classNames)(_Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Select, error && _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.error, disabled && _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.disabled);
const handleChange = onChange ? event => onChange(event.currentTarget.value, id) : undefined;
const describedBy = [];
if (helpText) {
describedBy.push((0,_Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_6__.helpTextID)(id));
}
if (error) {
describedBy.push(`${id}Error`);
}
const options = optionsProp || [];
let normalizedOptions = options.map(normalizeOption);
if (placeholder) {
normalizedOptions = [{
label: placeholder,
value: PLACEHOLDER_VALUE,
disabled: true
}, ...normalizedOptions];
}
const inlineLabelMarkup = labelInline && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.InlineLabel
}, label);
const selectedOption = getSelectedOption(normalizedOptions, value);
const prefixMarkup = selectedOption.prefix && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Prefix
}, selectedOption.prefix);
const contentMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Content,
"aria-hidden": true,
"aria-disabled": disabled
}, inlineLabelMarkup, prefixMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.SelectedOption
}, selectedOption.label), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Icon
}, _ref));
const optionsMarkup = normalizedOptions.map(renderOption);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_6__.Labelled, {
id: id,
label: label,
error: error,
action: labelAction,
labelHidden: labelHidden,
helpText: helpText
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("select", {
id: id,
name: name,
value: value,
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Input,
disabled: disabled,
onFocus: onFocus,
onBlur: onBlur,
onChange: handleChange,
"aria-invalid": Boolean(error),
"aria-describedby": describedBy.length ? describedBy.join(' ') : undefined
}, optionsMarkup), contentMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _Select_scss_js__WEBPACK_IMPORTED_MODULE_5__.default.Backdrop
})));
}
function isString(option) {
return typeof option === 'string';
}
function isGroup(option) {
return typeof option === 'object' && 'options' in option && option.options != null;
}
function normalizeStringOption(option) {
return {
label: option,
value: option
};
}
/**
* Converts a string option (and each string option in a Group) into
* an Option object.
*/
function normalizeOption(option) {
if (isString(option)) {
return normalizeStringOption(option);
} else if (isGroup(option)) {
const {
title,
options
} = option;
return {
title,
options: options.map(option => {
return isString(option) ? normalizeStringOption(option) : option;
})
};
}
return option;
}
/**
* Gets the text to display in the UI, for the currently selected option
*/
function getSelectedOption(options, value) {
const flatOptions = flattenOptions(options);
let selectedOption = flatOptions.find(option => value === option.value);
if (selectedOption === undefined) {
// Get the first visible option (not the hidden placeholder)
selectedOption = flatOptions.find(option => !option.hidden);
}
return selectedOption || {
value: '',
label: ''
};
}
/**
* Ungroups an options array
*/
function flattenOptions(options) {
let flatOptions = [];
options.forEach(optionOrGroup => {
if (isGroup(optionOrGroup)) {
flatOptions = flatOptions.concat(optionOrGroup.options);
} else {
flatOptions.push(optionOrGroup);
}
});
return flatOptions;
}
function renderSingleOption(option) {
const {
value,
label,
prefix: _prefix
} = option,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_7__.objectWithoutProperties)(option, ["value", "label", "prefix"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("option", Object.assign({
key: value,
value: value
}, rest), label);
}
function renderOption(optionOrGroup) {
if (isGroup(optionOrGroup)) {
const {
title,
options
} = optionOrGroup;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("optgroup", {
label: title,
key: title
}, options.map(renderSingleOption));
}
return renderSingleOption(optionOrGroup);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Select/Select.scss.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Select/Select.scss.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Select": "Polaris-Select",
"disabled": "Polaris-Select--disabled",
"Content": "Polaris-Select__Content",
"InlineLabel": "Polaris-Select__InlineLabel",
"Icon": "Polaris-Select__Icon",
"Backdrop": "Polaris-Select__Backdrop",
"placeholder": "Polaris-Select--placeholder",
"error": "Polaris-Select--error",
"Input": "Polaris-Select__Input",
"SelectedOption": "Polaris-Select__SelectedOption",
"Prefix": "Polaris-Select__Prefix",
"hover": "Polaris-Select--hover"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Spinner": () => (/* binding */ Spinner)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_use_is_after_initial_mount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/use-is-after-initial-mount.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-is-after-initial-mount.js");
/* harmony import */ var _VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../VisuallyHidden/VisuallyHidden.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js");
/* harmony import */ var _Spinner_scss_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Spinner.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.scss.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", {
viewBox: "0 0 44 44",
xmlns: "http://www.w3.org/2000/svg"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M15.542 1.487A21.507 21.507 0 00.5 22c0 11.874 9.626 21.5 21.5 21.5 9.847 0 18.364-6.675 20.809-16.072a1.5 1.5 0 00-2.904-.756C37.803 34.755 30.473 40.5 22 40.5 11.783 40.5 3.5 32.217 3.5 22c0-8.137 5.3-15.247 12.942-17.65a1.5 1.5 0 10-.9-2.863z"
}));
var _ref2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", {
viewBox: "0 0 20 20",
xmlns: "http://www.w3.org/2000/svg"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
d: "M7.229 1.173a9.25 9.25 0 1011.655 11.412 1.25 1.25 0 10-2.4-.698 6.75 6.75 0 11-8.506-8.329 1.25 1.25 0 10-.75-2.385z"
}));
function Spinner({
size = 'large',
accessibilityLabel,
hasFocusableParent
}) {
const isAfterInitialMount = (0,_utilities_use_is_after_initial_mount_js__WEBPACK_IMPORTED_MODULE_1__.useIsAfterInitialMount)();
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(_Spinner_scss_js__WEBPACK_IMPORTED_MODULE_3__.default.Spinner, size && _Spinner_scss_js__WEBPACK_IMPORTED_MODULE_3__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_2__.variationName)('size', size)]);
const spinnerSVGMarkup = size === 'large' ? _ref : _ref2;
const spanAttributes = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_4__.objectSpread2)({}, !hasFocusableParent && {
role: 'status'
});
const accessibilityLabelMarkup = (isAfterInitialMount || !hasFocusableParent) && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_5__.VisuallyHidden, null, accessibilityLabel);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: className
}, spinnerSVGMarkup), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", spanAttributes, accessibilityLabelMarkup));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.scss.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Spinner/Spinner.scss.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Spinner": "Polaris-Spinner",
"loading": "Polaris-Spinner--loading",
"sizeSmall": "Polaris-Spinner--sizeSmall",
"sizeLarge": "Polaris-Spinner--sizeLarge"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Stack": () => (/* binding */ Stack)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_components_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/components.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js");
/* harmony import */ var _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Stack.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.scss.js");
/* harmony import */ var _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Item/Item.js */ "./node_modules/@shopify/polaris/dist/esm/components/Stack/components/Item/Item.js");
const Stack = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.memo)(function Stack({
children,
vertical,
spacing,
distribution,
alignment,
wrap
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Stack, vertical && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.vertical, spacing && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('spacing', spacing)], distribution && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('distribution', distribution)], alignment && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('alignment', alignment)], wrap === false && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.noWrap);
const itemMarkup = (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.elementChildren)(children).map((child, index) => {
const props = {
key: index
};
return (0,_utilities_components_js__WEBPACK_IMPORTED_MODULE_3__.wrapWithComponent)(child, _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__.Item, props);
});
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, itemMarkup);
});
Stack.Item = _components_Item_Item_js__WEBPACK_IMPORTED_MODULE_4__.Item;
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.scss.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.scss.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Stack": "Polaris-Stack",
"Item": "Polaris-Stack__Item",
"noWrap": "Polaris-Stack--noWrap",
"spacingNone": "Polaris-Stack--spacingNone",
"spacingExtraTight": "Polaris-Stack--spacingExtraTight",
"spacingTight": "Polaris-Stack--spacingTight",
"spacingLoose": "Polaris-Stack--spacingLoose",
"spacingExtraLoose": "Polaris-Stack--spacingExtraLoose",
"distributionLeading": "Polaris-Stack--distributionLeading",
"distributionTrailing": "Polaris-Stack--distributionTrailing",
"distributionCenter": "Polaris-Stack--distributionCenter",
"distributionEqualSpacing": "Polaris-Stack--distributionEqualSpacing",
"distributionFill": "Polaris-Stack--distributionFill",
"distributionFillEvenly": "Polaris-Stack--distributionFillEvenly",
"alignmentLeading": "Polaris-Stack--alignmentLeading",
"alignmentTrailing": "Polaris-Stack--alignmentTrailing",
"alignmentCenter": "Polaris-Stack--alignmentCenter",
"alignmentFill": "Polaris-Stack--alignmentFill",
"alignmentBaseline": "Polaris-Stack--alignmentBaseline",
"vertical": "Polaris-Stack--vertical",
"Item-fill": "Polaris-Stack__Item--fill"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Stack/components/Item/Item.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Stack/components/Item/Item.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Item": () => (/* binding */ Item)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Stack.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Stack/Stack.scss.js");
function Item({
children,
fill
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.Item, fill && _Stack_scss_js__WEBPACK_IMPORTED_MODULE_2__.default["Item-fill"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Subheading": () => (/* binding */ Subheading)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _Subheading_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Subheading.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.scss.js");
function Subheading({
element: Element = 'h3',
children
}) {
const ariaLabel = typeof children === 'string' ? children : undefined;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Element, {
"aria-label": ariaLabel,
className: _Subheading_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Subheading
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.scss.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Subheading/Subheading.scss.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"Subheading": "Polaris-Subheading"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.js":
/*!******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "TextContainer": () => (/* binding */ TextContainer)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _TextContainer_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TextContainer.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.scss.js");
function TextContainer({
spacing,
children
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(_TextContainer_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.TextContainer, spacing && _TextContainer_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('spacing', spacing)]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.scss.js":
/*!***********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextContainer/TextContainer.scss.js ***!
\***********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"TextContainer": "Polaris-TextContainer",
"spacingTight": "Polaris-TextContainer--spacingTight",
"spacingLoose": "Polaris-TextContainer--spacingLoose"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.js":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "TextField": () => (/* binding */ TextField)
/* harmony export */ });
/* harmony import */ var _types_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../types.js */ "./node_modules/@shopify/polaris/dist/esm/types.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _utilities_use_is_after_initial_mount_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/use-is-after-initial-mount.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-is-after-initial-mount.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CircleCancelMinor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../VisuallyHidden/VisuallyHidden.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js");
/* harmony import */ var _Label_Label_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../Label/Label.js */ "./node_modules/@shopify/polaris/dist/esm/components/Label/Label.js");
/* harmony import */ var _Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../Labelled/Labelled.js */ "./node_modules/@shopify/polaris/dist/esm/components/Labelled/Labelled.js");
/* harmony import */ var _Connected_Connected_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../Connected/Connected.js */ "./node_modules/@shopify/polaris/dist/esm/components/Connected/Connected.js");
/* harmony import */ var _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./TextField.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.scss.js");
/* harmony import */ var _components_Resizer_Resizer_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./components/Resizer/Resizer.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Resizer/Resizer.js");
/* harmony import */ var _components_Spinner_Spinner_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/Spinner/Spinner.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Spinner/Spinner.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S,
color: "base"
});
function TextField({
prefix,
suffix,
placeholder,
value,
helpText,
label,
labelAction,
labelHidden,
disabled,
clearButton,
readOnly,
autoFocus,
focused,
multiline,
error,
connectedRight,
connectedLeft,
type,
name,
id: idProp,
role,
step,
autoComplete,
max,
maxLength,
min,
minLength,
pattern,
inputMode,
spellCheck,
ariaOwns,
ariaControls,
ariaExpanded,
ariaActiveDescendant,
ariaAutocomplete,
showCharacterCount,
align,
onClearButtonClick,
onChange,
onFocus,
onBlur
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_3__.useI18n)();
const [height, setHeight] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
const [focus, setFocus] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(Boolean(focused));
const isAfterInitial = (0,_utilities_use_is_after_initial_mount_js__WEBPACK_IMPORTED_MODULE_4__.useIsAfterInitialMount)();
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_5__.useUniqueId)('TextField', idProp);
const inputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const prefixRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const suffixRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const buttonPressTimer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
const input = inputRef.current;
if (!input || focused === undefined) return;
focused ? input.focus() : input.blur();
}, [focused]); // Use a typeof check here as Typescript mostly protects us from non-stringy
// values but overzealous usage of `any` in consuming apps means people have
// been known to pass a number in, so make it clear that doesn't work.
const normalizedValue = typeof value === 'string' ? value : '';
const normalizedStep = step != null ? step : 1;
const normalizedMax = max != null ? max : Infinity;
const normalizedMin = min != null ? min : -Infinity;
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.TextField, Boolean(normalizedValue) && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.hasValue, disabled && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.disabled, readOnly && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.readOnly, error && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.error, multiline && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.multiline, focus && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.focus);
const inputType = type === 'currency' ? 'text' : type;
const prefixMarkup = prefix ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Prefix,
id: `${id}Prefix`,
ref: prefixRef
}, prefix) : null;
const suffixMarkup = suffix ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Suffix,
id: `${id}Suffix`,
ref: suffixRef
}, suffix) : null;
let characterCountMarkup = null;
if (showCharacterCount) {
const characterCount = normalizedValue.length;
const characterCountLabel = maxLength ? i18n.translate('Polaris.TextField.characterCountWithMaxLength', {
count: characterCount,
limit: maxLength
}) : i18n.translate('Polaris.TextField.characterCount', {
count: characterCount
});
const characterCountClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.CharacterCount, multiline && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.AlignFieldBottom);
const characterCountText = !maxLength ? characterCount : `${characterCount}/${maxLength}`;
characterCountMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: `${id}CharacterCounter`,
className: characterCountClassName,
"aria-label": characterCountLabel,
"aria-live": focus ? 'polite' : 'off',
"aria-atomic": "true"
}, characterCountText);
}
const clearButtonVisible = normalizedValue !== '';
const clearButtonClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.ClearButton, !clearButtonVisible && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["ClearButton-hidden"]);
const clearButtonMarkup = clearButton ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", {
type: "button",
className: clearButtonClassName,
onClick: handleClearButtonPress,
disabled: disabled,
tabIndex: clearButtonVisible ? 0 : -1
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VisuallyHidden_VisuallyHidden_js__WEBPACK_IMPORTED_MODULE_8__.VisuallyHidden, null, i18n.translate('Polaris.Common.clear')), _ref) : null;
const handleNumberChange = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(steps => {
if (onChange == null) {
return;
} // Returns the length of decimal places in a number
const dpl = num => (num.toString().split('.')[1] || []).length;
const numericValue = value ? parseFloat(value) : 0;
if (isNaN(numericValue)) {
return;
} // Making sure the new value has the same length of decimal places as the
// step / value has.
const decimalPlaces = Math.max(dpl(numericValue), dpl(normalizedStep));
const newValue = Math.min(Number(normalizedMax), Math.max(numericValue + steps * normalizedStep, Number(normalizedMin)));
onChange(String(newValue.toFixed(decimalPlaces)), id);
}, [id, normalizedMax, normalizedMin, onChange, normalizedStep, value]);
const handleButtonRelease = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
clearTimeout(buttonPressTimer.current);
}, []);
const handleButtonPress = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(onChange => {
const minInterval = 50;
const decrementBy = 10;
let interval = 200;
const onChangeInterval = () => {
if (interval > minInterval) interval -= decrementBy;
onChange(0);
buttonPressTimer.current = window.setTimeout(onChangeInterval, interval);
};
buttonPressTimer.current = window.setTimeout(onChangeInterval, interval);
document.addEventListener('mouseup', handleButtonRelease, {
once: true
});
}, [handleButtonRelease]);
const spinnerMarkup = type === 'number' && step !== 0 && !disabled && !readOnly ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Spinner_Spinner_js__WEBPACK_IMPORTED_MODULE_9__.Spinner, {
onChange: handleNumberChange,
onMouseDown: handleButtonPress,
onMouseUp: handleButtonRelease
}) : null;
const style = multiline && height ? {
height
} : null;
const handleExpandingResize = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(height => {
setHeight(height);
}, []);
const resizer = multiline && isAfterInitial ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_Resizer_Resizer_js__WEBPACK_IMPORTED_MODULE_10__.Resizer, {
contents: normalizedValue || placeholder,
currentHeight: height,
minimumLines: typeof multiline === 'number' ? multiline : 1,
onHeightChange: handleExpandingResize
}) : null;
const describedBy = [];
if (error) {
describedBy.push(`${id}Error`);
}
if (helpText) {
describedBy.push((0,_Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_11__.helpTextID)(id));
}
if (showCharacterCount) {
describedBy.push(`${id}CharacterCounter`);
}
const labelledBy = [];
if (prefix) {
labelledBy.push(`${id}Prefix`);
}
if (suffix) {
labelledBy.push(`${id}Suffix`);
}
labelledBy.unshift((0,_Label_Label_js__WEBPACK_IMPORTED_MODULE_12__.labelID)(id));
const inputClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Input, align && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.variationName)('Input-align', align)], suffix && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["Input-suffixed"], clearButton && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["Input-hasClearButton"]);
const input = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(multiline ? 'textarea' : 'input', (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_13__.objectSpread2)({
name,
id,
disabled,
readOnly,
role,
autoFocus,
value: normalizedValue,
placeholder,
onFocus,
onBlur,
onKeyPress: handleKeyPress,
style,
autoComplete: normalizeAutoComplete(autoComplete),
className: inputClassName,
onChange: handleChange,
ref: inputRef,
min,
max,
step,
minLength,
maxLength,
spellCheck,
pattern,
inputMode,
type: inputType,
'aria-describedby': describedBy.length ? describedBy.join(' ') : undefined,
'aria-labelledby': labelledBy.join(' '),
'aria-invalid': Boolean(error),
'aria-owns': ariaOwns,
'aria-activedescendant': ariaActiveDescendant,
'aria-autocomplete': ariaAutocomplete,
'aria-controls': ariaControls,
'aria-expanded': ariaExpanded
}, normalizeAriaMultiline(multiline)));
const backdropClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_6__.classNames)(_TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default.Backdrop, connectedLeft && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["Backdrop-connectedLeft"], connectedRight && _TextField_scss_js__WEBPACK_IMPORTED_MODULE_7__.default["Backdrop-connectedRight"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Labelled_Labelled_js__WEBPACK_IMPORTED_MODULE_11__.Labelled, {
label: label,
id: id,
error: error,
action: labelAction,
labelHidden: labelHidden,
helpText: helpText
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Connected_Connected_js__WEBPACK_IMPORTED_MODULE_14__.Connected, {
left: connectedLeft,
right: connectedRight
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: className,
onFocus: handleFocus,
onBlur: handleBlur,
onClick: handleClick
}, prefixMarkup, input, suffixMarkup, characterCountMarkup, clearButtonMarkup, spinnerMarkup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: backdropClassName
}), resizer)));
function handleClearButtonPress() {
onClearButtonClick && onClearButtonClick(id);
}
function handleKeyPress(event) {
const {
key,
which
} = event;
const numbersSpec = /[\d.eE+-]$/;
if (type !== 'number' || which === _types_js__WEBPACK_IMPORTED_MODULE_15__.Key.Enter || numbersSpec.test(key)) {
return;
}
event.preventDefault();
}
function containsAffix(target) {
return target instanceof HTMLElement && (prefixRef.current && prefixRef.current.contains(target) || suffixRef.current && suffixRef.current.contains(target));
}
function handleChange(event) {
onChange && onChange(event.currentTarget.value, id);
}
function handleFocus({
target
}) {
if (containsAffix(target)) {
return;
}
setFocus(true);
}
function handleBlur() {
setFocus(false);
}
function handleClick({
target
}) {
if (containsAffix(target)) {
return;
}
inputRef.current && inputRef.current.focus();
}
}
function normalizeAutoComplete(autoComplete) {
if (autoComplete === true) {
return 'on';
} else if (autoComplete === false) {
return 'nope';
} else if (autoComplete === 'off') {
return 'nope';
} else {
return autoComplete;
}
}
function normalizeAriaMultiline(multiline) {
if (!multiline) return undefined;
return Boolean(multiline) || multiline > 0 ? {
'aria-multiline': true
} : undefined;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.scss.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.scss.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"TextField": "Polaris-TextField",
"multiline": "Polaris-TextField--multiline",
"Input": "Polaris-TextField__Input",
"hasValue": "Polaris-TextField--hasValue",
"focus": "Polaris-TextField--focus",
"Backdrop": "Polaris-TextField__Backdrop",
"error": "Polaris-TextField--error",
"readOnly": "Polaris-TextField--readOnly",
"disabled": "Polaris-TextField--disabled",
"Prefix": "Polaris-TextField__Prefix",
"Input-hasClearButton": "Polaris-TextField__Input--hasClearButton",
"Input-suffixed": "Polaris-TextField__Input--suffixed",
"Input-alignRight": "Polaris-TextField__Input--alignRight",
"Input-alignLeft": "Polaris-TextField__Input--alignLeft",
"Input-alignCenter": "Polaris-TextField__Input--alignCenter",
"Suffix": "Polaris-TextField__Suffix",
"CharacterCount": "Polaris-TextField__CharacterCount",
"AlignFieldBottom": "Polaris-TextField__AlignFieldBottom",
"ClearButton": "Polaris-TextField__ClearButton",
"ClearButton-hidden": "Polaris-TextField__ClearButton--hidden",
"Spinner": "Polaris-TextField__Spinner",
"SpinnerIcon": "Polaris-TextField__SpinnerIcon",
"Resizer": "Polaris-TextField__Resizer",
"DummyInput": "Polaris-TextField__DummyInput",
"Segment": "Polaris-TextField__Segment"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Resizer/Resizer.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Resizer/Resizer.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Resizer": () => (/* binding */ Resizer)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../EventListener/EventListener.js */ "./node_modules/@shopify/polaris/dist/esm/components/EventListener/EventListener.js");
/* harmony import */ var _TextField_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../TextField.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.scss.js");
function Resizer({
contents,
currentHeight: currentHeightProp = null,
minimumLines,
onHeightChange
}) {
const contentNode = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const minimumLinesNode = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const animationFrame = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
const currentHeight = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(currentHeightProp);
if (currentHeightProp !== currentHeight.current) {
currentHeight.current = currentHeightProp;
}
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
return () => {
if (animationFrame.current) {
cancelAnimationFrame(animationFrame.current);
}
};
}, []);
const minimumLinesMarkup = minimumLines ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
ref: minimumLinesNode,
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.DummyInput,
dangerouslySetInnerHTML: {
__html: getContentsForMinimumLines(minimumLines)
}
}) : null;
const handleHeightCheck = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
if (animationFrame.current) {
cancelAnimationFrame(animationFrame.current);
}
animationFrame.current = requestAnimationFrame(() => {
if (!contentNode.current || !minimumLinesNode.current) {
return;
}
const newHeight = Math.max(contentNode.current.offsetHeight, minimumLinesNode.current.offsetHeight);
if (newHeight !== currentHeight.current) {
onHeightChange(newHeight);
}
});
}, [onHeightChange]);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect)(() => {
handleHeightCheck();
});
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
"aria-hidden": true,
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.Resizer
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_EventListener_EventListener_js__WEBPACK_IMPORTED_MODULE_2__.EventListener, {
event: "resize",
handler: handleHeightCheck
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
ref: contentNode,
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.DummyInput,
dangerouslySetInnerHTML: {
__html: getFinalContents(contents)
}
}), minimumLinesMarkup);
}
const ENTITIES_TO_REPLACE = {
'&': '&amp;',
'<': '&lt;',
'>': '&gt;',
'\n': '<br>',
'\r': ''
};
const REPLACE_REGEX = new RegExp(`[${Object.keys(ENTITIES_TO_REPLACE).join()}]`, 'g');
function replaceEntity(entity) {
return ENTITIES_TO_REPLACE[entity];
}
function getContentsForMinimumLines(minimumLines) {
let content = '';
for (let line = 0; line < minimumLines; line++) {
content += '<br>';
}
return content;
}
function getFinalContents(contents) {
return contents ? `${contents.replace(REPLACE_REGEX, replaceEntity)}<br>` : '<br>';
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Spinner/Spinner.js":
/*!***************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextField/components/Spinner/Spinner.js ***!
\***************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Spinner": () => (/* binding */ Spinner)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CaretUpMinor.svg.mjs");
/* harmony import */ var _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @shopify/polaris-icons */ "./node_modules/@shopify/polaris-icons/dist/icons/CaretDownMinor.svg.mjs");
/* harmony import */ var _Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../Icon/Icon.js */ "./node_modules/@shopify/polaris/dist/esm/components/Icon/Icon.js");
/* harmony import */ var _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../TextField.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextField/TextField.scss.js");
var _ref = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_2__.S
});
var _ref2 = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Icon_Icon_js__WEBPACK_IMPORTED_MODULE_1__.Icon, {
source: _shopify_polaris_icons__WEBPACK_IMPORTED_MODULE_3__.S
});
function Spinner({
onChange,
onClick,
onMouseDown,
onMouseUp
}) {
function handleStep(step) {
return () => onChange(step);
}
function handleMouseDown(onChange) {
return event => {
if (event.button !== 0) return;
onMouseDown(onChange);
};
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Spinner,
onClick: onClick,
"aria-hidden": true
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
role: "button",
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Segment,
tabIndex: -1,
onClick: handleStep(1),
onMouseDown: handleMouseDown(handleStep(1)),
onMouseUp: onMouseUp
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.SpinnerIcon
}, _ref)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
role: "button",
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Segment,
tabIndex: -1,
onClick: handleStep(-1),
onMouseDown: handleMouseDown(handleStep(-1)),
onMouseUp: onMouseUp
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
className: _TextField_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.SpinnerIcon
}, _ref2)));
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.js":
/*!**********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.js ***!
\**********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "TextStyle": () => (/* binding */ TextStyle)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _TextStyle_scss_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TextStyle.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.scss.js");
var VariationValue;
(function (VariationValue) {
VariationValue["Positive"] = "positive";
VariationValue["Negative"] = "negative";
VariationValue["Strong"] = "strong";
VariationValue["Subdued"] = "subdued";
VariationValue["Code"] = "code";
})(VariationValue || (VariationValue = {}));
function TextStyle({
variation,
children
}) {
const className = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.classNames)(variation && _TextStyle_scss_js__WEBPACK_IMPORTED_MODULE_2__.default[(0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_1__.variationName)('variation', variation)], variation === VariationValue.Code && _TextStyle_scss_js__WEBPACK_IMPORTED_MODULE_2__.default.code);
const Element = variationElement(variation);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Element, {
className: className
}, children);
}
function variationElement(variation) {
return variation === VariationValue.Code ? 'code' : 'span';
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.scss.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/TextStyle/TextStyle.scss.js ***!
\***************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"variationPositive": "Polaris-TextStyle--variationPositive",
"variationNegative": "Polaris-TextStyle--variationNegative",
"variationCode": "Polaris-TextStyle--variationCode",
"variationStrong": "Polaris-TextStyle--variationStrong",
"variationSubdued": "Polaris-TextStyle--variationSubdued"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/ThemeProvider/ThemeProvider.js":
/*!******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/ThemeProvider/ThemeProvider.js ***!
\******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ThemeProvider": () => (/* binding */ ThemeProvider)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _shopify_polaris_tokens_dist_modern_theme_base_json__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @shopify/polaris-tokens/dist-modern/theme/base.json */ "./node_modules/@shopify/polaris-tokens/dist-modern/theme/base.json");
/* harmony import */ var _utilities_theme_context_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/theme/context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/theme/context.js");
/* harmony import */ var _utilities_theme_utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilities/theme/utils.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/theme/utils.js");
/* harmony import */ var _utilities_theme_tokens_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utilities/theme/tokens.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/theme/tokens.js");
function ThemeProvider({
theme: themeConfig = {},
alwaysRenderCustomProperties = false,
children
}) {
const parentContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_utilities_theme_context_js__WEBPACK_IMPORTED_MODULE_2__.ThemeContext);
const isParentThemeProvider = parentContext === undefined;
const parentColorScheme = parentContext && parentContext.colorScheme && parentContext.colorScheme;
const parentColors = parentContext && parentContext.colors && parentContext.colors;
const [customProperties, theme] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {
const {
colors,
colorScheme
} = themeConfig,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectWithoutProperties)(themeConfig, ["colors", "colorScheme"]);
const processedThemeConfig = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)({}, rest), {
colorScheme: getColorScheme(colorScheme, parentColorScheme)
}), {}, {
colors: (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)({}, isParentThemeProvider && _shopify_polaris_tokens_dist_modern_theme_base_json__WEBPACK_IMPORTED_MODULE_1__), parentColors != null && parentColors), colors)
});
const customProperties = (0,_utilities_theme_utils_js__WEBPACK_IMPORTED_MODULE_4__.buildCustomProperties)(processedThemeConfig, _utilities_theme_tokens_js__WEBPACK_IMPORTED_MODULE_5__.Tokens);
const theme = (0,_utilities_theme_utils_js__WEBPACK_IMPORTED_MODULE_4__.buildThemeContext)(processedThemeConfig, customProperties);
return [customProperties, theme];
}, [isParentThemeProvider, parentColorScheme, parentColors, themeConfig]); // We want these values to be empty string instead of `undefined` when not set.
// Otherwise, setting a style property to `undefined` does not remove it from the DOM.
const backgroundColor = customProperties['--p-background'] || '';
const color = customProperties['--p-text'] || '';
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (isParentThemeProvider) {
document.body.style.backgroundColor = backgroundColor;
document.body.style.color = color;
}
}, [backgroundColor, color, isParentThemeProvider]);
let style;
if (isParentThemeProvider) {
style = customProperties;
} else if (alwaysRenderCustomProperties || !isParentThemeProvider && parentContext.cssCustomProperties !== (0,_utilities_theme_utils_js__WEBPACK_IMPORTED_MODULE_4__.toString)(customProperties)) {
style = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectSpread2)({}, customProperties), {
color
});
} else {
style = {
color
};
}
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_utilities_theme_context_js__WEBPACK_IMPORTED_MODULE_2__.ThemeContext.Provider, {
value: theme
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
style: style
}, children));
}
function getColorScheme(colorScheme, parentColorScheme) {
if (colorScheme == null) {
return parentColorScheme || 'light';
} else if (colorScheme === 'inverse') {
return parentColorScheme === 'dark' || parentColorScheme === undefined ? 'light' : 'dark';
} else {
return colorScheme;
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/Tooltip.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Tooltip/Tooltip.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Tooltip": () => (/* binding */ Tooltip)
/* harmony export */ });
/* harmony import */ var _types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../types.js */ "./node_modules/@shopify/polaris/dist/esm/types.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/unique-id/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/unique-id/hooks.js");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _Portal_Portal_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Portal/Portal.js */ "./node_modules/@shopify/polaris/dist/esm/components/Portal/Portal.js");
/* harmony import */ var _utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/use-toggle.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/use-toggle.js");
/* harmony import */ var _components_TooltipOverlay_TooltipOverlay_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/TooltipOverlay/TooltipOverlay.js */ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.js");
function Tooltip({
children,
content,
dismissOnMouseOut,
active: originalActive,
preferredPosition = 'below',
activatorWrapper = 'span',
accessibilityLabel
}) {
const WrapperComponent = activatorWrapper;
const {
value: active,
setTrue: handleFocus,
setFalse: handleBlur
} = (0,_utilities_use_toggle_js__WEBPACK_IMPORTED_MODULE_1__.useToggle)(Boolean(originalActive));
const [activatorNode, setActivatorNode] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
const id = (0,_utilities_unique_id_hooks_js__WEBPACK_IMPORTED_MODULE_2__.useUniqueId)('TooltipContent');
const activatorContainer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
const mouseEntered = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
const firstFocusable = activatorContainer.current ? (0,_utilities_focus_js__WEBPACK_IMPORTED_MODULE_3__.findFirstFocusableNode)(activatorContainer.current) : null;
const accessibilityNode = firstFocusable || activatorContainer.current;
if (!accessibilityNode) return;
accessibilityNode.tabIndex = 0;
accessibilityNode.setAttribute('aria-describedby', id);
accessibilityNode.setAttribute('data-polaris-tooltip-activator', 'true');
}, [id, children]);
const handleKeyUp = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(event => {
if (event.keyCode !== _types_js__WEBPACK_IMPORTED_MODULE_4__.Key.Escape) return;
handleBlur();
}, [handleBlur]);
const portal = activatorNode ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Portal_Portal_js__WEBPACK_IMPORTED_MODULE_5__.Portal, {
idPrefix: "tooltip"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_TooltipOverlay_TooltipOverlay_js__WEBPACK_IMPORTED_MODULE_6__.TooltipOverlay, {
id: id,
preferredPosition: preferredPosition,
activator: activatorNode,
active: active,
accessibilityLabel: accessibilityLabel,
onClose: noop,
preventInteraction: dismissOnMouseOut
}, content)) : null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(WrapperComponent, {
onFocus: handleFocus,
onBlur: handleBlur,
onMouseLeave: handleMouseLeave,
onMouseOver: handleMouseEnterFix,
onClick: stopPropagation,
ref: setActivator,
onKeyUp: handleKeyUp
}, children, portal);
function setActivator(node) {
const activatorContainerRef = activatorContainer;
if (node == null) {
activatorContainerRef.current = null;
setActivatorNode(null);
return;
}
node.firstElementChild instanceof HTMLElement && setActivatorNode(node.firstElementChild);
activatorContainerRef.current = node;
}
function handleMouseEnter() {
mouseEntered.current = true;
handleFocus();
}
function handleMouseLeave() {
mouseEntered.current = false;
handleBlur();
} // https://github.com/facebook/react/issues/10109
// Mouseenter event not triggered when cursor moves from disabled button
function handleMouseEnterFix() {
!mouseEntered.current && handleMouseEnter();
}
}
function noop() {}
function stopPropagation(event) {
event.stopPropagation();
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.js":
/*!***************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.js ***!
\***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "TooltipOverlay": () => (/* binding */ TooltipOverlay)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utilities/i18n/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_css_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../utilities/css.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js");
/* harmony import */ var _PositionedOverlay_PositionedOverlay_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../PositionedOverlay/PositionedOverlay.js */ "./node_modules/@shopify/polaris/dist/esm/components/PositionedOverlay/PositionedOverlay.js");
/* harmony import */ var _TooltipOverlay_scss_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TooltipOverlay.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.scss.js");
function TooltipOverlay({
active,
activator,
preferredPosition = 'below',
preventInteraction,
id,
children,
accessibilityLabel
}) {
const i18n = (0,_utilities_i18n_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useI18n)();
const markup = active ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PositionedOverlay_PositionedOverlay_js__WEBPACK_IMPORTED_MODULE_2__.PositionedOverlay, {
active: active,
activator: activator,
preferredPosition: preferredPosition,
preventInteraction: preventInteraction,
render: renderTooltip
}) : null;
return markup;
function renderTooltip(overlayDetails) {
const {
measuring,
desiredHeight,
positioning
} = overlayDetails;
const containerClassName = (0,_utilities_css_js__WEBPACK_IMPORTED_MODULE_3__.classNames)(_TooltipOverlay_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.TooltipOverlay, measuring && _TooltipOverlay_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.measuring, positioning === 'above' && _TooltipOverlay_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.positionedAbove);
const contentStyles = measuring ? undefined : {
minHeight: desiredHeight
};
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", Object.assign({
className: containerClassName
}, _shared_js__WEBPACK_IMPORTED_MODULE_5__.layer.props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
id: id,
role: "tooltip",
className: _TooltipOverlay_scss_js__WEBPACK_IMPORTED_MODULE_4__.default.Content,
style: contentStyles,
"aria-label": accessibilityLabel ? i18n.translate('Polaris.TooltipOverlay.accessibilityLabel', {
label: accessibilityLabel
}) : undefined
}, children));
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.scss.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/Tooltip/components/TooltipOverlay/TooltipOverlay.scss.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"TooltipOverlay": "Polaris-Tooltip-TooltipOverlay",
"measuring": "Polaris-Tooltip-TooltipOverlay--measuring",
"positionedAbove": "Polaris-Tooltip-TooltipOverlay--positionedAbove",
"Content": "Polaris-Tooltip-TooltipOverlay__Content"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/UnstyledButton.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/UnstyledButton.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "UnstyledButton": () => (/* binding */ UnstyledButton)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _utilities_focus_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utilities/focus.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js");
/* harmony import */ var _UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../UnstyledLink/UnstyledLink.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js");
function UnstyledButton(_ref) {
let {
id,
children,
className,
url,
external,
download,
submit,
disabled,
loading,
pressed,
accessibilityLabel,
role,
ariaControls,
ariaExpanded,
ariaDescribedBy,
onClick,
onFocus,
onBlur,
onKeyDown,
onKeyPress,
onKeyUp,
onMouseEnter,
onTouchStart
} = _ref,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["id", "children", "className", "url", "external", "download", "submit", "disabled", "loading", "pressed", "accessibilityLabel", "role", "ariaControls", "ariaExpanded", "ariaDescribedBy", "onClick", "onFocus", "onBlur", "onKeyDown", "onKeyPress", "onKeyUp", "onMouseEnter", "onTouchStart"]);
let buttonMarkup;
const commonProps = {
id,
className,
'aria-label': accessibilityLabel
};
const interactiveProps = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectSpread2)((0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectSpread2)({}, commonProps), {}, {
role,
onClick,
onFocus,
onBlur,
onMouseUp: _utilities_focus_js__WEBPACK_IMPORTED_MODULE_2__.handleMouseUpByBlurring,
onMouseEnter,
onTouchStart
});
if (url) {
buttonMarkup = disabled ?
/*#__PURE__*/
// Render an `<a>` so toggling disabled/enabled state changes only the
// `href` attribute instead of replacing the whole element.
react__WEBPACK_IMPORTED_MODULE_0__.createElement("a", commonProps, children) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledLink_UnstyledLink_js__WEBPACK_IMPORTED_MODULE_3__.UnstyledLink, Object.assign({}, interactiveProps, {
url: url,
external: external,
download: download
}, rest), children);
} else {
buttonMarkup = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", Object.assign({}, interactiveProps, {
type: submit ? 'submit' : 'button',
disabled: disabled,
"aria-busy": loading ? true : undefined,
"aria-controls": ariaControls,
"aria-expanded": ariaExpanded,
"aria-describedby": ariaDescribedBy,
"aria-pressed": pressed,
onKeyDown: onKeyDown,
onKeyUp: onKeyUp,
onKeyPress: onKeyPress
}, rest), children);
}
return buttonMarkup;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/utils.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/utils.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "unstyledButtonFrom": () => (/* binding */ unstyledButtonFrom)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _UnstyledButton_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./UnstyledButton.js */ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledButton/UnstyledButton.js");
function unstyledButtonFrom(_ref, overrides, key) {
let {
content,
onAction
} = _ref,
action = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_1__.objectWithoutProperties)(_ref, ["content", "onAction"]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_UnstyledButton_js__WEBPACK_IMPORTED_MODULE_2__.UnstyledButton, Object.assign({
key: key,
onClick: onAction
}, action, overrides), content);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js":
/*!****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/UnstyledLink/UnstyledLink.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "UnstyledLink": () => (/* binding */ UnstyledLink)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
/* harmony import */ var _shared_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _utilities_link_hooks_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utilities/link/hooks.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/link/hooks.js");
// that the interface defining the props is defined in this file, not imported
// from elsewhere. This silly workaround ensures that the Props Explorer table
// is generated correctly.
// Wrapping forwardRef in a memo gets a name set since
// https://github.com/facebook/react/issues/16722
// but eslint-plugin-react doesn't know that just yet
// eslint-disable-next-line react/display-name
const UnstyledLink = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.memo)( /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function UnstyledLink(props, _ref) {
const LinkComponent = (0,_utilities_link_hooks_js__WEBPACK_IMPORTED_MODULE_1__.useLink)();
if (LinkComponent) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(LinkComponent, Object.assign({}, _shared_js__WEBPACK_IMPORTED_MODULE_2__.unstyled.props, props));
}
const {
external,
url
} = props,
rest = (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_3__.objectWithoutProperties)(props, ["external", "url"]);
const target = external ? '_blank' : undefined;
const rel = external ? 'noopener noreferrer' : undefined;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("a", Object.assign({
target: target
}, rest, {
href: url,
rel: rel
}, _shared_js__WEBPACK_IMPORTED_MODULE_2__.unstyled.props));
}));
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js":
/*!********************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.js ***!
\********************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "VisuallyHidden": () => (/* binding */ VisuallyHidden)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _VisuallyHidden_scss_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VisuallyHidden.scss.js */ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.scss.js");
function VisuallyHidden({
children
}) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
className: _VisuallyHidden_scss_js__WEBPACK_IMPORTED_MODULE_1__.default.VisuallyHidden
}, children);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.scss.js":
/*!*************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/VisuallyHidden/VisuallyHidden.scss.js ***!
\*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var styles = {
"VisuallyHidden": "Polaris-VisuallyHidden"
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (styles);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/components/shared.js":
/*!*********************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/components/shared.js ***!
\*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "DATA_ATTRIBUTE": () => (/* binding */ DATA_ATTRIBUTE),
/* harmony export */ "dataPolarisTopBar": () => (/* binding */ dataPolarisTopBar),
/* harmony export */ "headerCell": () => (/* binding */ headerCell),
/* harmony export */ "layer": () => (/* binding */ layer),
/* harmony export */ "overlay": () => (/* binding */ overlay),
/* harmony export */ "portal": () => (/* binding */ portal),
/* harmony export */ "scrollable": () => (/* binding */ scrollable),
/* harmony export */ "unstyled": () => (/* binding */ unstyled)
/* harmony export */ });
const scrollable = {
props: {
'data-polaris-scrollable': true
},
selector: '[data-polaris-scrollable]'
};
const overlay = {
props: {
'data-polaris-overlay': true
},
selector: '[data-polaris-overlay]'
};
const layer = {
props: {
'data-polaris-layer': true
},
selector: '[data-polaris-layer]'
};
const unstyled = {
props: {
'data-polaris-unstyled': true
},
selector: '[data-polaris-unstyled]'
};
const dataPolarisTopBar = {
props: {
'data-polaris-top-bar': true
},
selector: '[data-polaris-top-bar]'
};
const headerCell = {
props: {
'data-polaris-header-cell': true
},
selector: '[data-polaris-header-cell]'
};
const portal = {
props: ['data-portal-id'],
selector: '[data-portal-id]'
};
const DATA_ATTRIBUTE = {
overlay,
layer
};
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/types.js":
/*!*********************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/types.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Key": () => (/* binding */ Key)
/* harmony export */ });
let Key;
(function (Key) {
Key[Key["Backspace"] = 8] = "Backspace";
Key[Key["Tab"] = 9] = "Tab";
Key[Key["Enter"] = 13] = "Enter";
Key[Key["Shift"] = 16] = "Shift";
Key[Key["Ctrl"] = 17] = "Ctrl";
Key[Key["Alt"] = 18] = "Alt";
Key[Key["Pause"] = 19] = "Pause";
Key[Key["CapsLock"] = 20] = "CapsLock";
Key[Key["Escape"] = 27] = "Escape";
Key[Key["Space"] = 32] = "Space";
Key[Key["PageUp"] = 33] = "PageUp";
Key[Key["PageDown"] = 34] = "PageDown";
Key[Key["End"] = 35] = "End";
Key[Key["Home"] = 36] = "Home";
Key[Key["LeftArrow"] = 37] = "LeftArrow";
Key[Key["UpArrow"] = 38] = "UpArrow";
Key[Key["RightArrow"] = 39] = "RightArrow";
Key[Key["DownArrow"] = 40] = "DownArrow";
Key[Key["Insert"] = 45] = "Insert";
Key[Key["Delete"] = 46] = "Delete";
Key[Key["Key0"] = 48] = "Key0";
Key[Key["Key1"] = 49] = "Key1";
Key[Key["Key2"] = 50] = "Key2";
Key[Key["Key3"] = 51] = "Key3";
Key[Key["Key4"] = 52] = "Key4";
Key[Key["Key5"] = 53] = "Key5";
Key[Key["Key6"] = 54] = "Key6";
Key[Key["Key7"] = 55] = "Key7";
Key[Key["Key8"] = 56] = "Key8";
Key[Key["Key9"] = 57] = "Key9";
Key[Key["KeyA"] = 65] = "KeyA";
Key[Key["KeyB"] = 66] = "KeyB";
Key[Key["KeyC"] = 67] = "KeyC";
Key[Key["KeyD"] = 68] = "KeyD";
Key[Key["KeyE"] = 69] = "KeyE";
Key[Key["KeyF"] = 70] = "KeyF";
Key[Key["KeyG"] = 71] = "KeyG";
Key[Key["KeyH"] = 72] = "KeyH";
Key[Key["KeyI"] = 73] = "KeyI";
Key[Key["KeyJ"] = 74] = "KeyJ";
Key[Key["KeyK"] = 75] = "KeyK";
Key[Key["KeyL"] = 76] = "KeyL";
Key[Key["KeyM"] = 77] = "KeyM";
Key[Key["KeyN"] = 78] = "KeyN";
Key[Key["KeyO"] = 79] = "KeyO";
Key[Key["KeyP"] = 80] = "KeyP";
Key[Key["KeyQ"] = 81] = "KeyQ";
Key[Key["KeyR"] = 82] = "KeyR";
Key[Key["KeyS"] = 83] = "KeyS";
Key[Key["KeyT"] = 84] = "KeyT";
Key[Key["KeyU"] = 85] = "KeyU";
Key[Key["KeyV"] = 86] = "KeyV";
Key[Key["KeyW"] = 87] = "KeyW";
Key[Key["KeyX"] = 88] = "KeyX";
Key[Key["KeyY"] = 89] = "KeyY";
Key[Key["KeyZ"] = 90] = "KeyZ";
Key[Key["LeftMeta"] = 91] = "LeftMeta";
Key[Key["RightMeta"] = 92] = "RightMeta";
Key[Key["Select"] = 93] = "Select";
Key[Key["Numpad0"] = 96] = "Numpad0";
Key[Key["Numpad1"] = 97] = "Numpad1";
Key[Key["Numpad2"] = 98] = "Numpad2";
Key[Key["Numpad3"] = 99] = "Numpad3";
Key[Key["Numpad4"] = 100] = "Numpad4";
Key[Key["Numpad5"] = 101] = "Numpad5";
Key[Key["Numpad6"] = 102] = "Numpad6";
Key[Key["Numpad7"] = 103] = "Numpad7";
Key[Key["Numpad8"] = 104] = "Numpad8";
Key[Key["Numpad9"] = 105] = "Numpad9";
Key[Key["Multiply"] = 106] = "Multiply";
Key[Key["Add"] = 107] = "Add";
Key[Key["Subtract"] = 109] = "Subtract";
Key[Key["Decimal"] = 110] = "Decimal";
Key[Key["Divide"] = 111] = "Divide";
Key[Key["F1"] = 112] = "F1";
Key[Key["F2"] = 113] = "F2";
Key[Key["F3"] = 114] = "F3";
Key[Key["F4"] = 115] = "F4";
Key[Key["F5"] = 116] = "F5";
Key[Key["F6"] = 117] = "F6";
Key[Key["F7"] = 118] = "F7";
Key[Key["F8"] = 119] = "F8";
Key[Key["F9"] = 120] = "F9";
Key[Key["F10"] = 121] = "F10";
Key[Key["F11"] = 122] = "F11";
Key[Key["F12"] = 123] = "F12";
Key[Key["NumLock"] = 144] = "NumLock";
Key[Key["ScrollLock"] = 145] = "ScrollLock";
Key[Key["Semicolon"] = 186] = "Semicolon";
Key[Key["Equals"] = 187] = "Equals";
Key[Key["Comma"] = 188] = "Comma";
Key[Key["Dash"] = 189] = "Dash";
Key[Key["Period"] = 190] = "Period";
Key[Key["ForwardSlash"] = 191] = "ForwardSlash";
Key[Key["GraveAccent"] = 192] = "GraveAccent";
Key[Key["OpenBracket"] = 219] = "OpenBracket";
Key[Key["BackSlash"] = 220] = "BackSlash";
Key[Key["CloseBracket"] = 221] = "CloseBracket";
Key[Key["SingleQuote"] = 222] = "SingleQuote";
})(Key || (Key = {}));
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/banner-context.js":
/*!****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/banner-context.js ***!
\****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "BannerContext": () => (/* binding */ BannerContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const BannerContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(false);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/breakpoints.js":
/*!*************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/breakpoints.js ***!
\*************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "navigationBarCollapsed": () => (/* binding */ navigationBarCollapsed),
/* harmony export */ "stackedContent": () => (/* binding */ stackedContent)
/* harmony export */ });
const Breakpoints = {
navigationBarCollapsed: '768px',
stackedContent: '1043px'
};
const noWindowMatches = {
media: '',
addListener: noop,
removeListener: noop,
matches: false,
onchange: noop,
addEventListener: noop,
removeEventListener: noop,
dispatchEvent: _ => true
};
function noop() {}
function navigationBarCollapsed() {
return typeof window === 'undefined' ? noWindowMatches : window.matchMedia(`(max-width: ${Breakpoints.navigationBarCollapsed})`);
}
function stackedContent() {
return typeof window === 'undefined' ? noWindowMatches : window.matchMedia(`(max-width: ${Breakpoints.stackedContent})`);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "clamp": () => (/* binding */ clamp)
/* harmony export */ });
function clamp(number, min, max) {
if (number < min) return min;
if (number > max) return max;
return number;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/color-transformers.js":
/*!********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/color-transformers.js ***!
\********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "hsbToHex": () => (/* binding */ hsbToHex),
/* harmony export */ "hsbToRgb": () => (/* binding */ hsbToRgb),
/* harmony export */ "hslToRgb": () => (/* binding */ hslToRgb),
/* harmony export */ "rgbString": () => (/* binding */ rgbString),
/* harmony export */ "rgbToHex": () => (/* binding */ rgbToHex),
/* harmony export */ "rgbToHsb": () => (/* binding */ rgbToHsb),
/* harmony export */ "rgbToHsl": () => (/* binding */ rgbToHsl),
/* harmony export */ "rgbaString": () => (/* binding */ rgbaString)
/* harmony export */ });
/* harmony import */ var _clamp_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clamp.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/clamp.js");
/* harmony import */ var _roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./roundNumberToDecimalPlaces.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/roundNumberToDecimalPlaces.js");
function rgbString(color) {
const {
red,
green,
blue
} = color;
if ('alpha' in color) {
return `rgba(${red}, ${green}, ${blue}, ${color.alpha})`;
} else {
return `rgb(${red}, ${green}, ${blue})`;
}
}
const rgbaString = rgbString;
function rgbToHex({
red,
green,
blue
}) {
return `#${componentToHex(red)}${componentToHex(green)}${componentToHex(blue)}`;
}
function componentToHex(component) {
const hex = component.toString(16);
return hex.length === 1 ? `0${hex}` : hex;
}
function hsbToHex(color) {
return rgbToHex(hsbToRgb(color));
}
function rgbFromHueAndChroma(hue, chroma) {
const huePrime = hue / 60;
const hueDelta = 1 - Math.abs(huePrime % 2 - 1);
const intermediateValue = chroma * hueDelta;
let red = 0;
let green = 0;
let blue = 0;
if (huePrime >= 0 && huePrime <= 1) {
red = chroma;
green = intermediateValue;
blue = 0;
}
if (huePrime >= 1 && huePrime <= 2) {
red = intermediateValue;
green = chroma;
blue = 0;
}
if (huePrime >= 2 && huePrime <= 3) {
red = 0;
green = chroma;
blue = intermediateValue;
}
if (huePrime >= 3 && huePrime <= 4) {
red = 0;
green = intermediateValue;
blue = chroma;
}
if (huePrime >= 4 && huePrime <= 5) {
red = intermediateValue;
green = 0;
blue = chroma;
}
if (huePrime >= 5 && huePrime <= 6) {
red = chroma;
green = 0;
blue = intermediateValue;
}
return {
red,
green,
blue
};
} // implements https://en.wikipedia.org/wiki/HSL_and_HSV#From_HSV
function hsbToRgb(color) {
const {
hue,
saturation,
brightness,
alpha = 1
} = color;
const chroma = brightness * saturation;
let {
red,
green,
blue
} = rgbFromHueAndChroma(hue, chroma);
const chromaBrightnessDelta = brightness - chroma;
red += chromaBrightnessDelta;
green += chromaBrightnessDelta;
blue += chromaBrightnessDelta;
return {
red: Math.round(red * 255),
green: Math.round(green * 255),
blue: Math.round(blue * 255),
alpha
};
} // implements https://en.wikipedia.org/wiki/HSL_and_HSV#From_HSV
function hslToRgb(color) {
const {
hue,
saturation,
lightness,
alpha = 1
} = color;
const chroma = (1 - Math.abs(2 * (lightness / 100) - 1)) * (saturation / 100);
let {
red,
green,
blue
} = rgbFromHueAndChroma(hue, chroma);
const lightnessVal = lightness / 100 - chroma / 2;
red += lightnessVal;
green += lightnessVal;
blue += lightnessVal;
return {
red: Math.round(red * 255),
green: Math.round(green * 255),
blue: Math.round(blue * 255),
alpha
};
} // ref https://en.wikipedia.org/wiki/HSL_and_HSV
function rgbToHsbl(color, type = 'b') {
const {
alpha = 1
} = color;
const red = color.red / 255;
const green = color.green / 255;
const blue = color.blue / 255;
const largestComponent = Math.max(red, green, blue);
const smallestComponent = Math.min(red, green, blue);
const delta = largestComponent - smallestComponent;
const lightness = (largestComponent + smallestComponent) / 2;
let saturation = 0;
if (largestComponent === 0) {
saturation = 0;
} else if (type === 'b') {
saturation = delta / largestComponent;
} else if (type === 'l') {
const baseSaturation = lightness > 0.5 ? delta / (2 - largestComponent - smallestComponent) : delta / (largestComponent + smallestComponent);
saturation = isNaN(baseSaturation) ? 0 : baseSaturation;
}
let huePercentage = 0;
switch (largestComponent) {
case red:
huePercentage = (green - blue) / delta + (green < blue ? 6 : 0);
break;
case green:
huePercentage = (blue - red) / delta + 2;
break;
case blue:
huePercentage = (red - green) / delta + 4;
}
const hue = huePercentage / 6 * 360;
const clampedHue = (0,_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(hue, 0, 360);
return {
hue: clampedHue ? (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)(clampedHue, 2) : 0,
saturation: (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)((0,_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(saturation, 0, 1), 4),
brightness: (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)((0,_clamp_js__WEBPACK_IMPORTED_MODULE_0__.clamp)(largestComponent, 0, 1), 4),
lightness: (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)(lightness, 4),
alpha: (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)(alpha, 4)
};
}
function rgbToHsb(color) {
const {
hue,
saturation,
brightness,
alpha = 1
} = rgbToHsbl(color, 'b');
return {
hue,
saturation,
brightness,
alpha
};
}
function rgbToHsl(color) {
const {
hue,
saturation: rawSaturation,
lightness: rawLightness,
alpha = 1
} = rgbToHsbl(color, 'l');
const saturation = (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)(rawSaturation * 100, 2);
const lightness = (0,_roundNumberToDecimalPlaces_js__WEBPACK_IMPORTED_MODULE_1__.roundNumberToDecimalPlaces)(rawLightness * 100, 2);
return {
hue,
saturation,
lightness,
alpha
};
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/components.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/components.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ConditionalRender": () => (/* binding */ ConditionalRender),
/* harmony export */ "ConditionalWrapper": () => (/* binding */ ConditionalWrapper),
/* harmony export */ "elementChildren": () => (/* binding */ elementChildren),
/* harmony export */ "isElementOfType": () => (/* binding */ isElementOfType),
/* harmony export */ "wrapWithComponent": () => (/* binding */ wrapWithComponent)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
// `Component`. If `props` is passed, those will be added as props on the
// wrapped component. If `element` is null, the component is not wrapped.
function wrapWithComponent(element, Component, props) {
if (element == null) {
return null;
}
return isElementOfType(element, Component) ? element : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, props, element);
} // In development, we compare based on the name of the function because
// React Hot Loader proxies React components in order to make updates. In
// production we can simply compare the components for equality.
const isComponent = true ? hotReloadComponentCheck : 0; // Checks whether `element` is a React element of type `Component` (or one of
// the passed components, if `Component` is an array of React components).
function isElementOfType(element, Component) {
var _element$props;
if (element == null || ! /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(element) || typeof element.type === 'string') {
return false;
}
const {
type: defaultType
} = element; // Type override allows components to bypass default wrapping behavior. Ex: Stack, ResourceList...
// See https://github.com/Shopify/app-extension-libs/issues/996#issuecomment-710437088
const overrideType = (_element$props = element.props) == null ? void 0 : _element$props.__type__;
const type = overrideType || defaultType;
const Components = Array.isArray(Component) ? Component : [Component];
return Components.some(AComponent => typeof type !== 'string' && isComponent(AComponent, type));
} // Returns all children that are valid elements as an array. Can optionally be
// filtered by passing `predicate`.
function elementChildren(children, predicate = () => true) {
return react__WEBPACK_IMPORTED_MODULE_0__.Children.toArray(children).filter(child => /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(child) && predicate(child));
}
function ConditionalWrapper({
condition,
wrapper,
children
}) {
return condition ? wrapper(children) : children;
}
function ConditionalRender({
condition,
children
}) {
return condition ? children : null;
}
function hotReloadComponentCheck(AComponent, AnotherComponent) {
const componentName = AComponent.name;
const anotherComponentName = AnotherComponent.displayName;
return AComponent === AnotherComponent || Boolean(componentName) && componentName === anotherComponentName;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/css.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/css.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "classNames": () => (/* binding */ classNames),
/* harmony export */ "variationName": () => (/* binding */ variationName)
/* harmony export */ });
function classNames(...classes) {
return classes.filter(Boolean).join(' ');
}
function variationName(name, value) {
return `${name}${value.charAt(0).toUpperCase()}${value.slice(1)}`;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/errors.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/errors.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "MissingAppProviderError": () => (/* binding */ MissingAppProviderError)
/* harmony export */ });
class MissingAppProviderError extends Error {
constructor(message = '') {
super(`${message ? `${message} ` : message}Your application must be wrapped in an <AppProvider> component. See https://polaris.shopify.com/components/structure/app-provider for implementation instructions.`);
this.name = 'MissingAppProviderError';
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/features/context.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/features/context.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "FeaturesContext": () => (/* binding */ FeaturesContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const FeaturesContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/focus-manager/context.js":
/*!***********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/focus-manager/context.js ***!
\***********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "FocusManagerContext": () => (/* binding */ FocusManagerContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const FocusManagerContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/focus.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/focus.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "findFirstFocusableNode": () => (/* binding */ findFirstFocusableNode),
/* harmony export */ "findFirstFocusableNodeIncludingDisabled": () => (/* binding */ findFirstFocusableNodeIncludingDisabled),
/* harmony export */ "findFirstKeyboardFocusableNode": () => (/* binding */ findFirstKeyboardFocusableNode),
/* harmony export */ "findLastKeyboardFocusableNode": () => (/* binding */ findLastKeyboardFocusableNode),
/* harmony export */ "focusFirstFocusableNode": () => (/* binding */ focusFirstFocusableNode),
/* harmony export */ "focusFirstKeyboardFocusableNode": () => (/* binding */ focusFirstKeyboardFocusableNode),
/* harmony export */ "focusLastKeyboardFocusableNode": () => (/* binding */ focusLastKeyboardFocusableNode),
/* harmony export */ "focusNextFocusableNode": () => (/* binding */ focusNextFocusableNode),
/* harmony export */ "handleMouseUpByBlurring": () => (/* binding */ handleMouseUpByBlurring),
/* harmony export */ "nextFocusableNode": () => (/* binding */ nextFocusableNode)
/* harmony export */ });
/* harmony import */ var _is_element_in_viewport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-element-in-viewport.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/is-element-in-viewport.js");
const FOCUSABLE_SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';
const KEYBOARD_FOCUSABLE_SELECTORS = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]:not([tabindex="-1"])';
const handleMouseUpByBlurring = ({
currentTarget
}) => currentTarget.blur();
function nextFocusableNode(node, filter) {
const allFocusableElements = [...document.querySelectorAll(FOCUSABLE_SELECTOR)];
const sliceLocation = allFocusableElements.indexOf(node) + 1;
const focusableElementsAfterNode = allFocusableElements.slice(sliceLocation);
for (const focusableElement of focusableElementsAfterNode) {
if ((0,_is_element_in_viewport_js__WEBPACK_IMPORTED_MODULE_0__.isElementInViewport)(focusableElement) && (!filter || filter && filter(focusableElement))) {
return focusableElement;
}
}
return null;
}
function findFirstFocusableNode(element, onlyDescendants = true) {
if (!onlyDescendants && matches(element, FOCUSABLE_SELECTOR)) {
return element;
}
return element.querySelector(FOCUSABLE_SELECTOR);
} // Popover needs to be able to find its activator even if it is disabled, which FOCUSABLE_SELECTOR doesn't support.
function findFirstFocusableNodeIncludingDisabled(element) {
const focusableSelector = `a,button,frame,iframe,input:not([type=hidden]),select,textarea,*[tabindex]`;
if (matches(element, focusableSelector)) {
return element;
}
return element.querySelector(focusableSelector);
}
function focusFirstFocusableNode(element, onlyDescendants = true) {
var _findFirstFocusableNo;
(_findFirstFocusableNo = findFirstFocusableNode(element, onlyDescendants)) == null ? void 0 : _findFirstFocusableNo.focus();
}
function focusNextFocusableNode(node, filter) {
const nextFocusable = nextFocusableNode(node, filter);
if (nextFocusable && nextFocusable instanceof HTMLElement) {
nextFocusable.focus();
return true;
}
return false;
}
function findFirstKeyboardFocusableNode(element, onlyDescendants = true) {
if (!onlyDescendants && matches(element, KEYBOARD_FOCUSABLE_SELECTORS)) {
return element;
}
return element.querySelector(KEYBOARD_FOCUSABLE_SELECTORS);
}
function focusFirstKeyboardFocusableNode(element, onlyDescendants = true) {
const firstFocusable = findFirstKeyboardFocusableNode(element, onlyDescendants);
if (firstFocusable) {
firstFocusable.focus();
return true;
}
return false;
}
function findLastKeyboardFocusableNode(element, onlyDescendants = true) {
if (!onlyDescendants && matches(element, KEYBOARD_FOCUSABLE_SELECTORS)) {
return element;
}
const allFocusable = element.querySelectorAll(KEYBOARD_FOCUSABLE_SELECTORS);
return allFocusable[allFocusable.length - 1];
}
function focusLastKeyboardFocusableNode(element, onlyDescendants = true) {
const lastFocusable = findLastKeyboardFocusableNode(element, onlyDescendants);
if (lastFocusable) {
lastFocusable.focus();
return true;
}
return false;
}
function matches(node, selector) {
if (node.matches) {
return node.matches(selector);
}
const matches = (node.ownerDocument || document).querySelectorAll(selector);
let i = matches.length;
while (--i >= 0 && matches.item(i) !== node) return i > -1;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/geometry.js":
/*!**********************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/geometry.js ***!
\**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "Rect": () => (/* binding */ Rect),
/* harmony export */ "getRectForNode": () => (/* binding */ getRectForNode)
/* harmony export */ });
class Rect {
static get zero() {
return new Rect();
}
constructor({
top = 0,
left = 0,
width = 0,
height = 0
} = {}) {
this.top = void 0;
this.left = void 0;
this.width = void 0;
this.height = void 0;
this.top = top;
this.left = left;
this.width = width;
this.height = height;
}
get center() {
return {
x: this.left + this.width / 2,
y: this.top + this.height / 2
};
}
}
function getRectForNode(node) {
if (!(node instanceof Element)) {
return new Rect({
width: window.innerWidth,
height: window.innerHeight
});
}
const rect = node.getBoundingClientRect();
return new Rect({
top: rect.top,
left: rect.left,
width: rect.width,
height: rect.height
});
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/get.js":
/*!*****************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/get.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "get": () => (/* binding */ get)
/* harmony export */ });
const OBJECT_NOTATION_MATCHER = /\[(.*?)\]|(\w+)/g;
function get(obj, keypath, defaultValue) {
if (obj == null) return undefined;
const keys = Array.isArray(keypath) ? keypath : getKeypath(keypath);
let acc = obj; // eslint-disable-next-line @typescript-eslint/prefer-for-of
for (let i = 0; i < keys.length; i++) {
const val = acc[keys[i]];
if (val === undefined) return defaultValue;
acc = val;
}
return acc;
}
function getKeypath(str) {
const path = [];
let result;
while (result = OBJECT_NOTATION_MATCHER.exec(str)) {
const [, first, second] = result;
path.push(first || second);
}
return path;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/I18n.js":
/*!***********************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/i18n/I18n.js ***!
\***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "I18n": () => (/* binding */ I18n)
/* harmony export */ });
/* harmony import */ var _get_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../get.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/get.js");
/* harmony import */ var _merge_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../merge.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/merge.js");
const REPLACE_REGEX = /{([^}]*)}/g;
class I18n {
/**
* @param translation A locale object or array of locale objects that overrides default translations. If specifying an array then your desired language dictionary should come first, followed by your fallback language dictionaries
*/
constructor(translation) {
this.translation = {};
// slice the array to make a shallow copy of it, so we don't accidentally
// modify the original translation array
this.translation = Array.isArray(translation) ? (0,_merge_js__WEBPACK_IMPORTED_MODULE_0__.merge)(...translation.slice().reverse()) : translation;
}
translate(id, replacements) {
const text = (0,_get_js__WEBPACK_IMPORTED_MODULE_1__.get)(this.translation, id, '');
if (!text) {
return '';
}
if (replacements) {
return text.replace(REPLACE_REGEX, match => {
const replacement = match.substring(1, match.length - 1);
if (replacements[replacement] === undefined) {
const replacementData = JSON.stringify(replacements);
throw new Error(`Error in translation for key '${id}'. No replacement found for key '${replacement}'. The following replacements were passed: '${replacementData}'`);
} // This could be a string or a number, but JS doesn't mind which it gets
// and can handle that cast internally. So let it, to save us calling
// toString() on what's already a string in 90% of cases.
return replacements[replacement];
});
}
return text;
}
translationKeyExists(path) {
return Boolean((0,_get_js__WEBPACK_IMPORTED_MODULE_1__.get)(this.translation, path));
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/context.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/i18n/context.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "I18nContext": () => (/* binding */ I18nContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const I18nContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/i18n/hooks.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "useI18n": () => (/* binding */ useI18n)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../errors.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/errors.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/i18n/context.js");
function useI18n() {
const i18n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_js__WEBPACK_IMPORTED_MODULE_1__.I18nContext);
if (!i18n) {
throw new _errors_js__WEBPACK_IMPORTED_MODULE_2__.MissingAppProviderError('No i18n was provided.');
}
return i18n;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/is-element-in-viewport.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/is-element-in-viewport.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "isElementInViewport": () => (/* binding */ isElementInViewport)
/* harmony export */ });
function isElementInViewport(element) {
const {
top,
left,
bottom,
right
} = element.getBoundingClientRect();
return top >= 0 && right <= window.innerWidth && bottom <= window.innerHeight && left >= 0;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/is-input-focused.js":
/*!******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/is-input-focused.js ***!
\******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "isInputFocused": () => (/* binding */ isInputFocused)
/* harmony export */ });
var EditableTarget;
(function (EditableTarget) {
EditableTarget["Input"] = "INPUT";
EditableTarget["Textarea"] = "TEXTAREA";
EditableTarget["Select"] = "SELECT";
EditableTarget["ContentEditable"] = "contenteditable";
})(EditableTarget || (EditableTarget = {}));
function isInputFocused() {
if (document == null || document.activeElement == null) {
return false;
}
const {
tagName
} = document.activeElement;
return tagName === EditableTarget.Input || tagName === EditableTarget.Textarea || tagName === EditableTarget.Select || document.activeElement.hasAttribute(EditableTarget.ContentEditable);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/link/context.js":
/*!**************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/link/context.js ***!
\**************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "LinkContext": () => (/* binding */ LinkContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const LinkContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/link/hooks.js":
/*!************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/link/hooks.js ***!
\************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "useLink": () => (/* binding */ useLink)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/link/context.js");
function useLink() {
return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_js__WEBPACK_IMPORTED_MODULE_1__.LinkContext);
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/media-query/context.js":
/*!*********************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/media-query/context.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "MediaQueryContext": () => (/* binding */ MediaQueryContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const MediaQueryContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/media-query/hooks.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/media-query/hooks.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "useMediaQuery": () => (/* binding */ useMediaQuery)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/media-query/context.js");
function useMediaQuery() {
const mediaQuery = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_js__WEBPACK_IMPORTED_MODULE_1__.MediaQueryContext);
if (!mediaQuery) {
throw new Error('No mediaQuery was provided. Your application must be wrapped in an <AppProvider> component. See https://polaris.shopify.com/components/structure/app-provider for implementation instructions.');
}
return mediaQuery;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/merge.js":
/*!*******************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/merge.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "merge": () => (/* binding */ merge)
/* harmony export */ });
/* harmony import */ var _virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../_virtual/_rollupPluginBabelHelpers.js */ "./node_modules/@shopify/polaris/dist/esm/_virtual/_rollupPluginBabelHelpers.js");
// Unfortunately, this is how we have to type this at the moment.
// There is currently a proposal to support variadic kinds.
// https://github.com/Microsoft/TypeScript/issues/5453
function merge(...objs) {
let final = {};
for (const obj of objs) {
final = mergeRecursively(final, obj);
}
return final;
}
function mergeRecursively(inputObjA, objB) {
const objA = Array.isArray(inputObjA) ? [...inputObjA] : (0,_virtual_rollupPluginBabelHelpers_js__WEBPACK_IMPORTED_MODULE_0__.objectSpread2)({}, inputObjA);
for (const key in objB) {
if (!Object.prototype.hasOwnProperty.call(objB, key)) {
continue;
} else if (isMergeableValue(objB[key]) && isMergeableValue(objA[key])) {
objA[key] = mergeRecursively(objA[key], objB[key]);
} else {
objA[key] = objB[key];
}
}
return objA;
}
function isMergeableValue(value) {
return value !== null && typeof value === 'object';
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/portals/context.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/portals/context.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "PortalsManagerContext": () => (/* binding */ PortalsManagerContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const PortalsManagerContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/portals/hooks.js":
/*!***************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/portals/hooks.js ***!
\***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "usePortalsManager": () => (/* binding */ usePortalsManager)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var _context_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./context.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/portals/context.js");
function usePortalsManager() {
const portalsManager = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_js__WEBPACK_IMPORTED_MODULE_1__.PortalsManagerContext);
if (!portalsManager) {
throw new Error('No portals manager was provided. Your application must be wrapped in an <AppProvider> component. See https://polaris.shopify.com/components/structure/app-provider for implementation instructions.');
}
return portalsManager;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/roundNumberToDecimalPlaces.js":
/*!****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/roundNumberToDecimalPlaces.js ***!
\****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "roundNumberToDecimalPlaces": () => (/* binding */ roundNumberToDecimalPlaces)
/* harmony export */ });
// Because everything is a float in JS, Number.toFixed sometimes rounds in the
// "wrong" direction because of float imprecision. For instance:
// `(1.005).toFixed(2)` is `1.00`, NOT `1.01` because 1.005 in floating point is
// actually 1.004999995. By using exponentiation tricks here we can work around
// this imprecision, so `roundNumberToDecimalPlaces(1.005)` returns the expected
// value of `1.01`
// See https://www.jacklmoore.com/notes/rounding-in-javascript/
function roundNumberToDecimalPlaces(value, decimals) {
const exponent = Number(`${value}e${decimals}`);
const roundedExponent = Math.round(exponent);
const numberWithDecimalPlaces = Number(`${roundedExponent}e-${decimals}`);
return numberWithDecimalPlaces;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/context.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/context.js ***!
\*****************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "ScrollLockManagerContext": () => (/* binding */ ScrollLockManagerContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const ScrollLockManagerContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/scroll-lock-manager.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/scroll-lock-manager/scroll-lock-manager.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "SCROLL_LOCKING_ATTRIBUTE": () => (/* binding */ SCROLL_LOCKING_ATTRIBUTE),
/* harmony export */ "ScrollLockManager": () => (/* binding */ ScrollLockManager)
/* harmony export */ });
/* harmony import */ var _target_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../target.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/target.js");
const SCROLL_LOCKING_ATTRIBUTE = 'data-lock-scrolling';
const SCROLL_LOCKING_WRAPPER_ATTRIBUTE = 'data-lock-scrolling-wrapper';
let scrollPosition = 0;
class ScrollLockManager {
constructor() {
this.scrollLocks = 0;
this.locked = false;
}
registerScrollLock() {
this.scrollLocks += 1;
this.handleScrollLocking();
}
unregisterScrollLock() {
this.scrollLocks -= 1;
this.handleScrollLocking();
}
handleScrollLocking() {
if (_target_js__WEBPACK_IMPORTED_MODULE_0__.isServer) return;
const {
scrollLocks
} = this;
const {
body
} = document;
const wrapper = body.firstElementChild;
if (scrollLocks === 0) {
body.removeAttribute(SCROLL_LOCKING_ATTRIBUTE);
if (wrapper) {
wrapper.removeAttribute(SCROLL_LOCKING_WRAPPER_ATTRIBUTE);
}
window.scroll(0, scrollPosition);
this.locked = false;
} else if (scrollLocks > 0 && !this.locked) {
scrollPosition = window.pageYOffset;
body.setAttribute(SCROLL_LOCKING_ATTRIBUTE, '');
if (wrapper) {
wrapper.setAttribute(SCROLL_LOCKING_WRAPPER_ATTRIBUTE, '');
wrapper.scrollTop = scrollPosition;
}
this.locked = true;
}
}
resetScrollPosition() {
scrollPosition = 0;
}
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/context.js":
/*!************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/context.js ***!
\************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "StickyManagerContext": () => (/* binding */ StickyManagerContext)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
const StickyManagerContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/sticky-manager.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/sticky-manager/sticky-manager.js ***!
\*******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "StickyManager": () => (/* binding */ StickyManager)
/* harmony export */ });
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/debounce */ "./node_modules/lodash/debounce.js");
/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_debounce__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _breakpoints_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../breakpoints.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/breakpoints.js");
/* harmony import */ var _shopify_polaris_tokens__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @shopify/polaris-tokens */ "./node_modules/@shopify/polaris-tokens/dist/index.esm.js");
/* harmony import */ var _components_shared_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/shared.js */ "./node_modules/@shopify/polaris/dist/esm/components/shared.js");
/* harmony import */ var _geometry_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../geometry.js */ "./node_modules/@shopify/polaris/dist/esm/utilities/geometry.js");
const SIXTY_FPS = 1000 / 60;
class StickyManager {
constructor(container) {
this.stickyItems = [];
this.stuckItems = [];
this.container = null;
this.topBarOffset = 0;
this.handleResize = lodash_debounce__WEBPACK_IMPORTED_MODULE_0___default()(() => {
this.manageStickyItems();
}, SIXTY_FPS, {
leading: true,
trailing: true,
maxWait: SIXTY_FPS
});
this.handleScroll = lodash_debounce__WEBPACK_IMPORTED_MODULE_0___default()(() => {
this.manageStickyItems();
}, SIXTY_FPS, {
leading: true,
trailing: true,
maxWait: SIXTY_FPS
});
if (container) {
this.setContainer(container);
}
}
registerStickyItem(stickyItem) {
this.stickyItems.push(stickyItem);
}
unregisterStickyItem(nodeToRemove) {
const nodeIndex = this.stickyItems.findIndex(({
stickyNode
}) => nodeToRemove === stickyNode);
this.stickyItems.splice(nodeIndex, 1);
}
setContainer(el) {
this.container = el;
if (isDocument(el)) {
this.setTopBarOffset(el);
}
this.container.addEventListener('scroll', this.handleScroll);
window.addEventListener('resize', this.handleResize);
this.manageStickyItems();
}
removeScrollListener() {
if (this.container) {
this.container.removeEventListener('scroll', this.handleScroll);
window.removeEventListener('resize', this.handleResize);
}
}
manageStickyItems() {
if (this.stickyItems.length <= 0) {
return;
}
const scrollTop = this.container ? scrollTopFor(this.container) : 0;
const containerTop = (0,_geometry_js__WEBPACK_IMPORTED_MODULE_2__.getRectForNode)(this.container).top + this.topBarOffset;
this.stickyItems.forEach(stickyItem => {
const {
handlePositioning
} = stickyItem;
const {
sticky,
top,
left,
width
} = this.evaluateStickyItem(stickyItem, scrollTop, containerTop);
this.updateStuckItems(stickyItem, sticky);
handlePositioning(sticky, top, left, width);
});
}
evaluateStickyItem(stickyItem, scrollTop, containerTop) {
const {
stickyNode,
placeHolderNode,
boundingElement,
offset,
disableWhenStacked
} = stickyItem;
if (disableWhenStacked && (0,_breakpoints_js__WEBPACK_IMPORTED_MODULE_3__.stackedContent)().matches) {
return {
sticky: false,
top: 0,
left: 0,
width: 'auto'
};
}
const stickyOffset = offset ? this.getOffset(stickyNode) + parseInt(_shopify_polaris_tokens__WEBPACK_IMPORTED_MODULE_1__.spacingLoose, 10) : this.getOffset(stickyNode);
const scrollPosition = scrollTop + stickyOffset;
const placeHolderNodeCurrentTop = placeHolderNode.getBoundingClientRect().top - containerTop + scrollTop;
const top = containerTop + stickyOffset;
const width = placeHolderNode.getBoundingClientRect().width;
const left = placeHolderNode.getBoundingClientRect().left;
let sticky;
if (boundingElement == null) {
sticky = scrollPosition >= placeHolderNodeCurrentTop;
} else {
const stickyItemHeight = stickyNode.getBoundingClientRect().height;
const stickyItemBottomPosition = boundingElement.getBoundingClientRect().bottom - stickyItemHeight + scrollTop - containerTop;
sticky = scrollPosition >= placeHolderNodeCurrentTop && scrollPosition < stickyItemBottomPosition;
}
return {
sticky,
top,
left,
width
};
}
updateStuckItems(item, sticky) {
const {
stickyNode
} = item;
if (sticky && !this.isNodeStuck(stickyNode)) {
this.addStuckItem(item);
} else if (!sticky && this.isNodeStuck(stickyNode)) {
this.removeStuckItem(item);
}
}
addStuckItem(stickyItem) {
this.stuckItems.push(stickyItem);
}
removeStuckItem(stickyItem) {
const {
stickyNode: nodeToRemove
} = stickyItem;
const nodeIndex = this.stuckItems.findIndex(({
stickyNode
}) => nodeToRemove === stickyNode);
this.stuckItems.splice(nodeIndex, 1);
}
getOffset(node) {
if (this.stuckItems.length === 0) {
return 0;
}
let offset = 0;
let count = 0;
const stuckNodesLength = this.stuckItems.length;
const nodeRect = (0,_geometry_js__WEBPACK_IMPORTED_MODULE_2__.getRectForNode)(node);
while (count < stuckNodesLength) {
const stuckNode = this.stuckItems[count].stickyNode;
if (stuckNode !== node) {
const stuckNodeRect = (0,_geometry_js__WEBPACK_IMPORTED_MODULE_2__.getRectForNode)(stuckNode);
if (!horizontallyOverlaps(nodeRect, stuckNodeRect)) {
offset += (0,_geometry_js__WEBPACK_IMPORTED_MODULE_2__.getRectForNode)(stuckNode).height;
}
} else {
break;
}
count++;
}
return offset;
}
isNodeStuck(node) {
const nodeFound = this.stuckItems.findIndex(({
stickyNode
}) => node === stickyNode);
return nodeFound >= 0;
}
setTopBarOffset(container) {
const topbarElement = container.querySelector(`:not(${_components_shared_js__WEBPACK_IMPORTED_MODULE_4__.scrollable.selector}) ${_components_shared_js__WEBPACK_IMPORTED_MODULE_4__.dataPolarisTopBar.selector}`);
this.topBarOffset = topbarElement ? topbarElement.clientHeight : 0;
}
}
function isDocument(node) {
return node === document;
}
function scrollTopFor(container) {
return isDocument(container) ? document.body.scrollTop || document.documentElement.scrollTop : container.scrollTop;
}
function horizontallyOverlaps(rect1, rect2) {
const rect1Left = rect1.left;
const rect1Right = rect1.left + rect1.width;
const rect2Left = rect2.left;
const rect2Right = rect2.left + rect2.width;
return rect2Right < rect1Left || rect1Right < rect2Left;
}
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/target.js":
/*!********************************************************************!*\
!*** ./node_modules/@shopify/polaris/dist/esm/utilities/target.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "isServer": () => (/* binding */ isServer)
/* harmony export */ });
const isServer = typeof window === 'undefined' || typeof document === 'undefined';
/***/ }),
/***/ "./node_modules/@shopify/polaris/dist/esm/utilities/theme/context.js":
/*!**********************************
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment