courthive-components 1.10.1 → 3.0.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.
Files changed (46) hide show
  1. package/dist/components/{temporal-grid/controller/temporalGridControl.d.ts → availability-grid/controller/availabilityGridControl.d.ts} +40 -13
  2. package/dist/components/{temporal-grid → availability-grid}/controller/viewProjections.d.ts +5 -5
  3. package/dist/components/{temporal-grid → availability-grid}/engine/viewState.d.ts +4 -4
  4. package/dist/components/{temporal-grid → availability-grid}/index.d.ts +6 -6
  5. package/dist/components/{temporal-grid → availability-grid}/timeline/types.d.ts +2 -2
  6. package/dist/components/{temporal-grid/ui/temporalGrid.d.ts → availability-grid/ui/availabilityGrid.d.ts} +14 -14
  7. package/dist/components/{temporal-grid → availability-grid}/ui/blockPopover.d.ts +17 -2
  8. package/dist/components/editor/notesEditor.d.ts +13 -0
  9. package/dist/components/hive-id-login/buildHiveIDLogin.d.ts +4 -0
  10. package/dist/components/hive-id-login/hiveIDClient.d.ts +14 -0
  11. package/dist/components/hive-id-login/index.d.ts +3 -0
  12. package/dist/components/hive-id-login/styles.d.ts +16 -0
  13. package/dist/components/hive-id-login/types.d.ts +115 -0
  14. package/dist/components/interactive-scoring/types.d.ts +8 -0
  15. package/dist/components/modal/mockParticipants.d.ts +1 -1
  16. package/dist/components/renderStructure/renderStructureMinimap.d.ts +7 -0
  17. package/dist/components/schedule-page/domain/activeStrip.d.ts +1 -1
  18. package/dist/components/schedule-page/domain/matchUpCatalogProjections.d.ts +11 -0
  19. package/dist/components/schedule-page/index.d.ts +2 -2
  20. package/dist/components/schedule-page/types.d.ts +19 -0
  21. package/dist/components/schedule-page/ui/activeStrip.d.ts +23 -0
  22. package/dist/components/schedule-page/ui/matchUpCard.d.ts +8 -0
  23. package/dist/components/scheduling-profile/domain/validateProfile.d.ts +4 -3
  24. package/dist/components/scheduling-profile/index.d.ts +1 -1
  25. package/dist/components/scheduling-profile/types.d.ts +3 -3
  26. package/dist/components/scoring/logic/dynamicSetsLogic.d.ts +2 -0
  27. package/dist/components/team-card/buildTeamCard.d.ts +2 -0
  28. package/dist/components/team-card/index.d.ts +2 -0
  29. package/dist/components/team-card/styles.d.ts +13 -0
  30. package/dist/components/team-card/types.d.ts +27 -0
  31. package/dist/courthive-components.css +1 -1
  32. package/dist/courthive-components.es.js +6102 -5565
  33. package/dist/courthive-components.umd.js +52 -52
  34. package/dist/index.d.ts +13 -5
  35. package/dist/types.d.ts +3 -3
  36. package/package.json +17 -10
  37. /package/dist/components/{temporal-grid → availability-grid}/timeline/CourtTimeline.d.ts +0 -0
  38. /package/dist/components/{temporal-grid → availability-grid}/timeline/InteractionManager.d.ts +0 -0
  39. /package/dist/components/{temporal-grid → availability-grid}/timeline/ItemRenderer.d.ts +0 -0
  40. /package/dist/components/{temporal-grid → availability-grid}/timeline/RowLayout.d.ts +0 -0
  41. /package/dist/components/{temporal-grid → availability-grid}/timeline/TimeAxis.d.ts +0 -0
  42. /package/dist/components/{temporal-grid → availability-grid}/timeline/TimeScale.d.ts +0 -0
  43. /package/dist/components/{temporal-grid → availability-grid}/ui/courtAvailabilityModal.d.ts +0 -0
  44. /package/dist/components/{temporal-grid → availability-grid}/ui/modernTimePicker.d.ts +0 -0
  45. /package/dist/components/{temporal-grid → availability-grid}/ui/statsBar.d.ts +0 -0
  46. /package/dist/components/{temporal-grid → availability-grid}/ui/viewToolbar.d.ts +0 -0
package/dist/index.d.ts CHANGED
@@ -8,6 +8,8 @@ export { compositions } from './compositions/compositions';
8
8
  export { resolvePublishedComposition } from './compositions/resolvePublishedComposition';
9
9
  export type { DisplayExtensionValue } from './compositions/resolvePublishedComposition';
10
10
  export { renderRound } from './components/renderStructure/renderRound';
11
+ export { buildStructureMinimap } from './components/renderStructure/renderStructureMinimap';
12
+ export type { StructureMinimapOptions } from './components/renderStructure/renderStructureMinimap';
11
13
  export { renderSchematicStructure, renderSchematicRound, renderSchematicMatchUp } from './components/renderSchematicStructure';
12
14
  export type { SchematicMatchUp } from './components/renderSchematicStructure';
13
15
  export { cModal } from './components/modal/cmodal';
@@ -35,6 +37,8 @@ export { drawer, initDrawer } from './components/drawer/drawer';
35
37
  export type { DrawerOptions } from './components/drawer/drawer';
36
38
  export { notesToolbar, updateToolbarState, updateHeadingSelect } from './components/notes-toolbar/notesToolbar';
37
39
  export type { NotesToolbarOptions } from './components/notes-toolbar/notesToolbar';
40
+ export { createNotesEditor } from './components/editor/notesEditor';
41
+ export type { NotesEditorOptions, NotesEditorHandle } from './components/editor/notesEditor';
38
42
  export { tipster, destroyTipster } from './components/popover/tipster';
39
43
  export { tennisCourt, basketballCourt, baseballDiamond, hockeyRink, pickleballCourt, badmintonCourt, padelCourt, createCourtSvg, resolveCourtSport, sportFromMatchUpFormat, COURT_SVG_RESOURCE_SUB_TYPE } from './components/courts';
40
44
  export type { CourtSport } from './components/courts';
@@ -46,12 +50,16 @@ export { buildVenueCard, buildVenueSkeletonCard, mapVenueToCardData, DEFAULT_VEN
46
50
  export type { MapVenueOptions, VenueCardCallbacks, VenueCardConfig, VenueCardCornerField, VenueCardData, VenueCardField } from './components/venue-card';
47
51
  export { buildCourtCard, buildCourtSkeletonCard, mapCourtToCardData, DEFAULT_COURT_CARD_CONFIG, mergeCourtCardConfig } from './components/court-card';
48
52
  export type { CourtCardCallbacks, CourtCardConfig, CourtCardCornerField, CourtCardData, CourtCardField, MapCourtOptions } from './components/court-card';
53
+ export { buildTeamCard } from './components/team-card';
54
+ export type { TeamCardCallbacks, TeamCardData } from './components/team-card';
49
55
  export { buildCompetitivenessBar, buildCompetitivenessDonut, aggregateCompetitiveness, totalBuckets, COMPETITIVENESS_BUCKETS } from './components/competitivenessBar';
50
56
  export type { BuildCompetitivenessBarResult, BuildCompetitivenessDonutResult, CompetitivenessBucket, CompetitivenessBuckets } from './components/competitivenessBar';
51
57
  export { buildDrawCard, buildDrawSkeletonCard, mapDrawDefinitionToCardData, DEFAULT_DRAW_CARD_CONFIG, mergeDrawCardConfig } from './components/draw-card';
52
58
  export type { DrawCardCallbacks, DrawCardConfig, DrawCardCornerField, DrawCardData, DrawCardField, DrawMatchUpCounts, DrawStatusKind, DrawStatusPill, MapDrawOptions } from './components/draw-card';
53
59
  export { buildEventCard, buildEventSkeletonCard, mapEventToCardData, resolveEventStatus, DEFAULT_EVENT_CARD_CONFIG, EVENT_CARD_LIGHT_MODE_THRESHOLD, mergeEventCardConfig } from './components/event-card';
54
60
  export type { EventCardCallbacks, EventCardConfig, EventCardCornerField, EventCardData, EventCardField, EventGenderKind, EventMatchUpCounts, EventStatusKind, EventStatusPill, EventStatusResolverInput, EventTypeKind, MapEventOptions } from './components/event-card';
61
+ export { buildHiveIDLogin, completeMagicLink, consumeMagicLink, isExistingUserConflict, requestMagicLink, signup, verifyExisting } from './components/hive-id-login';
62
+ export type { CachedPersonFields, HiveIDAuthenticatedDetail, HiveIDClientError, HiveIDFederationId, HiveIDLoginConfig, HiveIDLoginShell, HiveIDMode, MagicLinkConsumeRequest, MagicLinkConsumeResponse, MagicLinkRequest, MagicLinkResponse, SignupCandidate, SignupRequest, SignupResolved, SignupResponse, VerifyExistingRequest, VerifyExistingResponse } from './components/hive-id-login';
55
63
  export { courthiveComponentsVersion } from './version';
56
64
  export { MATCH_FORMATS } from './constants/matchUpFormats';
57
65
  export type { MatchUpFormatCode } from './constants/matchUpFormats';
@@ -78,13 +86,13 @@ export { barButton } from './components/button/barButton';
78
86
  export { selectItem } from './components/modal/selectItem';
79
87
  export type { SelectItemParams, SelectItemOption } from './components/modal/selectItem';
80
88
  export { SchedulingProfileControl, ProfileStore, createSchedulingProfile, validateProfile, buildIssueIndex, applyDropCommit, filterCatalog, groupCatalog, getPlannedRoundKeys, getVenueRounds, getRoundAt, findIssuesForLocator, maxSeverity, buildDateStrip, buildVenueBoard, buildRoundCatalog, buildIssuesPanel, buildRoundCard, createCardPopoverManager, buildSchedulingProfileLayout } from './components/scheduling-profile';
81
- export { createTemporalGrid, TemporalGrid, showCourtAvailabilityModal } from './components/temporal-grid';
82
- export type { TemporalGridConfig, TemporalGridLabels } from './components/temporal-grid';
89
+ export { createAvailabilityGrid, AvailabilityGrid, showCourtAvailabilityModal } from './components/availability-grid';
90
+ export type { AvailabilityGridConfig, AvailabilityGridLabels } from './components/availability-grid';
83
91
  export { TopologyBuilderControl, TopologyStore, topologyToDrawOptions, validateTopology, generatePreviewMatchUps, standardTemplates, buildTopologyCanvas, buildStructureCard, getPortPosition, buildNodeEditor, buildEdgeEditor, buildToolbar, buildTopologyBuilderLayout } from './components/topology-builder';
84
92
  export type { TopologyNode, TopologyEdge, TopologyState, TopologyChangeListener, TopologyBuilderConfig, TopologyTemplate, DrawOptionsResult, ValidationError } from './components/topology-builder';
85
- export type { SchedulingProfile, ScheduleDay, VenueSchedule, RoundProfile, RoundSegment, VenueInfo, CatalogRoundItem, CatalogGroupBy, RoundKey, RoundLocator, DragPayload, DropTarget, DropResult, Severity, ValidationCode, FixAction, ValidationResult, IssueIndex, ProfileStoreState, SchedulingProfileConfig, TemporalAdapter, DemandAdapter, DependencyAdapter, UIPanel } from './components/scheduling-profile';
86
- export { SchedulePageControl, SchedulePageStore, createSchedulePage, filterMatchUpCatalog, groupMatchUpCatalog, isCompletedStatus, buildScheduleIssueIndex, matchUpLabel, participantLabel, matchUpSearchKey, buildScheduleDateStrip, buildScheduleIssuesPanel, buildMatchUpCatalog, buildMatchUpCard, buildScheduleInspectorPanel, buildCourtGridSlot, buildSchedulePageLayout, buildScheduleGridCell, mapMatchUpToCellData, DEFAULT_SCHEDULE_CELL_CONFIG, activateScheduleCellTypeAhead, buildActiveStripPanel } from './components/schedule-page';
87
- export type { CatalogMatchUpItem, CatalogFilters, MatchUpSide, ScheduleDate, ScheduleIssue, ScheduleIssueSeverity, ScheduleIssueIndex, ScheduleIssueCounts, MatchUpCatalogGroupBy, ScheduledBehavior, SchedulingMode, PendingScheduleAction, CatalogMatchUpDragPayload, GridMatchUpDragPayload, SchedulePageDragPayload, SchedulePageConfig, SchedulePageCatalogState, SchedulePageState, SchedulePageChangeListener, ScheduleCellConfig, ScheduleCellField, ParticipantDisplayConfig, ScheduleCellData, ScheduleCellSide, ScheduleCellTypeAheadOptions, ActiveStripPanel, ActiveStripPanelCallbacks, ActiveStripPanelData, ActiveStripPanelOptions, ActiveStripCourtMeta } from './components/schedule-page';
93
+ export type { SchedulingProfile, ScheduleDay, VenueSchedule, RoundProfile, RoundSegment, VenueInfo, CatalogRoundItem, CatalogGroupBy, RoundKey, RoundLocator, DragPayload, DropTarget, DropResult, Severity, ValidationCode, FixAction, ValidationResult, IssueIndex, ProfileStoreState, SchedulingProfileConfig, AvailabilityAdapter, DemandAdapter, DependencyAdapter, UIPanel } from './components/scheduling-profile';
94
+ export { SchedulePageControl, SchedulePageStore, createSchedulePage, filterMatchUpCatalog, groupMatchUpCatalog, computeBaseRoundByEvent, isCompletedStatus, buildScheduleIssueIndex, matchUpLabel, participantLabel, matchUpSearchKey, buildScheduleDateStrip, buildScheduleIssuesPanel, buildMatchUpCatalog, buildMatchUpCard, buildScheduleInspectorPanel, buildCourtGridSlot, buildSchedulePageLayout, buildScheduleGridCell, mapMatchUpToCellData, DEFAULT_SCHEDULE_CELL_CONFIG, activateScheduleCellTypeAhead, buildActiveStripPanel } from './components/schedule-page';
95
+ export type { CatalogMatchUpItem, CatalogFilters, MatchUpSide, ScheduleDate, ScheduleIssue, ScheduleIssueSeverity, ScheduleIssueIndex, ScheduleIssueCounts, MatchUpCatalogGroupBy, ScheduledBehavior, SchedulingMode, PendingScheduleAction, CatalogMatchUpDragPayload, GridMatchUpDragPayload, SchedulePageDragPayload, SchedulePageConfig, SchedulePageCatalogState, SchedulePageState, SchedulePageChangeListener, ScheduleCellConfig, ScheduleCellField, ParticipantDisplayConfig, ScheduleCellData, ScheduleCellSide, ScheduleCellTypeAheadOptions, ActiveStripPanel, ActiveStripPanelCallbacks, ActiveStripPanelData, ActiveStripPanelOptions, ActiveStripCourtMeta, ActiveStripCourtBlock } from './components/schedule-page';
88
96
  export { createCompositionEditor } from './components/composition-editor/compositionEditor';
89
97
  export { CompositionEditorStore } from './components/composition-editor/compositionEditorStore';
90
98
  export type { CompositionEditorConfig, SavedComposition, CompositionEditorState, CompositionEditorListener, SectionId as CompositionEditorSectionId, EditorPanel as CompositionEditorPanel } from './components/composition-editor/compositionEditorTypes';
package/dist/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export interface MatchUp {
2
2
  matchUpId: string;
3
- matchUpType?: 'SINGLES' | 'DOUBLES';
3
+ matchUpType?: 'SINGLES' | 'DOUBLES' | 'TEAM' | 'HYBRID';
4
4
  matchUpFormat?: string;
5
5
  matchUpStatus?: string;
6
6
  winningSide?: number;
@@ -28,7 +28,7 @@ export interface MatchUp {
28
28
  [key: string]: any;
29
29
  }
30
30
  export interface Side {
31
- sideNumber: number;
31
+ sideNumber?: number;
32
32
  drawPosition?: number;
33
33
  participant?: Participant;
34
34
  participantFed?: string;
@@ -44,7 +44,7 @@ export interface Participant {
44
44
  participantId: string;
45
45
  participantName?: string;
46
46
  participantOtherName?: string;
47
- participantType?: 'INDIVIDUAL' | 'PAIR' | 'TEAM';
47
+ participantType?: 'INDIVIDUAL' | 'PAIR' | 'TEAM' | 'GROUP';
48
48
  individualParticipants?: IndividualParticipant[];
49
49
  entryStatus?: string;
50
50
  luckyAdvancement?: boolean;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "courthive-components",
3
- "packageManager": "pnpm@11.3.0",
4
- "version": "1.10.1",
3
+ "packageManager": "pnpm@11.5.0",
4
+ "version": "3.0.0",
5
5
  "engines": {
6
6
  "node": ">=22"
7
7
  },
@@ -69,8 +69,8 @@
69
69
  },
70
70
  "devDependencies": {
71
71
  "@chromatic-com/storybook": "^5.0.0",
72
- "@commitlint/cli": "21.0.1",
73
- "@commitlint/config-conventional": "21.0.1",
72
+ "@commitlint/cli": "21.0.2",
73
+ "@commitlint/config-conventional": "21.0.2",
74
74
  "@eslint/js": "^10.0.1",
75
75
  "@fortawesome/fontawesome-free": "^7.2.0",
76
76
  "@storybook/addon-docs": "^10.2.17",
@@ -78,30 +78,37 @@
78
78
  "@storybook/test-runner": "^0.24.0",
79
79
  "@types/d3": "^7.4.3",
80
80
  "@types/vanillajs-datepicker": "^1.3.5",
81
- "@typescript-eslint/eslint-plugin": "8.59.4",
82
- "@typescript-eslint/parser": "8.59.4",
81
+ "@typescript-eslint/eslint-plugin": "8.60.0",
82
+ "@typescript-eslint/parser": "8.60.0",
83
83
  "@vitest/browser-playwright": "^4.0.16",
84
84
  "@vitest/coverage-v8": "^4.0.16",
85
85
  "@vitest/ui": "^4.0.16",
86
- "eslint": "10.4.0",
86
+ "eslint": "10.4.1",
87
87
  "eslint-plugin-sonarjs": "4.0.3",
88
88
  "eslint-plugin-storybook": "^10.2.17",
89
89
  "gh-pages": "6.3.0",
90
90
  "globals": "^17.3.0",
91
91
  "happy-dom": "^20.8.3",
92
92
  "husky": "9.1.7",
93
- "lint-staged": "17.0.5",
93
+ "lint-staged": "17.0.7",
94
94
  "playwright": "^1.57.0",
95
95
  "prettier": "^3.8.1",
96
96
  "semver": "7.8.1",
97
97
  "storybook": "^10.2.17",
98
98
  "tabulator-tables": "6.4.0",
99
99
  "typescript": "^6.0.2",
100
- "vite": "8.0.14",
100
+ "vite": "8.0.16",
101
101
  "vite-plugin-dts": "^5.0.0",
102
102
  "vitest": "^4.0.16"
103
103
  },
104
104
  "dependencies": {
105
+ "@tiptap/core": "^3.22.2",
106
+ "@tiptap/extension-color": "^3.22.2",
107
+ "@tiptap/extension-highlight": "^3.22.2",
108
+ "@tiptap/extension-text-align": "^3.22.2",
109
+ "@tiptap/extension-text-style": "^3.22.2",
110
+ "@tiptap/extension-youtube": "^3.22.2",
111
+ "@tiptap/starter-kit": "^3.22.2",
105
112
  "awesomplete": "1.1.7",
106
113
  "class-variance-authority": "0.7.1",
107
114
  "classnames": "2.5.1",
@@ -110,7 +117,7 @@
110
117
  "focus-trap": "^8.0.0",
111
118
  "timepicker-ui": "^4.1.2",
112
119
  "tippy.js": "6.3.7",
113
- "tods-competition-factory": "4.2.0",
120
+ "tods-competition-factory": "5.1.0",
114
121
  "vanillajs-datepicker": "1.3.4"
115
122
  }
116
123
  }