diff --git a/KissMe/Sources/Domestic/DART/DomesticDartMajorReport.swift b/KissMe/Sources/Domestic/DART/DomesticDartMajorReport.swift index fd433f9..b0bc2f8 100644 --- a/KissMe/Sources/Domestic/DART/DomesticDartMajorReport.swift +++ b/KissMe/Sources/Domestic/DART/DomesticDartMajorReport.swift @@ -305,7 +305,115 @@ extension DomesticDart { } - /// 주요사항보고서 주요정보 - 9 + /// 주요사항보고서 주요정보 - 9 채권은행 등의 관리절차 개시 + /// + public struct BondBankManagementProcedureStartRequest: DartRequest { + public typealias KResult = BondBankManagementProcedureStartResult + + public var url: String { + "/api/bnkMngtPcbg.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } + + + /// 주요사항보고서 주요정보 - 10 소송 등의 제기 + /// + public struct LawsuitLodgeRequest: DartRequest { + public typealias KResult = LawsuitLodgeResult + + public var url: String { + "/api/lwstLg.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } + + + /// 주요사항보고서 주요정보 - 11 해외 증권시장 주권등 상장 결정 + /// + public struct OverseaListingDecisionRequest: DartRequest { + public typealias KResult = OverseaListingDecisionResult + + public var url: String { + "/api/ovLstDecsn.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } } @@ -855,33 +963,59 @@ extension DomesticDart { /// 회사명 public let corporationName: String /// 감자주식의 종류와 수(보통주식 (주)) + public let capitalReduction_IssuedTotalCommonStock: String /// 감자주식의 종류와 수(기타주식 (주)) + public let capitalReduction_IssuedTotalEtcStock: String /// 1주당 액면가액 (원) + public let stockFacePrice: String /// 감자전후 자본금(감자전 (원)) + public let beforeDecrease_Capital: String /// 감자전후 자본금(감자후 (원)) + public let afterDecrease_Capital: String /// 감자전후 발행주식수(보통주식 (주)(감자전 (원))) + public let beforeDecrease_IssuedTotalCommonStock: String /// 감자전후 발행주식수(보통주식 (주)(감자후 (원))) + public let afterDecrease_IssuedTotalCommonStock: String /// 감자전후 발행주식수(기타주식 (주)(감자전 (원))) + public let beforeDecrease_IssuedTotalEtcStock: String /// 감자전후 발행주식수(기타주식 (주)(감자후 (원))) + public let afterDecrease_IssuedTotalEtcStock: String /// 감자비율(보통주식 (%)) + public let captialReduction_CommonStockRatio: String /// 감자비율(기타주식 (%)) + public let capitalReduction_EtcStockRatio: String /// 감자기준일 + public let capitalReduction_AssignDate: String /// 감자방법 + public let capitalReduction_Method: String /// 감자사유 + public let capitalReduction_Reason: String /// 감자일정(주주총회 예정일) + public let stockHolderGeneralMeeting_ScheduleDate: String /// 감자일정(명의개서정지기간) + public let stockHolderTrasfer_SuspensionPeriod: String /// 감자일정(구주권 제출기간) + public let oldStockRight_SubmitPeriod: String /// 감자일정(매매거래 정지예정기간) + public let tradingSuspension_SchedulePeriod: String /// 감자일정(구주권 제출기간(시작일)) + public let oldStockRight_SubmitStartDate: String /// 감자일정(구주권 제출기간(종료일)) + public let oldStockRight_SubmitEndDate: String /// 감자일정(매매거래 정지예정기간(시작일)) + public let tradingSuspension_ScheduleStartDate: String /// 감자일정(매매거래 정지예정기간(종료일)) + public let tradingSuspension_ScheduleEndDate: String /// 감자일정(신주권교부예정일) + public let newStock_DistributionScheduleDate: String /// 감자일정(신주상장예정일) + public let newStock_ListingScheduleDate: String /// 채권자 이의제출기간(시작일) + public let creditorObjections_SubmitStartDate: String /// 채권자 이의제출기간(종료일) + public let creditorObjections_SubmitEndDate: String /// 구주권제출 및 신주권교부장소 - + public let newStock_DistributionPlace: String /// 이사회결의일(결정일) public let directorateDecisionDate: String /// 사외이사 참석여부(참석) @@ -898,33 +1032,33 @@ extension DomesticDart { case marketType = "corp_cls" case corporationCode = "corp_code" case corporationName = "corp_name" - case = "crstk_ostk_cnt" - case = "crstk_estk_cnt" - case = "fv_ps" - case = "bfcr_cpt" - case = "atcr_cpt" - case = "bfcr_tisstk_ostk" - case = "atcr_tisstk_ostk" - case = "bfcr_tisstk_estk" - case = "atcr_tisstk_estk" - case = "cr_rt_ostk" - case = "cr_rt_estk" - case = "cr_std" - case = "cr_mth" - case = "cr_rs" - case = "crsc_gmtsck_prd" - case = "crsc_trnmsppd" - case = "crsc_osprpd" - case = "crsc_trspprpd" - case = "crsc_osprpd_bgd" - case = "crsc_osprpd_edd" - case = "crsc_trspprpd_bgd" - case = "crsc_trspprpd_edd" - case = "crsc_nstkdlprd" - case = "crsc_nstklstprd" - case = "cdobprpd_bgd" - case = "cdobprpd_edd" - case = "ospr_nstkdl_pl" + case capitalReduction_IssuedTotalCommonStock = "crstk_ostk_cnt" + case capitalReduction_IssuedTotalEtcStock = "crstk_estk_cnt" + case stockFacePrice = "fv_ps" + case beforeDecrease_Capital = "bfcr_cpt" + case afterDecrease_Capital = "atcr_cpt" + case beforeDecrease_IssuedTotalCommonStock = "bfcr_tisstk_ostk" + case afterDecrease_IssuedTotalCommonStock = "atcr_tisstk_ostk" + case beforeDecrease_IssuedTotalEtcStock = "bfcr_tisstk_estk" + case afterDecrease_IssuedTotalEtcStock = "atcr_tisstk_estk" + case captialReduction_CommonStockRatio = "cr_rt_ostk" + case capitalReduction_EtcStockRatio = "cr_rt_estk" + case capitalReduction_AssignDate = "cr_std" + case capitalReduction_Method = "cr_mth" + case capitalReduction_Reason = "cr_rs" + case stockHolderGeneralMeeting_ScheduleDate = "crsc_gmtsck_prd" + case stockHolderTrasfer_SuspensionPeriod = "crsc_trnmsppd" + case oldStockRight_SubmitPeriod = "crsc_osprpd" + case tradingSuspension_SchedulePeriod = "crsc_trspprpd" + case oldStockRight_SubmitStartDate = "crsc_osprpd_bgd" + case oldStockRight_SubmitEndDate = "crsc_osprpd_edd" + case tradingSuspension_ScheduleStartDate = "crsc_trspprpd_bgd" + case tradingSuspension_ScheduleEndDate = "crsc_trspprpd_edd" + case newStock_DistributionScheduleDate = "crsc_nstkdlprd" + case newStock_ListingScheduleDate = "crsc_nstklstprd" + case creditorObjections_SubmitStartDate = "cdobprpd_bgd" + case creditorObjections_SubmitEndDate = "cdobprpd_edd" + case newStock_DistributionPlace = "ospr_nstkdl_pl" case directorateDecisionDate = "bddd" case outsideDirectorsAttended = "od_a_at_t" case outsideDirectorsAbsent = "od_a_at_b" @@ -933,4 +1067,185 @@ extension DomesticDart { } } } + + + public struct BondBankManagementProcedureStartResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let list: [Item] + + private enum CodingKeys: String, CodingKey { + case status + case message + case list + } + } + + public struct Item: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + /// 관리절차개시 결정일자 + public let managementProcedureStart_DecisionDate: String + /// 관리기관 + public let managementInstitution: String + /// 관리기간 + public let managementPeriod: String + /// 관리사유 + public let managementReason: String + /// 확인일자 + public let confirmDate: String + + private enum CodingKeys: String, CodingKey { + case receiptNo = "rcept_no" + case marketType = "corp_cls" + case corporationCode = "corp_code" + case corporationName = "corp_name" + case managementProcedureStart_DecisionDate = "mngt_pcbg_dd" + case managementInstitution = "mngt_int" + case managementPeriod = "mngt_pd" + case managementReason = "mngt_rs" + case confirmDate = "cfd" + } + } + } + + + public struct LawsuitLodgeResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let list: [Item] + + private enum CodingKeys: String, CodingKey { + case status + case message + case list + } + } + + public struct Item: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + /// 사건의 명칭 + public let incidentName: String + /// 원고ㆍ신청인 + public let accuserPetitioner: String + /// 청구내용 + public let requestContent: String + /// 관할법원 + public let competentCourt: String + /// 향후대책 + public let countermeasures: String + /// 제기일자 + public let lodgeDate: String + /// 확인일자 + public let confirmDate: String + + private enum CodingKeys: String, CodingKey { + case receiptNo = "rcept_no" + case marketType = "corp_cls" + case corporationCode = "corp_code" + case corporationName = "corp_name" + case incidentName = "icnm" + case accuserPetitioner = "ac_ap" + case requestContent = "rq_cn" + case competentCourt = "cpct" + case countermeasures = "ft_ctp" + case lodgeDate = "lgd" + case confirmDate = "cfd" + } + } + } + + + public struct OverseaListingDecisionResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let list: [Item] + + private enum CodingKeys: String, CodingKey { + case status + case message + case list + } + } + + public struct Item: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + /// 상장예정주식 종류ㆍ수(주)(보통주식) + /// 상장예정주식 종류ㆍ수(주)(기타주식) + /// 발행주식 총수(주)(보통주식) + /// 발행주식 총수(주)(기타주식) + /// 공모방법(신주발행 (주)) + /// 공모방법(구주매출 (주)) + /// 자금조달(신주발행) 목적 + /// 상장증권(원주상장 (주)) + /// 상장증권(DR상장 (주)) + /// 상장거래소(소재국가) + + /// 해외상장목적 + public let listingPurpose: String + /// 상장예정일자 + public let listingScheduleDate: String + /// 이사회결의일(결정일) + public let directorateDecisionDate: String + /// 사외이사 참석여부(참석) + public let outsideDirectorsAttended: String + /// 사외이사 참석여부(불참) + public let outsideDirectorsAbsent: String + /// 감사(감사위원) 참석여부 + public let auditorAttended: String + + private enum CodingKeys: String, CodingKey { + case receiptNo = "rcept_no" + case marketType = "corp_cls" + case corporationCode = "corp_code" + case corporationName = "corp_name" + + case = "lstprstk_ostk_cnt" + case = "lstprstk_estk_cnt" + case = "tisstk_ostk" + case = "tisstk_estk" + case = "psmth_nstk_sl" + case = "psmth_ostk_sl" + case = "fdpp" + case = "lststk_orlst" + case = "lststk_drlst" + case = "lstex_nt" + case listingPurpose = "lstpp" + case listingScheduleDate = "lstprd" + case directorateDecisionDate = "bddd" + case outsideDirectorsAttended = "od_a_at_t" + case outsideDirectorsAbsent = "od_a_at_b" + case auditorAttended = "adt_a_atn" + } + } + } } diff --git a/KissMe/Sources/Domestic/DART/DomesticDartSecuritiesReport.swift b/KissMe/Sources/Domestic/DART/DomesticDartSecuritiesReport.swift new file mode 100644 index 0000000..75e4e96 --- /dev/null +++ b/KissMe/Sources/Domestic/DART/DomesticDartSecuritiesReport.swift @@ -0,0 +1,364 @@ +// +// DomesticDartSecuritiesReport.swift +// KissMe +// +// Created by ened-book-m1 on 2023/07/13. +// + +import Foundation + + +extension DomesticDart { + + /// 증권신고서 주요정보 - 1 주식의포괄적교환·이전 + /// + public struct A: DartRequest { + + } + + + /// 증권신고서 주요정보 - 2 합병 + /// + public struct A: DartRequest { + + } + + + /// 증권신고서 주요정보 - 3 증권예탁증권 + /// + public struct A: DartRequest { + + } + + + /// 증권신고서 주요정보 - 4 채무증권 + /// + public struct DebtSecurityRequest: DartRequest { + public typealias KResult = DebtSecurityResult + + public var url: String { + "/api/bdRs.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } + + + /// 증권신고서 주요정보 - 5 지분증권 + /// + public struct EquitySecurityRequest: DartRequest { + public typealias KResult = EquitySecurityResult + + public var url: String { + "/api/estkRs.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } + + + /// 증권신고서 주요정보 - 6 분할 + /// + public struct DivisionRequest: DartRequest { + public typealias KResult = DivisionResult + + public var url: String { + "/api/dvRs.json" + } + public var method: Method { .get } + public var header: [String : String?] { + [:] + } + public var body: [String: Any] { + return [ + "crtfc_key": openApiKey, + "corp_code": corporationCode, + "bgn_de": startDate.yyyyMMdd, + "end_de": endDate.yyyyMMdd + ] + } + public var result: KResult? = nil + + + public let openApiKey: String + let corporationCode: String + let startDate: Date + let endDate: Date + + public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) { + self.openApiKey = openApiKey + self.corporationCode = corporationCode + self.startDate = startDate + self.endDate = endDate + } + } +} + + +extension DomesticDart { + + public struct DebtSecurityResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let group: [Group] + + private enum CodingKeys: String, CodingKey { + case status + case message + case group + } + } + + public struct Group: Codable { + public let title: String + public let list: Item + + public init(from decoder: Decoder) throws { + let container: KeyedDecodingContainer = try decoder.container(keyedBy: CodingKeys.self) + self.title = try container.decode(String.self, forKey: CodingKeys.title) + switch title { + case "일반사항": () + case "인수인정보": () + case "자금의사용목적": () + case "매출인에관한사항": () + default: + assertionFailure("Unknown title \(title)") + } + } + } + + public enum Item: Codable { + /// 일반사항 + case general([GeneralItem]) + /// 인수인정보 + case surety([SuretyItem]) + /// 자금의사용목적 + case capitalUsePurpose([PurposeItem]) + /// 매출인에관한사항 + case salesperson([SalesPersonItem]) + } + + public struct GeneralItem: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + /// 청약기일 + /// 납입기일 + /// 청약공고일 + /// 배정공고일 + /// 배정기준일 + /// 신주인수권에 관한 사항(행사대상증권) + /// 신주인수권에 관한 사항(행사가격) + /// 신주인수권에 관한 사항(행사기간) + /// 주요사항보고서(접수번호) + } + + public struct SuretyItem: Codable { + + } + + public struct PurposeItem: Codable { + + } + + public struct SalesPersonItem: Codable { + + } + } + + + public struct EquitySecurityResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let group: [Group] + + private enum CodingKeys: String, CodingKey { + case status + case message + case group + } + } + + public struct Group: Codable { + public let title: String + public let list: Item + + public init(from decoder: Decoder) throws { + let container: KeyedDecodingContainer = try decoder.container(keyedBy: CodingKeys.self) + self.title = try container.decode(String.self, forKey: CodingKeys.title) + switch title { + case "일반사항": + let items = try container.decode([GeneralItem].self, forKey: Group.CodingKeys.list) + self.list = .general(items) + case "증권의종류": + let items = try container.decode([StockKindItem].self, forKey: Group.CodingKeys.list) + self.list = .stockKind(items) + case "인수인정보": + let items = try container.decode([SuretyItem].self, forKey: Group.CodingKeys.list) + self.list = .surety(items) + case "자금의사용목적": + let items = try container.decode([PurposeItem].self, forKey: Group.CodingKeys.list) + self.list = .capitalUsePurpose(items) + case "매출인에관한사항": + let items = try container.decode([SalesPersonItem].self, forKey: Group.CodingKeys.list) + self.list = .salesperson(items) + case "일반청약자환매청구권": + let items = try container.decode([ClaimItem].self, forKey: Group.CodingKeys.list) + self.list = .redemptionClaim(items) + default: + assertionFailure("Unknown title \(title)") + } + } + } + + public enum Item: Codable { + /// 일반사항 + case general([GeneralItem]) + /// 증권의종류 + case stockKind([StockKindItem]) + /// 인수인정보 + case surety([SuretyItem]) + /// 자금의사용목적 + case capitalUsePurpose([PurposeItem]) + /// 매출인에관한사항 + case salesperson([SalesPersonItem]) + /// 일반청약자환매청구권 + case redemptionClaim([ClaimItem]) + } + + public struct GeneralItem: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + /// 청약기일 + /// 납입기일 + /// 청약공고일 + /// 배정공고일 + /// 배정기준일 + /// 신주인수권에 관한 사항(행사대상증권) + /// 신주인수권에 관한 사항(행사가격) + /// 신주인수권에 관한 사항(행사기간) + /// 주요사항보고서(접수번호) + } + + public struct StockKindItem: Codable { + + } + + public struct SuretyItem: Codable { + + } + + public struct PurposeItem: Codable { + + } + + public struct SalesPersonItem: Codable { + + } + + public struct ClaimItem: Codable { + + } + } + + + public struct DivisionResult: Codable { + public let result: Result + + public struct Result: Codable { + public let status: String + public let message: String + public let list: [Item] + + private enum CodingKeys: String, CodingKey { + case status + case message + case list + } + } + + public struct Item: Codable { + /// 접수번호 + public let receiptNo: String + /// 법인구분 + public let marketType: MarketType + /// 고유번호 + public let corporationCode: String + /// 회사명 + public let corporationName: String + + + private enum CodingKeys: String, CodingKey { + case receiptNo = "rcept_no" + case marketType = "corp_cls" + case corporationCode = "corp_code" + case corporationName = "corp_name" + } + } + } +} diff --git a/projects/macos/KissMe.xcodeproj/project.pbxproj b/projects/macos/KissMe.xcodeproj/project.pbxproj index 7f4f114..29197e9 100644 --- a/projects/macos/KissMe.xcodeproj/project.pbxproj +++ b/projects/macos/KissMe.xcodeproj/project.pbxproj @@ -46,6 +46,7 @@ 34C1BA552A5B033E00423D64 /* DomesticDartListedCompany.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C1BA542A5B033E00423D64 /* DomesticDartListedCompany.swift */; }; 34C1BA882A5D9A4A00423D64 /* DomesticDartDisclosureInterests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C1BA872A5D9A4A00423D64 /* DomesticDartDisclosureInterests.swift */; }; 34C1BA8A2A5DA00A00423D64 /* DomesticDartMajorReport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C1BA892A5DA00A00423D64 /* DomesticDartMajorReport.swift */; }; + 34C97D0B2A602A3D00ED8B33 /* DomesticDartSecuritiesReport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34C97D0A2A602A3D00ED8B33 /* DomesticDartSecuritiesReport.swift */; }; 34D3680F2A2AA0BE005E6756 /* PropertyIterable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D3680E2A2AA0BE005E6756 /* PropertyIterable.swift */; }; 34E7B9112A49BD2800B3AB9F /* DomesticIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34E7B9102A49BD2800B3AB9F /* DomesticIndex.swift */; }; 34F1900C2A41982A0068C697 /* KissIndexResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F1900B2A41982A0068C697 /* KissIndexResult.swift */; }; @@ -104,6 +105,7 @@ 34C1BA542A5B033E00423D64 /* DomesticDartListedCompany.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomesticDartListedCompany.swift; sourceTree = ""; }; 34C1BA872A5D9A4A00423D64 /* DomesticDartDisclosureInterests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomesticDartDisclosureInterests.swift; sourceTree = ""; }; 34C1BA892A5DA00A00423D64 /* DomesticDartMajorReport.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomesticDartMajorReport.swift; sourceTree = ""; }; + 34C97D0A2A602A3D00ED8B33 /* DomesticDartSecuritiesReport.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomesticDartSecuritiesReport.swift; sourceTree = ""; }; 34D3680E2A2AA0BE005E6756 /* PropertyIterable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PropertyIterable.swift; sourceTree = ""; }; 34E7B9102A49BD2800B3AB9F /* DomesticIndex.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomesticIndex.swift; sourceTree = ""; }; 34F1900B2A41982A0068C697 /* KissIndexResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KissIndexResult.swift; sourceTree = ""; }; @@ -246,6 +248,7 @@ 34C1BA542A5B033E00423D64 /* DomesticDartListedCompany.swift */, 34C1BA872A5D9A4A00423D64 /* DomesticDartDisclosureInterests.swift */, 34C1BA892A5DA00A00423D64 /* DomesticDartMajorReport.swift */, + 34C97D0A2A602A3D00ED8B33 /* DomesticDartSecuritiesReport.swift */, ); path = DART; sourceTree = ""; @@ -424,6 +427,7 @@ 34D3680F2A2AA0BE005E6756 /* PropertyIterable.swift in Sources */, 341F5F112A1685E700962D48 /* ShopRequest.swift in Sources */, 341F5EF92A0F907300962D48 /* DomesticStockPriceResult.swift in Sources */, + 34C97D0B2A602A3D00ED8B33 /* DomesticDartSecuritiesReport.swift in Sources */, 341F5EE12A0F373B00962D48 /* Login.swift in Sources */, 341F5EF52A0F891200962D48 /* KissAccount.swift in Sources */, 340A4DBD2A4C34BE005A1FBA /* IndexContext.swift in Sources */,