├── tmp └── .keep ├── .husky └── pre-commit ├── dev ├── for_import.txt ├── favicon.ico ├── outer.css ├── dummy_auth_page.html ├── target.txt ├── elon.md ├── invalid_attributes_annotation.json ├── 2_annotations.json ├── invalid_color_config.json ├── attributes_with_no_required_properties_config.json ├── invalid_color_annotation.json └── warning_not_integer_span.json ├── src ├── lib │ ├── Editor │ │ ├── UseCase │ │ │ ├── EditModeFactory │ │ │ │ ├── TermEditMode │ │ │ │ │ └── SpanEditor │ │ │ │ │ │ ├── isInSelected.js │ │ │ │ │ │ ├── isPositionBetweenSpan.js │ │ │ │ │ │ └── create.js │ │ │ │ ├── clearTextSelection.js │ │ │ │ ├── SelectionWrapper │ │ │ │ │ ├── isNodeBlockSpan.js │ │ │ │ │ ├── isNodeStyleSpan.js │ │ │ │ │ ├── isNodeDenotationSpan.js │ │ │ │ │ └── isNodeTextBox.js │ │ │ │ ├── PalletFactory │ │ │ │ │ └── bindPalletEvents │ │ │ │ │ │ └── checkButtonEnable.js │ │ │ │ ├── isTextSelectionInTextBox.js │ │ │ │ ├── selectSpan.js │ │ │ │ ├── BlockEditMode │ │ │ │ │ └── create.js │ │ │ │ └── EditModeBase.js │ │ │ ├── patchConfiguration │ │ │ │ ├── clone.js │ │ │ │ └── AttributeConfigurationGenerator │ │ │ │ │ ├── fillDefaultValueOfSelectionAttributes │ │ │ │ │ └── getSelectionAttributes.js │ │ │ │ │ ├── fillInferDefinitionFromAnnotation │ │ │ │ │ ├── index.js │ │ │ │ │ ├── inferDefinitionFromAnnotation │ │ │ │ │ │ └── index.js │ │ │ │ │ └── fill.js │ │ │ │ │ ├── AnnotationsForPred │ │ │ │ │ └── getValueType.js │ │ │ │ │ ├── getAnnotationMap.js │ │ │ │ │ └── fillMandatoryValueOfNumericAttributes.js │ │ │ ├── MenuState │ │ │ │ ├── DelimiterDetectAdjuster │ │ │ │ │ ├── getNext.js │ │ │ │ │ ├── getPrev.js │ │ │ │ │ ├── skipToWord.js │ │ │ │ │ ├── backToWord.js │ │ │ │ │ ├── isNotWord.js │ │ │ │ │ ├── backToDelimiter.js │ │ │ │ │ └── skipToDelimiter.js │ │ │ │ ├── reduce2hash.js │ │ │ │ ├── skipCharacters.js │ │ │ │ ├── TextSelectionAdjuster.js │ │ │ │ └── skipBlank.js │ │ │ ├── PersistenceInterface │ │ │ │ ├── isTxtFile.js │ │ │ │ ├── readFile.js │ │ │ │ └── readAnnotationFile │ │ │ │ │ └── parseFileContent.js │ │ │ ├── getEntityHTMLelementFromChild.js │ │ │ ├── OriginalData │ │ │ │ └── StatusBar │ │ │ │ │ └── html.js │ │ │ ├── Commander │ │ │ │ └── Factory │ │ │ │ │ ├── MoveEntitiesToSelectedDenotationSpanCommand │ │ │ │ │ └── areAllEntitiesOfSpan.js │ │ │ │ │ ├── AnnotationCommand.js │ │ │ │ │ ├── BaseCommand.js │ │ │ │ │ ├── ConfigurationCommand.js │ │ │ │ │ ├── aggregateTargetRelations.js │ │ │ │ │ ├── commandLog.js │ │ │ │ │ ├── getRemoveAttributesByPredCommands.js │ │ │ │ │ ├── getCreateAttributeToItemsCommands.js │ │ │ │ │ ├── aggregateTargetEntities.js │ │ │ │ │ ├── CreateEntityAndAttributesCommand │ │ │ │ │ └── CreateAttributeToTheLatestEntityCommand.js │ │ │ │ │ └── ChangeTextAndMoveSpanCommand.js │ │ │ ├── Presenter │ │ │ │ └── getIsDelimiterFunc.js │ │ │ ├── removeAllMarks.js │ │ │ ├── validateAttributeDefinitionAndAlert │ │ │ │ └── index.js │ │ │ ├── warningIfBeginEndOfSpanAreNotInteger │ │ │ │ ├── areNotBeginAndEndInteger.js │ │ │ │ └── index.js │ │ │ ├── EditModeSwitch │ │ │ │ └── ModeTransitionReactor │ │ │ │ │ └── EditorCSS.js │ │ │ └── validateConfigurationAndAlert │ │ │ │ └── validateConfiguration │ │ │ │ └── toErrorMessage.js │ │ ├── AnnotationModel │ │ │ ├── SpanInstanceContainer │ │ │ │ ├── SELECTED.js │ │ │ │ ├── spanComparator.js │ │ │ │ ├── getCurrentMaxHeight.js │ │ │ │ ├── getRenderingPosition │ │ │ │ │ └── getOffset.js │ │ │ │ ├── updateSpanTree │ │ │ │ │ └── getParent │ │ │ │ │ │ ├── isChildOf.js │ │ │ │ │ │ └── index.js │ │ │ │ ├── BlockSpanInstance │ │ │ │ │ ├── setPosition.js │ │ │ │ │ └── renderBackground.js │ │ │ │ ├── SpanInstance │ │ │ │ │ ├── createGridHtml.js │ │ │ │ │ ├── updateGridPosition │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── isStaying.js │ │ │ │ │ └── getRightGrid.js │ │ │ │ ├── TextSelection │ │ │ │ │ └── getOffsetFromParent.js │ │ │ │ └── createRange.js │ │ │ ├── RelationInstanceContainer │ │ │ │ └── RelationInstance │ │ │ │ │ ├── Arrow │ │ │ │ │ ├── MarkerHeight.js │ │ │ │ │ ├── createJetty.js │ │ │ │ │ ├── createPath.js │ │ │ │ │ ├── createTargetBollard.js │ │ │ │ │ ├── CurveAlgorithmFactory │ │ │ │ │ │ └── ArchedCurveAlgorithm.js │ │ │ │ │ ├── createSourceBollard.js │ │ │ │ │ ├── updatePath.js │ │ │ │ │ └── moveJetty.js │ │ │ │ │ ├── NS.js │ │ │ │ │ └── toDisplayName │ │ │ │ │ ├── index.js │ │ │ │ │ └── getDisplayNameTag.js │ │ │ ├── AnnotationEvaluator │ │ │ │ ├── validateAnnotation │ │ │ │ │ ├── ChainValidation │ │ │ │ │ │ └── setSourceProperty.js │ │ │ │ │ ├── getSpanValidation │ │ │ │ │ │ └── isBeginAndEndIn │ │ │ │ │ │ │ ├── isInText.js │ │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── isContains.js │ │ │ │ │ ├── isIDUnique.js │ │ │ │ │ ├── validateAttribute │ │ │ │ │ │ ├── isUniqueIn.js │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── validateTypeSettings.js │ │ │ │ │ ├── validateDenotation.js │ │ │ │ │ ├── validateRelation.js │ │ │ │ │ └── debugLogCrossing.js │ │ │ │ ├── getAllSpansIn.js │ │ │ │ └── getAllSpansOf.js │ │ │ ├── getAnnotationBox.js │ │ │ ├── createTextBox │ │ │ │ └── TextBox │ │ │ │ │ ├── getLineHeight.js │ │ │ │ │ ├── setLineHeight.js │ │ │ │ │ ├── pixelToInt.js │ │ │ │ │ └── updateTextBoxHeight.js │ │ │ ├── getBoundaryCrossingSpans.js │ │ │ ├── toRelations.js │ │ │ ├── InstanceContainer │ │ │ │ └── isFunction.js │ │ │ ├── toBlocks.js │ │ │ ├── toDenotations.js │ │ │ ├── DefinitionContainer │ │ │ │ ├── DefinedTypeContainer │ │ │ │ │ └── getForwardMatchID │ │ │ │ │ │ ├── getLongestIdMatchType.js │ │ │ │ │ │ ├── getForwardMatchTypes.js │ │ │ │ │ │ └── index.js │ │ │ │ ├── countUsage.js │ │ │ │ ├── sortByCountAndName.js │ │ │ │ └── formatForPallet │ │ │ │ │ ├── createTypesWithoutInstance.js │ │ │ │ │ └── index.js │ │ │ ├── getReplicationRanges │ │ │ │ ├── isWord.js │ │ │ │ └── getDuplicateSentenceFromText.js │ │ │ └── isBoundaryCrossingWithOtherSpans.js │ │ ├── getLabelBackgroundColor.js │ │ ├── diffOfAnnotation │ │ │ ├── byID.js │ │ │ ├── index.js │ │ │ └── sortByID.js │ │ ├── RemoteResource │ │ │ ├── openPopUp.js │ │ │ ├── AnnotationSaver │ │ │ │ └── prepareRequestBody.js │ │ │ ├── waitForPopUpClose.js │ │ │ └── AnnotationLoader │ │ │ │ └── parseResponse │ │ │ │ └── index.js │ │ ├── control │ │ │ ├── ContextMenu │ │ │ │ └── toContextMenuItem.js │ │ │ ├── ToolBar │ │ │ │ └── toButtonGroup │ │ │ │ │ ├── index.js │ │ │ │ │ └── toButtonIcon.js │ │ │ └── Menu │ │ │ │ └── index.js │ │ ├── toAnchorElement.js │ │ ├── getRightSpanElement.js │ │ ├── isTouchable.js │ │ ├── round.js │ │ ├── isAndroid.js │ │ ├── hexToRGBA.js │ │ ├── EditorCSSClass.js │ │ ├── getMatchPrefix.js │ │ ├── loadAnnotation.js │ │ ├── getRightElement.js │ │ ├── filterIfModified.js │ │ ├── editorCSSClassObserve.js │ │ ├── getPalletButtonTitleFor.js │ │ ├── observeElement.js │ │ ├── forwardMethods.js │ │ ├── isBoundaryCrossing.js │ │ ├── BrowserEventListener.js │ │ ├── RESOURCE_TYPE.js │ │ ├── EditorEventListener.js │ │ ├── getUrlMatches.js │ │ └── getDisplayName │ │ │ └── index.js │ ├── css │ │ ├── textae-const.less │ │ ├── images │ │ │ ├── link.png │ │ │ ├── keyhelp.png │ │ │ ├── keyhelp.psd │ │ │ ├── btn_cut_16.png │ │ │ ├── btn_copy_16.png │ │ │ ├── btn_delete_16.png │ │ │ ├── btn_help_16.png │ │ │ ├── btn_import_16.png │ │ │ ├── btn_pallet_16.png │ │ │ ├── btn_paste_16.png │ │ │ ├── btn_redo_16.png │ │ │ ├── btn_undo_16.png │ │ │ ├── btn_upload_16.png │ │ │ ├── btn_setting_16.png │ │ │ ├── btn_new_entity_16.png │ │ │ ├── btn_simple_view_16.png │ │ │ ├── btn_view_mode_16.png │ │ │ ├── btn_auto_replicate_16.png │ │ │ ├── btn_block_edit_mode_16.png │ │ │ ├── btn_edit_properties_16.png │ │ │ ├── btn_pallet_modified_16.png │ │ │ ├── btn_term_edit_mode_16.png │ │ │ ├── btn_text_edit_mode_16.png │ │ │ ├── btn_upload_modified_16.png │ │ │ ├── ui-icons_222222_256x240.png │ │ │ ├── ui-icons_228ef1_256x240.png │ │ │ ├── ui-icons_ef8c08_256x240.png │ │ │ ├── ui-icons_ffd27a_256x240.png │ │ │ ├── ui-icons_ffffff_256x240.png │ │ │ ├── btn_adjust_lineheight_16.png │ │ │ ├── btn_boundary_detection_16.png │ │ │ ├── btn_edit_text_by_touch_16.png │ │ │ ├── btn_relation_edit_mode_16.png │ │ │ ├── btn_create_span_by_touch_16.png │ │ │ ├── btn_expand_span_by_touch_16.png │ │ │ ├── btn_shrink_span_by_touch_16.png │ │ │ ├── btn_upload_automatically_16.png │ │ │ ├── ui-bg_glass_100_f6f6f6_1x400.png │ │ │ ├── ui-bg_glass_100_fdf5ce_1x400.png │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ │ ├── btn_auto_adjust_lineheight_16.png │ │ │ ├── btn_replicate_span_annotation_16.png │ │ │ ├── ui-bg_gloss-wave_35_f6a828_500x100.png │ │ │ ├── ui-bg_diagonals-thick_18_b81900_40x40.png │ │ │ ├── ui-bg_diagonals-thick_20_666666_40x40.png │ │ │ ├── ui-bg_highlight-soft_100_eeeeee_1x100.png │ │ │ └── ui-bg_highlight-soft_75_ffe45c_1x100.png │ │ ├── textae-editor-fontawsome.less │ │ └── textae-text-edit-dialog.less │ ├── isURI.js │ ├── IntervalNotation │ │ ├── gt.js │ │ ├── gte.js │ │ ├── getUpperCond.js │ │ └── getLowwerCond.js │ ├── isAbleToParseFloat.js │ ├── debounce300.js │ ├── MODE.js │ ├── component │ │ ├── getInputElementValue.js │ │ ├── EditAttributeDefinitionDialog │ │ │ ├── isChanged.js │ │ │ └── template.js │ │ ├── Pallet │ │ │ ├── setWidthWithin.js │ │ │ ├── enableJqueryDraggable.js │ │ │ └── setHeightWithin.js │ │ ├── createDownloadPath.js │ │ ├── SettingDialog │ │ │ ├── reflectImmediately │ │ │ │ ├── redrawAllEditor.js │ │ │ │ ├── bindChangeLineHeight.js │ │ │ │ ├── bindChangeLockConfig.js │ │ │ │ └── bindChangeTypeGap.js │ │ │ ├── EscapeSequence.js │ │ │ ├── template │ │ │ │ ├── escapeForDisplay.js │ │ │ │ ├── toFunctionAvailabilityLabelElement.js │ │ │ │ ├── toBlankCharacterRowElement.js │ │ │ │ └── toDelimiterCharacterRowElement.js │ │ │ ├── saveAutocompletionWs.js │ │ │ ├── validateConfiguration.js │ │ │ └── bindAddCharacter │ │ │ │ ├── addCharacterRow │ │ │ │ └── validateCharacter.js │ │ │ │ └── index.js │ │ ├── TypeValuesPallet │ │ │ ├── bindAttributeEvent │ │ │ │ └── enableAttributeTabDrag │ │ │ │ │ ├── hideDropTargets.js │ │ │ │ │ ├── showDropTargets.js │ │ │ │ │ └── index.js │ │ │ ├── createContentHtml │ │ │ │ ├── showAddAttributeValueButton.js │ │ │ │ ├── headerTemplate │ │ │ │ │ └── getSelectedEntityLabel.js │ │ │ │ └── flagAttributeTemplate.js │ │ │ └── enableDrag.js │ │ ├── getRandomColorString.js │ │ ├── maximizeOverlay.js │ │ ├── isUserConfirm.js │ │ ├── revertMaximizeOverlay.js │ │ ├── enableHTMLElement.js │ │ ├── fetchAutocompleteCandidates.js │ │ ├── SaveAnnotationDialog │ │ │ └── bind │ │ │ │ ├── viewSource.js │ │ │ │ ├── downloadAnnotationFile │ │ │ │ ├── index.js │ │ │ │ └── downloadAnnotation.js │ │ │ │ └── createDownloadPathForFormat.js │ │ ├── inputAttributeDefinition │ │ │ ├── inputDefault.js │ │ │ ├── inputMediaHeight.js │ │ │ └── inputAutocompletionWs.js │ │ ├── SaveConfigurationDialog │ │ │ └── jsonDiff.js │ │ ├── HelpDialog.js │ │ └── CreateOrEditValueOfAttributeDefinitionDialog │ │ │ └── inputDefault.js │ ├── exceptions │ │ └── FormatConversionError.js │ ├── textae │ │ ├── Tool │ │ │ ├── EditorContainer │ │ │ │ └── isTextFields.js │ │ │ └── getMousePoint.js │ │ ├── toEditor.js │ │ └── index.js │ └── isJSON.js ├── index.js └── demo │ └── bionlp-st-ge │ ├── demo-empty.html │ ├── demo-local.html │ └── demo-cdn.html ├── userAcceptanceTest ├── 20210902_03.md ├── 20211209_03.md ├── 20210720_02_mouse.md ├── 20211117_02.md ├── 20211208_10.md ├── 20211028_01.md ├── 20211118_03.md ├── 20210806_01.md ├── 20210720_01.md ├── 20220419_01.md ├── 20210806_02.md ├── 20220315_03_keyboard.md ├── 20220105_01.md ├── 20220216_05.md ├── 20210922_01.md ├── 20210921_02.md ├── 20211110_01.md ├── 20220119_01.md ├── 20210805_04.md ├── userAcceptanceTest.md ├── 20220112_03.md ├── 20210805_03.md ├── 20210930_04.md ├── 20220118_02.md ├── 20211109_05.md ├── 20211215_05.md ├── 20220125_01.md ├── 20220125_03.md ├── 20210812_02.md ├── 20211207_05.md ├── 20211209_01.md ├── 20220207_02.md ├── 20210902_05.md ├── 20220202_02.md ├── 20220119_04.md ├── 20211118_01.md ├── 20211109_03.md ├── 20220202_01.md ├── 20220222_01_mouse.md ├── 20220503_02.md ├── choice_test_devices.rb ├── 20220112_05.md ├── 20220202_05.md ├── 20220210_02.md ├── 20220309_03_monuse.md ├── 20211124_04.md ├── 20210819_01.md ├── 20210907_02.md ├── 20210930_01.md ├── 20211029_01.md ├── 20211207_03.md ├── 20211207_04.md ├── 20211215_02.md ├── 20220106_01.md ├── 20220119_03.md ├── 20210929_03.md ├── 20211109_02.md ├── 20220215_02.md ├── 20220412_02.md ├── 20210929_04.md ├── 20220217_01.md ├── 20220127_02.md ├── 20220222_02_mouse.md ├── 20210922_03.md ├── 20220215_04.md ├── 20220308_03.md ├── 20220415_01.md ├── 20211208_04.md ├── 20220318_01.md ├── 20220415_02.md ├── 20211125_01.md ├── 20211130_01.md ├── 20220106_05.md ├── 20211110_04.md ├── 20220302_07.md ├── 20220314_01.md ├── 20220412_01.md ├── 20220207_01.md ├── 20211124_03.md ├── 20220203_02.md ├── 20220112_06.md ├── 20220119_02.md ├── 20211125_02.md ├── 20211209_02.md ├── 20220112_04.md ├── 20210805_01.md ├── 20211110_03.md ├── 20211124_02.md ├── 20211215_07.md ├── 20220119_06.md ├── 20210818_01.md ├── 20211102_01.md ├── 20220216_02.md ├── 20220309_02_keyboard.md ├── 20210929_01.md ├── 20211207_06.md ├── 20211208_08.md ├── 20220121_03.md ├── 20211118_04.md ├── 20220202_03.md ├── 20220318_03.md ├── 20210720_04.md ├── 20210901_01.md ├── 20211208_09.md ├── 20211208_01.md ├── 20220304_01.md ├── 20210805_05_keyboard.md ├── 20210922_02.md ├── 20211215_04.md ├── 20210914_02.md ├── 20210716_02.md ├── 20210929_02.md ├── 20220302_08.md ├── 20211124_01.md ├── 20211224_03.md ├── 20211216_01.md ├── 20220503_01_firefox.md ├── 20210825_01.md ├── 20220207_03.md ├── 20220419_02.md ├── 20210817_02.md ├── 20220302_01.md ├── 20211109_04.md ├── 20211207_01.md ├── 20211215_03.md ├── 20220112_07.md ├── 20220121_02.md ├── 20220413_01_mouse.md ├── 20211110_02.md ├── 20211208_06.md ├── 20220308_01.md ├── 20220208_01.md ├── 20220310_01.md ├── 20210914_01.md ├── 20220216_03.md ├── 20210930_03.md ├── 20211109_06.md ├── 20211208_07.md ├── 20220415_03.md ├── 20220302_02.md ├── 20211207_07.md ├── 20220112_02.md ├── 20210827_02.md ├── 20211214_01.md ├── 20220304_02.md ├── 20210827_01.md ├── 20211215_06.md └── 20220302_06.md ├── dist ├── lib │ ├── css │ │ └── images │ │ │ ├── link.png │ │ │ ├── keyhelp.png │ │ │ ├── btn_copy_16.png │ │ │ ├── btn_cut_16.png │ │ │ ├── btn_help_16.png │ │ │ ├── btn_paste_16.png │ │ │ ├── btn_redo_16.png │ │ │ ├── btn_undo_16.png │ │ │ ├── btn_delete_16.png │ │ │ ├── btn_import_16.png │ │ │ ├── btn_pallet_16.png │ │ │ ├── btn_setting_16.png │ │ │ ├── btn_upload_16.png │ │ │ ├── btn_new_entity_16.png │ │ │ ├── btn_view_mode_16.png │ │ │ ├── btn_simple_view_16.png │ │ │ ├── btn_auto_replicate_16.png │ │ │ ├── btn_block_edit_mode_16.png │ │ │ ├── btn_edit_properties_16.png │ │ │ ├── btn_pallet_modified_16.png │ │ │ ├── btn_term_edit_mode_16.png │ │ │ ├── btn_text_edit_mode_16.png │ │ │ ├── btn_upload_modified_16.png │ │ │ ├── btn_adjust_lineheight_16.png │ │ │ ├── ui-icons_222222_256x240.png │ │ │ ├── ui-icons_228ef1_256x240.png │ │ │ ├── ui-icons_ef8c08_256x240.png │ │ │ ├── ui-icons_ffd27a_256x240.png │ │ │ ├── ui-icons_ffffff_256x240.png │ │ │ ├── btn_boundary_detection_16.png │ │ │ ├── btn_create_span_by_touch_16.png │ │ │ ├── btn_edit_text_by_touch_16.png │ │ │ ├── btn_expand_span_by_touch_16.png │ │ │ ├── btn_relation_edit_mode_16.png │ │ │ ├── btn_shrink_span_by_touch_16.png │ │ │ ├── btn_upload_automatically_16.png │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ │ ├── btn_auto_adjust_lineheight_16.png │ │ │ ├── ui-bg_glass_100_f6f6f6_1x400.png │ │ │ ├── ui-bg_glass_100_fdf5ce_1x400.png │ │ │ ├── btn_replicate_span_annotation_16.png │ │ │ ├── ui-bg_gloss-wave_35_f6a828_500x100.png │ │ │ ├── ui-bg_diagonals-thick_18_b81900_40x40.png │ │ │ ├── ui-bg_diagonals-thick_20_666666_40x40.png │ │ │ ├── ui-bg_highlight-soft_100_eeeeee_1x100.png │ │ │ └── ui-bg_highlight-soft_75_ffe45c_1x100.png │ └── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 └── demo │ └── bionlp-st-ge │ ├── demo-empty.html │ ├── demo-local.html │ └── demo-cdn.html ├── .gitignore ├── .vscode └── settings.json ├── .versionrc └── .github └── workflows └── build.yml /tmp/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | npx lint-staged 2 | -------------------------------------------------------------------------------- /dev/for_import.txt: -------------------------------------------------------------------------------- 1 | This file is a text file. -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/EditModeFactory/TermEditMode/SpanEditor/isInSelected.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dev/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dev/favicon.ico -------------------------------------------------------------------------------- /src/lib/css/textae-const.less: -------------------------------------------------------------------------------- 1 | @baseColor: rgb(100, 100, 215); 2 | @selected: red; 3 | -------------------------------------------------------------------------------- /dev/outer.css: -------------------------------------------------------------------------------- 1 | /* Emulate an outer css file */ 2 | p { 3 | line-height: 1.5em; 4 | } 5 | -------------------------------------------------------------------------------- /src/lib/isURI.js: -------------------------------------------------------------------------------- 1 | export default function (type) { 2 | return type.trim().startsWith('http') 3 | } 4 | -------------------------------------------------------------------------------- /dev/dummy_auth_page.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | This is a dummy auth page! 4 | 5 | -------------------------------------------------------------------------------- /src/lib/IntervalNotation/gt.js: -------------------------------------------------------------------------------- 1 | export default function (left, right) { 2 | return left < right 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/IntervalNotation/gte.js: -------------------------------------------------------------------------------- 1 | export default function (left, right) { 2 | return left <= right 3 | } 4 | -------------------------------------------------------------------------------- /userAcceptanceTest/20210902_03.md: -------------------------------------------------------------------------------- 1 | ## Relation モードの背景色 2 | 3 | 1. Relation モードにする 4 | 2. 背景が薄ピンク色になること 5 | -------------------------------------------------------------------------------- /dist/lib/css/images/link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/link.png -------------------------------------------------------------------------------- /src/lib/css/images/link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/link.png -------------------------------------------------------------------------------- /dev/target.txt: -------------------------------------------------------------------------------- 1 | An annotation is a metadatum (e.g. a post, explanation, markup) attached to location or other data. 2 | -------------------------------------------------------------------------------- /dist/lib/css/images/keyhelp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/keyhelp.png -------------------------------------------------------------------------------- /dist/lib/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/lib/css/images/keyhelp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/keyhelp.png -------------------------------------------------------------------------------- /src/lib/css/images/keyhelp.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/keyhelp.psd -------------------------------------------------------------------------------- /src/lib/isAbleToParseFloat.js: -------------------------------------------------------------------------------- 1 | export default function (str) { 2 | return !Number.isNaN(parseFloat(str)) 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_cut_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_cut_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_copy_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_copy_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_cut_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_cut_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_help_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_help_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_paste_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_paste_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_redo_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_redo_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_undo_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_undo_16.png -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/SpanInstanceContainer/SELECTED.js: -------------------------------------------------------------------------------- 1 | const SELECTED = 'ui-selected' 2 | export default SELECTED 3 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_copy_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_copy_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_delete_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_delete_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_help_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_help_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_import_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_import_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_pallet_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_pallet_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_paste_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_paste_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_redo_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_redo_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_undo_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_undo_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_upload_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_upload_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_delete_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_delete_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_import_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_import_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_pallet_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_pallet_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_setting_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_setting_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_upload_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_upload_16.png -------------------------------------------------------------------------------- /dist/lib/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /dist/lib/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/RelationInstanceContainer/RelationInstance/Arrow/MarkerHeight.js: -------------------------------------------------------------------------------- 1 | export const MarkerHeight = 6 2 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_setting_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_setting_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_new_entity_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_new_entity_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_view_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_view_mode_16.png -------------------------------------------------------------------------------- /dist/lib/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /dist/lib/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/lib/css/images/btn_new_entity_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_new_entity_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_simple_view_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_simple_view_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_view_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_view_mode_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_simple_view_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_simple_view_16.png -------------------------------------------------------------------------------- /src/lib/debounce300.js: -------------------------------------------------------------------------------- 1 | import debounce from 'debounce' 2 | 3 | export default function (func) { 4 | return debounce(func, 300) 5 | } 6 | -------------------------------------------------------------------------------- /dist/lib/css/images/btn_auto_replicate_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_auto_replicate_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_block_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_block_edit_mode_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_edit_properties_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_edit_properties_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_pallet_modified_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_pallet_modified_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_term_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_term_edit_mode_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_text_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_text_edit_mode_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_upload_modified_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_upload_modified_16.png -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/EditModeFactory/clearTextSelection.js: -------------------------------------------------------------------------------- 1 | export default function () { 2 | window.getSelection().removeAllRanges() 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_auto_replicate_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_auto_replicate_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_block_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_block_edit_mode_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_edit_properties_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_edit_properties_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_pallet_modified_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_pallet_modified_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_term_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_term_edit_mode_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_text_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_text_edit_mode_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_upload_modified_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_upload_modified_16.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-icons_228ef1_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-icons_228ef1_256x240.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-icons_ef8c08_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-icons_ef8c08_256x240.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-icons_ffd27a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-icons_ffd27a_256x240.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_adjust_lineheight_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_adjust_lineheight_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-icons_228ef1_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-icons_228ef1_256x240.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-icons_ef8c08_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-icons_ef8c08_256x240.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-icons_ffd27a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-icons_ffd27a_256x240.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/RelationInstanceContainer/RelationInstance/NS.js: -------------------------------------------------------------------------------- 1 | export const NS = { 2 | SVG: 'http://www.w3.org/2000/svg' 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_adjust_lineheight_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_adjust_lineheight_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_boundary_detection_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_boundary_detection_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_edit_text_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_edit_text_by_touch_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_relation_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_relation_edit_mode_16.png -------------------------------------------------------------------------------- /userAcceptanceTest/20211209_03.md: -------------------------------------------------------------------------------- 1 | ## コピーした Entity を削除してから貼付ける 2 | 3 | 1. Entity を選択する 4 | 2. コピーする 5 | 3. 削除する 6 | 4. 別の Span を選択する 7 | 5. 貼付ける 8 | -------------------------------------------------------------------------------- /dist/lib/css/images/btn_boundary_detection_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_boundary_detection_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_create_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_create_span_by_touch_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_edit_text_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_edit_text_by_touch_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_expand_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_expand_span_by_touch_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_relation_edit_mode_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_relation_edit_mode_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_shrink_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_shrink_span_by_touch_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_upload_automatically_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_upload_automatically_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/patchConfiguration/clone.js: -------------------------------------------------------------------------------- 1 | export default function (config) { 2 | return config ? JSON.parse(JSON.stringify(config)) : {} 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_create_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_create_span_by_touch_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_expand_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_expand_span_by_touch_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_shrink_span_by_touch_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_shrink_span_by_touch_16.png -------------------------------------------------------------------------------- /src/lib/css/images/btn_upload_automatically_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_upload_automatically_16.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-bg_glass_100_f6f6f6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-bg_glass_100_f6f6f6_1x400.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-bg_glass_100_fdf5ce_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-bg_glass_100_fdf5ce_1x400.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /userAcceptanceTest/20210720_02_mouse.md: -------------------------------------------------------------------------------- 1 | ## パレットはドラッグできる 2 | 3 | 1. Term モードにする 4 | 2. Entity を選択する 5 | 3. `Q`キーを押す 6 | 4. パレットがドラッグアンドドロップで移動できること 7 | -------------------------------------------------------------------------------- /dist/lib/css/images/btn_auto_adjust_lineheight_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_auto_adjust_lineheight_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-bg_glass_100_f6f6f6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-bg_glass_100_f6f6f6_1x400.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-bg_glass_100_fdf5ce_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-bg_glass_100_fdf5ce_1x400.png -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/SpanInstanceContainer/spanComparator.js: -------------------------------------------------------------------------------- 1 | export default function (a, b) { 2 | return a.begin - b.begin || b.end - a.end 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_auto_adjust_lineheight_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_auto_adjust_lineheight_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/btn_replicate_span_annotation_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/btn_replicate_span_annotation_16.png -------------------------------------------------------------------------------- /src/lib/Editor/getLabelBackgroundColor.js: -------------------------------------------------------------------------------- 1 | import hexToRGBA from './hexToRGBA' 2 | 3 | export default function () { 4 | return hexToRGBA('#FFFFFF', 0.6) 5 | } 6 | -------------------------------------------------------------------------------- /src/lib/css/images/btn_replicate_span_annotation_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/btn_replicate_span_annotation_16.png -------------------------------------------------------------------------------- /dist/lib/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/dist/lib/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png -------------------------------------------------------------------------------- /src/lib/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pubannotation/textae/HEAD/src/lib/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png -------------------------------------------------------------------------------- /userAcceptanceTest/20211117_02.md: -------------------------------------------------------------------------------- 1 | ## DenotationEntity 編集後も選択状態を保持 2 | 3 | 1. Term-Simple モードにする 4 | 2. Type を選択する 5 | 3. Type を編集する 6 | 4. Type 編集後もラベルが選択されていること 7 | -------------------------------------------------------------------------------- /userAcceptanceTest/20211208_10.md: -------------------------------------------------------------------------------- 1 | ## 外部 JavaScript で Editor を初期フォーカスできること 2 | 3 | 1.${title} 5 |
` 6 | } 7 | -------------------------------------------------------------------------------- /src/lib/component/createDownloadPath.js: -------------------------------------------------------------------------------- 1 | export default function (dataObject) { 2 | const blob = new Blob([JSON.stringify(dataObject)], { 3 | type: 'application/json' 4 | }) 5 | 6 | return URL.createObjectURL(blob) 7 | } 8 | -------------------------------------------------------------------------------- /userAcceptanceTest/20220315_03_keyboard.md: -------------------------------------------------------------------------------- 1 | ## Relation 編集ダイアログ 2 | 3 | ### W キー 4 | 5 | 1. Relation モードにする 6 | 2. Relation を選択する 7 | 3. `W`キーを押す 8 | 4. 編集ダイアログが開くこと 9 | 5. タイトルバーに選択した Relation の Type の id が表示されること 10 | -------------------------------------------------------------------------------- /src/lib/component/SettingDialog/reflectImmediately/redrawAllEditor.js: -------------------------------------------------------------------------------- 1 | // Redraw all editors in tha windows. 2 | export default function redrawAllEditor() { 3 | const event = new Event('resize') 4 | window.dispatchEvent(event) 5 | } 6 | -------------------------------------------------------------------------------- /dev/invalid_attributes_annotation.json: -------------------------------------------------------------------------------- 1 | { 2 | "config": { 3 | "attribute types": [ 4 | { 5 | "pred": "rate", 6 | "value type": "numeric" 7 | } 8 | ] 9 | }, 10 | "text": "dummy string" 11 | } 12 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/getAnnotationBox.js: -------------------------------------------------------------------------------- 1 | // Get the display area for denotations and relations. 2 | export default function (editorHTMLElement) { 3 | return editorHTMLElement.querySelector('.textae-editor__annotation-box') 4 | } 5 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/EditModeFactory/PalletFactory/bindPalletEvents/checkButtonEnable.js: -------------------------------------------------------------------------------- 1 | export default function (targetNode) { 2 | return !targetNode.classList.contains( 3 | 'textae-editor__pallet__table-button--disabled' 4 | ) 5 | } 6 | -------------------------------------------------------------------------------- /userAcceptanceTest/20220105_01.md: -------------------------------------------------------------------------------- 1 | ## BlockSpan のヒットエリアのタイトルに BlockSpan の ID を表示 2 | 3 | ### 背景 4 | 5 | 1. 6.4.62 で対応 6 | 7 | ### -- 手段 -- 8 | 9 | 1. Editor1 を選択 10 | 2. BlockSpan のヒットエリアのタイトルに Span の ID が`begin-end`形式で入っていること 11 | -------------------------------------------------------------------------------- /userAcceptanceTest/20220216_05.md: -------------------------------------------------------------------------------- 1 | ## パレットのスクロールバー 2 | 3 | ### 背景 4 | 5 | 1. パレットに、スクロールが必要ない場合も、横スクロールバーが表示されていました 6 | 2. 6.4.75 で横スクロールバーの常時表示をやめました 7 | 8 | ### -- 手段 -- 9 | 10 | 1. パレットを開く 11 | 2. パレットの下部に横スクロールバーが表示されないこと 12 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/AnnotationEvaluator/getAllSpansIn.js: -------------------------------------------------------------------------------- 1 | export default function (track) { 2 | const { typesettings, denotations, blocks } = track 3 | return (typesettings || []).concat(denotations || []).concat(blocks || []) 4 | } 5 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/SpanInstanceContainer/getCurrentMaxHeight.js: -------------------------------------------------------------------------------- 1 | export default function (spans) { 2 | const maxHeight = Math.max( 3 | ...spans.map((span) => span.heightIncludeDescendantGrids) 4 | ) 5 | return maxHeight 6 | } 7 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/SpanInstanceContainer/getRenderingPosition/getOffset.js: -------------------------------------------------------------------------------- 1 | export default function getOffset(begin, end, beginOfParent) { 2 | return { 3 | start: begin - beginOfParent, 4 | end: end - beginOfParent 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/EditModeFactory/TermEditMode/SpanEditor/isPositionBetweenSpan.js: -------------------------------------------------------------------------------- 1 | export default function (span, position) { 2 | if (!span) { 3 | return false 4 | } 5 | 6 | return span.begin < position && position < span.end 7 | } 8 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/patchConfiguration/AttributeConfigurationGenerator/fillDefaultValueOfSelectionAttributes/getSelectionAttributes.js: -------------------------------------------------------------------------------- 1 | export default function (config) { 2 | return config.filter((a) => a['value type'] === 'selection') 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/isJSON.js: -------------------------------------------------------------------------------- 1 | export default function (arg) { 2 | if (typeof arg !== 'string') { 3 | return false 4 | } 5 | 6 | try { 7 | JSON.parse(arg) 8 | } catch (_e) { 9 | return false 10 | } 11 | 12 | return true 13 | } 14 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/createTextBox/TextBox/getLineHeight.js: -------------------------------------------------------------------------------- 1 | import pixelToInt from './pixelToInt' 2 | 3 | export default function (textBox) { 4 | const style = window.getComputedStyle(textBox) 5 | return pixelToInt(style.lineHeight) 6 | } 7 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/getBoundaryCrossingSpans.js: -------------------------------------------------------------------------------- 1 | import isBoundaryCrossing from '../isBoundaryCrossing' 2 | 3 | export default function (spans, begin, end) { 4 | return spans.filter(({ span }) => isBoundaryCrossing(begin, end, span)) 5 | } 6 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/Commander/Factory/AnnotationCommand.js: -------------------------------------------------------------------------------- 1 | import BaseCommand from './BaseCommand' 2 | 3 | export default class AnnotationCommand extends BaseCommand { 4 | get kind() { 5 | return new Set(['annotation_command']) 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/Commander/Factory/BaseCommand.js: -------------------------------------------------------------------------------- 1 | export default class BaseCommand { 2 | get isEmpty() { 3 | return false 4 | } 5 | 6 | isExactly(kind) { 7 | return this.kind.has(kind) && this.kind.size === 1 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /userAcceptanceTest/20210922_01.md: -------------------------------------------------------------------------------- 1 | ## Block モードで StyleSpan をクリックしたら選択解除する 2 | 3 | ### 背景 4 | 5 | 1. 6.2.41 で対応しました 6 | 7 | ### -- 手段 -- 8 | 9 | 1. Block モードにする 10 | 2. BlockSpan を選択 11 | 3. StyleSpan をクリック 12 | 4. BlockSpan が選択解除されること 13 | -------------------------------------------------------------------------------- /dev/2_annotations.json: -------------------------------------------------------------------------------- 1 | { 2 | "text": "Downregulation is the process by which a cell decreases the quantity of a cellular component, such as RNA or protein, in response to an external variable. An increase of a cellular component is called upregulation." 3 | } 4 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/Commander/Factory/ConfigurationCommand.js: -------------------------------------------------------------------------------- 1 | import BaseCommand from './BaseCommand' 2 | 3 | export default class ConfigurationCommand extends BaseCommand { 4 | get kind() { 5 | return new Set(['configuration_command']) 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /userAcceptanceTest/20210921_02.md: -------------------------------------------------------------------------------- 1 | ## Block モードで DenotationSpan をクリックしたら選択解除する 2 | 3 | ### 背景 4 | 5 | 1. 6.2.42 で対応しました 6 | 7 | ### -- 手段 -- 8 | 9 | 1. Block モードにする 10 | 2. BlockSpan を選択 11 | 3. DenotationSpan をクリック 12 | 4. BlockSpan が選択解除されること 13 | -------------------------------------------------------------------------------- /userAcceptanceTest/20211110_01.md: -------------------------------------------------------------------------------- 1 | ## A キーを押してエラーが起きない 2 | 3 | ### 背景 4 | 5 | 1. 6.1.5 で、Commander をオブジェクトからクラスに変更したときに、メソッド呼び出しの修正もれで、メソッドにレシバーが渡せず、エラーが起きるようになりました 6 | 2. 6.2.73 で対応しました 7 | 8 | ### -- 手段 -- 9 | 10 | 1. `A`キーを押す 11 | 2. エラーが起きないこと 12 | -------------------------------------------------------------------------------- /userAcceptanceTest/20220119_01.md: -------------------------------------------------------------------------------- 1 | ## 先頭の Span を後ろから縮めて消したときにエラーが起きない 2 | 3 | ### 背景 4 | 5 | 1. 6.1.53 で、追加した必須パラメータのアサーションに 0 も引っかかって発生 6 | 2. 6.3.3 で対応 7 | 8 | ### -- 手段 -- 9 | 10 | 1. Editor0 を選択 11 | 2. 最初の Span を後ろから縮めて消す 12 | 3. エラーが起きないこと 13 | -------------------------------------------------------------------------------- /src/lib/Editor/AnnotationModel/AnnotationEvaluator/validateAnnotation/getSpanValidation/isBeginAndEndIn/index.js: -------------------------------------------------------------------------------- 1 | import isInText from './isInText' 2 | 3 | export default function (text, span) { 4 | return isInText(span.begin, text) && isInText(span.end, text) 5 | } 6 | -------------------------------------------------------------------------------- /src/lib/Editor/UseCase/Presenter/getIsDelimiterFunc.js: -------------------------------------------------------------------------------- 1 | export default function (menuState, spanConfig) { 2 | if (menuState.isPushed('boundary detection')) { 3 | return (char) => spanConfig.isDelimiter(char) 4 | } else { 5 | return () => true 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/lib/Editor/control/ToolBar/toButtonGroup/index.js: -------------------------------------------------------------------------------- 1 | import toButtonIcon from './toButtonIcon' 2 | 3 | export default function () { 4 | return (list) => ` 5 | 6 | ${list.map(toButtonIcon).join('\n')} 7 | ` 8 | } 9 | -------------------------------------------------------------------------------- /src/lib/Editor/control/ToolBar/toButtonGroup/toButtonIcon.js: -------------------------------------------------------------------------------- 1 | export default function ({ type, title, classList }) { 2 | return ` 3 | 7 | 8 | ` 9 | } 10 | -------------------------------------------------------------------------------- /src/lib/component/TypeValuesPallet/bindAttributeEvent/enableAttributeTabDrag/hideDropTargets.js: -------------------------------------------------------------------------------- 1 | export default function (e) { 2 | e.target 3 | .closest('.textae-editor__pallet__content') 4 | .classList.remove('textae-editor__pallet__content--dragging') 5 | } 6 | -------------------------------------------------------------------------------- /src/lib/component/TypeValuesPallet/bindAttributeEvent/enableAttributeTabDrag/showDropTargets.js: -------------------------------------------------------------------------------- 1 | export default function (e) { 2 | e.target 3 | .closest('.textae-editor__pallet__content') 4 | .classList.add('textae-editor__pallet__content--dragging') 5 | } 6 | -------------------------------------------------------------------------------- /userAcceptanceTest/20210805_04.md: -------------------------------------------------------------------------------- 1 | ## 行の高さ自動調整はデフォルトで有効 2 | 3 | ### 背景 4 | 5 | 1. 6.1.5 から、config の `autolineheight` の値で行の高さ自動調整の有効無効を指定できるようになりました 6 | 2. 7.15.0 で行の高さ自動調整をデフォルトで有効にしました 7 | 8 | ### -- 手段 -- 9 | 10 | 1. Editor1 を選択 11 | 2. 行の高さ自動調整が無効であること 12 | -------------------------------------------------------------------------------- /userAcceptanceTest/userAcceptanceTest.md: -------------------------------------------------------------------------------- 1 | # 受け入れテスト 2 | 3 | 共通確認項目 4 | 5 | 1. `npm run dist`を実行します 6 | 2. `npm run dev:server`を実行します 7 | 3.