@tellescope/react-components 1.209.0 → 1.210.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tellescope/react-components",
3
- "version": "1.209.0",
3
+ "version": "1.210.0",
4
4
  "description": "",
5
5
  "main": "./lib/cjs/index.js",
6
6
  "module": "./lib/esm/index.js",
@@ -47,13 +47,13 @@
47
47
  "@reduxjs/toolkit": "^1.6.2",
48
48
  "@stripe/react-stripe-js": "^2.9.0",
49
49
  "@stripe/stripe-js": "^1.52.1",
50
- "@tellescope/constants": "^1.209.0",
51
- "@tellescope/sdk": "^1.209.0",
52
- "@tellescope/types-client": "^1.209.0",
53
- "@tellescope/types-models": "^1.209.0",
54
- "@tellescope/types-utilities": "^1.209.0",
55
- "@tellescope/utilities": "^1.209.0",
56
- "@tellescope/validation": "^1.209.0",
50
+ "@tellescope/constants": "^1.210.0",
51
+ "@tellescope/sdk": "^1.210.0",
52
+ "@tellescope/types-client": "^1.210.0",
53
+ "@tellescope/types-models": "^1.210.0",
54
+ "@tellescope/types-utilities": "^1.210.0",
55
+ "@tellescope/utilities": "^1.210.0",
56
+ "@tellescope/validation": "^1.210.0",
57
57
  "@typescript-eslint/eslint-plugin": "^4.33.0",
58
58
  "@typescript-eslint/parser": "^4.33.0",
59
59
  "css-to-react-native": "^3.0.0",
@@ -84,7 +84,7 @@
84
84
  "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
85
85
  "react-native": "^0.65.0 || ^0.66.0 || ^0.67.0 || ^0.68.0 || ^0.71.0"
86
86
  },
87
- "gitHead": "9e32b6989946cd7f6cdaeceaaf4310476e7613c8",
87
+ "gitHead": "009b464f8459509af16bb7764c6aad562f32ffe5",
88
88
  "publishConfig": {
89
89
  "access": "public"
90
90
  }
@@ -2,7 +2,7 @@ import React, { useCallback, useEffect, useMemo, useRef, useState } from "react"
2
2
  import { Button, CircularProgress, FileBlob, FileUploadHandler, Flex, LinearProgress, LoadingButton, Modal, Paper, Styled, Typography, form_display_text_for_language, useFileUpload, useFormResponses, useSession } from "../index"
3
3
  import { useListForFormFields, useOrganizationTheme, useTellescopeForm, WithOrganizationTheme, Response, FileResponse, NextFieldLogicOptions } from "./hooks"
4
4
  import { ChangeHandler, FormInputs } from "./types"
5
- import { AddToDatabaseProps, AddressInput, AllergiesInput, AppointmentBookingInput, ChargeebeeInput, ConditionsInput, DatabaseSelectInput, DateInput, DateStringInput, DropdownInput, EmailInput, EmotiiInput, FileInput, FilesInput, HeightInput, HiddenValueInput, InsuranceInput, LanguageSelect, MedicationsInput, MultipleChoiceInput, NumberInput, PhoneInput, Progress, RankingInput, RatingInput, RedirectInput, RelatedContactsInput, RichTextInput, SignatureInput, StringInput, StringLongInput, StripeInput, TableInput, TimeInput, defaultButtonStyles } from "./inputs"
5
+ import { AddToDatabaseProps, AddressInput, AllergiesInput, AppointmentBookingInput, ChargeebeeInput, ConditionsInput, DatabaseSelectInput, DateInput, DateStringInput, DropdownInput, EmailInput, EmotiiInput, FileInput, FilesInput, HeightInput, HiddenValueInput, InsuranceInput, LanguageSelect, MedicationsInput, MultipleChoiceInput, NumberInput, PhoneInput, Progress, RankingInput, RatingInput, RedirectInput, RelatedContactsInput, RichTextInput, SignatureInput, StringInput, StringLongInput, StripeInput, TableInput, TimeInput, TimezoneInput, defaultButtonStyles } from "./inputs"
6
6
  import { PRIMARY_HEX } from "@tellescope/constants"
7
7
  import { FormResponse, FormField, Form, Enduser } from "@tellescope/types-client"
8
8
  import { FormResponseAnswerFileValue, OrganizationTheme } from "@tellescope/types-models"
@@ -175,6 +175,7 @@ export const QuestionForField = ({
175
175
  const Rating = customInputs?.['rating'] ?? RatingInput
176
176
  const Address = customInputs?.['Address'] ?? AddressInput
177
177
  const Time = customInputs?.['Time'] ?? TimeInput
178
+ const TimeZone = customInputs?.['Timezone'] ?? TimezoneInput
178
179
  const Dropdown = customInputs?.['Dropdown'] ?? DropdownInput
179
180
  const DatabaseSelect = customInputs?.['Database Select'] ?? DatabaseSelectInput
180
181
  const Medications = customInputs?.['Medications'] ?? MedicationsInput
@@ -354,6 +355,9 @@ export const QuestionForField = ({
354
355
  : field.type === 'Table Input' ? (
355
356
  <TableInput field={field} value={value.answer.value as any} onChange={onFieldChange as ChangeHandler<any>} form={form}/>
356
357
  )
358
+ : field.type === 'Timezone' ? (
359
+ <TimezoneInput field={field} value={value.answer.value as any} onChange={onFieldChange as ChangeHandler<'Timezone'>} form={form}/>
360
+ )
357
361
  : field.type === 'Time' ? (
358
362
  <Time field={field} value={value.answer.value as any} onChange={onFieldChange as ChangeHandler<any>} form={form}/>
359
363
  )
@@ -1290,6 +1290,9 @@ export const useTellescopeForm = ({ dontAutoadvance, isPublicForm, form, urlLogi
1290
1290
  options?.onBulkErrors?.(errors)
1291
1291
  }
1292
1292
 
1293
+ try {
1294
+ window.parent?.postMessage({ type: 'Form Submitted' }, "*")
1295
+ } catch(err) {}
1293
1296
 
1294
1297
  if (goBackURL) {
1295
1298
  (window?.top ?? window).location.href = append_current_utm_params(goBackURL);
@@ -5,7 +5,7 @@ import { FormInputProps } from "./types"
5
5
  import { useDropzone } from "react-dropzone"
6
6
  import { CANVAS_TITLE, EMOTII_TITLE, INSURANCE_RELATIONSHIPS, INSURANCE_RELATIONSHIPS_CANVAS, PRIMARY_HEX, RELATIONSHIP_TYPES, TELLESCOPE_GENDERS } from "@tellescope/constants"
7
7
  import { MM_DD_YYYY_to_YYYY_MM_DD, capture_is_supported, downloadFile, emit_gtm_event, first_letter_capitalized, form_response_value_to_string, getLocalTimezone, getPublicFileURL, mm_dd_yyyy, replace_enduser_template_values, truncate_string, update_local_storage, user_display_name } from "@tellescope/utilities"
8
- import { DatabaseSelectResponse, Enduser, EnduserRelationship, FormResponseValue, InsuranceRelationship, MedicationResponse, MultipleChoiceOptions, TellescopeGender } from "@tellescope/types-models"
8
+ import { DatabaseSelectResponse, Enduser, EnduserRelationship, FormResponseValue, InsuranceRelationship, MedicationResponse, MultipleChoiceOptions, TellescopeGender, TIMEZONES_USA } from "@tellescope/types-models"
9
9
  import { VALID_STATES, emailValidator, phoneValidator } from "@tellescope/validation"
10
10
  import Slider from '@mui/material/Slider';
11
11
  import LinearProgress from '@mui/material/LinearProgress';
@@ -960,6 +960,10 @@ export const TimeInput = ({ field, value, onChange, ...props }: FormInputProps<'
960
960
  )
961
961
  }
962
962
 
963
+ export const TimezoneInput = ({ value='', field, onChange, ...props }: FormInputProps<'Timezone'>) => (
964
+ <StringSelector {...props} value={value} options={TIMEZONES_USA} onChange={v => onChange(v, field.id)} />
965
+ )
966
+
963
967
  export const AddressInput = ({ field, form, value, onChange, ...props }: FormInputProps<'Address'>) => (
964
968
  // state only
965
969
  field.options?.addressFields?.includes('state')