@saasquatch/mint-components 2.1.8-0 → 2.1.8-10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/cjs/{ShadowViewAddon-1d15cdf7.js → ShadowViewAddon-19755faf.js} +384 -9
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/mint-components.cjs.js +1 -1
  4. package/dist/cjs/sqm-banking-info-form_10.cjs.entry.js +50 -391
  5. package/dist/cjs/sqm-big-stat_45.cjs.entry.js +172 -23
  6. package/dist/cjs/sqm-stencilbook.cjs.entry.js +168 -18
  7. package/dist/collection/components/sqm-share-code/sqm-share-code.js +0 -1
  8. package/dist/collection/components/sqm-share-link/ShareLink.stories.js +142 -11
  9. package/dist/collection/components/sqm-share-link/UseShareLink.stories.js +14 -5
  10. package/dist/collection/components/sqm-share-link/sqm-share-link-view.js +173 -0
  11. package/dist/collection/components/sqm-share-link/sqm-share-link.js +536 -26
  12. package/dist/collection/components/sqm-share-link/useShareLink.js +210 -6
  13. package/dist/collection/components/tax-and-cash/sqm-banking-info-form/formDefinitions.js +37 -75
  14. package/dist/collection/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form.js +13 -688
  15. package/dist/collection/components/tax-and-cash/sqm-banking-info-form/useBankingInfoForm.js +1 -109
  16. package/dist/esm/{ShadowViewAddon-53b9090b.js → ShadowViewAddon-23d56d60.js} +386 -12
  17. package/dist/esm/loader.js +1 -1
  18. package/dist/esm/mint-components.js +1 -1
  19. package/dist/esm/sqm-banking-info-form_10.entry.js +50 -391
  20. package/dist/esm/sqm-big-stat_45.entry.js +172 -23
  21. package/dist/esm/sqm-stencilbook.entry.js +168 -18
  22. package/dist/esm-es5/ShadowViewAddon-23d56d60.js +1 -0
  23. package/dist/esm-es5/loader.js +1 -1
  24. package/dist/esm-es5/mint-components.js +1 -1
  25. package/dist/esm-es5/sqm-banking-info-form_10.entry.js +1 -1
  26. package/dist/esm-es5/sqm-big-stat_45.entry.js +1 -1
  27. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  28. package/dist/mint-components/mint-components.esm.js +1 -1
  29. package/dist/mint-components/p-182b5b6a.js +503 -0
  30. package/dist/mint-components/{p-0e6c90b1.entry.js → p-27ec70af.entry.js} +20 -20
  31. package/dist/mint-components/p-47b630aa.entry.js +9 -0
  32. package/dist/mint-components/p-644fca99.system.js +1 -0
  33. package/dist/mint-components/p-af8c2202.system.entry.js +1 -0
  34. package/dist/mint-components/p-ca098be1.system.js +1 -1
  35. package/dist/mint-components/p-cacb897d.system.entry.js +1 -0
  36. package/dist/mint-components/p-ebe1eb7a.system.entry.js +1 -0
  37. package/dist/mint-components/p-ff378015.entry.js +106 -0
  38. package/dist/types/components/sqm-share-link/ShareLink.stories.d.ts +10 -0
  39. package/dist/types/components/sqm-share-link/UseShareLink.stories.d.ts +6 -0
  40. package/dist/types/components/sqm-share-link/sqm-share-link-view.d.ts +37 -0
  41. package/dist/types/components/sqm-share-link/sqm-share-link.d.ts +107 -2
  42. package/dist/types/components/sqm-share-link/useShareLink.d.ts +27 -4
  43. package/dist/types/components/tax-and-cash/sqm-banking-info-form/formDefinitions.d.ts +0 -2
  44. package/dist/types/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form-view.d.ts +0 -4
  45. package/dist/types/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form.d.ts +0 -165
  46. package/dist/types/components.d.ts +183 -242
  47. package/docs/docs.docx +0 -0
  48. package/docs/raisins.json +1 -1
  49. package/grapesjs/grapesjs.js +1 -1
  50. package/package.json +1 -1
  51. package/dist/esm-es5/ShadowViewAddon-53b9090b.js +0 -1
  52. package/dist/mint-components/p-17b32de7.system.entry.js +0 -1
  53. package/dist/mint-components/p-54ea8b9b.system.entry.js +0 -1
  54. package/dist/mint-components/p-7d16ee0e.entry.js +0 -108
  55. package/dist/mint-components/p-807ed3bf.system.js +0 -1
  56. package/dist/mint-components/p-de7bb373.entry.js +0 -9
  57. package/dist/mint-components/p-e9258d20.system.entry.js +0 -1
  58. package/dist/mint-components/p-e980472a.js +0 -463
@@ -23,7 +23,7 @@ import { u as useInstantAccessRegistration } from './useInstantAccessRegistratio
23
23
  import { R as RequiredPropsError, L as LEAD_FORM_STATE_CONTEXT, u as useLeadFormState } from './useLeadFormState-dd4e8b08.js';
24
24
  import { i as isEmpty } from './utilities-77b1e0cc.js';
25
25
  import { E as ErrorView } from './ErrorView-74cb3af8.js';
26
- import { u as useDemoBigStat, V as useBigStat, B as BigStatView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, H as HeroView, I as InputFieldView, Q as LeadDropdownFieldView, O as LeadFormView, W as withShadowView, L as LeaderboardView, N as NameFieldsView, f as ChangeMarktingView, P as PortalChangePasswordView, g as PortalFooterView, h as PortalFrameView, c as BaseRegistrationFormView, R as ReferralIframeView, i as RewardExchangeView, X as demoRewardExchange, G as useShareButton, a as ShareButtonView, J as useShareLink, S as StatContainerView, T as TaskCardView } from './ShadowViewAddon-53b9090b.js';
26
+ import { u as useDemoBigStat, W as useBigStat, B as BigStatView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, H as HeroView, I as InputFieldView, U as LeadDropdownFieldView, Q as LeadFormView, X as withShadowView, L as LeaderboardView, N as NameFieldsView, f as ChangeMarktingView, P as PortalChangePasswordView, g as PortalFooterView, h as PortalFrameView, c as BaseRegistrationFormView, R as ReferralIframeView, i as RewardExchangeView, Y as demoRewardExchange, G as useShareButton, a as ShareButtonView, K as useShareLink, J as ShareLinkView, S as StatContainerView, T as TaskCardView } from './ShadowViewAddon-23d56d60.js';
27
27
  import './sqm-portal-container-view-a8c708cd.js';
28
28
  import { T as TAX_CONTEXT_NAMESPACE, a as TAX_FORM_CONTEXT_NAMESPACE, U as USER_FORM_CONTEXT_NAMESPACE, C as CURRENCIES_NAMESPACE, b as COUNTRIES_NAMESPACE, S as SORTED_COUNTRIES_NAMESPACE, g as getCountryObj, c as USER_QUERY_NAMESPACE, G as GET_USER$2, d as COUNTRIES_QUERY_NAMESPACE, e as GET_COUNTRIES, h as FINANCE_NETWORK_SETTINGS_NAMESPACE, i as GET_FINANCE_NETWORK_SETTINGS, j as CURRENCIES_QUERY_NAMESPACE, k as GET_CURRENCIES, L as LoadingView } from './data-12e6aae1.js';
29
29
  import { p as parseStates, e as extractProps } from './extractProps-54064fb0.js';
@@ -6050,7 +6050,6 @@ function useDemoShareCode(props) {
6050
6050
  borderRadius: props.borderRadius,
6051
6051
  borderColor: props.borderColor,
6052
6052
  buttonType: props.buttonType,
6053
- rewardStatus: "AVAILABLE",
6054
6053
  open,
6055
6054
  onClick: () => {
6056
6055
  // Should well supported: https://developer.mozilla.org/en-US/docs/Web/API/Clipboard#browser_compatibility
@@ -6110,6 +6109,111 @@ const ShareLink = class {
6110
6109
  * @uiGroup Style
6111
6110
  */
6112
6111
  this.buttonStyle = "icon";
6112
+ /**
6113
+ * Enable users to customize their referral link
6114
+ *
6115
+ * @uiName Customize URL
6116
+ * @uiType boolean
6117
+ */
6118
+ this.customizeUrl = false;
6119
+ /**
6120
+ * Text shown below the share link input to trigger customization
6121
+ *
6122
+ * @uiName Customize link label
6123
+ * @uiType string
6124
+ */
6125
+ this.customizeLinkLabel = "Customize Link";
6126
+ /**
6127
+ * Text for the save button in editing mode
6128
+ *
6129
+ * @uiName Save button label
6130
+ * @uiType string
6131
+ */
6132
+ this.saveLabelText = "Save";
6133
+ /**
6134
+ * Text for the cancel button in editing mode
6135
+ *
6136
+ * @uiName Cancel button label
6137
+ * @uiType string
6138
+ */
6139
+ this.cancelLabelText = "Cancel";
6140
+ /**
6141
+ * Message shown briefly after successfully saving a custom link
6142
+ *
6143
+ * @uiName Success message
6144
+ * @uiType string
6145
+ */
6146
+ this.successMessage = "Link updated successfully";
6147
+ /**
6148
+ * Title text shown when the custom link is already taken
6149
+ *
6150
+ * @uiName Existing code conflict error title
6151
+ * @uiType string
6152
+ */
6153
+ this.existingCodeConflictErrorTitle = "This link is already taken";
6154
+ /**
6155
+ * Description text shown when the custom link is already taken
6156
+ *
6157
+ * @uiName Existing code conflict error description
6158
+ * @uiType string
6159
+ */
6160
+ this.existingCodeConflictErrorDescription = "Try adding numbers, a dash or underscore to create a unique link.";
6161
+ /**
6162
+ * Title text shown when the link contains invalid characters
6163
+ *
6164
+ * @uiName Invalid characters error title
6165
+ * @uiType string
6166
+ */
6167
+ this.invalidCharactersErrorTitle = "Please use only letters, numbers, dashes and underscores";
6168
+ /**
6169
+ * Description text shown when the link contains invalid characters
6170
+ *
6171
+ * @uiName Invalid characters error description
6172
+ * @uiType string
6173
+ */
6174
+ this.invalidCharactersErrorDescription = "Special characters can break the link when sharing.";
6175
+ /**
6176
+ * Title text shown when the link contains profanity
6177
+ *
6178
+ * @uiName Profanity error title
6179
+ * @uiType string
6180
+ */
6181
+ this.profanityErrorTitle = "Please try a different link";
6182
+ /**
6183
+ * Description text shown when the link contains profanity
6184
+ *
6185
+ * @uiName Profanity error description
6186
+ * @uiType string
6187
+ */
6188
+ this.profanityErrorDescription = "This link contains a restricted word.";
6189
+ /**
6190
+ * Text describing the edit limit
6191
+ *
6192
+ * @uiName Edit limit text
6193
+ * @uiType string
6194
+ */
6195
+ this.editLimitText = "You can edit your link up to 5 times.";
6196
+ /**
6197
+ * Message shown when the edit limit has been reached. Use {supportLink} as a placeholder for the support link.
6198
+ *
6199
+ * @uiName Edit limit reached text
6200
+ * @uiType string
6201
+ */
6202
+ this.editLimitReachedText = "5 edit limit reached. To make more changes, please contact {supportLink}.";
6203
+ /**
6204
+ * Display text for the support link in the edit limit reached message
6205
+ *
6206
+ * @uiName Support link text
6207
+ * @uiType string
6208
+ */
6209
+ this.supportLinkText = "Support";
6210
+ /**
6211
+ * Tooltip text shown when link customization is disabled
6212
+ *
6213
+ * @uiName Customize disabled tooltip
6214
+ * @uiType string
6215
+ */
6216
+ this.customizeDisabledTooltip = "Link customization is not available.";
6113
6217
  h(this);
6114
6218
  }
6115
6219
  disconnectedCallback() { }
@@ -6118,33 +6222,78 @@ const ShareLink = class {
6118
6222
  const props = isDemo()
6119
6223
  ? useDemoShareLink(thisProps)
6120
6224
  : useShareLink(thisProps);
6121
- return h$1(CopyTextView, Object.assign({}, props));
6225
+ return h$1(ShareLinkView, Object.assign({}, props));
6122
6226
  }
6123
6227
  };
6124
6228
  function useDemoShareLink(props) {
6229
+ var _a;
6125
6230
  const [open, setOpen] = useState(false);
6231
+ const [isEditing, setIsEditing] = useState(false);
6232
+ const [editValue, setEditValue] = useState("");
6233
+ const [showSuccess, setShowSuccess] = useState(false);
6126
6234
  const copyString = "https://www.example.com/sharelink/abc";
6127
- return cjs({
6128
- copyString: copyString,
6129
- tooltiptext: props.tooltiptext,
6130
- textAlign: props.textAlign,
6131
- buttonStyle: props.buttonStyle,
6132
- backgroundColor: props.backgroundColor,
6133
- textColor: props.textColor,
6134
- borderRadius: props.borderRadius,
6135
- buttonType: props.buttonType,
6136
- copyButtonLabel: props.copyButtonLabel,
6137
- borderColor: props.borderColor,
6138
- rewardStatus: "AVAILABLE",
6139
- open,
6140
- onClick: () => {
6141
- // Should well supported: https://developer.mozilla.org/en-US/docs/Web/API/Clipboard#browser_compatibility
6142
- // Only if called from a user-initiated event
6143
- navigator.clipboard.writeText(copyString);
6144
- setOpen(true);
6145
- setTimeout(() => setOpen(false), props.tooltiplifespan);
6235
+ const domainPrefix = "https://www.example.com/";
6236
+ const baseProps = {
6237
+ copyTextViewProps: {
6238
+ copyString,
6239
+ tooltiptext: props.tooltiptext,
6240
+ textAlign: props.textAlign,
6241
+ buttonStyle: props.buttonStyle,
6242
+ backgroundColor: props.backgroundColor,
6243
+ textColor: props.textColor,
6244
+ borderRadius: props.borderRadius,
6245
+ buttonType: props.buttonType,
6246
+ copyButtonLabel: props.copyButtonLabel,
6247
+ borderColor: props.borderColor,
6248
+ open,
6249
+ onClick: () => {
6250
+ navigator.clipboard.writeText(copyString);
6251
+ setOpen(true);
6252
+ setTimeout(() => setOpen(false), props.tooltiplifespan);
6253
+ },
6146
6254
  },
6147
- }, props.demoData || {}, { arrayMerge: (_, a) => a });
6255
+ customizeUrl: props.customizeUrl,
6256
+ customizeLinkLabel: props.customizeLinkLabel,
6257
+ saveLabelText: props.saveLabelText,
6258
+ cancelLabelText: props.cancelLabelText,
6259
+ successMessage: props.successMessage,
6260
+ isEditing,
6261
+ editValue,
6262
+ domainPrefix,
6263
+ editsRemaining: 5,
6264
+ maxEdits: 5,
6265
+ limitReached: false,
6266
+ validationError: null,
6267
+ isValidating: false,
6268
+ isSaving: false,
6269
+ showSuccess,
6270
+ characterLimit: 15,
6271
+ charactersRemaining: 15 - editValue.length,
6272
+ editLimitText: props.editLimitText,
6273
+ editLimitReachedText: props.editLimitReachedText,
6274
+ supportLinkText: props.supportLinkText,
6275
+ customizeDisabled: false,
6276
+ customizeDisabledTooltip: (_a = props.customizeDisabledTooltip) !== null && _a !== void 0 ? _a : "Link customization is not available.",
6277
+ onCustomizeClick: () => {
6278
+ setIsEditing(true);
6279
+ setEditValue("");
6280
+ },
6281
+ onEditValueChange: (value) => {
6282
+ setEditValue(value);
6283
+ },
6284
+ onSave: () => {
6285
+ setIsEditing(false);
6286
+ setShowSuccess(true);
6287
+ setTimeout(() => setShowSuccess(false), 3000);
6288
+ },
6289
+ onCancel: () => {
6290
+ setIsEditing(false);
6291
+ setEditValue("");
6292
+ },
6293
+ };
6294
+ return cjs(baseProps, props.demoData || {}, {
6295
+ arrayMerge: (_, a) => a,
6296
+ });
6148
6297
  }
6149
6298
 
6150
6299
  const StatContainer = class {
@@ -29,7 +29,7 @@ import './utilities-77b1e0cc.js';
29
29
  import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-cfbc0eb0.js';
30
30
  import './ErrorView-74cb3af8.js';
31
31
  import { Q as QrCodeView } from './sqm-qr-code-view-ce476721.js';
32
- import { S as StatContainerView, B as BigStatView, a as ShareButtonView, P as PortalChangePasswordView, b as PoweredByImg$1, c as BaseRegistrationFormView, u as useDemoBigStat, T as TaskCardView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, L as LeaderboardView, H as HeroView, I as InputFieldView, N as NameFieldsView, f as ChangeMarktingView, g as PortalFooterView, h as PortalFrameView, R as ReferralIframeView, i as RewardExchangeView, r as rewardExchangeCustomErrorMsg, j as rewardExchangeLongText, k as rewardExchangeSelected, l as chooseAmountFixed, m as chooseAmountFixedNoDescription, n as chooseAmountVariable, o as chooseAmountVariableNoDescription, p as chooseAmountVariableDisabled, q as chooseAmountVariableUnavailable, s as confirmFixed, t as confirmVariable, v as redemptionError, w as queryError, x as success, y as successVariable, z as loading, A as empty$1, F as rewardExchange, G as useShareButton, J as useShareLink, K as ProgressBarView, M as ProgressBar$2, O as LeadFormView, Q as LeadDropdownFieldView, U as ShadowViewAddon } from './ShadowViewAddon-53b9090b.js';
32
+ import { S as StatContainerView, B as BigStatView, a as ShareButtonView, P as PortalChangePasswordView, b as PoweredByImg$1, c as BaseRegistrationFormView, u as useDemoBigStat, T as TaskCardView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, L as LeaderboardView, H as HeroView, I as InputFieldView, N as NameFieldsView, f as ChangeMarktingView, g as PortalFooterView, h as PortalFrameView, R as ReferralIframeView, i as RewardExchangeView, r as rewardExchangeCustomErrorMsg, j as rewardExchangeLongText, k as rewardExchangeSelected, l as chooseAmountFixed, m as chooseAmountFixedNoDescription, n as chooseAmountVariable, o as chooseAmountVariableNoDescription, p as chooseAmountVariableDisabled, q as chooseAmountVariableUnavailable, s as confirmFixed, t as confirmVariable, v as redemptionError, w as queryError, x as success, y as successVariable, z as loading, A as empty$1, F as rewardExchange, G as useShareButton, J as ShareLinkView, K as useShareLink, M as ProgressBarView, O as ProgressBar$2, Q as LeadFormView, U as LeadDropdownFieldView, V as ShadowViewAddon } from './ShadowViewAddon-23d56d60.js';
33
33
  import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-container-view-a8c708cd.js';
34
34
  import { I as InvoiceTableView, a as INDIRECT_TAX_SPAIN_REGIONS, b as INDIRECT_TAX_PROVINCES, O as OtherRegionSlotView, U as UserInfoFormView$1 } from './sqm-user-info-form-view-19d81a2b.js';
35
35
  import { t as taxTypeToName, L as LoadingView } from './data-12e6aae1.js';
@@ -14050,21 +14050,151 @@ const CustomStyles$1 = () => {
14050
14050
  return h(CopyTextView, Object.assign({}, props));
14051
14051
  };
14052
14052
  const CustomStylesWithDemoHooks = () => {
14053
- const props = {
14054
- copyString: "https://noah.example.com",
14055
- open: false,
14056
- tooltiptext: "Copied!",
14057
- backgroundColor: "#1ed760",
14058
- borderRadius: "30px",
14059
- textColor: "red",
14060
- buttonType: "primary",
14061
- borderColor: "#121212",
14062
- };
14063
- return (h("sqm-share-link", { demoData: { ...props }, backgroundColor: "#1ed760" }));
14053
+ return (h("sqm-share-link", { demoData: {
14054
+ copyTextViewProps: {
14055
+ copyString: "https://noah.example.com",
14056
+ open: false,
14057
+ tooltiptext: "Copied!",
14058
+ backgroundColor: "#1ed760",
14059
+ borderRadius: "30px",
14060
+ textColor: "red",
14061
+ buttonType: "primary",
14062
+ borderColor: "#121212",
14063
+ },
14064
+ }, backgroundColor: "#1ed760" }));
14064
14065
  };
14065
14066
  const FullStack = () => {
14066
14067
  return h("sqm-share-link", null);
14067
14068
  };
14069
+ // Customize URL stories
14070
+ const noopFn = () => { };
14071
+ const defaultCustomizeProps = {
14072
+ copyTextViewProps: {
14073
+ copyString: "https://ssqt.co/abc123",
14074
+ open: false,
14075
+ tooltiptext: "Copied!",
14076
+ },
14077
+ customizeUrl: true,
14078
+ customizeLinkLabel: "Customize Link",
14079
+ saveLabelText: "Save",
14080
+ cancelLabelText: "Cancel",
14081
+ successMessage: "Link updated successfully",
14082
+ isEditing: false,
14083
+ editValue: "",
14084
+ domainPrefix: "https://ssqt.co/",
14085
+ editsRemaining: 3,
14086
+ maxEdits: 5,
14087
+ limitReached: false,
14088
+ validationError: null,
14089
+ isValidating: false,
14090
+ isSaving: false,
14091
+ showSuccess: false,
14092
+ characterLimit: 15,
14093
+ charactersRemaining: 15,
14094
+ editLimitText: "You can edit your link up to 5 times.",
14095
+ editLimitReachedText: "5 edit limit reached. To make more changes, please contact {supportLink}.",
14096
+ supportLinkText: "Support",
14097
+ customizeDisabled: false,
14098
+ customizeDisabledTooltip: "Link customization is not available.",
14099
+ onCustomizeClick: noopFn,
14100
+ onEditValueChange: noopFn,
14101
+ onSave: noopFn,
14102
+ onCancel: noopFn,
14103
+ };
14104
+ const CustomizeUrlDefault = () => {
14105
+ return h(ShareLinkView, Object.assign({}, defaultCustomizeProps));
14106
+ };
14107
+ const CustomizeUrlEditing = () => {
14108
+ return (h(ShareLinkView, Object.assign({}, {
14109
+ ...defaultCustomizeProps,
14110
+ isEditing: true,
14111
+ editValue: "nvoiwb18",
14112
+ charactersRemaining: 7,
14113
+ })));
14114
+ };
14115
+ const CustomizeUrlCustomized = () => {
14116
+ return (h(ShareLinkView, Object.assign({}, {
14117
+ ...defaultCustomizeProps,
14118
+ copyTextViewProps: {
14119
+ ...defaultCustomizeProps.copyTextViewProps,
14120
+ copyString: "https://ssqt.co/bobtesterson",
14121
+ },
14122
+ })));
14123
+ };
14124
+ const CustomizeUrlLimitReached = () => {
14125
+ return (h(ShareLinkView, Object.assign({}, {
14126
+ ...defaultCustomizeProps,
14127
+ copyTextViewProps: {
14128
+ ...defaultCustomizeProps.copyTextViewProps,
14129
+ copyString: "https://ssqt.co/bobtesterson",
14130
+ },
14131
+ editsRemaining: 0,
14132
+ limitReached: true,
14133
+ })));
14134
+ };
14135
+ const CustomizeUrlDisabled = () => {
14136
+ return (h(ShareLinkView, Object.assign({}, {
14137
+ ...defaultCustomizeProps,
14138
+ customizeDisabled: true,
14139
+ })));
14140
+ };
14141
+ const CustomizeUrlValidationError = () => {
14142
+ return (h(ShareLinkView, Object.assign({}, {
14143
+ ...defaultCustomizeProps,
14144
+ isEditing: true,
14145
+ editValue: "nvoiwb18",
14146
+ charactersRemaining: 7,
14147
+ validationError: {
14148
+ code: "EXISTING_CODE_CONFLICT",
14149
+ title: "This link is already taken",
14150
+ description: "Try adding numbers, a dash or underscore to create a unique link.",
14151
+ },
14152
+ })));
14153
+ };
14154
+ const CustomizeUrlInvalidCharacters = () => {
14155
+ return (h(ShareLinkView, Object.assign({}, {
14156
+ ...defaultCustomizeProps,
14157
+ isEditing: true,
14158
+ editValue: "nvoiwb18",
14159
+ charactersRemaining: 7,
14160
+ validationError: {
14161
+ code: "INVALID_CHARACTERS",
14162
+ title: "Please use only letters, numbers, dashes and underscores",
14163
+ description: "Special characters can break the link when sharing.",
14164
+ },
14165
+ })));
14166
+ };
14167
+ const CustomizeUrlProfanity = () => {
14168
+ return (h(ShareLinkView, Object.assign({}, {
14169
+ ...defaultCustomizeProps,
14170
+ isEditing: true,
14171
+ editValue: "nvoiwb18",
14172
+ charactersRemaining: 7,
14173
+ validationError: {
14174
+ code: "PROFANITY",
14175
+ title: "Please try a different link",
14176
+ description: "This link contains a restricted word.",
14177
+ },
14178
+ })));
14179
+ };
14180
+ const CustomizeUrlSaving = () => {
14181
+ return (h(ShareLinkView, Object.assign({}, {
14182
+ ...defaultCustomizeProps,
14183
+ isEditing: true,
14184
+ editValue: "bobtesterson",
14185
+ isSaving: true,
14186
+ })));
14187
+ };
14188
+ const CustomizeUrlSuccess = () => {
14189
+ return (h(ShareLinkView, Object.assign({}, {
14190
+ ...defaultCustomizeProps,
14191
+ copyTextViewProps: {
14192
+ ...defaultCustomizeProps.copyTextViewProps,
14193
+ copyString: "https://ssqt.co/bobtesterson",
14194
+ },
14195
+ showSuccess: true,
14196
+ })));
14197
+ };
14068
14198
 
14069
14199
  const ShareLink = /*#__PURE__*/Object.freeze({
14070
14200
  __proto__: null,
@@ -14079,7 +14209,17 @@ const ShareLink = /*#__PURE__*/Object.freeze({
14079
14209
  CopyButtonBelow: CopyButtonBelow$3,
14080
14210
  CustomStyles: CustomStyles$1,
14081
14211
  CustomStylesWithDemoHooks: CustomStylesWithDemoHooks,
14082
- FullStack: FullStack
14212
+ FullStack: FullStack,
14213
+ CustomizeUrlDefault: CustomizeUrlDefault,
14214
+ CustomizeUrlEditing: CustomizeUrlEditing,
14215
+ CustomizeUrlCustomized: CustomizeUrlCustomized,
14216
+ CustomizeUrlLimitReached: CustomizeUrlLimitReached,
14217
+ CustomizeUrlDisabled: CustomizeUrlDisabled,
14218
+ CustomizeUrlValidationError: CustomizeUrlValidationError,
14219
+ CustomizeUrlInvalidCharacters: CustomizeUrlInvalidCharacters,
14220
+ CustomizeUrlProfanity: CustomizeUrlProfanity,
14221
+ CustomizeUrlSaving: CustomizeUrlSaving,
14222
+ CustomizeUrlSuccess: CustomizeUrlSuccess
14083
14223
  });
14084
14224
 
14085
14225
  const UseShareLink_stories = {
@@ -14117,11 +14257,11 @@ const BareBonesView$1 = createHookStory(() => {
14117
14257
  return (h("div", null,
14118
14258
  "Sharelink:",
14119
14259
  " ",
14120
- h("code", { style: { borderStyle: "solid", borderWidth: "1px", padding: "2px" } }, res.copyString)));
14260
+ h("code", { style: { borderStyle: "solid", borderWidth: "1px", padding: "2px" } }, res.copyTextViewProps.copyString)));
14121
14261
  });
14122
14262
  const RegularView$2 = createHookStory(() => {
14123
14263
  setupGraphQL$c();
14124
- return (h(CopyTextView, Object.assign({}, useShareLink({
14264
+ return (h(ShareLinkView, Object.assign({}, useShareLink({
14125
14265
  programId: "klip-referral-program",
14126
14266
  tooltiptext: "Copied to clipboard",
14127
14267
  tooltiplifespan: 1000,
@@ -14129,19 +14269,29 @@ const RegularView$2 = createHookStory(() => {
14129
14269
  });
14130
14270
  const FastTooltip = createHookStory(() => {
14131
14271
  setupGraphQL$c();
14132
- return (h(CopyTextView, Object.assign({}, useShareLink({
14272
+ return (h(ShareLinkView, Object.assign({}, useShareLink({
14133
14273
  programId: "klip-referral-program",
14134
- tooltiptext: "⠀⠀⠀⠀⠀⠀⠀⠀⠀HELLO THERE!!!\n⠀⠀⠀⡯⡯⡾⠝⠘⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢊⠘⡮⣣⠪⠢⡑⡌\n⠀⠀⠀⠟⠝⠈⠀⠀⠀⠡⠀⠠⢈⠠⢐⢠⢂⢔⣐⢄⡂⢔⠀⡁⢉⠸⢨⢑⠕⡌\n⠀⠀⡀⠁⠀⠀⠀⡀⢂⠡⠈⡔⣕⢮⣳⢯⣿⣻⣟⣯⣯⢷⣫⣆⡂⠀⠀⢐⠑⡌\n⢀⠠⠐⠈⠀⢀⢂⠢⡂⠕⡁⣝⢮⣳⢽⡽⣾⣻⣿⣯⡯⣟⣞⢾⢜⢆⠀⡀⠀⠪\n⣬⠂⠀⠀⢀⢂⢪⠨⢂⠥⣺⡪⣗⢗⣽⢽⡯⣿⣽⣷⢿⡽⡾⡽⣝⢎⠀⠀⠀⢡\n⣿⠀⠀⠀⢂⠢⢂⢥⢱⡹⣪⢞⡵⣻⡪⡯⡯⣟⡾⣿⣻⡽⣯⡻⣪⠧⠑⠀⠁⢐\n⣿⠀⠀⠀⠢⢑⠠⠑⠕⡝⡎⡗⡝⡎⣞⢽⡹⣕⢯⢻⠹⡹⢚⠝⡷⡽⡨⠀⠀⢔\n⣿⡯⠀⢈⠈⢄⠂⠂⠐⠀⠌⠠⢑⠱⡱⡱⡑⢔⠁⠀⡀⠐⠐⠐⡡⡹⣪⠀⠀⢘\n⣿⣽⠀⡀⡊⠀⠐⠨⠈⡁⠂⢈⠠⡱⡽⣷⡑⠁⠠⠑⠀⢉⢇⣤⢘⣪⢽⠀⢌⢎\n⣿⢾⠀⢌⠌⠀⡁⠢⠂⠐⡀⠀⢀⢳⢽⣽⡺⣨⢄⣑⢉⢃⢭⡲⣕⡭⣹⠠⢐⢗\n⣿⡗⠀⠢⠡⡱⡸⣔⢵⢱⢸⠈⠀⡪⣳⣳⢹⢜⡵⣱⢱⡱⣳⡹⣵⣻⢔⢅⢬⡷\n⣷⡇⡂⠡⡑⢕⢕⠕⡑⠡⢂⢊⢐⢕⡝⡮⡧⡳⣝⢴⡐⣁⠃⡫⡒⣕⢏⡮⣷⡟\n⣷⣻⣅⠑⢌⠢⠁⢐⠠⠑⡐⠐⠌⡪⠮⡫⠪⡪⡪⣺⢸⠰⠡⠠⠐⢱⠨⡪⡪⡰\n⣯⢷⣟⣇⡂⡂⡌⡀⠀⠁⡂⠅⠂⠀⡑⡄⢇⠇⢝⡨⡠⡁⢐⠠⢀⢪⡐⡜⡪⡊\n⣿⢽⡾⢹⡄⠕⡅⢇⠂⠑⣴⡬⣬⣬⣆⢮⣦⣷⣵⣷⡗⢃⢮⠱⡸⢰⢱⢸⢨⢌\n⣯⢯⣟⠸⣳⡅⠜⠔⡌⡐⠈⠻⠟⣿⢿⣿⣿⠿⡻⣃⠢⣱⡳⡱⡩⢢⠣⡃⠢⠁\n⡯⣟⣞⡇⡿⣽⡪⡘⡰⠨⢐⢀⠢⢢⢄⢤⣰⠼⡾⢕⢕⡵⣝⠎⢌⢪⠪⡘⡌⠀\n⡯⣳⠯⠚⢊⠡⡂⢂⠨⠊⠔⡑⠬⡸⣘⢬⢪⣪⡺⡼⣕⢯⢞⢕⢝⠎⢻⢼⣀⠀\n⠁⡂⠔⡁⡢⠣⢀⠢⠀⠅⠱⡐⡱⡘⡔⡕⡕⣲⡹⣎⡮⡏⡑⢜⢼⡱⢩⣗⣯⣟\n⢀⢂⢑⠀⡂⡃⠅⠊⢄⢑⠠⠑⢕⢕⢝⢮⢺⢕⢟⢮⢊⢢⢱⢄⠃⣇⣞⢞⣞⢾\n⢀⠢⡑⡀⢂⢊⠠⠁⡂⡐⠀⠅⡈⠪⠪⠪⠣⠫⠑⡁⢔⠕⣜⣜⢦⡰⡎⡯⡾⡽",
14274
+ tooltiptext: "Copied to clipboard",
14135
14275
  tooltiplifespan: 500,
14136
14276
  }))));
14137
14277
  });
14278
+ const CustomizeUrlEnabled = createHookStory(() => {
14279
+ setupGraphQL$c();
14280
+ return (h(ShareLinkView, Object.assign({}, useShareLink({
14281
+ programId: "klip-referral-program",
14282
+ tooltiptext: "Copied to clipboard",
14283
+ tooltiplifespan: 1000,
14284
+ customizeUrl: true,
14285
+ }))));
14286
+ });
14138
14287
 
14139
14288
  const UseShareLink = /*#__PURE__*/Object.freeze({
14140
14289
  __proto__: null,
14141
14290
  'default': UseShareLink_stories,
14142
14291
  BareBonesView: BareBonesView$1,
14143
14292
  RegularView: RegularView$2,
14144
- FastTooltip: FastTooltip
14293
+ FastTooltip: FastTooltip,
14294
+ CustomizeUrlEnabled: CustomizeUrlEnabled
14145
14295
  });
14146
14296
 
14147
14297
  const scenario$C = "@author:Zach\n@owner:Zach\nFeature: Tabs\n\n The Tabs takes in the Tab component as children and maps through to display their header and content.\n\n Background: A user on the portal is viewing the widget\n Given a user viewing the Tabs component\n\n @motivating\n Scenario: Content inside the active tab is shown\n Given the header is set to <tabHeader>\n And the content inside is <tabContent>\n And the user has clicked <tabHeader>\n Then the <tabContent> is shown\n Examples:\n | tabHeader | tabContent |\n | Settings | This is the settings tab |\n | General | This is the general tab |\n | History | This is the history tab |\n\n @motivating\n @ui\n Scenario: The placement of the tabs is configurable\n Given The placement prop has been passed a valid <placement>\n Then tabs are placed on the <placementResult>\n Examples:\n | placement | placementResult |\n | | top of the content |\n | left | left hand side of the content |\n | right | right hand side of the content |\n | bottom | bottom of the content |\n\n\n @minutia\n @ui\n Scenario Outline: Tabs are setup to use the brand color\n Given the brand color is set to darkblue\n Then the text inside the active tab is darkblue\n And the underline of the active tab is darkblue\n\n @ui\n Scenario: Tabs are responsive\n Given the user is on a mobile device\n When there are more tabs than the horizontal space allows for\n Then clickable arrows appear on the left and right of the tabs\n And the tabs are scrollable\n\n @landmine\n Scenario: Program section cannot be used inside of tabs\n Given a tabs component\n And tab containing a program section with program-id \"test123\"\n And the program section wraps a component using program context\n When the tabs component is rendered\n Then the \"sq:program-id\" event listener for the program section is removed\n And the component does not use program-id \"test123\" to source its data\n And falls back to the global program id";