@sprucelabs/spruce-calendar-components 22.1.1 → 22.1.4

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.
@@ -1766,13 +1766,12 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1766
1766
  type DidUpdateCalendarEventEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DidUpdateCalendarEventEmitTargetAndPayloadSchema>;
1767
1767
  }
1768
1768
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1769
- interface GetAvailableTimeSlotsEmitTarget {
1770
- 'organizationId'?: string | undefined | null;
1771
- 'locationId'?: string | undefined | null;
1772
- 'calendarIds': string[];
1769
+ interface GetCalendarEmitTarget {
1770
+ 'organizationId': string;
1771
+ 'slug': string;
1773
1772
  }
1774
- interface GetAvailableTimeSlotsEmitTargetSchema extends SpruceSchema.Schema {
1775
- id: 'getAvailableTimeSlotsEmitTarget';
1773
+ interface GetCalendarEmitTargetSchema extends SpruceSchema.Schema {
1774
+ id: 'getCalendarEmitTarget';
1776
1775
  version: 'v2021_05_19';
1777
1776
  namespace: 'Calendar';
1778
1777
  name: '';
@@ -1780,102 +1779,105 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1780
1779
  /** . */
1781
1780
  'organizationId': {
1782
1781
  type: 'id';
1782
+ isRequired: true;
1783
1783
  options: undefined;
1784
1784
  };
1785
1785
  /** . */
1786
- 'locationId': {
1787
- type: 'id';
1788
- options: undefined;
1789
- };
1790
- /** . */
1791
- 'calendarIds': {
1786
+ 'slug': {
1792
1787
  type: 'id';
1793
1788
  isRequired: true;
1794
- isArray: true;
1795
1789
  options: undefined;
1796
1790
  };
1797
1791
  };
1798
1792
  }
1799
- type GetAvailableTimeSlotsEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetSchema>;
1793
+ type GetCalendarEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema>;
1800
1794
  }
1801
1795
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1802
- interface Teammates {
1803
- 'personId': string;
1804
- 'durationMinutes': number;
1796
+ interface GetCalendarEmitTargetAndPayload {
1797
+ /** Source. */
1798
+ 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1799
+ 'target': SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTarget;
1805
1800
  }
1806
- interface TeammatesSchema extends SpruceSchema.Schema {
1807
- id: 'teammates';
1801
+ interface GetCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1802
+ id: 'getCalendarEmitTargetAndPayload';
1808
1803
  version: 'v2021_05_19';
1809
1804
  namespace: 'Calendar';
1810
1805
  name: '';
1811
1806
  fields: {
1812
- /** . */
1813
- 'personId': {
1814
- type: 'id';
1815
- isRequired: true;
1816
- options: undefined;
1807
+ /** Source. */
1808
+ 'source': {
1809
+ label: 'Source';
1810
+ type: 'schema';
1811
+ options: {
1812
+ schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1813
+ };
1817
1814
  };
1818
1815
  /** . */
1819
- 'durationMinutes': {
1820
- type: 'number';
1816
+ 'target': {
1817
+ type: 'schema';
1821
1818
  isRequired: true;
1822
- options: undefined;
1819
+ options: {
1820
+ schema: SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema;
1821
+ };
1823
1822
  };
1824
1823
  };
1825
1824
  }
1826
- type TeammatesEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema>;
1825
+ type GetCalendarEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetAndPayloadSchema>;
1827
1826
  }
1828
1827
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1829
- interface GetAvailableTimeSlotsEmitPayload {
1830
- 'startDateTimeMs': number;
1831
- 'endDateTimeMs': number;
1832
- 'calculationMode': ("intersect" | "contiguous");
1833
- 'teammates': SpruceSchemas.Calendar.v2021_05_19.Teammates[];
1828
+ interface GetCalendarResponsePayload {
1829
+ 'calendar': SpruceSchemas.Calendar.v2021_05_19.Calendar;
1834
1830
  }
1835
- interface GetAvailableTimeSlotsEmitPayloadSchema extends SpruceSchema.Schema {
1836
- id: 'getAvailableTimeSlotsEmitPayload';
1831
+ interface GetCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1832
+ id: 'getCalendarResponsePayload';
1837
1833
  version: 'v2021_05_19';
1838
1834
  namespace: 'Calendar';
1839
1835
  name: '';
1840
1836
  fields: {
1841
1837
  /** . */
1842
- 'startDateTimeMs': {
1843
- type: 'number';
1838
+ 'calendar': {
1839
+ type: 'schema';
1844
1840
  isRequired: true;
1845
- options: undefined;
1841
+ options: {
1842
+ schema: SpruceSchemas.Calendar.v2021_05_19.CalendarSchema;
1843
+ };
1846
1844
  };
1845
+ };
1846
+ }
1847
+ type GetCalendarResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarResponsePayloadSchema>;
1848
+ }
1849
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1850
+ interface GetAvailableTimeSlotsEmitTarget {
1851
+ 'organizationId'?: string | undefined | null;
1852
+ 'locationId'?: string | undefined | null;
1853
+ 'calendarIds': string[];
1854
+ }
1855
+ interface GetAvailableTimeSlotsEmitTargetSchema extends SpruceSchema.Schema {
1856
+ id: 'getAvailableTimeSlotsEmitTarget';
1857
+ version: 'v2021_05_19';
1858
+ namespace: 'Calendar';
1859
+ name: '';
1860
+ fields: {
1847
1861
  /** . */
1848
- 'endDateTimeMs': {
1849
- type: 'number';
1850
- isRequired: true;
1862
+ 'organizationId': {
1863
+ type: 'id';
1851
1864
  options: undefined;
1852
1865
  };
1853
1866
  /** . */
1854
- 'calculationMode': {
1855
- type: 'select';
1856
- isRequired: true;
1857
- options: {
1858
- choices: [{
1859
- "value": "intersect";
1860
- "label": "Intersect";
1861
- }, {
1862
- "value": "contiguous";
1863
- "label": "Contiguous";
1864
- }];
1865
- };
1867
+ 'locationId': {
1868
+ type: 'id';
1869
+ options: undefined;
1866
1870
  };
1867
1871
  /** . */
1868
- 'teammates': {
1869
- type: 'schema';
1872
+ 'calendarIds': {
1873
+ type: 'id';
1870
1874
  isRequired: true;
1871
1875
  isArray: true;
1872
- options: {
1873
- schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema;
1874
- };
1876
+ options: undefined;
1875
1877
  };
1876
1878
  };
1877
1879
  }
1878
- type GetAvailableTimeSlotsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitPayloadSchema>;
1880
+ type GetAvailableTimeSlotsEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetSchema>;
1879
1881
  }
1880
1882
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1881
1883
  interface GetAvailableTimeSlotsEmitTargetAndPayload {
@@ -1919,12 +1921,12 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1919
1921
  type GetAvailableTimeSlotsEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetAndPayloadSchema>;
1920
1922
  }
1921
1923
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1922
- interface TeammatesTimeslots {
1924
+ interface Teammates {
1923
1925
  'personId': string;
1924
- 'startDateTimeMs': number;
1926
+ 'durationMinutes': number;
1925
1927
  }
1926
- interface TeammatesTimeslotsSchema extends SpruceSchema.Schema {
1927
- id: 'teammatesTimeslots';
1928
+ interface TeammatesSchema extends SpruceSchema.Schema {
1929
+ id: 'teammates';
1928
1930
  version: 'v2021_05_19';
1929
1931
  namespace: 'Calendar';
1930
1932
  name: '';
@@ -1936,37 +1938,66 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1936
1938
  options: undefined;
1937
1939
  };
1938
1940
  /** . */
1939
- 'startDateTimeMs': {
1941
+ 'durationMinutes': {
1940
1942
  type: 'number';
1941
1943
  isRequired: true;
1942
1944
  options: undefined;
1943
1945
  };
1944
1946
  };
1945
1947
  }
1946
- type TeammatesTimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema>;
1948
+ type TeammatesEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema>;
1947
1949
  }
1948
1950
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1949
- interface Timeslots {
1950
- 'slots': SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslots[];
1951
+ interface GetAvailableTimeSlotsEmitPayload {
1952
+ 'startDateTimeMs': number;
1953
+ 'endDateTimeMs': number;
1954
+ 'calculationMode': ("intersect" | "contiguous");
1955
+ 'teammates': SpruceSchemas.Calendar.v2021_05_19.Teammates[];
1951
1956
  }
1952
- interface TimeslotsSchema extends SpruceSchema.Schema {
1953
- id: 'timeslots';
1957
+ interface GetAvailableTimeSlotsEmitPayloadSchema extends SpruceSchema.Schema {
1958
+ id: 'getAvailableTimeSlotsEmitPayload';
1954
1959
  version: 'v2021_05_19';
1955
1960
  namespace: 'Calendar';
1956
1961
  name: '';
1957
1962
  fields: {
1958
1963
  /** . */
1959
- 'slots': {
1964
+ 'startDateTimeMs': {
1965
+ type: 'number';
1966
+ isRequired: true;
1967
+ options: undefined;
1968
+ };
1969
+ /** . */
1970
+ 'endDateTimeMs': {
1971
+ type: 'number';
1972
+ isRequired: true;
1973
+ options: undefined;
1974
+ };
1975
+ /** . */
1976
+ 'calculationMode': {
1977
+ type: 'select';
1978
+ isRequired: true;
1979
+ options: {
1980
+ choices: [{
1981
+ "value": "intersect";
1982
+ "label": "Intersect";
1983
+ }, {
1984
+ "value": "contiguous";
1985
+ "label": "Contiguous";
1986
+ }];
1987
+ };
1988
+ };
1989
+ /** . */
1990
+ 'teammates': {
1960
1991
  type: 'schema';
1961
1992
  isRequired: true;
1962
1993
  isArray: true;
1963
1994
  options: {
1964
- schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema;
1995
+ schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema;
1965
1996
  };
1966
1997
  };
1967
1998
  };
1968
1999
  }
1969
- type TimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TimeslotsSchema>;
2000
+ type GetAvailableTimeSlotsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitPayloadSchema>;
1970
2001
  }
1971
2002
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1972
2003
  interface GetAvailableTimeSlotsResponsePayload {
@@ -1993,85 +2024,54 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1993
2024
  type GetAvailableTimeSlotsResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsResponsePayloadSchema>;
1994
2025
  }
1995
2026
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1996
- interface GetCalendarEmitTarget {
1997
- 'organizationId': string;
1998
- 'slug': string;
2027
+ interface TeammatesTimeslots {
2028
+ 'personId': string;
2029
+ 'startDateTimeMs': number;
1999
2030
  }
2000
- interface GetCalendarEmitTargetSchema extends SpruceSchema.Schema {
2001
- id: 'getCalendarEmitTarget';
2031
+ interface TeammatesTimeslotsSchema extends SpruceSchema.Schema {
2032
+ id: 'teammatesTimeslots';
2002
2033
  version: 'v2021_05_19';
2003
2034
  namespace: 'Calendar';
2004
2035
  name: '';
2005
2036
  fields: {
2006
2037
  /** . */
2007
- 'organizationId': {
2038
+ 'personId': {
2008
2039
  type: 'id';
2009
2040
  isRequired: true;
2010
2041
  options: undefined;
2011
2042
  };
2012
2043
  /** . */
2013
- 'slug': {
2014
- type: 'id';
2044
+ 'startDateTimeMs': {
2045
+ type: 'number';
2015
2046
  isRequired: true;
2016
2047
  options: undefined;
2017
2048
  };
2018
2049
  };
2019
2050
  }
2020
- type GetCalendarEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema>;
2021
- }
2022
- namespace SpruceSchemas.Calendar.v2021_05_19 {
2023
- interface GetCalendarEmitTargetAndPayload {
2024
- /** Source. */
2025
- 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
2026
- 'target': SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTarget;
2027
- }
2028
- interface GetCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
2029
- id: 'getCalendarEmitTargetAndPayload';
2030
- version: 'v2021_05_19';
2031
- namespace: 'Calendar';
2032
- name: '';
2033
- fields: {
2034
- /** Source. */
2035
- 'source': {
2036
- label: 'Source';
2037
- type: 'schema';
2038
- options: {
2039
- schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
2040
- };
2041
- };
2042
- /** . */
2043
- 'target': {
2044
- type: 'schema';
2045
- isRequired: true;
2046
- options: {
2047
- schema: SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema;
2048
- };
2049
- };
2050
- };
2051
- }
2052
- type GetCalendarEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetAndPayloadSchema>;
2051
+ type TeammatesTimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema>;
2053
2052
  }
2054
2053
  namespace SpruceSchemas.Calendar.v2021_05_19 {
2055
- interface GetCalendarResponsePayload {
2056
- 'calendar': SpruceSchemas.Calendar.v2021_05_19.Calendar;
2054
+ interface Timeslots {
2055
+ 'slots': SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslots[];
2057
2056
  }
2058
- interface GetCalendarResponsePayloadSchema extends SpruceSchema.Schema {
2059
- id: 'getCalendarResponsePayload';
2057
+ interface TimeslotsSchema extends SpruceSchema.Schema {
2058
+ id: 'timeslots';
2060
2059
  version: 'v2021_05_19';
2061
2060
  namespace: 'Calendar';
2062
2061
  name: '';
2063
2062
  fields: {
2064
2063
  /** . */
2065
- 'calendar': {
2064
+ 'slots': {
2066
2065
  type: 'schema';
2067
2066
  isRequired: true;
2067
+ isArray: true;
2068
2068
  options: {
2069
- schema: SpruceSchemas.Calendar.v2021_05_19.CalendarSchema;
2069
+ schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema;
2070
2070
  };
2071
2071
  };
2072
2072
  };
2073
2073
  }
2074
- type GetCalendarResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarResponsePayloadSchema>;
2074
+ type TimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TimeslotsSchema>;
2075
2075
  }
2076
2076
  namespace SpruceSchemas.Calendar.v2021_05_19 {
2077
2077
  interface GetCalendarEventEmitTarget {
@@ -1766,13 +1766,12 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1766
1766
  type DidUpdateCalendarEventEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DidUpdateCalendarEventEmitTargetAndPayloadSchema>;
1767
1767
  }
1768
1768
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1769
- interface GetAvailableTimeSlotsEmitTarget {
1770
- 'organizationId'?: string | undefined | null;
1771
- 'locationId'?: string | undefined | null;
1772
- 'calendarIds': string[];
1769
+ interface GetCalendarEmitTarget {
1770
+ 'organizationId': string;
1771
+ 'slug': string;
1773
1772
  }
1774
- interface GetAvailableTimeSlotsEmitTargetSchema extends SpruceSchema.Schema {
1775
- id: 'getAvailableTimeSlotsEmitTarget';
1773
+ interface GetCalendarEmitTargetSchema extends SpruceSchema.Schema {
1774
+ id: 'getCalendarEmitTarget';
1776
1775
  version: 'v2021_05_19';
1777
1776
  namespace: 'Calendar';
1778
1777
  name: '';
@@ -1780,102 +1779,105 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1780
1779
  /** . */
1781
1780
  'organizationId': {
1782
1781
  type: 'id';
1782
+ isRequired: true;
1783
1783
  options: undefined;
1784
1784
  };
1785
1785
  /** . */
1786
- 'locationId': {
1787
- type: 'id';
1788
- options: undefined;
1789
- };
1790
- /** . */
1791
- 'calendarIds': {
1786
+ 'slug': {
1792
1787
  type: 'id';
1793
1788
  isRequired: true;
1794
- isArray: true;
1795
1789
  options: undefined;
1796
1790
  };
1797
1791
  };
1798
1792
  }
1799
- type GetAvailableTimeSlotsEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetSchema>;
1793
+ type GetCalendarEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema>;
1800
1794
  }
1801
1795
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1802
- interface Teammates {
1803
- 'personId': string;
1804
- 'durationMinutes': number;
1796
+ interface GetCalendarEmitTargetAndPayload {
1797
+ /** Source. */
1798
+ 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1799
+ 'target': SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTarget;
1805
1800
  }
1806
- interface TeammatesSchema extends SpruceSchema.Schema {
1807
- id: 'teammates';
1801
+ interface GetCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1802
+ id: 'getCalendarEmitTargetAndPayload';
1808
1803
  version: 'v2021_05_19';
1809
1804
  namespace: 'Calendar';
1810
1805
  name: '';
1811
1806
  fields: {
1812
- /** . */
1813
- 'personId': {
1814
- type: 'id';
1815
- isRequired: true;
1816
- options: undefined;
1807
+ /** Source. */
1808
+ 'source': {
1809
+ label: 'Source';
1810
+ type: 'schema';
1811
+ options: {
1812
+ schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1813
+ };
1817
1814
  };
1818
1815
  /** . */
1819
- 'durationMinutes': {
1820
- type: 'number';
1816
+ 'target': {
1817
+ type: 'schema';
1821
1818
  isRequired: true;
1822
- options: undefined;
1819
+ options: {
1820
+ schema: SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema;
1821
+ };
1823
1822
  };
1824
1823
  };
1825
1824
  }
1826
- type TeammatesEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema>;
1825
+ type GetCalendarEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetAndPayloadSchema>;
1827
1826
  }
1828
1827
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1829
- interface GetAvailableTimeSlotsEmitPayload {
1830
- 'startDateTimeMs': number;
1831
- 'endDateTimeMs': number;
1832
- 'calculationMode': ("intersect" | "contiguous");
1833
- 'teammates': SpruceSchemas.Calendar.v2021_05_19.Teammates[];
1828
+ interface GetCalendarResponsePayload {
1829
+ 'calendar': SpruceSchemas.Calendar.v2021_05_19.Calendar;
1834
1830
  }
1835
- interface GetAvailableTimeSlotsEmitPayloadSchema extends SpruceSchema.Schema {
1836
- id: 'getAvailableTimeSlotsEmitPayload';
1831
+ interface GetCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1832
+ id: 'getCalendarResponsePayload';
1837
1833
  version: 'v2021_05_19';
1838
1834
  namespace: 'Calendar';
1839
1835
  name: '';
1840
1836
  fields: {
1841
1837
  /** . */
1842
- 'startDateTimeMs': {
1843
- type: 'number';
1838
+ 'calendar': {
1839
+ type: 'schema';
1844
1840
  isRequired: true;
1845
- options: undefined;
1841
+ options: {
1842
+ schema: SpruceSchemas.Calendar.v2021_05_19.CalendarSchema;
1843
+ };
1846
1844
  };
1845
+ };
1846
+ }
1847
+ type GetCalendarResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarResponsePayloadSchema>;
1848
+ }
1849
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1850
+ interface GetAvailableTimeSlotsEmitTarget {
1851
+ 'organizationId'?: string | undefined | null;
1852
+ 'locationId'?: string | undefined | null;
1853
+ 'calendarIds': string[];
1854
+ }
1855
+ interface GetAvailableTimeSlotsEmitTargetSchema extends SpruceSchema.Schema {
1856
+ id: 'getAvailableTimeSlotsEmitTarget';
1857
+ version: 'v2021_05_19';
1858
+ namespace: 'Calendar';
1859
+ name: '';
1860
+ fields: {
1847
1861
  /** . */
1848
- 'endDateTimeMs': {
1849
- type: 'number';
1850
- isRequired: true;
1862
+ 'organizationId': {
1863
+ type: 'id';
1851
1864
  options: undefined;
1852
1865
  };
1853
1866
  /** . */
1854
- 'calculationMode': {
1855
- type: 'select';
1856
- isRequired: true;
1857
- options: {
1858
- choices: [{
1859
- "value": "intersect";
1860
- "label": "Intersect";
1861
- }, {
1862
- "value": "contiguous";
1863
- "label": "Contiguous";
1864
- }];
1865
- };
1867
+ 'locationId': {
1868
+ type: 'id';
1869
+ options: undefined;
1866
1870
  };
1867
1871
  /** . */
1868
- 'teammates': {
1869
- type: 'schema';
1872
+ 'calendarIds': {
1873
+ type: 'id';
1870
1874
  isRequired: true;
1871
1875
  isArray: true;
1872
- options: {
1873
- schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema;
1874
- };
1876
+ options: undefined;
1875
1877
  };
1876
1878
  };
1877
1879
  }
1878
- type GetAvailableTimeSlotsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitPayloadSchema>;
1880
+ type GetAvailableTimeSlotsEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetSchema>;
1879
1881
  }
1880
1882
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1881
1883
  interface GetAvailableTimeSlotsEmitTargetAndPayload {
@@ -1919,12 +1921,12 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1919
1921
  type GetAvailableTimeSlotsEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitTargetAndPayloadSchema>;
1920
1922
  }
1921
1923
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1922
- interface TeammatesTimeslots {
1924
+ interface Teammates {
1923
1925
  'personId': string;
1924
- 'startDateTimeMs': number;
1926
+ 'durationMinutes': number;
1925
1927
  }
1926
- interface TeammatesTimeslotsSchema extends SpruceSchema.Schema {
1927
- id: 'teammatesTimeslots';
1928
+ interface TeammatesSchema extends SpruceSchema.Schema {
1929
+ id: 'teammates';
1928
1930
  version: 'v2021_05_19';
1929
1931
  namespace: 'Calendar';
1930
1932
  name: '';
@@ -1936,37 +1938,66 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1936
1938
  options: undefined;
1937
1939
  };
1938
1940
  /** . */
1939
- 'startDateTimeMs': {
1941
+ 'durationMinutes': {
1940
1942
  type: 'number';
1941
1943
  isRequired: true;
1942
1944
  options: undefined;
1943
1945
  };
1944
1946
  };
1945
1947
  }
1946
- type TeammatesTimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema>;
1948
+ type TeammatesEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema>;
1947
1949
  }
1948
1950
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1949
- interface Timeslots {
1950
- 'slots': SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslots[];
1951
+ interface GetAvailableTimeSlotsEmitPayload {
1952
+ 'startDateTimeMs': number;
1953
+ 'endDateTimeMs': number;
1954
+ 'calculationMode': ("intersect" | "contiguous");
1955
+ 'teammates': SpruceSchemas.Calendar.v2021_05_19.Teammates[];
1951
1956
  }
1952
- interface TimeslotsSchema extends SpruceSchema.Schema {
1953
- id: 'timeslots';
1957
+ interface GetAvailableTimeSlotsEmitPayloadSchema extends SpruceSchema.Schema {
1958
+ id: 'getAvailableTimeSlotsEmitPayload';
1954
1959
  version: 'v2021_05_19';
1955
1960
  namespace: 'Calendar';
1956
1961
  name: '';
1957
1962
  fields: {
1958
1963
  /** . */
1959
- 'slots': {
1964
+ 'startDateTimeMs': {
1965
+ type: 'number';
1966
+ isRequired: true;
1967
+ options: undefined;
1968
+ };
1969
+ /** . */
1970
+ 'endDateTimeMs': {
1971
+ type: 'number';
1972
+ isRequired: true;
1973
+ options: undefined;
1974
+ };
1975
+ /** . */
1976
+ 'calculationMode': {
1977
+ type: 'select';
1978
+ isRequired: true;
1979
+ options: {
1980
+ choices: [{
1981
+ "value": "intersect";
1982
+ "label": "Intersect";
1983
+ }, {
1984
+ "value": "contiguous";
1985
+ "label": "Contiguous";
1986
+ }];
1987
+ };
1988
+ };
1989
+ /** . */
1990
+ 'teammates': {
1960
1991
  type: 'schema';
1961
1992
  isRequired: true;
1962
1993
  isArray: true;
1963
1994
  options: {
1964
- schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema;
1995
+ schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesSchema;
1965
1996
  };
1966
1997
  };
1967
1998
  };
1968
1999
  }
1969
- type TimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TimeslotsSchema>;
2000
+ type GetAvailableTimeSlotsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsEmitPayloadSchema>;
1970
2001
  }
1971
2002
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1972
2003
  interface GetAvailableTimeSlotsResponsePayload {
@@ -1993,85 +2024,54 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1993
2024
  type GetAvailableTimeSlotsResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetAvailableTimeSlotsResponsePayloadSchema>;
1994
2025
  }
1995
2026
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1996
- interface GetCalendarEmitTarget {
1997
- 'organizationId': string;
1998
- 'slug': string;
2027
+ interface TeammatesTimeslots {
2028
+ 'personId': string;
2029
+ 'startDateTimeMs': number;
1999
2030
  }
2000
- interface GetCalendarEmitTargetSchema extends SpruceSchema.Schema {
2001
- id: 'getCalendarEmitTarget';
2031
+ interface TeammatesTimeslotsSchema extends SpruceSchema.Schema {
2032
+ id: 'teammatesTimeslots';
2002
2033
  version: 'v2021_05_19';
2003
2034
  namespace: 'Calendar';
2004
2035
  name: '';
2005
2036
  fields: {
2006
2037
  /** . */
2007
- 'organizationId': {
2038
+ 'personId': {
2008
2039
  type: 'id';
2009
2040
  isRequired: true;
2010
2041
  options: undefined;
2011
2042
  };
2012
2043
  /** . */
2013
- 'slug': {
2014
- type: 'id';
2044
+ 'startDateTimeMs': {
2045
+ type: 'number';
2015
2046
  isRequired: true;
2016
2047
  options: undefined;
2017
2048
  };
2018
2049
  };
2019
2050
  }
2020
- type GetCalendarEmitTargetEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema>;
2021
- }
2022
- namespace SpruceSchemas.Calendar.v2021_05_19 {
2023
- interface GetCalendarEmitTargetAndPayload {
2024
- /** Source. */
2025
- 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
2026
- 'target': SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTarget;
2027
- }
2028
- interface GetCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
2029
- id: 'getCalendarEmitTargetAndPayload';
2030
- version: 'v2021_05_19';
2031
- namespace: 'Calendar';
2032
- name: '';
2033
- fields: {
2034
- /** Source. */
2035
- 'source': {
2036
- label: 'Source';
2037
- type: 'schema';
2038
- options: {
2039
- schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
2040
- };
2041
- };
2042
- /** . */
2043
- 'target': {
2044
- type: 'schema';
2045
- isRequired: true;
2046
- options: {
2047
- schema: SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetSchema;
2048
- };
2049
- };
2050
- };
2051
- }
2052
- type GetCalendarEmitTargetAndPayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarEmitTargetAndPayloadSchema>;
2051
+ type TeammatesTimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema>;
2053
2052
  }
2054
2053
  namespace SpruceSchemas.Calendar.v2021_05_19 {
2055
- interface GetCalendarResponsePayload {
2056
- 'calendar': SpruceSchemas.Calendar.v2021_05_19.Calendar;
2054
+ interface Timeslots {
2055
+ 'slots': SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslots[];
2057
2056
  }
2058
- interface GetCalendarResponsePayloadSchema extends SpruceSchema.Schema {
2059
- id: 'getCalendarResponsePayload';
2057
+ interface TimeslotsSchema extends SpruceSchema.Schema {
2058
+ id: 'timeslots';
2060
2059
  version: 'v2021_05_19';
2061
2060
  namespace: 'Calendar';
2062
2061
  name: '';
2063
2062
  fields: {
2064
2063
  /** . */
2065
- 'calendar': {
2064
+ 'slots': {
2066
2065
  type: 'schema';
2067
2066
  isRequired: true;
2067
+ isArray: true;
2068
2068
  options: {
2069
- schema: SpruceSchemas.Calendar.v2021_05_19.CalendarSchema;
2069
+ schema: SpruceSchemas.Calendar.v2021_05_19.TeammatesTimeslotsSchema;
2070
2070
  };
2071
2071
  };
2072
2072
  };
2073
2073
  }
2074
- type GetCalendarResponsePayloadEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.GetCalendarResponsePayloadSchema>;
2074
+ type TimeslotsEntity = SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.TimeslotsSchema>;
2075
2075
  }
2076
2076
  namespace SpruceSchemas.Calendar.v2021_05_19 {
2077
2077
  interface GetCalendarEventEmitTarget {
@@ -197,10 +197,11 @@ export class CalendarEventManager {
197
197
  }
198
198
  setupVcForEventType(vcId, typeSlug) {
199
199
  return __awaiter(this, void 0, void 0, function* () {
200
- if (this.hasVcForEventTypeBeenLoaded[vcId]) {
200
+ const key = vcId + typeSlug;
201
+ if (this.hasVcForEventTypeBeenLoaded[key]) {
201
202
  return;
202
203
  }
203
- this.hasVcForEventTypeBeenLoaded[vcId] = true;
204
+ this.hasVcForEventTypeBeenLoaded[key] = true;
204
205
  yield this.remoteVc.fetchRemoteController(vcId);
205
206
  this.calendarVc.setControllerForEventType(typeSlug, vcId);
206
207
  });
@@ -173,10 +173,11 @@ class CalendarEventManager {
173
173
  }
174
174
  }
175
175
  async setupVcForEventType(vcId, typeSlug) {
176
- if (this.hasVcForEventTypeBeenLoaded[vcId]) {
176
+ const key = vcId + typeSlug;
177
+ if (this.hasVcForEventTypeBeenLoaded[key]) {
177
178
  return;
178
179
  }
179
- this.hasVcForEventTypeBeenLoaded[vcId] = true;
180
+ this.hasVcForEventTypeBeenLoaded[key] = true;
180
181
  await this.remoteVc.fetchRemoteController(vcId);
181
182
  this.calendarVc.setControllerForEventType(typeSlug, vcId);
182
183
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sprucelabs/spruce-calendar-components",
3
3
  "description": "Calendar components for working with calendars and Sprucebot.",
4
- "version": "22.1.1",
4
+ "version": "22.1.4",
5
5
  "skill": {
6
6
  "namespace": "calendar"
7
7
  },